Exemple #1
0
 /// <summary>
 /// 初期化
 /// </summary>
 public void Initialize(WaveParameter parameter, NativeArray <float> waveArray, Material material)
 {
     this.parameter = parameter;
     this.waveArray = waveArray;
     resolution     = new Vector2Int(parameter.NumX, parameter.NumY);
     CreateMesh(material);
 }
Exemple #2
0
 public void SetWaveParameters(int i, WaveParameter parametres)
 {
     string propertyName = "_Wave" + (i + 1).ToString() + "Parameters";
     if (m_seaMaterial.HasProperty(propertyName))
     {
         Vector4 propertyValue = new Vector4(parametres.angle * Mathf.Deg2Rad,
                                             parametres.radius,
                                             parametres.period,
                                             parametres.waveLenght);
         m_seaMaterial.SetVector(propertyName, propertyValue);
     }
     propertyName = "_Wave" + (i + 1).ToString() + "GroupParam"; // OK for seaShader version 4
     if (m_seaMaterial.HasProperty(propertyName))
     {
         Vector4 propValue = new Vector4(parametres.density, parametres.advance);
         m_seaMaterial.SetVector(propertyName, propValue);
     }
     propertyName = "_Wave" + (i + 1).ToString() + "density"; // OK for seaShader version 3
     if (m_seaMaterial.HasProperty(propertyName))
     {
         float density = parametres.density;
         m_seaMaterial.SetFloat(propertyName, density);
     }
     propertyName = "_Wave" + (i + 1).ToString() + "advance"; // OK for seaShader version 3
     if (m_seaMaterial.HasProperty(propertyName))
     {
         float advance = parametres.advance;
         m_seaMaterial.SetFloat(propertyName, advance);
     }
 }