本人完全新手缭付,這里只是記錄一些學(xué)習(xí)過程中一些點(diǎn)點(diǎn)滴滴拆火。因?yàn)榈谝淮翁剿鳎赃x擇了中文資料作為入門宜猜。
一泼返、基本概念
OpenGL,全稱Open Graphics Library宝恶,翻譯為開放圖形庫符隙,是用于渲染2D、3D矢量圖的跨平臺垫毙、跨語言的規(guī)范(維基百科說是應(yīng)用程序接口API霹疫,但是官方的翻譯說是規(guī)范)。OpenGL規(guī)范嚴(yán)格規(guī)定了每個函數(shù)的執(zhí)行和輸出值综芥。
1丽蝎、核心模式和立即渲染模式
立即渲染模式是一種早期使用的模式,也被稱為固定渲染管線膀藐。該模式繪制圖形方便屠阻,但是限制了開發(fā)者的自由,因?yàn)楹芏鄮斓墓δ芏急浑[藏起來了额各。
核心模式使用現(xiàn)代函數(shù)国觉,當(dāng)使用廢棄函數(shù)的時候,程序會終止并停止繪圖虾啦。
2麻诀、擴(kuò)展
OpenGL的一大特性就是對擴(kuò)展(Extension)的支持,當(dāng)一個顯卡公司提出一個新特性或者渲染上的大優(yōu)化傲醉,通常會以擴(kuò)展的方式在驅(qū)動中實(shí)現(xiàn)蝇闭。如果一個程序在支持這個擴(kuò)展的顯卡上運(yùn)行,開發(fā)者可以使用這個擴(kuò)展提供的一些更先進(jìn)更有效的圖形功能硬毕。通過這種方式呻引,開發(fā)者不必等待一個新的OpenGL規(guī)范面世,就可以使用這些新的渲染特性了吐咳,只需要簡單地檢查一下顯卡是否支持此擴(kuò)展逻悠。通常,當(dāng)一個擴(kuò)展非常流行或者非常有用的時候韭脊,它將最終成為未來的OpenGL規(guī)范的一部分蹂风。
3、狀態(tài)機(jī)
OpenGL本身就是一個巨大的狀態(tài)機(jī)乾蓬,它依靠一系列的變量來告訴OpenGL該如何運(yùn)行惠啄。OpenGL的狀態(tài)也通常被稱為上下文Context(好熟悉的感覺)。
所以更改狀態(tài)的基本步驟是:設(shè)置選項(xiàng)、操作緩沖撵渡、更新上下文融柬。
4、對象
二趋距、準(zhǔn)備工作
因?yàn)楸救擞玫氖荕ac粒氧,對網(wǎng)上的資料做了一個大致的搜索和歸納,最后總結(jié)如下:
1节腐、去這里下載GLFW外盯,
2翼雀、去這里下載GLEW饱苟,
3、打開終端狼渊,cd到保存GLEW的目錄下箱熬,先執(zhí)行make extensions或者make命令,等待完成狈邑;
4城须、繼續(xù)輸入make install命令等待完成,則GLEW安裝完成了米苹;
5糕伐、去這里下載CMake,用來編譯GLFW的蘸嘶;
6良瞧、在你方便的位置建立一個空的文件夾,名字你隨意吧亏较,一般都叫做build莺褒;
7掩缓、打開CMake雪情,看到如下界面:
8、點(diǎn)擊Configure你辣,一路默認(rèn)下去即可巡通。
9、點(diǎn)擊第4步中的Generate即可舍哄。當(dāng)控制臺輸出“Configuring done”和“Generating done”時宴凉,表示已經(jīng)構(gòu)建完成;
10表悬、打開終端弥锄,cd并進(jìn)入你第3步創(chuàng)建的文件夾內(nèi),此時,這里面應(yīng)該有很多文件了
11籽暇、在終端輸入make命令温治,等待完成
12、在終端輸入make install命令戒悠,等待完成
13熬荆、打開Xcode,創(chuàng)建一個C++工程
14绸狐、在Xcode里的Preferences下的Locations下卤恳,選擇Custom Paths,按下圖添加兩個通用名稱:
15寒矿、在工程的配置文件里即Build Settings下突琳,找到Search Paths,如下圖所示做如下操作:
16劫窒、在工程配置的Build Phases里面本今,加入系統(tǒng)的OpenGL.framework框架即可,這一步必須有主巍,否則會報錯嵌削。
17道盏、在工程配置Build Phases里面,按照下圖步驟加入需要的兩個庫:libGLEW.2.1.0.dylib和libglfw.3.3.dylib
18、大功告成染坯!接著就可以開始進(jìn)行開發(fā)了!i泡骸喷兼!