Shader編寫的注意

2021-08-16 03:39:42 字數 414 閱讀 6718

相容性

1、注意小數點,在部分手機內會出現float資料存在小部分偏差。

2、盡量少的在將函式當成結果放入到另外乙個函式中,例如

vec4 color = getcolor(getwidget(), getpos());

3、減少if和for的運用,在不同手機內部相容性存在問題

4、避免if內的break和return操作, 特別是if

5、謹慎對待陣列

6、使用swizzle是非常快的,例float4 a = float4(1,1,1,1),用a.wz = float2(2,3)要比 a.w=3; a.z=2要高效很多

7、abs等內建函式盡量使用float

8、for和if的判斷條件盡量不用uniform和attribute值,特別是for

9、盡量使用內建函式

vs中編寫shader設定高亮

經測試,以下兩種方法在vs2013上都有效。方法一 1.建立或編輯usertype.dat檔案 此檔案在vs安裝目錄下的common7 ide下面,比如我的就在d program files microsoft visual studio 8 common7 ide usertype.dat 新增如...

caffe prototxt 編寫注意

這個是要參考的,裡面有各種引數的說明。layer transform param data param 這個裡面,mean file 和 scale都要放在transform param中,雖然caffe.proto中也有規定data param中也可以,但是實測不可以,也許是transform p...

解讀Unity中的CG編寫Shader系列三

在上乙個例子中,我們得到了由mesh元件傳遞的資訊經過數學轉換至合適的顏色區間以顏色的形式著色到物體上。這篇文章將要在此基礎上研究片段的擦除 discarding fragments 和前面剪裁 後面剪裁 front face culling and back face culling 來達到透明效...