|
大家好,好久不见了。^^
现在为大家奉上OpenGL大餐,————————————————的开胃酒。
首先介绍一下我的可怜的本本上的系统。
uname -a:Linux wizard 2.6.24-21-generic #1 SMP Mon Aug 25 17:32:09 UTC 2008 i686 GNU/Linux
gcc -v:gcc 版本 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
首先是OpenGL的环境搭建: sudo apt-get install mesa-common-dev mesademos libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev
看到了吧,apt-get就是这么牛气。当然了……基本的其他环境你自己装去……
结束了么? 好的,那么我们来写一个简单的程序测试一下吧。
#include<GL/glut.h>
/*定义了所要绘制的图形实体*/
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
/*下面我们画了一个矩形*/
glBegin(GL_POLYGON);/*指定对象的起始点*/
glVertex2f(-0.5,-0.5);/*指定在二维空间中的坐标*/
glVertex2f(-0.5,0.5);
glVertex2f(0.5,0.5);
glVertex2f(0.5,-0.5);
glEnd();/*指定顶点列表的终止点*/
glFlush();/*强制执行之前缓存的所有OpenGL命令*/
}
/*OpenGL初始化*/
int main(int argc, char **argv)
{
glutInit(&argc,argv);/*初始化GLUT,应在其他GLUT函数和OPENGL之前进行条用。glutInit()接受来自main函数的参数,程序可以具体实现相关的方式来使用这些参数*/
glutCreateWindow("simple");/*将一个窗口以默认尺寸300x300像素显示在屏幕的默认位置上(左上角),参数是我们为窗口创建的标题*/
glutDisplayFunc(display);/*函数func()在每次需要对窗口重绘的时候被调用*/
glutMainLoop();/*进入事件循环*/
}
当然了……理论上随便一个程序就可以测试的了。
我们最好写一个makefile:
CC = gcc
LDLIBS = -lglut
.c:
$(CC) $@.c $(LDLIBS) -o $@
这个也是在网上找的……嘿嘿。
然后make simple如果编译没有错的话,就赶紧./simple,怎么样?看到效果了么,哈哈哈,恭喜你阿。以后就可以开始OpenGL之旅了。哦也。
对了,再来一个球的图,我的可怜的集成显卡也就能这样子了,谢谢csdn上的兄弟们哈。
lightball (原文件名:lightball.png)
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|