Visual Studio Community 2017 配置 OpenGL 環境 (NuGet)

安裝 VS Community 2017

OpenGL 庫須要綁定相應的語言環境,這裏本人選擇的Windows下的VC++,它被包含於Visual Studio中.函數

  1. 下載VS 2017:VS Community 2017 官網
  2. 安裝VS 2017:一路next,工做負載選擇使用C++ 的桌面開發

新建C++ 項目

  1. 依次點擊文件 -> 新建 -> 項目 或者 Ctrl Shift N使用快捷鍵新建項目.
  2. 類型:Windows 控制檯應用程序
  3. 名稱:OpenGLDemo.
  4. 肯定.

添加 NuGet 包管理器

NuGet 組件能夠方便對各種函數庫的管理, 經過NuGet包管理來方便安裝nupengl.core包, 省去了手動添加OpenGL各種庫的配置(每每還配置的很繁瑣,教材版本陳舊,報錯還多).工具

NuGet包管理器, 在Visual Studio 2017 中時提供了安裝可選,可是默認不會安裝, 下面添加.oop

  1. 菜單欄 -> 工具 -> 獲取工具和功能 -> 給予權限.
  2. 在打開的選項中選擇單個組件 -> 下拉找到 代碼工具一欄 -> NuGet包管理器,打上勾,安裝更新,
  3. 屏幕彈出開始以前的提示信息後,選擇繼續關閉工程更新組件.
  4. 等待安裝完成.

注意: VS 2015 版本中不集成該組件,沒法經過上述方法安裝, 可在 Nuget中下載並安裝.測試

添加 nupengl.core 包

  1. 點擊項目 -> 管理NuGet程序包
  2. 點擊瀏覽
  3. 搜索 nupengl
  4. 點擊 nupengl.core ,下載它.
  5. 查看下方有已完成字樣時,關掉NuGet包管理器選項卡.

測試是否配置成功

  1. 打開左側源文件,OpenGLDemo.cpp
  2. 將其代碼清空:Ctrl A, Delete
  3. 將下列代碼複製進去, 運行本地測試。
    // OpenGLDemo.cpp: 定義控制檯應用程序的入口點。
    //
    #include "pch.h"
    
    #include "stdafx.h"
    #include <gl/glut.h>
    
    void renderWindow(void)
    {
        glClear(GL_COLOR_BUFFER_BIT);                           //當前背景色填充窗口
        glColor3f(1,0,0);                                       //顏色:RGB.此處R:1,爲紅色.
        glBegin(GL_TRIANGLES);                                  //開始:三角形
        glVertex2f(-0.5f, -0.5f);                               //三個頂點座標:
        glVertex2d(0.5f, -0.5f);
        glVertex2d(-0.0f, 0.5f);
        glEnd();                                                //結束
        glFlush();                                              //輸出緩衝區 
    }
    int main(int argc, char *argv[])                            //主函數: 參數數量&參數值
    {
        glutInit(&argc, argv);                                  //初始化glut: 接收主函數的參數
        glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);            //顯示模式:顏色&緩衝
        glutInitWindowPosition(0, 0);                           //窗口相對屏幕位置
        glutInitWindowSize(720, 720);                           //窗口大小
        glutCreateWindow("Hello, OpenGL!");                     //建立窗口: 標題
        glutDisplayFunc(&renderWindow);                         //顯示函數
        glutMainLoop();                                         //循環
        return 0;
    }

相關文章
相關標籤/搜索