/Utilities/Graphics/ShaderFeatures/IShaderFeature.cs
# · C# · 44 lines · 25 code · 3 blank · 16 comment · 0 complexity · d0314f0a17d1a69bcf6944fd243b0e10 MD5 · raw file
- using System.Collections.Generic;
-
- namespace Delta.Utilities.Graphics.ShaderFeatures
- {
- /// <summary>
- /// Interface for all ShaderFeatures.
- /// </summary>
- public interface IShaderFeature : ISaveLoadBinary
- {
- #region ShaderFeature (Public)
- /// <summary>
- /// Which shader feature flag is this ShaderFeature class using?
- /// Important for loading this file via ShaderData.LoadShaderFeature.
- /// Each flag should obviously only have one class for it!
- /// </summary>
- ShaderFeatureFlags ShaderFeature
- {
- get;
- }
- #endregion
-
- #region Parameters (Public)
- /// <summary>
- /// Parameters as a dictionary, will be generated on the fly when
- /// requested.
- /// </summary>
- Dictionary<string, object> Parameters
- {
- get;
- }
- #endregion
-
- #region RequiredShaderFeatures (Public)
- /// <summary>
- /// Which shader feature flags are required for this ShaderFeature.
- /// Very important for creating of a new ShaderFeature.
- /// </summary>
- ShaderFeatureFlags RequiredShaderFeatures
- {
- get;
- }
- #endregion
- }
- }