Unity3d中水无法显示波纹等动态效果的解决
更新:HHH   时间:2023-1-7


这个问题是Unity 4.5版本的一个bug,导入的"Water(Basic)"中的水显示出来没有波浪等动态效果


解决办法:

一:导入完整的4.3版本的 Water(Basic)


二:修改 Water(Basic) -> Sources -> Shade -> FX-Water Simple.shader 

// unity 4.3.0
// line 45
  temp.xyzw = v.vertex.xzxz * _WaveScale / unity_Scale.w + _WaveOffset;
// line 50
  o.viewDir.xzy = normalize( ObjSpaceViewDir(v.vertex) );
  
// unity 4.5.0
// line 45
  temp.xyzw = v.vertex.xzxz * unity_Scale.xzxz * _WaveScale + _WaveOffset;
// line 50
  o.viewDir.xzy = normalize( WorldSpaceViewDir(v.vertex) );


返回游戏开发教程...