于實現(xiàn)了自己的軟渲染器,圖形學的學習暫時告一段落。代碼參考知乎上的韋易笑大神的回答,自己加入了很多功能包括:
將原來的Gouraud著色改為phong著色
加入一個平行光和4個點光源,物體材質(zhì)
背面剔除
利用libpng讀取外部紋理
實現(xiàn)雙線性紋理濾波和mipmap
完整實現(xiàn)3D裁剪算法
簡單的投影
利用sdl2實現(xiàn)了mac、ios、windows多平臺支持
3D漫游和object簡單封裝
知乎我的回答鏈接
工程目錄:
external:依賴庫文件
project:多平臺項目工程以及跟平臺相關(guān)代碼
resources:核心代碼和資源
依賴庫:
跨平臺的多媒體開發(fā)函數(shù)庫,非常好用,cocos2dx也使用到了它哦
版本是SDL2-2.0.5,我已經(jīng)交叉編譯成了靜態(tài)庫,可以直接使用
跨平臺的png格式讀取處理庫,如果靜態(tài)庫有問題,可以下載源代碼下載地址,自行編譯