Pregunta

un artista amigo me ha enviado un archivo .obj exportado por 3DS Max 2009, que contiene tres coordenadas de textura como parámetros para el comando vt. Y eso es correcto de acuerdo a la especificación obj. Sin embargo, no estoy seguro de cómo asignar coordenadas U-V-W que son proporcionados por un .jpg textura regular de 2D.

Esto es relativamente importante para mí, ya que he jugado con 3DS Max tratando de encontrar la manera de obligarlo a exportar sólo las coordenadas U-V, pero no parece haber ninguna manera straightfoward. En este caso, esto es sólo un palco, pero en otros casos podría ser algo mucho más complejo y no se puede arreglar a mano.

Gracias!

¿Fue útil?

Solución

Hay una sección en el artículo ¿Qué es UVW Mapping que explica?:

  

Es posible preguntarse por qué se necesita una   profundidad de coordenadas como W para un 2D   avión. Una de las razones es porque es   A veces resulta útil para poder dar la vuelta   la orientación de un mapa, en relación con   su geometría. Para ello, es necesario el   tercera coordenada. La coordenada W   también tiene un significado para el 3-dimensional   materiales de procedimiento.

En su caso, puede simplemente ignorar el W coordinar y de sólo lectura las dos primeras carrozas de las líneas que comienzan con vt. Esto supone que usted no está muy preocupada por el espacio extra tomada por el W coordinar desde obj es todo un formato de archivo ineficaz para empezar.

En lo personal no me gusta usar obj en OpenGL, ya que proporciona vértices normales por la cara en lugar de por el vértice. Para iluminar un objeto es conveniente que tenga ya sea duplicar vértices o calcular las normales promediando los vértices normales circundantes en una cara. Si desea explorar alternativas más eficientes, echar un vistazo a los formatos binarios, como el formato .md2 perfectamente documentadas. También considere el uso de glDrawElements si no está utilizando ya.

Otros consejos

lo siento si he entendido mal su pregunta. Pero could't simplemente ignora el tercer parámetro, w? Como lo entiendo, w es sólo una coordenada en un plano perpendicular al plano descrito por u y v, por lo que raramente es necesario para sencilla mapeado de texturas 2d.

Espero que esto ayude.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top