Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema con iluminacion, calculo de normales.

Estas en el tema de Problema con iluminacion, calculo de normales. en el foro de C/C++ en Foros del Web. Hola. Estoy haciendo un juego con C++ y OpenGL. Cuando el modelo esta situado en las coordenadas 0,0,0 al mover la bombilla , la iluminacion ...
  #1 (permalink)  
Antiguo 05/07/2011, 05:56
 
Fecha de Ingreso: noviembre-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Problema con iluminacion, calculo de normales.

Hola.

Estoy haciendo un juego con C++ y OpenGL.

Cuando el modelo esta situado en las coordenadas 0,0,0 al mover la bombilla , la iluminacion funciona correctamente.

Pero cuando sitúo el objeto en otras coordenadas sigue iluminándose como si estuviera en el 0,0,0.

¿Que debo hacer para que se ilumine bien con respecto a su nueva posicion?

Así realizo el calculo de normales.

int i;
_planef Plane1;
bool Error=false;
if (Faces_normals.size()!=Faces_vertices.size())
Faces_normals.resize(Faces_vertices.size());//dar tamaño al vector de normales
for (i=0;i<Faces_vertices.size();i++)
{
if(escalado==0)
{
Faces_normals[i]=CalcNormal(Vertices[Faces_vertices[i]._1].x,Vertices[Faces_vertices[i]._1].y,Vertices[Faces_vertices[i]._1].z,Vertices[Faces_vertices[i]._2].x,Vertices[Faces_vertices[i]._2].y,Vertices[Faces_vertices[i]._2].z,Vertices[Faces_vertices[i]._3].x,Vertices[Faces_vertices[i]._3].y,Vertices[Faces_vertices[i]._3].z);
}
else
{
Faces_normals[i]=CalcNormal(Vertices[Faces_vertices[i]._1].x * escalado,Vertices[Faces_vertices[i]._1].y * escalado,Vertices[Faces_vertices[i]._1].z * escalado,Vertices[Faces_vertices[i]._2].x * escalado,Vertices[Faces_vertices[i]._2].y * escalado ,Vertices[Faces_vertices[i]._2].z * escalado,Vertices[Faces_vertices[i]._3].x * escalado,Vertices[Faces_vertices[i]._3].y * escalado,Vertices[Faces_vertices[i]._3].z * escalado);
}

}

Gracias.
  #2 (permalink)  
Antiguo 05/07/2011, 12:45
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años, 1 mes
Puntos: 52
Respuesta: Problema con iluminacion, calculo de normales.

Hola.
Pue smira, la verdad tu codigo es algo ilegible por lo que no entendi bien que haces ahi.
Sin embargo, conzco ese problema.

La manera en que se maneja opengl es aveces algo extraña, sobretodo a la hora de combinar luces texturas y todo el show.

Solo recuerda que toda posicion es relativa. Hay una matriz global en opengl que define donde se va a ubicar el siguiente objeto.
Creo que tambien aplica para las luces.

Aparte para definir una luz, hay que llenar una estructura con sus caracteristicas y, si mal no recuerdo hay que indicar en algun campo algo relacionado con esta matriz.

Ojala pudiera ser mas objetivo. Pero hace tiempo que no uso OpenGL y pues no recuerdo bien los detalles.

Saludos
  #3 (permalink)  
Antiguo 05/07/2011, 23:54
 
Fecha de Ingreso: noviembre-2009
Mensajes: 36
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Problema con iluminacion, calculo de normales.

Gracias compañero , pero me has dejado = .

Estoy buscando info por internet pero no consigo saber por donde meterle mano para arreglarlo.

Etiquetas: calculo, iluminacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:53.