unity渲染知識點 mask

2021-10-05 11:39:42 字數 566 閱讀 4918

攝像機的前方是z軸的負方向,為了統一計算unityobjecttoviewpos(i.vertex)*float3(-1,-1,1);

10.計算螢幕空間uv 先在頂點shader中o.uv = unityobjecttoclippos(i.vertex);轉到裁剪空間

第二部在片源shader中進行齊次除法uv = i.uv.xy/i.uv.w

11.深度紋理取樣 depth = sample_depth_texture(_cameradepthtexture,uv);前向渲染需要在攝像機上開啟深度

延遲渲染不需要

12.陰影隨距離遠近消失 project setting ->qulity-> shadows->shadowdistance

13.shader原始碼 editor->data->cgincludes

14.透明物體加影子 fallback"transparent/cutout/vertexlit"

15.noramlmap取樣後得到物體坐繫標下的法線,再轉到世界空間座標系下

16.紋理取樣精度不夠的的時候 _maintex_float 後面加_float提高精度

unity知識點小結

1 通過gameobject.find 玩家物體 getcomponent 獲取玩家的player指令碼 2 quaternion.identity就是指quaternion 0,0,0,0 就是每旋轉前的初始角度,是乙個確切的值,而transform.rotation是指本物體的角度,值是不確定的...

Unity 開發小知識點

1 gear vr中多相機切換時 主相機在轉動之後,切換到副相機,unity會自動把當前頭盔的旋轉與副相機的初始狀態之間的偏移加到副相機上,使副相機也旋轉到與主相機相同的位置並且這個過程需要一點時間。2 當canvas的rendermode是cameraspace時,orderinlayer不起作用...

Unity知識點大彙總

指令碼生命週期 每當指令碼被載入時呼叫一次 1.在awake中做一些初始化操作 void awake 在第一次呼叫update之前呼叫一次start,即使取消啟用,再啟用也不會再執行 3.在start中做一些初始化操作 void start 5.在update方法呼叫完之後呼叫 void lateu...