Files
GhostEngine/Ghost.Shader/Compiler/ShaderSemantics.cs
Misaki d2d9f5feb7 Refactor and enhance codebase for maintainability
Refactored and reorganized the codebase to improve readability, performance, and maintainability. Introduced new interfaces and structs for better resource management, updated project configuration files, and refactored shader and graphics pipeline management. Improved error handling, code formatting, and removed unused code and namespaces. Updated DLL references and method signatures for consistency and maintainability.
2025-10-22 18:46:39 +09:00

48 lines
1.1 KiB
C#

using Ghost.Core.Graphics;
namespace Ghost.Shader.Compiler;
public enum PropertyScope
{
Global,
Local,
}
internal class PropertySemantic
{
public PropertyScope scope;
public ShaderPropertyType type;
public string name = string.Empty;
public object? defaultValue;
}
internal class PipelineSemantic
{
public ZTestOptions? zTest;
public ZWriteOptions? zWrite;
public CullOptions? cull;
public BlendOptions? blend;
public uint? colorMask;
}
internal class PassSemantic
{
public string name = string.Empty;
public ShaderEntryPoint taskShader;
public ShaderEntryPoint meshShader;
public ShaderEntryPoint pixelShader;
public List<string>? defines;
public List<string>? includes;
public List<KeywordsGroup>? keywords;
public List<PropertySemantic>? localProperties;
public PipelineSemantic? localPipeline;
}
internal class ShaderSemantics
{
public string name = string.Empty;
public string fallback = string.Empty;
public List<PropertySemantic>? properties;
public PipelineSemantic? pipeline;
public List<PassSemantic>? passes;
}