Fijaos en esta exportación del típico cubo:
Haddd:1.0
MATERIALES:1
ID:1
Clase:Standardmaterial
Nombre:01 - Default
NºSub:0
Mapas:1
DIFFUSE
Nombre:Map #1
Clase:Bitmaptexture
Subno:2
Amount:100.0
Bitmap:D:\Haddd\CSharp\Motor\texturas\fondo.jpg
OBJETOS:1
Nombre:Box01
Vertices:8
Caras:12
Material:1
Nombre:01 - Default
0:-22.8426 -26.3959 1.1538e-006
1:47.2081 -26.3959 1.1538e-006
2:-22.8426 34.5178 -1.50882e-006
3:47.2081 34.5178 -1.50882e-006
4:-22.8426 -26.3959 -60.9137
5:47.2081 -26.3959 -60.9137
6:-22.8426 34.5178 -60.9137
7:47.2081 34.5178 -60.9137
CARAS
3 (0.0 0.0 0.0) 2 (1.0 0.0 0.0) 0 (1.0 1.0 0.0) 2
0 (1.0 1.0 0.0) 1 (0.0 1.0 0.0) 3 (0.0 0.0 0.0) 2
7 (1.0 0.0 0.0) 5 (1.0 1.0 0.0) 4 (0.0 1.0 0.0) 1
4 (0.0 1.0 0.0) 6 (0.0 0.0 0.0) 7 (1.0 0.0 0.0) 1
5 (1.0 0.0 0.0) 1 (1.0 1.0 0.0) 0 (0.0 1.0 0.0) 5
0 (0.0 1.0 0.0) 4 (0.0 0.0 0.0) 5 (1.0 0.0 0.0) 5
7 (1.0 0.0 0.0) 3 (1.0 1.0 0.0) 1 (0.0 1.0 0.0) 4
1 (0.0 1.0 0.0) 5 (0.0 0.0 0.0) 7 (1.0 0.0 0.0) 4
6 (1.0 0.0 0.0) 2 (1.0 1.0 0.0) 3 (0.0 1.0 0.0) 6
3 (0.0 1.0 0.0) 7 (0.0 0.0 0.0) 6 (1.0 0.0 0.0) 6
4 (1.0 0.0 0.0) 0 (1.0 1.0 0.0) 2 (0.0 1.0 0.0) 3
2 (0.0 1.0 0.0) 6 (0.0 0.0 0.0) 4 (1.0 0.0 0.0) 3
En la lista de caras el submaterialID da unos valores falsos. ¿Porqué y cómo se puede corregir?
Creo recordar que yo también tuve este problema. Incomprensiblemente MAX te mete ID de materiales basura. Bueno en realidad no es que sea basura si no que al tener el cubo aplicado un mapeado cúbico, te genera un ID para cada cara.
Le echaré un vistazo aunque creo que yo no encontré una forma de arreglar eso pero bueno, a lo mejor esta vez hay mejor suerte. :D
Saludos.
Lo cierto es que ahora mismo se me ocurren dos soluciones.
Una es que conviertas el cubo en Editable Poly (o mesh), lo pongas a nivel de subobjeto "Element", "Polygon" o "Face" y selecciones todo y entonces vas al rollout "Surface Properties" y en "Set ID" pones el ID que quieras y pulsas intro.
La otra solución sería, en el propio exportador, si el objeto tiene un material standard, poner todos los MatIDs de todas las faces del objeto al ID del material que tiene asignado el objeto. En el caso de que tenga un multimaterial no debería haber problema ya que se supone que tú le has asignado a cada face un ID de ese multimaterial.
De todas formas, si el material que tiene asignado el objeto es de tipo standard, a la hora de cargar la escena en el motor, los IDs de cada face te tendrían que dar igual ya que sólo tendrías en cuenta el material que tiene asignado dicho objeto.
Espero haberme explicado. :lol:
Saludos.
Eso también me ha pasado a mi.
Yo uso la segunda opción que comenta berserker, sólo hago caso del submaterial ID si el objeto posee un material de tipo multimaterial, si no hago caso omiso de lo que ponga en submaterialID.
Saludos
En la exportacion que hace el MAX de ficheros ASE, pasa lo mismo.
Segun los comentarios en el codigo del exportador de ASE, lo que tienes que hacer es:
SubMatIDdeVerdadDeLaBuena = SubMatIDqueDiceElMax MOD Material.numSubmats
Vamos, que tienes que pillar el resto de dividir el numero que te da el max entre el numero de submateriales del material
y en el caso en el que un material tiene varios submateriales y esos a la vez varios submateriales... :huh: ?
Asesina al grafista :lol:
Con lo que cuesta conseguir uno.... :blink:
" Asesina al grafista "
XDDD
Cita de: "Helius"Asesina al grafista
Cita de: "donald"" Asesina al grafista "
XDDD
No le veo la gracia <_<
euh...será que yo me río mucho ;)
No, me ha hecho gracia, pq es que submateriales, de submateriales, de submateriales... pobre programador...
Y a mí que nunca me ha convencido todo lo que no sea un material a pelo , y sin más, con si acaso sus mapas de bumb etc...
En fin, me había hecho gracia. Pido permiso para reirme...XDDD Es igual, me reiré de todos modos (twist)
Cita de: "Haddd"y en el caso en el que un material tiene varios submateriales y esos a la vez varios submateriales... :huh: ?
Pos npi. :P
Si lo de asesinar al grafista no te vale pq cuestan de conseguir, siempre puedes romperle una pierna que no son vitales para su trabajo. (uoh)
Si eso pegale un vistazo al codigo fuente del pluigin del max que se encarga de exportar los archivos ASE. Ahi es donde encontre en un comentario como calcular el indice de submaterial. El comentario estaba cerca del codigo que se encarga de escribir la linea que contiene el MESH_MTLID, asi que busca eso en el codigo fuente.