Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Loover en 08 de Noviembre de 2002, 11:59:19 AM

Título: Cuiado los usuarios de XP con LmTools
Publicado por: Loover en 08 de Noviembre de 2002, 11:59:19 AM
                                El programa me ha petado al intentar renderizar en el modo WireFrame con la típica ventaninta azul (no tan típica en el xp). Hasta ahi todo normal. Lo malo ha sido que al reiniciar... pues que no podía ejecutar nada, se veia el escritorio y no podía pinchar en nada. Después de reiniciar 3 o 4 veces he podido hacer una recuperación del sistema y de momento se ha arreglado.
Una lastima, porque el programa parecia merecer la pena, pero ya no me atrevo :(                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Forum Master en 08 de Noviembre de 2002, 01:26:47 PM
                                A mi lo que me suele pasar en XP es que si se cuelga bien colgado al reiniciar me tarda como unos minutos en funcionar el explorer y varios programas. Es decir, que parece que el ordenador esta tonto, pero en realidad a los 2 minutos o algo mas ya se pone en funcionamiento todo bien.

Eso si, hasta que me di cuenta que tenia que esperar un poco... reinicie la repera de veces  :jaja:                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: metaxas en 08 de Noviembre de 2002, 02:10:28 PM
                                A mí me van bien en un Windows 2000. Las estoy probando y tienen una pinta estupenda, pero haciendo la prueba con una malla de nuestro juego me ha petado el LMGen, siempre falla en el mismo porcentaje (en el 96%) le ponga la opción que le ponga. El mensaje de error que da es este:

Exception EInvalidOp in module LMGen.exe at 0000C061.
Invalid floating point operation.

A ver si lo puedes arreglar y las sigo probando.

Metaxas                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 08 de Noviembre de 2002, 02:13:47 PM
                                :o  joder

Primero q todo, gracias Loover por probarlo, y me alegro q lo q vieras antes del "desastre" te gustara. Entiendo el susto q te debes de haber llevado, pero tengo dudas sobre si es culpa de mi programa, de los drivers o de XP.

Entiendelo; es muy raro q te suelte una pantalla azul simplemente al cambiar a modo WireFrame,.... lo unico que hago (teneis el codigo pa comprobarlo) es llamar a SetRenderState para q cambie el FILLMODE,... osea nada raro. Lo acabo de probar de nuevo en el XP de mi hermano cambiando todas las opciones habidas y por haber y ningun problema.... :I

De todos modos es cierto q a JPeP ya le solto un pantallazo azul (en XP) la primera TechDemo, aunque si no recuerdo mal despues (la segunda techdemo) ya le funcionaba bien. :-?

No se... al XP ya le he visto hacer cosas de esta antes... el otro dia estuve probando (w98) un excelente emulador de MegaDrive y se lo pase a mi hermano (XP), al cual namas ejecutarlo le solto una pantalla azul... y mira que yo me he pasado horas y horas jugando en mi w98 y ningun problema...

De todos modos, Loover me puedes dar mas detalles de tu maquina (tarjeta grafica, cpu, version de directx (retail|debug), service packs pa XP instalados...?

Por favor, si alguien mas lo ha probado en XP y le ha dado un pantallazo azul, q me lo diga.

Una ultima cosa; las lmtools son dos programas (lmgen y lmpack) en modo consola (q no usan DX y q no creo q hagan explotar el XP), el LMDx (q es de quien estamos hablando) es una utilidad para ver y crear archivos LMTS. Con esto quiero decir, q la gente TODAVIA puede usar sin ningun miedo las LMTools para crear sus lightmaps, solo que para verlos o para crear archivos LMTS (los archivos que usan las LMTools) tendrian que hacerse sus propios programas.                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Loover en 08 de Noviembre de 2002, 02:15:14 PM
                                Oye, pues sera eso.
He vuelto a probar el LmTools y me funciona todo muy bien, menos (no he vuelto a probar por miedo) lo del WireFrame... despues de todo no es que sirva para mucho esa opcion.
De todos modos Lord Trancos a ver si puedes arreglarlo.
El error me daba en la libreria ati3d1ag.dll (tengo una Radeon 7200 de 64Mb). Supongo que será cosa de la tarjeta y no del sistema operativo.

Un saludo                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 08 de Noviembre de 2002, 02:15:47 PM
                                metaxas, me puedes enviar la malla y el archivo script para q lo pueda debugear ?
(las texturas en principio no son necesarias)

lordtrancos@softhome.net

pd: me alegro q te esten gustando ;)                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 08 de Noviembre de 2002, 02:18:41 PM
                               
CitarOye, pues sera eso.
He vuelto a probar el LmTools y me funciona todo muy bien, menos (no he vuelto a probar por miedo) lo del WireFrame... despues de todo no es que sirva para mucho esa opcion.
De todos modos Lord Trancos a ver si puedes arreglarlo.
El error me daba en la libreria ati3d1ag.dll (tengo una Radeon 7200 de 64Mb). Supongo que será cosa de la tarjeta y no del sistema operativo.

vaya, eres muy valiente ;)

