Viernes 15 de Noviembre de 2024, 06:48
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación Específica
»
Programación de Videojuegos
»
OpenGL
(Moderador:
Ruben3d
) »
Error en un ejercicio OpenGL
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Error en un ejercicio OpenGL (Leído 4452 veces)
xL3aMS1x
Nuevo Miembro
Mensajes: 5
Error en un ejercicio OpenGL
«
en:
Jueves 20 de Febrero de 2014, 22:11 »
0
Hola a todos/as miren tengo un prblema a la hora de copilar un ejercicio.
Es es el codigo:
#include <windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
//--------inicializacion------
void init(void)
{
glClearColor(0.0,0.0,0.0,0.0);
glEnable(GL_DEPTH_TEST);
glShadeModel(GL_FLAT);
}
//--------dibujar-------------
void dibujar(void)
{
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(3,2,3,0,0,0,0,1,0);
glPushMatrix();
glRotatef(angulo, 0,1,0);
//---primera cara----
glBegin(GL_POLYGON);
glColor3f(1.0,0.0,0.0);
glVertex3f(0,0,1);
glVertex3f(1,0,1);
glVertex3f(1,1,1);
glVertex3f(0,1,1);
glEnd();
//---segunda cara----
glBegin(GL_POLYGON);
glColor3f(0.0,1.0,0.0);
glVertex3f(1,0,0);
glVertex3f(0,0,0);
glVertex3f(0,1,0);
glVertex3f(1,1,0);
glEnd();
//---tercera cara----
glBegin(GL_POLYGON);
glColor3f(0.0,0.0,1.0);
glVertex3f(0,0,0);
glVertex3f(0,0,1);
glVertex3f(0,1,1);
glVertex3f(0,1,0);
glEnd();
//---cuarta cara-----
glBegin(GL_POLYGON);
glColor3f(1.0,0.0,1.0);
glVertex3f(0,1,1);
glVertex3f(1,1,1);
glVertex3f(1,1,0);
glVertex3f(0,1,0);
glEnd();
//---quinta cara-----
glBegin(GL_POLYGON);
glColor3f(1.0,0.0,1.0);
glVertex3f(0,0,1);
glVertex3f(1,0,1);
glVertex3f(1,0,0);
glVertex3f(0,0,0);
glEnd();
//---sexta cara-----
glBegin(GL_POLYGON);
glColor3f(0.5,0.5,0.5);
glVertex3f(1,0,1);
glVertex3f(1,0,0);
glVertex3f(1,1,0);
glVertex3f(1,1,1);
glEnd();
glPopMatrix();
glutSwapBuffers();
}
Y esta la solucion:
1>Compilando...
1>CPP.cpp
1>c:\users\ismael\skydrive (2)\estudios\app c++, opengl y unity\opengl\tema 2\demo\demo\cpp.cpp(23) : error C2065: 'angulo' : identificador no declarado
1>El registro de compilación se guardó en el "file://c:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\DEMO\Debug\BuildLog.htm"
1>DEMO - 1 errores, 0 advertencias
========== Generar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ==========
No logro declarar "angulo" sin que me corra otros errores que no entiendo.
¿Como puedo hacer que copile correctamente, aunque sea con advertencias.?
Muchas gracias y un saludo
Tweet
chenech
Miembro activo
Mensajes: 96
Re:Error en un ejercicio OpenGL
«
Respuesta #1 en:
Jueves 20 de Febrero de 2014, 22:47 »
0
Te falta definir el "angulo", mira que parámetros se le pasan a la llamada a la función glrotatef y define el "angulo", o bien en el cuerpo de la función o bien de manera global y si es integer o short, por ejemplo.
xL3aMS1x
Nuevo Miembro
Mensajes: 5
Re:Error en un ejercicio OpenGL
«
Respuesta #2 en:
Viernes 21 de Febrero de 2014, 00:05 »
0
Me podrías especificar algo mas o poner un ejemplo es que soy muy novato. Intente no int, char y nada.
Se que tengo que declarar que angulo hace referencia a glRotatef pero no soy capaz. Intentare averiguar lo que me dijiste en el anterior mensaje.
Muchas gracias por responder
chenech
Miembro activo
Mensajes: 96
Re:Error en un ejercicio OpenGL
«
Respuesta #3 en:
Viernes 21 de Febrero de 2014, 00:30 »
0
Si, fíjate que la llamada a la función glrotatef se le pasan cuatro parámetros, el primero es el angulo y luego 0, 1 y 0, pues angulo debe ser un dato definido, por ejemplo:
int angulo;
Y tener un valor:
angulo = 45;
o lo que sea, pero un dato numérico, también podrias cambiar angulo por el valor y asi no tendrías que definir esa variable, por ejemplo: glrotatef(45, 0, 1, 0).
Ese dato en la llamada a la función especifica el ángulo de rotación, en grados.
Espero haberte podido aclarar. Un saludo.
xL3aMS1x
Nuevo Miembro
Mensajes: 5
Re:Error en un ejercicio OpenGL
«
Respuesta #4 en:
Viernes 21 de Febrero de 2014, 00:46 »
0
Probé cambiando la palabra angulo por el grado pero me corre dos errores que son extraños.
//--------dibujar-------------
void dibujar(void)
{
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(3,2,3,0,0,0,0,1,0);
glPushMatrix();
glRotatef(45,0,1,0);
Estos son los errores:
1>------ Operación Generar iniciada: proyecto: DEMO, configuración: Debug Win32 ------
1>Compilando...
1>CPP.cpp
1>Vinculando...
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: símbolo externo _main sin resolver al que se hace referencia en la función ___tmainCRTStartup
1>C:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\Debug\DEMO.exe : fatal error LNK1120: 1 externos sin resolver
1>El registro de compilación se guardó en el "file://c:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\DEMO\Debug\BuildLog.htm"
1>DEMO - 2 errores, 0 advertencias
========== Generar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ==========
Muchas gracias de nuevo, un saludo
chenech
Miembro activo
Mensajes: 96
Re:Error en un ejercicio OpenGL
«
Respuesta #5 en:
Viernes 21 de Febrero de 2014, 11:19 »
0
hay una llamada a esta función "___tmainCRTStartup" por lo que veo en el error, que hace una referencia a una librería que no tienes incluida en el proyecto, te falta declarar alguna lib e imagino que es esta "MSVCRTD.lib".
xL3aMS1x
Nuevo Miembro
Mensajes: 5
Re:Error en un ejercicio OpenGL
«
Respuesta #6 en:
Lunes 24 de Febrero de 2014, 19:06 »
0
Ya solucione el error gracias a vosotros, Muchas gracias a todos.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación Específica
»
Programación de Videojuegos
»
OpenGL
(Moderador:
Ruben3d
) »
Error en un ejercicio OpenGL