Unity 自定義Shader 與 內建Shader 如何整合比較好?

時間 2021-05-11 23:26:23

1樓:

如果你做的是自己的學習專案,那都可以搞。如果是線上產品,慎用任何材質外掛程式,也不要有這種copy乙份原始碼自己造一套的事情了,shaderlab和shaderlink導致的效能問題後期會出事的。而且你就算不copy在build in下你照樣可以在自己的shader裡用內建shader的各種核心,前提是你足夠熟悉內建的那套。

如果目標平台是移動平台,建議LWRP深度定製了。

2樓:

沒看懂你要幹嘛, 你想建立材質的時候直接用自己的shader, 然後需要的時候也能呼叫系統的?

首先unity 內建的所有shaderlab 你自己寫的shader 都可以直接訪問。 如果你想替換unity內建shader, 直接在你的專案裡建立同名shader 就override了。 如果你還想拿出來, 建立乙個其他名字的shader 然後 default 到系統shader上就好了。

現在有新的圖形學管線了,貌似直接可以自定義, 不過還沒時間看。

3樓:無名劍

一般都是自製shader,內建那套變種太多了,而且不見得適用。

SRP那套目前不成熟,GC很嚴重。建議等官方維護穩定再用,否則大概率被坑。

如果非要用,可使用最新的LWRP,要把之前寫的cg換成hlsl。

4樓:飛雨

你都已經敢這麼玩了,那SPR就可以嘗試上手了,我個人遇到你這種問題的時候,都是依靠Shader forge,ASE,Shader Graph等外掛程式協助處理即可。

keras如何自定義triplet loss損失函式?

周周周 請問我想用keras自定義loss函式,loss y true 0 log y pred y true 0 log 1 y pred 我在實現過程中老是報錯,能麻煩您指導下嗎 其中 x 表示滿足x條件返回1 否則返回0 Rainman 22 這種操作是可以的。我用keras試驗過可行。但是最...

Swift Haskell 等可以自定義運算子的語言(不僅是過載),實現編譯器時跟其他語言有什麼區別?

深海 其他語言我不太了解,簡單說一下 Swift 的實現.Swift Haskell 還有不少函式式語言實現運算子的思路是一樣的 規定運算子必須由某些特殊字元構成,且這些字元和構成識別符號 identifier 的字符集的交集為空.這樣一來,lexer 就很簡單了,和傳統編譯器沒差.除了中綴 二元 ...

自定義android studio的配置檔案目錄後,無法正常安裝和解除安裝外掛程式,是何原因?

大攀 這個問題我解決了,應該是配置plugins路徑的問題,直接貼修復好的配置 idea.config.path D AndroidStudio2.0 config Uncomment this option if you want to customize path to IDE system f...