剛放完元旦連續假期之後,整個人進入備戰一樣,開始趕shader物件導向。
今天終於給它趕完並且測試完畢,感覺上....滿順利似的XD
這機制的優點有:
1.有效提昇效率。(shader lod)
2.geometry綁的material相當有彈性。
3.管理顯示卡型號和廠商。
4.有彈性地支援特殊的技術。
5.post-pass和pre-pass更佳有彈性。
我就詳細說一下吧~
第一:
物件比較近的話,就執行比較優質的material;
物件離cmaera愈來愈遠時,
則會慢慢愈來愈劣質(fix material或是shader model 1.0)。
第二:
跟lod不一樣的是...他是一種特化方式。
雖然是特化,不過也還是有lod的表現。
如:開啟shadow,並且跟第一點一樣的特性(lod),
或則當人物碰到某一個物件時,馬上變成透明。
第三:
這點我想是每個遊戲公司很頭痛的事情,
尤其是負責Render Engine的engineerXD。
比如:要管理某張卡某個型號不能跑哪一種material,
或者某張卡某個型號跑此material時,要特別去「特化」。
所以很多遊戲廠商都直接定最低的顯示卡型號,
然後某某張卡不能跑此遊戲。(在console game常常看到)
但是在online game就不能這樣做了!
假如公司想開闊越南市場,如果去設定最低顯示卡為shader model 2.0,
保證會失去許多玩家,自然所賺的錢也會變少。
第四:
一個簡單例子:ATI的Tessellation技術。
(只有ATI的卡才能跑且需要ATI HD 2000以上的型號)
第五:
我負責的Render Engine,
他可以全支援所有關於post-process的shader。
(HDR或DOF還有SSAO....等)
但是有些物件特別奇怪(透明或alphatest),
除了可以完整的呈現出來之外,
還可以針對某些物件不需要納入post-process的運算,以提昇效率。
就這以上...。
這樣就結束了?
回頭看一下自己的backlog.....,恩...還早的很XD。
雖然以現有的機制,可以做出很可怕的東西,
不過課長是很貪心低(小聲說)
當然我也想趕快把架構給作大起來,趁現在還在開發中的時期,
等到專案啟動時,可能會很少去動架構了,必須要跟美術去磨合XD。
FastScene
9 個月前
沒有留言:
張貼留言