Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





The .X Files

Iniciado por Mars Attacks, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

Mars Attacks

                                Bueno, vamos a ver porque el dichoso ficherito de exportación del 3ds a DX me está tocando ya las trompas de falopio.
Tengo un modelo de un soldado con un exoesqueleto robótico, que tiene tres mapas: el del exoesqueleto, el del casco y el de la cabeza.
El mapa del casco es sólo un color azul translúcido, el de la cabeza es un mapa de una cara y el del exoesqueleto un enorme mapa rojo con detalles.
Pues bien, al cargar el modelo con un visualizador marca AgeR resulta que:
-El .X recuerda el path completo de las imágenes que tiene que cargar
-Sin embargo, sólo carga la de la cabeza y algunas pequeñas partes del mapa del exoesqueleto
-El mapa de la cabeza aparece rotado 90º a la izquierda o_O'

Mis técnicas de texturado aún no están pulidas del todo, y este elemento fue texturado hace bastante tiempo, por lo que puede ser alguna chapuza mía (aunque en el MAX se ve bien).
En el motor de drakkar me pasaba que los jpg's se cargaban al revés y había que voltear el mapa para que se texturara correctamente, pero... ¿¿¿¿90º???? ¿A qué puede deberse esto?
¿Alguien puede echarme un cable?

[ Este Mensaje fue editado por: Mars Attacks el 2002-09-15 12:07 ]                                

Drácula

                                En el MAX las coordenadas de texturas y están invertidas. Donde en D3D es el (0,0), en MAX es el (0,1)                                
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías

CordayUK

                                ey! tengo un problemilla con un exporter que hice hace tiempo para en el max que a veces las texturas no se veian bien del todo,... puede que tenga algo que ver con eso que dices.

puedes explicar un poco mas lo de que estan invertidas??? que pasa cuando se utilizan valores por encima del 1??                                

BeRSeRKeR

                                Para exportar las coordenadas de textura de MAX a D3D es

D3D_U = MAX_U
D3D_V = 1 - MAX_V

Saludos
                               
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

Mars Attacks

                                Gracias, esto aclara muchas cosas. ¿Lo de la inversión de coordenadas en el eje y responde a alguna lógica o sólo es que siguen un convenio distinto?                                

jpastor

                                berserker:

¿Lo que has puesto vale tambien si la coordenada V es mayor que 1.0?                                

BeRSeRKeR

                                La verdad es que no sé en MAX cómo se trata el tema del tiling...no sé si es una matriz o las coordenadas siempre van de 0 a 1 de forma que cuando en el API 3D especificas un mapeado de tipo WRAP pues queda como en MAX.

Yo hasta ahora (haciendo la conversión anterior) no he tenido problema alguno a la hora de exportar objetos que utilizan tiling para el mapeado (por ejemplo un "mapa" en cuyos muros la textura se repite una serie de veces)...

Por cierto Mars Attacks, MAX utiliza el mismo sistema de mapeado de textura que OpenGL, pero vamos...no veo ni ventajas ni inconvenientes en utilizar uno u otro...simplemente son dos sistemas algo diferentes :sonriendo:

Saludos
                               
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

Mars Attacks

                                Entiendo, pero no es exactamente lo que me ocurre (creo). El tema, si lo he entendido bien, es el siguiente:
Para DX:
v
|
|
|
|_____________u
(0.0)

Para MAX (y openGL):

(0.0)
______________u
|
|
|
|
v

Con lo que tendría que invertir verticalmente la textura, ¿no es eso?

Lo que me ocurrió con el .X del que hablo es que tuve que ROTAR 90º a la izquierda el jpg para que el resultado fuera el correcto.
Esa parte no la entiendo =)                                

Mars Attacks

                                Estoy hasta los ·$%&"·$% del .X
Por favor, echadme un cable. Dejo en
http://www.iespana.es/andor/andor.zip
el archivo .max del modelo, el .jpg que utiliza y el .X que he exportado con el XSkinExp.dle con el 3DMax.
El problema, básicamente, es que me exporta el modelo pero sin textura, pese a que en el 3ds se ve perfectamente y en el motor dice que sí se carga la textura. Con el visor de .X del sdk sale algo marciano que no se corresponde con el modelo (y de paso se me cuelga) y si lo paso primero a .3ds y con el programita de extras del sdk conv3ds me sale texturado pero como si lo hubiera aplastado una apisonadora.
Tras infinidad de pruebas, he llegado a la conclusión de que no tengo ni zorra idea del problema, así que espero que con vuestra ayuda se pueda resolver este X File.
Gracias por adelantado.
                               

_Grey

                                [Contestando a Mars Attacks]

Lo que has escrito de las coordenadas de texturas creo que es justamente al reves.
Es decir en DirectX la coordenada 0,0 de la textura es la parte superior-izquierda, y en OpenGL la inferior-izquierda.........(la de directX seguro, la de OpenGL... bueno hace tiempo que no le doy...)

Saludos.                                

Mars Attacks

                                Bueno, ahora mismo ése problema ya está solventado. Lo que ocurre es que no consigo q el max se exporte bien como .x; por eso os pido que lo bajéis y lo intentéis, por si hay algún error de base que no veo. Gracias de todas formas.                                

Mars Attacks

                                He seguido con las pesquisas y resulta que sí lo mapea... pero las coordenadas de textura las pone (creo) todas a (0,0) excepto la cara, que no sé por qué sí la mapea bien. ¿Alguien da más?
                               

Mars Attacks

                                Lo de guardar la ruta entera es cosa del plugin exportador. El motor en el que lo visualizo ya lo tenía en cuenta y fue lo primero que descartamos. Ahora ya estoy seguro de que exporta el mapa de texturas de  toda la malla (excepto la cara, que es lo que me deja perplejo) al punto 0,0 de la textura. ¿Alguien tiene un exportador de .X para 3ds max 4 que consiga exportar el solider.max a un soldier.x y se vea bien?
He probado en general con cajas, y me da el mismo problema. Para primitivas funciona bien, pero en cualquier objeto que se haya tocado la malla todas las coordenadas u,v van al 0,0 (pese a que en el max están bien).
En fin, dentro de poco ofreceré hasta una recompensa a quien lo consiga XDDD me trae de cabeza :sonriendo:                                

Lord Trancos

                                Aqui puedes encontrar un plug-in alternativo para exportar a X. (Panda)

http://www.pandasoft.demon.co.uk/directx.htm                                
i>SaludoteZ de Lord Trancos!
http://www.dxlab.tk - http://dxlab.host.sk - programación de DirectX con Delphi.

Mars Attacks

                                ¿Has oído "My life has been saved" de Queen?
Pues te la dedico :riendo:
Te debo una, macho. Me hace alguna guarrada con alguna normal, pero eso tiene fácil solución :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo: :sonriendo:
Lo irónico es que el plugin que utilizaba era el otro que indicaba la web XDDDD
GRACIASSSSSSSSSSSSSSSSS
                               






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.