unity3d手遊專案的shader如何組織比較合理?

時間 2021-06-01 14:54:22

1樓:[已重置]

比如一部分是透明材質,一部分是實體材質,現在我們要拖動模型,那麼替換材質或者shader的時候就不能無腦的換成同乙個,還要判斷一下,使透明材質替換成透明材質用的fresnel,實體的替換成實體的fresnel,十分麻煩,而且不利於擴充套件。

2樓:FXCarl

切換材質,或者做個多pass材質

每一幀渲染其實都是要進行渲染狀態設定的,你改或不改,都要從 cpu 提交 gpu 一次

至於比較複雜的材質 mask。你確定 sm2 的移動 gpu 跑得動麼……估計全屏平均 ps 複雜度到 50 條指令就開始卡了吧

對於 sm3 及以下的 gpu

在材質裡做分支 < 乙個模型畫多pass

乙個模型多pass < 分件各自單pass桌面 gpu 的話材質做分支效率最高,移動 gpu 不好說,shader 本身不是太快,讀寫記憶體也不快,還耗電。。。

3樓:

手機編輯的,首先我們是用了sm3.0 測試了下我們支援的最低端機器,都支援了sm3.0了。

我們是用巨集來控制效果啟用與否的,但是unity當版本太多的時候,編譯效能是個很大的問題,所以即便用巨集來控制,也是盡可能的減少版本個數,去掉unity預設帶的多個版本。當然也有些效果如果計算不是很複雜也會用傳遞過來的引數來決定是否啟用某效果。

使用Unity3D開發HoloLens應用是怎樣的體驗?

免費打工仔 使用簡單,深入難。微軟的MRTK 2把大部分細節都封裝在裡面,你可以很容易的實現所有微軟提供給你的功能,當你要擴充套件的時候,就需要深入研究。我們做了三年多的開發,走過不少彎路,希望行業能越來越好,這樣我們才能賺點錢。 芥末兮兮 開發HoloLens應用有一小段時間了,去年上半年在公尺國...

Unity3D應該選擇哪個版本好用?

王某某 學習研究用最新版本。不用管穩定不穩定。一些小溝溝坑坑的也可以磨鍊你的填坑能力。狗頭.jpg 開發專案用最近的LTS版本2017.4 2018.4等。或者如果專案預計時間比較久 1 2年 的話,也可以用當年的新版本,等著最後更新到穩定版。如果有引擎團隊大幅改引擎的話,也不需要來問這個問題了。據...

OpenGL ES 和 Unity3D 是什麼關係?

joydchh OpenGL ES可以認為是OpenGL的子集,主要用於移動端的裝置。從中衍生出來的還有webGL,主要用於瀏覽器端的渲染。OpenGL和DirectX是目前比較通用的底層庫,各大顯示卡廠商也會為此在不同的顯示卡上編寫對應的driver,這些driver負責做最終的機器specifi...