Estoy intentando crear una geometría para representar la Tierra en OpenGL. Tengo lo que es más o menos una esfera (más cerca del geoide elíptico que la Tierra). Mapeo una textura de la superficie de la Tierra (probablemente sea una proyección Mercator o algo similar). Las coordenadas UV de la textura corresponden a la latitud y longitud de la geometría. Tengo dos problemas que no puedo resolver. Estoy usando OpenSceneGraph, pero creo que esta es una pregunta general de programación de OpenGL/3D.Problema de costura al mapear una textura en una esfera en OpenGL
Hay una costura de textura que es muy aparente. Estoy seguro de que esto ocurre porque no sé cómo mapear las coordenadas UV a XYZ donde ocurre la costura. Solo asocie los coords UV hasta el último vértice antes de envolverlos ... Necesitaría asignar dos coordenadas UV diferentes al mismo vértice XYZ para eliminar la costura. ¿Existe un truco comúnmente utilizado para evitar esto, o lo estoy haciendo mal?
Hay una loca distorsión swirly en los polos. Estoy adivinando esto porque mapeo un único punto UV en los polos (para la Tierra, uso [0.5,1] para el Polo Norte, y [0.5,0] para el Polo Sur). ¿Qué más harías? Puedo vivir con esto ... pero es muy notable en mallas de baja resolución.
He adjuntado una imagen para mostrar de lo que estoy hablando.
¿Puedes compartir cómo estás generando las coordenadas UV y qué método estás utilizando para texturizar el objeto? –
Genérico OpenGL ES cómo versión: http://stackoverflow.com/questions/322111/any-one-know-of-an-opengl-es-example-of-an-interactive-globe-earth-for-the- iphon Problema relacionado: http://stackoverflow.com/questions/17488259/opengl-mapping-texture-to-sphere –