Pregunta

He visto pelotas, planetas y otros objetos esféricos con buena textura en un par de juegos, la última vez en OVNI: secuelas. Si solo salpicas una textura en latitud / longitude como tú y w ??-coordinadas, obtendrás mucha distorsión de textura fea en los polos.

Puedo creerme una forma de implementar un mapa esférico con una distorsión mínima. Mapeando en triángulos en lugar de cuadrados. Pero no conozco ningún algoritmo. ¿Cómo producir vértices y coordenadas de textura para tales esferas?

Además, no veo una manera de generar un mapa esférico completo a partir de un simple mapa cuadrado plano. ¿Hay alguna forma intuitiva de dibujar tales mapas sin problemas reales?

Sin embargo, ¿hay otros algoritmos para representar una esfera sin o con una distorsión mínima?

Los algoritmos de trazado de rayos y rasterización son interesantes.

¿Fue útil?

Solución

El teorema de la bola de pelo indica que es imposible definir coordenadas de textura continua en una esfera sin ningún polo que distorsione la textura.

Otros consejos

Lat / lon " esferas " distorsionar por definición. Si está en la programación, comience con un [tetraedro] ( http://en.wikipedia.org/ wiki / Tetrahedron Tetrahedron) y subdivide tanto como sea necesario, subdividiendo cada triángulo en 4 triángulos y reposicionando los puntos medios en el radio dado desde el centro.

Si estás en el modelado, GeoSphere (como se mencionó anteriormente) o cualquier otro similar resolverá tu problema.

El punto es que los triángulos tendrán una distorsión constante que es independiente de la latitud.

También tenga en cuenta que una subdivisión de superficie (cerrada) le permitirá tener una (C) LOD con bastante facilidad.

Texturizar es otra historia, pero una vez que tienes una buena esfera tienes menos problemas.

Espero que esto despierte tu imaginación :)

Puedes usar un mapa rectangular con un desenfoque longitudinal que aumenta cerca de los polos (desde ninguno en el ecuador hasta 60 grados al norte). Junto con los mapas mip, esto debería erradicar algunos de los efectos que mencionas.

Drew Olbrich ideó una manera ingeniosa de tesselating una esfera para producir un nonahedron . Si aumentas el número de vértices, obtendrás una teselación esférica bastante decente.

O puedes usar un cubemap. Esa es generalmente la forma preferida de hacer un mapeo del entorno, que es básicamente lo que estás describiendo.

No divida la esfera por longitud y latitud. En su lugar, utilice lo que se llama GeoSphere en 3Ds Max. (En realidad, un poliedro, la esfera geodésica .)

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