rj-action-library/Runtime/Shading/Shaders/Billboards/QuadBillboard/QuadBillboardMaterial.cs

136 lines
10 KiB
C#
Raw Normal View History

2025-03-25 06:58:53 +00:00
using Godot;
namespace Rokojori
{
// Generated by ShaderClassGenerator
public class QuadBillboardShader
{
public static readonly CachedResource<Shader> shader = new CachedResource<Shader>(
"res://addons/rokojori_action_library/Runtime/Shading/Shaders/Billboards/QuadBillboard/QuadBillboard.gdshader"
);
public static readonly FloatPropertyName size = FloatPropertyName.Create( "size" );
public static readonly FloatPropertyName randomPosition = FloatPropertyName.Create( "randomPosition" );
public static readonly ColorPropertyName albedo = ColorPropertyName.Create( "albedo" );
public static readonly FloatPropertyName rotation = FloatPropertyName.Create( "rotation" );
public static readonly FloatPropertyName rotationNoiseAmount = FloatPropertyName.Create( "rotationNoiseAmount" );
public static readonly FloatPropertyName rotationNoiseScale = FloatPropertyName.Create( "rotationNoiseScale" );
public static readonly FloatPropertyName normalBlendAmount = FloatPropertyName.Create( "normalBlendAmount" );
public static readonly Vector3PropertyName normalBlendDirection = Vector3PropertyName.Create( "normalBlendDirection" );
public static readonly FloatPropertyName roughness = FloatPropertyName.Create( "roughness" );
public static readonly FloatPropertyName metalness = FloatPropertyName.Create( "metalness" );
public static readonly FloatPropertyName specular = FloatPropertyName.Create( "specular" );
public static readonly FloatPropertyName alphaScissorThreshold = FloatPropertyName.Create( "alpha_scissor_threshold" );
public static readonly FloatPropertyName alphaAntialiasingEdge = FloatPropertyName.Create( "alpha_antialiasing_edge" );
public static readonly Vector2IPropertyName albedoTextureSize = Vector2IPropertyName.Create( "albedo_texture_size" );
public static readonly Vector4PropertyName aoTextureChannel = Vector4PropertyName.Create( "ao_texture_channel" );
public static readonly FloatPropertyName aoLightAffect = FloatPropertyName.Create( "ao_light_affect" );
public static readonly FloatPropertyName yMapStart = FloatPropertyName.Create( "yMapStart" );
public static readonly FloatPropertyName yMapEnd = FloatPropertyName.Create( "yMapEnd" );
public static readonly FloatPropertyName yMapNoiseAmount = FloatPropertyName.Create( "yMapNoiseAmount" );
public static readonly FloatPropertyName yMapNoiseScale = FloatPropertyName.Create( "yMapNoiseScale" );
public static readonly FloatPropertyName discardNoiseScale = FloatPropertyName.Create( "discardNoiseScale" );
public static readonly FloatPropertyName discardThreshold = FloatPropertyName.Create( "discardThreshold" );
public static readonly FloatPropertyName fresnelNormalSource = FloatPropertyName.Create( "fresnelNormalSource" );
public static readonly ColorPropertyName fresnelColor = ColorPropertyName.Create( "fresnelColor" );
public static readonly FloatPropertyName fresnelSharpness = FloatPropertyName.Create( "fresnelSharpness" );
public static readonly FloatPropertyName fresnelScale = FloatPropertyName.Create( "fresnelScale" );
public static readonly FloatPropertyName windAmount = FloatPropertyName.Create( "windAmount" );
public static readonly Vector2PropertyName windSpeed = Vector2PropertyName.Create( "windSpeed" );
public static readonly FloatPropertyName windNoiseScale = FloatPropertyName.Create( "windNoiseScale" );
public static readonly FloatPropertyName windStart = FloatPropertyName.Create( "windStart" );
public static readonly FloatPropertyName windEnd = FloatPropertyName.Create( "windEnd" );
public static readonly Texture2DPropertyName textureAlbedo = Texture2DPropertyName.Create( "texture_albedo" );
public static readonly Texture2DPropertyName textureNormals = Texture2DPropertyName.Create( "texture_normals" );
public static readonly Texture2DPropertyName textureAmbientOcclusion = Texture2DPropertyName.Create( "texture_ambient_occlusion" );
public static readonly Texture2DPropertyName textureYMapGradient = Texture2DPropertyName.Create( "texture_yMapGradient" );
}
[Tool]
[GlobalClass]
public partial class QuadBillboardMaterial:CustomMaterial
{
public readonly CustomMaterialProperty<float> size;
public readonly CustomMaterialProperty<float> randomPosition;
public readonly CustomMaterialProperty<Color> albedo;
public readonly CustomMaterialProperty<float> rotation;
public readonly CustomMaterialProperty<float> rotationNoiseAmount;
public readonly CustomMaterialProperty<float> rotationNoiseScale;
public readonly CustomMaterialProperty<float> normalBlendAmount;
public readonly CustomMaterialProperty<Vector3> normalBlendDirection;
public readonly CustomMaterialProperty<float> roughness;
public readonly CustomMaterialProperty<float> metalness;
public readonly CustomMaterialProperty<float> specular;
public readonly CustomMaterialProperty<float> alphaScissorThreshold;
public readonly CustomMaterialProperty<float> alphaAntialiasingEdge;
public readonly CustomMaterialProperty<Vector2I> albedoTextureSize;
public readonly CustomMaterialProperty<Vector4> aoTextureChannel;
public readonly CustomMaterialProperty<float> aoLightAffect;
public readonly CustomMaterialProperty<float> yMapStart;
public readonly CustomMaterialProperty<float> yMapEnd;
public readonly CustomMaterialProperty<float> yMapNoiseAmount;
public readonly CustomMaterialProperty<float> yMapNoiseScale;
public readonly CustomMaterialProperty<float> discardNoiseScale;
public readonly CustomMaterialProperty<float> discardThreshold;
public readonly CustomMaterialProperty<float> fresnelNormalSource;
public readonly CustomMaterialProperty<Color> fresnelColor;
public readonly CustomMaterialProperty<float> fresnelSharpness;
public readonly CustomMaterialProperty<float> fresnelScale;
public readonly CustomMaterialProperty<float> windAmount;
public readonly CustomMaterialProperty<Vector2> windSpeed;
public readonly CustomMaterialProperty<float> windNoiseScale;
public readonly CustomMaterialProperty<float> windStart;
public readonly CustomMaterialProperty<float> windEnd;
public readonly CustomMaterialProperty<Texture2D> textureAlbedo;
public readonly CustomMaterialProperty<Texture2D> textureNormals;
public readonly CustomMaterialProperty<Texture2D> textureAmbientOcclusion;
public readonly CustomMaterialProperty<Texture2D> textureYMapGradient;
public QuadBillboardMaterial()
{
Shader = QuadBillboardShader.shader.Get();
size = new CustomMaterialProperty<float>( this, QuadBillboardShader.size );
randomPosition = new CustomMaterialProperty<float>( this, QuadBillboardShader.randomPosition );
albedo = new CustomMaterialProperty<Color>( this, QuadBillboardShader.albedo );
rotation = new CustomMaterialProperty<float>( this, QuadBillboardShader.rotation );
rotationNoiseAmount = new CustomMaterialProperty<float>( this, QuadBillboardShader.rotationNoiseAmount );
rotationNoiseScale = new CustomMaterialProperty<float>( this, QuadBillboardShader.rotationNoiseScale );
normalBlendAmount = new CustomMaterialProperty<float>( this, QuadBillboardShader.normalBlendAmount );
normalBlendDirection = new CustomMaterialProperty<Vector3>( this, QuadBillboardShader.normalBlendDirection );
roughness = new CustomMaterialProperty<float>( this, QuadBillboardShader.roughness );
metalness = new CustomMaterialProperty<float>( this, QuadBillboardShader.metalness );
specular = new CustomMaterialProperty<float>( this, QuadBillboardShader.specular );
alphaScissorThreshold = new CustomMaterialProperty<float>( this, QuadBillboardShader.alphaScissorThreshold );
alphaAntialiasingEdge = new CustomMaterialProperty<float>( this, QuadBillboardShader.alphaAntialiasingEdge );
albedoTextureSize = new CustomMaterialProperty<Vector2I>( this, QuadBillboardShader.albedoTextureSize );
aoTextureChannel = new CustomMaterialProperty<Vector4>( this, QuadBillboardShader.aoTextureChannel );
aoLightAffect = new CustomMaterialProperty<float>( this, QuadBillboardShader.aoLightAffect );
yMapStart = new CustomMaterialProperty<float>( this, QuadBillboardShader.yMapStart );
yMapEnd = new CustomMaterialProperty<float>( this, QuadBillboardShader.yMapEnd );
yMapNoiseAmount = new CustomMaterialProperty<float>( this, QuadBillboardShader.yMapNoiseAmount );
yMapNoiseScale = new CustomMaterialProperty<float>( this, QuadBillboardShader.yMapNoiseScale );
discardNoiseScale = new CustomMaterialProperty<float>( this, QuadBillboardShader.discardNoiseScale );
discardThreshold = new CustomMaterialProperty<float>( this, QuadBillboardShader.discardThreshold );
fresnelNormalSource = new CustomMaterialProperty<float>( this, QuadBillboardShader.fresnelNormalSource );
fresnelColor = new CustomMaterialProperty<Color>( this, QuadBillboardShader.fresnelColor );
fresnelSharpness = new CustomMaterialProperty<float>( this, QuadBillboardShader.fresnelSharpness );
fresnelScale = new CustomMaterialProperty<float>( this, QuadBillboardShader.fresnelScale );
windAmount = new CustomMaterialProperty<float>( this, QuadBillboardShader.windAmount );
windSpeed = new CustomMaterialProperty<Vector2>( this, QuadBillboardShader.windSpeed );
windNoiseScale = new CustomMaterialProperty<float>( this, QuadBillboardShader.windNoiseScale );
windStart = new CustomMaterialProperty<float>( this, QuadBillboardShader.windStart );
windEnd = new CustomMaterialProperty<float>( this, QuadBillboardShader.windEnd );
textureAlbedo = new CustomMaterialProperty<Texture2D>( this, QuadBillboardShader.textureAlbedo );
textureNormals = new CustomMaterialProperty<Texture2D>( this, QuadBillboardShader.textureNormals );
textureAmbientOcclusion = new CustomMaterialProperty<Texture2D>( this, QuadBillboardShader.textureAmbientOcclusion );
textureYMapGradient = new CustomMaterialProperty<Texture2D>( this, QuadBillboardShader.textureYMapGradient );
}
}
}