uv.y = 1-uv.y;
uv = uv* 2.0 - 1.0;
float z = 1.0-abs(uv.x)-abs(uv.y);
float t = saturate(-z);
float x = uv.x + lerp(t,-t, saturate(sign(uv.x)));
float y = uv.y + lerp(t,-t, saturate(sign(uv.y)));
float3 n = normalize(float3(x,y,z));
return mul(n, (MaterialFloat3x3)(Parameters.TangentToWorld)); // ts->ws
UE UV2SmoothNormal
最新推荐文章于 2024-07-19 13:00:11 发布