249 lines
6.0 KiB
C#
249 lines
6.0 KiB
C#
using Godot;
|
|
using System.Reflection;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Rokojori
|
|
{
|
|
[Tool]
|
|
[GlobalClass]
|
|
public partial class SpatialShaderData:Resource
|
|
{
|
|
[ExportGroup("Presets/Starters")]
|
|
|
|
[ExportToolButton("PBR Starter")]
|
|
public Callable pbrStarterButton => Callable.From( ()=>{ PBR_Starter(); } );
|
|
|
|
[ExportToolButton("PBR Alpha Starter")]
|
|
public Callable pbrAlphaStarterButton => Callable.From( ()=>{ PBR_Alpha_Starter(); } );
|
|
|
|
[ExportToolButton("PBR Emissive Starter")]
|
|
public Callable pbrEmissiveStarterButton => Callable.From( ()=>{ PBR_Emissive_Starter(); } );
|
|
|
|
[ExportToolButton("PBR Luminance Starter")]
|
|
public Callable pbrLuminanceStarterButton => Callable.From( ()=>{ PBR_Luminance_Starter(); } );
|
|
|
|
[ExportToolButton("PBR All Starter")]
|
|
public Callable pbrAllStarterButton => Callable.From( ()=>{ PBR_All_Starter(); } );
|
|
|
|
[ExportToolButton("Unshaded Starter")]
|
|
public Callable unshadedStarterButton => Callable.From( ()=>{ Unshaded_Starter(); } );
|
|
|
|
|
|
|
|
[ExportGroup("Modules")]
|
|
[Export]
|
|
public TransparencyModule transparency = new TransparencyModule();
|
|
|
|
[Export]
|
|
public ShadingModule shading = new ShadingModule();
|
|
|
|
[Export]
|
|
public StencilModule stencil = null;
|
|
|
|
[Export]
|
|
public GeometryModule geometry = new GeometryModule();
|
|
|
|
[Export]
|
|
public UVModule uv = new UVModule();
|
|
|
|
|
|
[Export]
|
|
public AlbedoModule albedo = new AlbedoModule();
|
|
|
|
[Export]
|
|
public AlphaModule alpha = null;
|
|
|
|
[Export]
|
|
public FadingModule fading = null;
|
|
|
|
|
|
[Export]
|
|
public NormalMapModule normalMap = null;
|
|
|
|
[Export]
|
|
public RoughnessModule roughness = null;
|
|
|
|
[Export]
|
|
public MetallicModule metallic = null;
|
|
|
|
[Export]
|
|
public SpecularModule specular = null;
|
|
|
|
|
|
[Export]
|
|
public OcclusionModule occlusion = null;
|
|
|
|
[Export]
|
|
public EmissionModule emission = null;
|
|
|
|
[Export]
|
|
public BacklightModule backlight = null;
|
|
|
|
[Export]
|
|
public SubsurfaceScatteringModule subsurfaceScattering = null;
|
|
|
|
public void PBR_All_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
shading = new ShadingModule();
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = null;
|
|
fading = null;
|
|
|
|
normalMap = new NormalMapModule();
|
|
roughness = new RoughnessModule();
|
|
metallic = new MetallicModule();
|
|
specular = new SpecularModule();
|
|
specular.domainMode = TextureModule.DomainMode.Value;
|
|
occlusion = new OcclusionModule();
|
|
|
|
emission = new EmissionModule();
|
|
backlight = new BacklightModule();
|
|
subsurfaceScattering = new SubsurfaceScatteringModule();
|
|
}
|
|
|
|
public void PBR_Luminance_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
shading = new ShadingModule();
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = null;
|
|
fading = null;
|
|
|
|
normalMap = new NormalMapModule();
|
|
roughness = new RoughnessModule();
|
|
metallic = new MetallicModule();
|
|
specular = new SpecularModule();
|
|
specular.domainMode = TextureModule.DomainMode.Value;
|
|
occlusion = new OcclusionModule();
|
|
|
|
emission = null;
|
|
backlight = new BacklightModule();
|
|
subsurfaceScattering = new SubsurfaceScatteringModule();
|
|
}
|
|
|
|
|
|
|
|
public void PBR_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
shading = new ShadingModule();
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = null;
|
|
fading = null;
|
|
|
|
normalMap = new NormalMapModule();
|
|
roughness = new RoughnessModule();
|
|
metallic = new MetallicModule();
|
|
specular = new SpecularModule();
|
|
specular.domainMode = TextureModule.DomainMode.Value;
|
|
occlusion = new OcclusionModule();
|
|
|
|
emission = null;
|
|
backlight = null;
|
|
subsurfaceScattering = null;
|
|
}
|
|
|
|
public void PBR_Emissive_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
shading = new ShadingModule();
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = null;
|
|
fading = null;
|
|
|
|
normalMap = new NormalMapModule();
|
|
roughness = new RoughnessModule();
|
|
metallic = new MetallicModule();
|
|
specular = new SpecularModule();
|
|
specular.domainMode = TextureModule.DomainMode.Value;
|
|
occlusion = new OcclusionModule();
|
|
|
|
emission = new EmissionModule();
|
|
|
|
backlight = null;
|
|
subsurfaceScattering = null;
|
|
}
|
|
|
|
public void PBR_Alpha_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
transparency.transparency = BaseMaterial3D.TransparencyEnum.Alpha;
|
|
|
|
shading = new ShadingModule();
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = new AlphaModule();
|
|
fading = null;
|
|
|
|
normalMap = new NormalMapModule();
|
|
roughness = new RoughnessModule();
|
|
metallic = new MetallicModule();
|
|
specular = new SpecularModule();
|
|
specular.domainMode = TextureModule.DomainMode.Value;
|
|
occlusion = new OcclusionModule();
|
|
|
|
emission = null;
|
|
backlight = null;
|
|
subsurfaceScattering = null;
|
|
}
|
|
|
|
public void Unshaded_Starter()
|
|
{
|
|
transparency = new TransparencyModule();
|
|
transparency.transparency = BaseMaterial3D.TransparencyEnum.Alpha;
|
|
|
|
shading = new ShadingModule();
|
|
shading.shadingMode = BaseMaterial3D.ShadingModeEnum.Unshaded;
|
|
stencil = null;
|
|
|
|
geometry = new GeometryModule();
|
|
|
|
uv = new UVModule();
|
|
|
|
albedo = new AlbedoModule();
|
|
alpha = new AlphaModule();
|
|
fading = null;
|
|
|
|
normalMap = null;
|
|
roughness = null;
|
|
metallic = null;
|
|
specular = null;
|
|
|
|
occlusion = null;
|
|
emission = null;
|
|
backlight = null;
|
|
subsurfaceScattering = null;
|
|
}
|
|
|
|
}
|
|
} |