Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Problema con Texturas y Direct3D

Iniciado por alpedreteño, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

alpedreteño

                                Estoy haciendo un intento de juego en c# con direct3D usando las librerias de Bisual Basic. De momento estoy haciendo pruebas y he conseguido rendear un picachu en 3d. Pero tengo un problema con las texturas y esque parece como si el picachu fuera trasparente porque miras desde la espalda del picachu y le ves los ojos y le miras de un lado y le ves el ojo del lado que se ve y el del otro lado tambien. Lo he probado con otras figuras y pasa lo mismo. no se si me he explicao. alguien sabe que puede estar pasando??                                

Mars Attacks

                                A mí me suena a que tienes las normales del objeto invertidas. Quizás puedas solucionarlo deshabilitando la eliminación de caras ocultas, pero sería más lógico que revisaras el modelo y trataras de invertirle las normales a la malla. Que alguien que sepa más corrobore o desmienta mis teorías :sonriendo:                                

Anonymous

                               

[ Este Mensaje fue editado por: Forum Master el 2002-09-29 11:51 ]                                

alpedreteño

                                El modelo tiene pinta de estar bien. Lo exporté de 3d studio y lo abri con el MeshView que viene con DX SDK y el modelo se ve perfectamente. Aparte de que tambien me pasa con otras figuras. Tiene que ser algo en mi codigo, pero no doy con ello.                                

Ithaqua

                                O bien tienes las normales (o la indicación del sentido horario de los vértices) invertida, o por otro lado también puede ser que no tengas el z-buffer activado.
Comprobarás fácilmente cual es el error activando el z-buffer o invirtiendo el sentido de las normales.
                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org

alpedreteño

                                el z buffer esta activado (con esto basta no?):
device.SetRenderState(D3DRS_ZENABLE, 1);
como puedo invertir las normales?
gracias                                

metaxas

                                Revisa a ver cómo estás haciendo el culling, prueba con:

device.SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);

Metaxas                                

fiero

                               
Citar
El 2002-09-30 14:09, alpedreteño escribió:
el z buffer esta activado (con esto basta no?):
device.SetRenderState(D3DRS_ZENABLE, 1);
como puedo invertir las normales?
gracias

Además de activar el ZBuffer, tambien hay que crear una superficie para él y añadirsela al BackBuffer, ¿has hecho esto?, por lo menos en DX7 era así, no sé si será igual en DX8.1

Para invertir las normales solo tienes que intercambiar 2 índices de cada triángulo. Por ejemplo, si un triangulo está formado por los vértices 3,4,8 cambiando dos de ellos quedaria el triángulo 3,8,4

[ Este Mensaje fue editado por: fiero el 2002-09-30 16:56 ]                                
www.videopanoramas.com Videopanoramas 3D player






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.