openGL學習心得(1)

實際的OpenGL庫的開發者通常是顯卡的生產商。你購買的顯卡所支持的OpenGL版本都爲這個系列的顯卡專門開發的。當你使用Apple系統的時候,OpenGL庫是由Apple自身維護的。在Linux下,有顯卡生產商提供的OpenGL庫,也有一些愛好者改編的版本。

由於OpenGL的大多數實現都是由顯卡廠商編寫的,當產生一個bug時通常可以通過升級顯卡驅動來解決。這些驅動會包括你的顯卡能支持的最新版本的OpenGL,這也是爲什麼總是建議你偶爾更新一下顯卡驅動。

OpenGL自身是一個巨大的狀態機(State Machine):一系列的變量描述OpenGL此刻應當如何運行。OpenGL的狀態通常被稱爲OpenGL上下文(Context)。我們通常使用如下途徑去更改OpenGL狀態:設置選項,操作緩衝。最後,我們使用當前OpenGL上下文來渲染。

在我們畫出出色的效果之前,首先要做的就是創建一個OpenGL上下文(Context)和一個用於顯示的窗口。然而,這些操作在每個系統上都是不一樣的,OpenGL有目的地從這些操作抽象(Abstract)出去。這意味着我們不得不自己處理創建窗口,定義OpenGL上下文以及處理用戶輸入。

幸運的是,有一些庫已經提供了我們所需的功能,其中一部分是特別針對OpenGL的。這些庫節省了我們書寫操作系統相關代碼的時間,提供給我們一個窗口和上下文用來渲染。最流行的幾個庫有GLUT,SDL,SFML和GLFW。在教程裏我們將使用GLFW

GLFW是一個專門針對OpenGL的C語言庫,它提供了一些渲染物體所需的最低限度的接口。它允許用戶創建OpenGL上下文,定義窗口參數以及處理用戶輸入,這正是我們需要的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章