summaryrefslogtreecommitdiffstats
path: root/2ner.cginc
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2025-02-19 23:42:46 -0800
committeryum <yum.food.vr@gmail.com>2025-02-19 23:42:46 -0800
commitcba7e1ab0bfa89b228955e18b47cf7aca2a84c9f (patch)
treefb138e6932281f220e30d3e75c9d6112174c60c5 /2ner.cginc
parent547c6064f6a8ab2749f496ce7ea2856e8cc1bcda (diff)
Add vertex domain warping gimmick
Diffstat (limited to '2ner.cginc')
-rw-r--r--2ner.cginc18
1 files changed, 18 insertions, 0 deletions
diff --git a/2ner.cginc b/2ner.cginc
index bc5f7f3..5cb5d71 100644
--- a/2ner.cginc
+++ b/2ner.cginc
@@ -38,6 +38,24 @@ v2f vert(appdata v) {
v.tangent *= -1;
#endif // OUTLINE_PASS
+#if defined(_VERTEX_DOMAIN_WARPING)
+ float3 basePos = v.vertex.xyz;
+ float offset = sin(_Time[0] * _Vertex_Domain_Warping_Speed) *
+ _Vertex_Domain_Warping_Temporal_Strength;
+ v.vertex.xyz = domainWarp3(v.vertex,
+ _Vertex_Domain_Warping_Spatial_Octaves,
+ _Vertex_Domain_Warping_Spatial_Strength,
+ _Vertex_Domain_Warping_Spatial_Scale,
+ offset);
+ float3 tangent_tmp = v.tangent.xyz;
+ domainWarp3Normals(v.normal, tangent_tmp, basePos,
+ _Vertex_Domain_Warping_Spatial_Octaves,
+ _Vertex_Domain_Warping_Spatial_Strength,
+ _Vertex_Domain_Warping_Spatial_Scale,
+ offset);
+ v.tangent.xyz = tangent_tmp;
+#endif
+
o.pos = UnityObjectToClipPos(v.vertex);
o.uv01 = v.uv01;
o.worldPos = mul(unity_ObjectToWorld, v.vertex);