using Ghost.Core; namespace Ghost.RenderGraph.Concept; // ===== Pass Data Structures ===== // These are user-defined data structures that get passed to render functions public sealed class GBufferData : IPassData { public Identifier Albedo; public Identifier Normal; public Identifier Depth; } public sealed class LightingPassData : IPassData { public Identifier GBufferAlbedo; public Identifier GBufferNormal; public Identifier GBufferDepth; public Identifier OutputLighting; } public sealed class SSAOPassData : IPassData { public Identifier GBufferDepth; public Identifier GBufferNormal; public Identifier OutputSSAO; } public sealed class BloomDownsampleData : IPassData { public Identifier Input; public Identifier Output; } public sealed class TAAPassData : IPassData { public Identifier InputLighting; public Identifier OutputTAA; } public sealed class PostProcessingPassDataV2 : IPassData { public Identifier InputTAA; public Identifier InputSSAO; public Identifier InputBloom; public Identifier OutputBackbuffer; } public sealed class ProfilerMarkerData : IPassData { } public sealed class DebugPassData : IPassData { public Identifier DebugTexture; }