por el error es posible q sea culpa de los drivers... has tenido problemas con el modo wireframe en otros programas ?                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Loover en 08 de Noviembre de 2002, 02:22:22 PM
                                Ups, he respondido mientras estabas escribiendo tu post.
Te doy los datos que me pedias:

Radeon 7200 64 MB
Athlon XP 1300Mhz
Directx 8.1 (retail/debug no se cual es la diferencia, la que venga por defecto. Tengo la api pero no hice mas que unas pocas pruebas, uso OpenGL)
Service Packs para Xp ni uno, reistale la semana pasada, tengo que bajarmelos. En cuanto los pruebe volvere a pinchar en WireFrame... aunque si el error me lo da en una libreria de ati creo que va a ser cosa de la tarjeta (aunque no me da problemas con otras aplicaciones direct x)
No he mirado si tu programa crea algun archivo de debug, pero si dimelo y si quieres te lo mando.

Voy a probar lo que he leido en el "quick start" pq parece muy interesante esta herramienta. Por fin ligthmaps decentes y gratis!

Gracias Lord Trancos por responder tan rapido                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Loover en 08 de Noviembre de 2002, 02:23:32 PM
                                Puff, que rapido eres, jajaja
Has vuelto a responder mientras escribia. No, no he tenido problemas con el wireframe en otros programas.                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 08 de Noviembre de 2002, 02:56:15 PM
                                :)

lo de volver a probar el wireframe cuando tengas el servide pack.... mejor si tb te pones los ultimos drivers de tu tarjeta (si es que no son los q ya tienes)

el programa no crea ningun archivo debug... es muy sencillo y no crei q pudiera dar tantos problemas como al final parece q ha dado. (como el famoso bug de los parpadeos de colores)

por cierto; si alguien hace, por ejemplo, un visor de archivos LMTS en VC + OpenGl o DX + SrcCode y quiere q lo cuelge en la web de las lmtools o quiere q le ponga un enlace a la web donde tenga dicho programa, pues eso, q me lo diga ;), lo digo pq me gustaria poner algun ejemplo de un visor de LMTS en C para aquellos q no controlan el Pascal.

