dev-c++實際上已經包含了開發opengl程序基本的功能可以簡單的選擇:新建-multimedia-opengl,建立一個opengl程序。
這個程序包含了基本的opengl程序的結構,包括生成窗口,消息驅動機制,還有基本的opengl程序。直接點擊運行可以看到一個不斷旋轉的彩色三角形。
在該工程的 Project Option -> Parameters -> Link 中發現已經連接了庫 libglu32.a, libopengl32.a<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:java;">
-lopengl32
在工程根目錄的 Makefile.win 中也能看到
LIBS = -L"E:/Program Files/Dev-Cpp/MinGW64/x86_64-w64-mingw32/lib" -static-libgcc -mwindows -lopengl32 -g3
所以要想建立自己的 OpenGL 工程必須在建立win32工程的Link中加入下面參數
-lglu32
-lopengl32
現在根據《OpenGL 編程指南》中的例程簡單實現:在黑色背景中渲染一個白色的矩形
#include
//#include//glut.h中已經包含
//#include
#include
//繪制程序
void display()
{
glClear(GL_COLOR_BUFFER_BIT);//將屏幕設置為黑色
glColor3f(10.,1.0,1.0);//設置當前顏色狀態為白色
glBegin(GL_POLYGON);//繪制多邊形
glVertex3f(0.25, 0.25,0.0);
glVertex3f(0.75,0.25,0.0);
glVertex3f(0.75,0.75,0.0);
glVertex3f(0.25,0.75,0.0);
glEnd();
glFlush();//發送緩沖區
}
//初始化繪制
void init()
{
glClearColor(0.0,0.0,0.0,0.0);//清除顏色設置
glMatrixMode(GL_PROJECTION);//設置投影方式
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0,-1.0,1.0);設置投影空間
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);//初始化glut
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);//設置顯示模式為單緩沖,RGB模式
glutInitWindowSize(250,250);//設置窗口大小
glutInitWindowPosition(100,100);//設置窗口位置
glutCreateWindow("Hello");//設置窗口標題
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
有了上面的感性認識,接下來就可以進一步理解在 DEV C++ 中配置 OpenGL 的原理了
WINDOWS配置:
確保你的WINDOWS/SYSTEM32文件下有如下文件:
glu32.dll, glut32.dll, glut.dll, opengl32.dll
DEV C++庫的配置:
確保DEV C++安裝目錄下的Lib文件中有如下文件:
libglu32.a, libglut32.a, libglut.a, libopengl.a
其次確保inlude\GL文件中又如下頭文件:
gl.h, glu.h, glut.h,
DEV C++文件工程的屬性設置:
右鍵單擊工程,彈出菜單,點擊工程屬性,然後再彈出的表格中選擇參數項,右邊的連接器中輸入:
-lglut32
-lglu32
-lopengl32
-lwinmm
-lgdi32