原著:http://lemonc.me/opengl-win10-vs2015-setting.html
以下內容經修改及增加許多細節
如今科技界已經讓 VR(虛擬實境)、AR(增強現實),3D列印等概念深入人心,其實這些火遍大江南北的概念背後,都與「電腦圖形學」這門學科的有著很大聯繫。但想要入門或學習電腦圖形學方面的程式設計,前期都需要花費一定的時間進行環境配置。圖形學程式設計環境的搭建,即使對於有程式設計經驗的人來說,雖然不難,但也會感到比較繁瑣,而且往往圖形學專案都會涉及到很多工具和庫。而電腦圖形學方面的程式設計,必不可少地會涉及到 OpenGL。
OpenGL的全稱是 OpenGraphics Library ,以下是引用自 OpenGL官方網站 的一段介紹:
OpenGL is the premier environment fordeveloping portable, interactive 2D and 3D graphics applications. Since itsintroduction in 1992, OpenGL has become the industry's most widely used andsupported 2D and 3D graphics application programming interface (API), bringingthousands of applications to a wide variety of computer platforms.
簡單來說,OpenGL就是一個功能強大、支持多個平臺、用於二維和三維圖形的底層圖形庫。
所以,為了讓大家更簡單地接觸 OpenGL程式設計,這篇文章將從零開始介紹搭建一個 OpenGL程式設計環境的過程,並給出背後的一些相關概念。考慮到讓這篇文章能在未來也保持一定的普適性和時效性,便選擇了已逐漸成為主流的 Windows 10 作業系統,以及 Visual Studio Community 2015 + FreeGLUT 2.8.1 + GLEW 2.0.0 的工具組合。
下面將會分別簡單介紹這幾個工具。
Visual Studio Community 2015
微軟為了促進 Windows 10的生態環境,決定將之前售價高昂的 Visual Studio開發工具最大限度地 “免費”提供給單個開發人員、開源專案、科研、教育以及小型專業團隊!從 VS 2013開始便推出了一個全新的「社區版」,也就是 Community版本。Community版本與以前免費的 Express版本相比,相當於集成了多個針對不同平臺的 Express版本,而且具有更多的功能和特性。Community版本的用戶能使用各種優秀強大的外掛程式,但 Express版本的用戶卻無法享用,因此更建議使用 Community版本。
FreeGLUT
GLUT的全稱為 OpenGLUtility Tookit。最初 Mark Kilgard為了使 OpenGL應用程式結構能夠真正獨立於視窗系統而構思了 GLUT庫。但由於 GLUT庫很早就已經不再維護更新,便誕生了與 GLUT庫相容的開源實現版本 FreeGLUT。FreeGLUT庫主要用來創建視窗,初始化 OpenGL的環境,管理使用者滑鼠、鍵盤的輸入,以及讓 OpenGL程式變得簡單和提升可攜性。
GLEW
GLM