Unity Shader——移動端Shader的優化(Optimize Shader)

本篇參考書《Unity Shaders and Effects CookBook》。


首先講簡單的Shader  Cheap Shader,輕量級Shader主要是內存佔用量,貼圖使用量,還有數據使用量來優化。




下面詳細講講那些優化

1.改變變量類型(降低內存)


首先講一下幾種變量類型:
  • float:32位浮點數據,對應的值有float2,float3,float4,後面的數據代表數組,比如float2(1.0f,1.0f)
  • half:16位浮點數據,使用與存儲uv數值,顏色數值,比使用float值快很多,對應的值有half2,half3,half4
  • fixed:12位定點數,用於燈光顏色的計算,對應的值有fixed2,fixed3,fixed4.

下面我們舉例兩種類型的改變:

一:改變uv數值類型,由float改爲half


更改前:


更改後:



二:改變燈光顏色計算中的數值類型


燈光計算:






顏色計算:




2.關閉渲染附加通道(reduce lights Shader process)或者直接指定渲染


關閉渲染附加通道:





指定渲染:



類似的還有:


3.共享UV(Sharing UVS)





去掉法線貼圖的輸入,使用UnpckNormal共享uv。


4.根據Unity自帶的性能分析器控制




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章