OpenGL遊戲引擎開發[1]-環境搭建

前言

我的計劃是帶大家從零開始寫一個簡單的渲染引擎出來。當然,我不可能每行代碼都放在文章中,每節內容我們圍繞一個主題,我先講解原理,再講解OpenGL實現的關鍵代碼,然而我會把代碼給大家,大家自行查閱。一些基本的OpenGL知識,大家可以看 LearnOpenGL 的教程,這個教程是以知識點的形式給大家講的,我們在這裏是將這些知識點串起來實現一些效果,讓大家明白這些知識點在實戰中是如何運用的。

我們主要實現一些有意思的東西,比如:遊戲中的地形、天空盒、粒子系統、骨骼動畫,shader呢,以後可能單獨開個專題,專門介紹shader實現的一些效果。

好的,囉裏囉唆說了這麼多。OpenGL我也是在學習的過程中,講解的過程中難免出現錯誤或者理解不到位的地方,還請大家指正。

下面進入正題:

開發環境搭建

開發環境:

  • VS2015
  • GLFW
  • GLEW
  • glm

GLFW、GLEW、glm 是什麼東西,怎麼編譯,我就不說了啊。 LearnOpenGL 這個教程中講得很清楚了。如果你的開發環境不是VS2015,你就需要自己編譯,如果是的話,你直接用我後面給的源碼即可,我都編譯好了。

編譯過程中大家遇到問題的,可以給我留言,我儘量幫大家解決。

  1. 新建工程 Win32 控制檯程序。
  1. 然後關閉VS,我們調整下目錄結構

大家按照自己的習慣來啊,我是習慣這麼幹。總之保證你的目錄結構整潔就行,這個習慣很重要。

  1. 然後在VS中配置剛纔設置的目錄

配置輸出、臨時目錄

配置頭文件目錄

配置庫文件目錄

配置庫文件名稱

好了,這樣環境就搭建好了。下面我們來顯示主窗口。

顯示窗口

我們的主窗口是對GLFW窗口的封裝,現在很簡單,以後會根據需求擴充這個窗口類。

App類是程序的入口。從系統設計來講,引擎部分只實現圖形繪製相關的功能,上層應用就是在App中實現的。舉個例子:使用Unity開發遊戲,你不用關係怎麼加載一個遊戲角色,unity引擎會提供你這個功能,但是你需要自己寫一些邏輯代碼控制你這個角色,比如受傷之後會流血等等。我們做遊戲時,大部分時間就是在處理遊戲的邏輯。

這裏App就是用來編寫一些邏輯來測試我們寫的渲染引擎。

然後就是經典的main函數,代碼很簡單,就是啓動App類中的Run函數。

運行,效果很一般,就一個黑窗口。

ok,結束。很簡單。

下一節繼續來完善這個框架。

源碼:

下載:https://ww.lanzous.com/ic4j70h 密碼:67vv

歡迎大家關注我的公衆號【OpenGL編程】。

每天進步一點點,探索3D編程背後的技術細節,不再做只會“調包”的傻小白。以幽默風趣的行文風格,近乎白話文的專業知識講解,分享3D編程的心得、教程、算法,帶你走進3D編程的世界。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章