反射角cg unity3D
Reflection angle cg unity3D
我有一个平面,上面有一个 cg 着色器,告诉平面反映立方体贴图。这一行告诉它需要如何反映立方体贴图:
float3 reflectDir = reflect(viewDirection,v.normalWorld);
- 正常世界是正常方向
如果你正视法线,我希望反射为 0%,如果你从侧面看法线,我希望反射为 100%,我该如何实现?现在我做了一个我想要的插图:
reflectPercent = Vector3.Cross(viewDirection.normalized, normalDirection.normalized).magnitude;
点积错误 - 它是一个向量在另一个向量上的 投影 的大小。
虽然你可以使用
reflectPercent = Abs(1-Abs(Vector3.Dot(viewDirection.normalized, normalDirection.normalized)));
我有一个平面,上面有一个 cg 着色器,告诉平面反映立方体贴图。这一行告诉它需要如何反映立方体贴图:
float3 reflectDir = reflect(viewDirection,v.normalWorld);
- 正常世界是正常方向
如果你正视法线,我希望反射为 0%,如果你从侧面看法线,我希望反射为 100%,我该如何实现?现在我做了一个我想要的插图:
reflectPercent = Vector3.Cross(viewDirection.normalized, normalDirection.normalized).magnitude;
点积错误 - 它是一个向量在另一个向量上的 投影 的大小。
虽然你可以使用
reflectPercent = Abs(1-Abs(Vector3.Dot(viewDirection.normalized, normalDirection.normalized)));