1-安裝OpenGL-Windows10+Visual Studio 2017

OpenGL包括兩個部分,OpenGL工具函數(shù)庫(GLU)和OpenGL實用工具庫(GLUT),幸運的的是Visual Studio在安裝的時候就安裝了GLU,所以我們只要安裝GLUT就好。

GLUT有很多版本,不過不同版本之間的差異不會很大,因為GLUT編寫的目的是隱藏不同的窗口系統(tǒng)API所帶來的復(fù)雜性。這里我們選用了官網(wǎng)提供的GLUT(點擊下載)版本。

下載下來是一個壓縮包,將這個壓縮包解壓到我們的開發(fā)目錄下,最好是一個專門用來安裝程序的盤,比如我就將壓縮包解壓到E盤,目錄結(jié)構(gòu)是這樣的:

E:\OPENGL
└─glut
        glut.dll
        glut.h
        glut.lib
        glut32.dll
        glut32.lib

接下來我們打開Visual Studio,建立一個控制臺項目。網(wǎng)上有很多教程直接把解壓出來的文件放到Visual Studio的安裝目錄下面,這樣雖然能夠正常使用,但是并不好。所以我們還是使用正常的方法來配置OpenGL,學(xué)了這一招以后所有的配置都可以按照這個方法來啦,比如OpenCV、darknet之類的庫。

我們先用這個方法配置好OpenGL,然后再講類似的庫如何配置。

首先切換到創(chuàng)建好的項目中,打開屬性管理窗口,主界面沒有的可以從窗口中找到。在屬性管理窗口中我們可以看到四個環(huán)境,分別是Debug x86、Release x86、Debug 64、Release 64,右鍵點擊我們正在使用的環(huán)境->屬性。



打開屬性之后點擊VC++目錄,我們可以看到包含目錄、庫目錄,依次點擊這兩個選項,將我們解壓GLUT的目錄添加進(jìn)去。

再點擊調(diào)試->環(huán)境,將GLUT的解壓目錄添加進(jìn)去,注意這里的等號兩邊不能有空格,否則會配置失敗,提示找不到glut.dll文件。

然后點擊鏈接器->輸入->附加依賴項,將GLUT解壓目錄里后綴為 .lib 的文件名全部添加上去,最后點擊確定保存配置,運行下面的代碼檢查是否配置成功。

#include "pch.h"
#include<Windows.h>
#include<gl/glut.h>

void display() {
    glClearColor(0.5, 0.5, 0.5, 0.5);
    glClear(GL_COLOR_BUFFER_BIT);
    glColor3f(1.0, 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() {
    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);
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(800, 600);
    glutCreateWindow("OpenGL-ONE");
    init();
    glutDisplayFunc(display);
    glutMainLoop();
    return 0;
}

最后我們再來詳細(xì)講一下各個配置的含義:

  • 包含目錄:這個是頭文件所在目錄,也就是后綴為 .h的文件所在的目錄,一般文件夾名字是 include之類。
  • 庫目錄:這個是庫文件所在目錄,即后綴為 .lib 的文件所在的目錄,一般存放庫文件的目錄名為 lib之類。
  • 環(huán)境:這個是windows動態(tài)庫文件所在的目錄,后綴名為 .dll,一般和庫文件放在一起
  • 附加依賴項:附加依賴向指的就是所有的

在我們這個例子中上面發(fā)目錄都是同一個,這是因為GLUT把所有的文件全部放在一個文件夾里了,如果是OpenCV的話就會有include、lib之類的目錄。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容