/Utilities/Graphics/ShaderFeatures/WaterShaderFeature.cs
C# | 90 lines | 52 code | 8 blank | 30 comment | 0 complexity | ee62b912f51ed037ee5ab187722bed1e MD5 | raw file
Possible License(s): Apache-2.0
1using System.Collections.Generic; 2using System.IO; 3 4namespace Delta.Utilities.Graphics.ShaderFeatures 5{ 6 /// <summary> 7 /// Water shader feature 8 /// </summary> 9 public class WaterShaderFeature : IShaderFeature 10 { 11 #region ShaderFeature (Public) 12 /// <summary> 13 /// Which shader feature flag is this ShaderFeature class using? 14 /// Important for loading this file via ShaderData.LoadShaderFeature. 15 /// Each flag should obviously only have one class for it! 16 /// </summary> 17 public ShaderFeatureFlags ShaderFeature 18 { 19 get 20 { 21 return ShaderFeatureFlags.Water; 22 } 23 } 24 #endregion 25 26 #region RequiredShaderFeatures (Public) 27 /// <summary> 28 /// Which shader feature flags are required for this ShaderFeature. 29 /// Very important for creating of a new ShaderFeature. 30 /// </summary> 31 public ShaderFeatureFlags RequiredShaderFeatures 32 { 33 get 34 { 35 return ShaderFeatureFlags.NormalMap; 36 } 37 } 38 #endregion 39 40 #region Parameters (Public) 41 /// <summary> 42 /// Parameters as a dictionary, will be generated on the fly when 43 /// requested. 44 /// </summary> 45 public Dictionary<string, object> Parameters 46 { 47 get 48 { 49 return new Dictionary<string, object>(); 50 } 51 } 52 #endregion 53 54 #region Constructors 55 /// <summary> 56 /// Create water shader feature 57 /// </summary> 58 public WaterShaderFeature() 59 { 60 } 61 62 // AlphaTestShaderFeature() 63 64 /// <summary> 65 /// Create water shader feature and load automatically 66 /// the ShaderFeatures from a binary data stream. 67 /// </summary> 68 public WaterShaderFeature(BinaryReader reader) 69 { 70 Load(reader); 71 } 72 #endregion 73 74 #region ISaveLoadBinary Members 75 /// <summary> 76 /// Load this ShaderFeature from a binary data stream. 77 /// </summary> 78 public void Load(BinaryReader reader) 79 { 80 } 81 82 /// <summary> 83 /// Save this ShaderFeature to a binary data stream. 84 /// </summary> 85 public void Save(BinaryWriter writer) 86 { 87 } 88 #endregion 89 } 90}