使用OpenGL一年后
之前上學時使用了一段時間OpenGL,后來就沒用了,現在在這公司有開始使用OpenGL了,使用了一年多,也真是感觸良多啊,今天隨筆記下來,說兩句,思路也可能有點亂,別介意。
先推薦基本書,OpenGL超級寶典第四版和第五版,OpenGL ES 3.0編程指南。
OpenGL發展到現在有固定管線和可編程管線,一個VBO頂點的使用方式也有多種方式,各種OpenGL風格代碼也都有,但好好讀OpenGL超級寶典第四版和第五版就都明白了,OpenGL ES 3.0一書雖然書名是3.0版本的,但2.0和3.0的區別也很細致講了,不錯。
固定管線和可編程管線編程有不少不同,因為負責了整個OpenGL底層從固定管線到可編程管線的代碼移植,體會頗深。當然也沒啥難的,主要很多接口函數搞清楚,當然還有桌面端和移動端OpenGL底層原理的一點區別,有些函數性能是不一樣的。
在這里的話,一直在負責OpenGL及Shader代碼的開發,OpenGL及其Shader語言也算是滾瓜爛熟了,坑真是填了不少啊,很多時候都是在填坑啊,OpenGL基本的特性都摸熟了。
列舉幾個值得注意的問題:
1.Shader中texture函數在IOS設備高低端性能差異很明顯。
2.繪制天空盒效率,紋理填充率,繪制順序等問題。
3.Shader中高低精度的效率及表現等
4.OpenGL函數調用要規范,如果很多不規范調用,雖然對最終結果影響較小,但總是不好的,多檢查下每個函數調用是否合乎OpenGL的用法
作為負責OpenGL底層代碼的人,想起自己在2014年負責用Flash AS3語言開發頁游的整個界面系統經歷,真是有很多類似之處啊。
我們程序員,或者說是一名技術員在職責價值所在就是對自己所使用的工具,如OpenGL,AS3等摸清楚它們的特性,各個函數的基本用法,各個函數在各種平臺上的性能,然后根據領導設定的目標,想法設法完成,當然這些性能的極限是存在的,但我們一定要摸到這個瓶頸,在當前這個性能極限的限定的情況下,做到最優,而且經過研究,我們程序員也是完全可以做到最優解。而且如果要使用一些經典的算法,并不是放之四海而皆準的,必須要深刻理解它們的本質,再結合當前的情況來進行一些適當的改進,我想這也是技術員的工作職責所在,這個和發論文的科研人員往往是不一樣的,他們一般是提出新的概念理念等,涉及的實際情況較少,論文的應用場景有很大限制,所以很多這些只能作為一種參考,并不能完全照搬。這當然也是技術和科研人員的價值區別了。
轉載于:https://www.cnblogs.com/liding/p/6424169.html
總結
以上是生活随笔為你收集整理的使用OpenGL一年后的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python之 启动一个子进程并等待其结
- 下一篇: python标准库