| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1235 人关注过本帖
标题:关于OpenGL 动画的问题
取消只看楼主 加入收藏
stonexiong
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-8-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
关于OpenGL 动画的问题
请教各位大侠,最近我在做关于OpenGL动画方面的作业。我要做的是一个显示模块,希望在场景最左边随机产生物体(假设长方体)并匀速向右运动。

我的代码如下:
#include "windows.h"   
#include <GL/gl.h>   
#include <GL/glaux.h>   
#include <gl/glut.h>   

float step;   

void init(void);
void display(void);
void quad(void);
void reshape (int w, int h);
void keyboard(unsigned char key, int x, int y);
void Animate(void);
   

void init(void)   
{   
glClearColor (0.0, 0.0, 0.0, 0.0);   
glShadeModel (GL_FLAT);   
}   

void display(void)   
{   
glClear (GL_COLOR_BUFFER_BIT);   
glColor3f (0.5, 0.7, 1.3);   
glLoadIdentity ();   
gluLookAt (0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0);   
glTranslatef(step,0.0,0.0);
for(int i=0;i<2;i++)
{
quad();
glTranslatef(2.0,2.0,0.0);
quad();

}
glFlush ();   
}   

void quad(void)
{
glBegin(GL_QUADS); // 绘制正方形
glVertex3f(-7.0f, 0.5f, 0.0f); // 左上
glVertex3f( -5.0f, 0.5f, 0.0f); // 右上
glVertex3f( -5.0f,-0.5f, 0.0f); // 左下
glVertex3f(-7.0f,-0.5f, 0.0f); // 右下
glEnd(); // 正方形绘制结束
}

void reshape (int w, int h)   
{   
glViewport (0, 0, (GLsizei) w, (GLsizei) h);   
glMatrixMode (GL_PROJECTION);   
glLoadIdentity ();   
glFrustum (-1.0, 1.0, -1.0, 1.0, 1.5, 20.0);   
glMatrixMode (GL_MODELVIEW);   
}   

void keyboard(unsigned char key, int x, int y)   
{   
switch (key)   
{   
case 27:   
exit(0);   
break;   
}   
}   

void Animate(void)
{
step+=0.001;
display();
}

void main(int argc, char** argv)   
{   
glutInit(&argc, argv);   
glutInitDisplayMode (GLUT_SINGLE|GLUT_RGB);   
glutInitWindowSize (500, 200);   
glutInitWindowPosition (100, 100);   
glutCreateWindow (argv[0]);   
init ();   
glutDisplayFunc(display);   
glutReshapeFunc(reshape);   
glutKeyboardFunc(keyboard);   
glutIdleFunc(Animate);
glutMainLoop();   

}  

可我怎么才能在display函数中随机产生一个长方形,并跟着前一帧长方形一起向右匀速运动,在代码中我是手动添加一个三个方形,我希望做到随机产生。希望各位大侠指点。在下先谢谢咯。
搜索更多相关主题的帖子: OpenGL 动画 
2010-08-23 10:18
stonexiong
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-8-23
收藏
得分:0 
小弟在这里跪求啦。
2010-08-23 10:19
stonexiong
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-8-23
收藏
得分:0 
在线等啊
2010-08-23 17:22
stonexiong
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-8-23
收藏
得分:0 
回复 4楼 东海一鱼
谢谢东海一鱼的回复,我是希望做到的事,例如过50ms画面上多一个方形,并且跟前帧画面的方形一起往右移动。请问东海一鱼能不能做到这样啊?
2010-08-24 09:25
快速回复:关于OpenGL 动画的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045504 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved