彎曲跑道Shader

2021-07-30 09:04:40 字數 923 閱讀 6599

1: 在vertex and fragment shader中,在渲染階段控制物體頂點的偏移,可以動態做出一些不錯的效果,其一就是跑酷常見的路面彎曲效果。

2: 消耗~~幾乎沒增加什麼渲染負擔。

4:**

shader

"custom

/testcurved

"_what("

what",

float

) = 

200}

subshader

;v2f

vert(v

)half4

frag

(v2f

i) : 

color

endcg}}

fallback

"diffuse"}

4: 有趣的相關

將物體空間的頂點轉化到相機空間。由此,相機為原點的座標系內,開始計算彎曲。

float4

vpos

= mul

(unity_matrix_mv

, vertex);

拋物線公式。相機為原點的拋物線. float4的x,y,z,w. 調整x,y,z可以實現道路在3d空間的彎曲程度。

(z軸正向指向螢幕內,x軸正向左->右,y軸正向下->上)

float

zoff

= vpos.z

/200

; // 不至於彎曲的過於厲害。

vpos

+= float4(0

,-30,0

,0)*zoff

*zoff;

這裡的:

vpos

+= float4

(-15,0

,0,0

)*zoff

*zoff

; float4數值,可以根據自定義需要修改相上下左右彎曲

彎曲的木棍

總時間限制 1000ms 記憶體限制 65536kb 描述 1 n c l 輸入輸入包含多行,每行輸入包括3個非負數 細木棍的初始長度l,溫度的變化n,材料的熱膨脹係數c。輸入資料保證細木棍伸長的長度不會超過原長的一半,最後一行為3個 1,不做處理。輸出對每一行輸入,輸出細木棍的中心在受熱前後移動的...

彎曲圓波導matlab 彎曲波導結構設計

實驗三 彎曲波導結構設計 一 實驗目的 掌握彎曲波導的結構 工作原理 了解彎曲波導的分析方法及其 技術 二 實驗原理 在以玻璃為代表的透明介質襯底的表面上,附著上折射率比襯底略高 厚度可以與光波長相比較的薄膜,光就會被封閉於這種高折射率的薄膜層內構成波 導。在二維光波導的情況下,只有沿厚度方向對光是...

Flutter繪製彎曲虛線

修改main.dart檔案 import package flutter material.dart override widget build buildcontext context class drawingpage extends statelesswidget class curvepai...