using Godot; namespace Rokojori { public class FadeWipe { public static readonly CachedResource shader = new CachedResource( "res://addons/rokojori_action_library/Runtime/Shading/Shaders/Wipes/FadeWipe/FadeWipe.gdshader" ); public static readonly FloatPropertyName wipeState = FloatPropertyName.Create( "wipeState" ); public static readonly Vector2PropertyName outputViewSize = Vector2PropertyName.Create( "outputViewSize" ); public static readonly Vector2PropertyName wipeTextureSize = Vector2PropertyName.Create( "wipeTextureSize" ); public static readonly ColorPropertyName wipeTextureTint = ColorPropertyName.Create( "wipeTextureTint" ); public static readonly FloatPropertyName uvRotation = FloatPropertyName.Create( "uvRotation" ); public static readonly Vector2PropertyName uvRotationCenter = Vector2PropertyName.Create( "uvRotationCenter" ); public static readonly FloatPropertyName uvScale = FloatPropertyName.Create( "uvScale" ); public static readonly Vector2PropertyName uvScaleCenter = Vector2PropertyName.Create( "uvScaleCenter" ); public static readonly Vector2PropertyName uvTranslation = Vector2PropertyName.Create( "uvTranslation" ); public static readonly Texture2DPropertyName wipeTexture = Texture2DPropertyName.Create( "wipeTexture" ); } public partial class FadeWipeMaterial:CustomMaterial { public readonly CustomMaterialProperty wipeState; public readonly CustomMaterialProperty outputViewSize; public readonly CustomMaterialProperty wipeTextureSize; public readonly CustomMaterialProperty wipeTextureTint; public readonly CustomMaterialProperty uvRotation; public readonly CustomMaterialProperty uvRotationCenter; public readonly CustomMaterialProperty uvScale; public readonly CustomMaterialProperty uvScaleCenter; public readonly CustomMaterialProperty uvTranslation; public readonly CustomMaterialProperty wipeTexture; public FadeWipeMaterial() { Shader = FadeWipe.shader.Get(); wipeState = new CustomMaterialProperty( this, FadeWipe.wipeState ); outputViewSize = new CustomMaterialProperty( this, FadeWipe.outputViewSize ); wipeTextureSize = new CustomMaterialProperty( this, FadeWipe.wipeTextureSize ); wipeTextureTint = new CustomMaterialProperty( this, FadeWipe.wipeTextureTint ); uvRotation = new CustomMaterialProperty( this, FadeWipe.uvRotation ); uvRotationCenter = new CustomMaterialProperty( this, FadeWipe.uvRotationCenter ); uvScale = new CustomMaterialProperty( this, FadeWipe.uvScale ); uvScaleCenter = new CustomMaterialProperty( this, FadeWipe.uvScaleCenter ); uvTranslation = new CustomMaterialProperty( this, FadeWipe.uvTranslation ); wipeTexture = new CustomMaterialProperty( this, FadeWipe.wipeTexture ); } } }