pd: Haddd no se si te acordaras q me comentaste q tal vez ibas a añadirle soporte a mi formato de archivo (LMTS) en tu motor... ¿como a quedao al final la cosa? ¿al final te has animado ;) ? ¿prefieres esperarte a la proxima version de LMTools (ya que dije q voy a cambiar el formato...)? ¿o no te ha gustado :(?                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Haddd en 08 de Noviembre de 2002, 03:36:04 PM
                                ¡No puede bajarlo, tardaba una barbaridad, a unos 25 bytes por segundo!. Pero no lo he vuelto a probar. Sí estoy muy interesando en el tema, así que no descarto que muy pronto haga la prueba. Lo que pasa es que estoy esperando a DX9 y rehaciendo cosas del motor para que el cambio no me "duela" tanto. ¿Cuanto tardarás en cambiar el formato?                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 08 de Noviembre de 2002, 05:00:45 PM
                                okis. me huelo q aun tardare bastante en cambiar el formato (dos o tres meses)
si vuelves a tener problemas en la descarga, prueba en el otro site. (tengo un mirror :D)                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Haddd en 11 de Noviembre de 2002, 05:06:09 AM
                                Bien, ya pude bajar las Tools y están muy bien. Sin embargo no las veo operativas para mi motor, porque obligas a demasiadas cosas:que esté en MAX, convertirlo a DX, tener un fichero añadido de luces, volver a convertirlo a tu formato.
Yo me he puesto ahora a estudiar los lightmaps. Son bastante fáciles, pero no me convence el tema de la proyección planar para elegir uno de los 3 planos en los que más se acerque la normal. Además se pierde un montón de espacio.                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 11 de Noviembre de 2002, 12:02:09 PM
                               
CitarBien, ya pude bajar las Tools y están muy bien. Sin embargo no las veo operativas para mi motor, porque obligas a demasiadas cosas:que esté en MAX, convertirlo a DX, tener un fichero añadido de luces, volver a convertirlo a tu formato.

Veamos, lo del MAX no es obligatorio, simplemente facilita el crear el fichero de luces. El fichero de luces se puede hacer con el bloc de notas,... lo q pasa es que claro,... asi es un coñazo. Y como mucha gente usa el MAX pues pense que hacer un script para crear el fichero de luces le facilitaria el trabajo a mucha gente. Ademas, el script realmente esta hecho para el gMAX que cualquiera se puede bajar gratis. De todos modos como ya he dicho no es una obligacion, la idea es que si uno usa su propio editor de niveles, le añada (si quiere usar las LMTools) la posibilidad de exportar su nivel a formato LMTS y de crear el archivo de luces. Y si no usa su propio editor ni el gMax, pues tendra q apañarselas para crear el fichero de luces. Ten en cuenta q las LMTools no son unas herramientas para "usuarios normales", sino para gente que sabe programar (o eso se supone).

Lo mismo sucede con lo de la obligacion de convertirlo a DX. No existe dicha obligacion. Tu (como programador) te las has de apañar para pasar tu formato a LMTS para que las LMTools puedan procesar el mapa (esta SI es una obligacion). Lo que pasa es que de nuevo para facilitar las cosas, he incluido el programa LMDx que es capaz de convertir archivos de Direct3D al formato LMTS.

Lo del archivo de luces es normal si tienes en cuenta q las lmtools son programas en modo consola y no tienen un interfaz q te permita ir colocando las luces y seleccionar los parametros. Ademas no veia q fuera una buena idea mezclar la geometria con las opciones + luces.

Pero weno, si despues de lo dicho siguen sin apañarte, no pasa nah si no las quieres usar.

CitarYo me he puesto ahora a estudiar los lightmaps. Son bastante fáciles, pero no me convence el tema de la proyección planar para elegir uno de los 3 planos en los que más se acerque la normal. Además se pierde un montón de espacio.

Si, weno, los lightmaps son faciles si sabes q es lo q tienes q hacer; y eso incluye la proyeccion planar y asimilar la perdida del espacio en la textura.... y otras cosas como ajustar el mapeado a una rejilla universal.

Ten cuidado pq si intentas hacer cosas raras (como por ejemplo aprovechar TODO el espacio de la textura o evitar la proyeccion planar) te puede salir un churro; te lo dice alguien q empezo ha hacer sus lightmaps por inspiracion divina (osea, sin mirar documentacion) y con brillantes ideas (como por ejemplo usar lightmaps cuadrados potencias de 2, o intentar usar todo el espacio de la textura) y le salio un churro de lightmaps.                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: seryu en 11 de Noviembre de 2002, 05:09:53 PM
                                Para los qe somos listos y nos hemos qedado con el w2k mas el sp2 qetal tira el programa? asias..                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Haddd en 11 de Noviembre de 2002, 09:30:13 PM
                                Entiendo tu razonamiento inicial, pero tener un programa externo para calcular lightmaps no me ha parecido buena idea. Respecto a lo de los lightmaps y las texturas, de momento quiero hacer algo simple, después ya veremos. Por cierto,¿tienes en LMtools la posibilidad de que la luz proyecte también un bitmap además de la luz en sí?                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 12 de Noviembre de 2002, 12:50:35 AM
                               
CitarEntiendo tu razonamiento inicial, pero tener un programa externo para calcular lightmaps no me ha parecido buena idea. Respecto a lo de los lightmaps y las texturas, de momento quiero hacer algo simple, después ya veremos. Por cierto,¿tienes en LMtools la posibilidad de que la luz proyecte también un bitmap además de la luz en sí?

No te recomiendo que hagas "algo simple", sino q te limites a seguir el "standard" para crear lightmaps (proyeccion planar y a despilfarrar espacio de textura)... pero weno, tu mismo.

En cuanto a lo de q si las lmtoos tienen luces q proyecten imagenes (como un proyector de cine), la respuesta es q en principio nop, la unica forma seria usar la misma tecnica q se usa en los proyectores de cine "del mundo real", osea ponerle un "fotograma" delante de la luz (un cuadradito con una textura con canal alpha), aunque la verdad es q no lo he probado.... es una buena idea para probar :D                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Haddd en 12 de Noviembre de 2002, 09:16:29 AM
                                ¿y cómo decides el tamaño de la textura? ¿basándote en el tamaño del triángulo?                                
Título: Cuiado los usuarios de XP con LmTools
Publicado por: Lord Trancos en 12 de Noviembre de 2002, 10:57:58 AM
                                Exacto. Para los lightmaps es un grave error forzar el tamaño. Es el triangulo quien te dice que tamaño quiere. Si no lo haces asi, despues no quedara bien, sobretodo si metes sombras.... (y los lightmaps sin sombras pierden mucho), ya q los lightmaps de los diferentes triangulos no encajaran bien. (y si no encajan y hay una sombra por en medio, canta mucho).

Mis reglas de oro para los lightmaps: :)

 - Los pixeles de todos los lightmaps (lumels) deben de tener el mismo tamaño en su representacion 3D; esto te permitira calcular el tamaño del lightmap necesario para un triangulo;

 - Nunca forzar el tamaño del lightmap... cada triangulo necesita un lightmap con un tamaño concreto.

 - No intentar aprovechar toda la superficie del lightmap mapeando el lightmap entero dentro del triangulo... el mapeado debe de ser planar.

 - Ajustar el mapeado con una rejilla 3D cuyas celdas tengan el tamaño de la representacion 3D del lumel.

 - Añadir un borde de 1 lumel a todos los lightmaps para evitar efectos desagradables del mapeado bilineal. (tambien hay q calcular la luz para dicho borde)

 - Filtrar los lightmaps. (Yo uso un 3x3 average, pero seguramente hay filtrados mejores).

Basicamente todas estas medidas son para evitar los efectos producidos por lightmaps q no encajan correctamente.

Una vez creados los lightmaps; los "optimizo", los "comparto" y los meto en texturas de 256x256 (todo esto lo hace LMPack).

Lo unico que hago al "optimizar" es simplemente reduzcir las dimensiones de los lightmaps que tienen todos sus pixels del mismo color.

Lo de compartir, simplemente es comparar los lightmaps entre si para ver que triangulos usan lightmaps iguales (por ejemplo, una pared formada por dos triangulos; ambos usan el mismo lightmap).

Y finalmente para lo de meter los lightmaps en una unica textura, aqui hay un tuto bastante bueno ;)

http://www.blackpawn.com/texts/default.html

Si tienes cualquier otra duda, ya sabes ;)