Open GL - Redisplay

 
Vista:

Redisplay

Publicado por jo (2 intervenciones) el 24/02/2011 12:14:08
Hola Todos,

A ver si alguien me puede resolver el siguiente problema:

Por un lado tengo un cilindro (sin usar primitivas), y por otro lado tengo una simple recta.

El funcionamiento es el siguiente:

Mientras el cilindro se mantiene inamovible en el tiempo, la recta va rotando 360 grados, infinitamente.

Mi problema viene, porque el radio del cilindro tiene una parte fija + una pequeña parte aleatoria. Dando el efecto de que el cilindro tiene diferentes radios en diferentes alturas del cilindro.

el problema viene al usar al final del main la función, glutMainLoop(). El programa no para de ejecutarse, y me va bien para ir actualizando la posición de la recta en el espacio (usando tambien la función glutIdleFunc,() ) pero me va mal, porque el cilindro no para redibujarse, y como el radio tiene una parte aleatoria, a cada pasada del main, el cilindro va cambiado de forma.

En resumen, lo que quiero conseguir es un cilindro fijo en el tiempo (con diferentes radios en función de la altura), y una recta que vaya rotando en el espacio.

Si alguien me dice como resolver el problema, o que función tendria que usar, se lo agradecería.

Muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder