{ "Type": "JsonSerialization", "Version": 1, "ClassName": "PassAsset", "ClassData": { "PassTemplate": { "Name": "LowEndPipelineTemplate", "PassClass": "ParentPass", "Slots": [ { "Name": "SwapChainOutput", "SlotType": "InputOutput", "ScopeAttachmentUsage": "RenderTarget" } ], "PassRequests": [ { "Name": "MorphTargetPass", "TemplateName": "MorphTargetPassTemplate" }, { "Name": "SkinningPass", "TemplateName": "SkinningPassTemplate", "Connections": [ { "LocalSlot": "SkinnedMeshOutputStream", "AttachmentRef": { "Pass": "MorphTargetPass", "Attachment": "MorphTargetDeltaOutput" } } ] }, { "Name": "DepthPrePass", "TemplateName": "DepthMSAAParentTemplate", "Connections": [ { "LocalSlot": "SkinnedMeshes", "AttachmentRef": { "Pass": "SkinningPass", "Attachment": "SkinnedMeshOutputStream" } }, { "LocalSlot": "SwapChainOutput", "AttachmentRef": { "Pass": "Parent", "Attachment": "SwapChainOutput" } } ] }, { "Name": "LightCullingPass", "TemplateName": "LightCullingParentTemplate", "Connections": [ { "LocalSlot": "SkinnedMeshes", "AttachmentRef": { "Pass": "SkinningPass", "Attachment": "SkinnedMeshOutputStream" } }, { "LocalSlot": "DepthMSAA", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "DepthMSAA" } }, { "LocalSlot": "SwapChainOutput", "AttachmentRef": { "Pass": "Parent", "Attachment": "SwapChainOutput" } } ] }, { "Name": "ShadowPass", "TemplateName": "ShadowParentTemplate", "Connections": [ { "LocalSlot": "SkinnedMeshes", "AttachmentRef": { "Pass": "SkinningPass", "Attachment": "SkinnedMeshOutputStream" } }, { "LocalSlot": "SwapChainOutput", "AttachmentRef": { "Pass": "Parent", "Attachment": "SwapChainOutput" } } ] }, { "Name": "ForwardPass", "TemplateName": "LowEndForwardPassTemplate", "Connections": [ // Inputs... { "LocalSlot": "DirectionalLightShadowmap", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "DirectionalShadowmap" } }, { "LocalSlot": "ExponentialShadowmapDirectional", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "DirectionalESM" } }, { "LocalSlot": "ProjectedShadowmap", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "ProjectedShadowmap" } }, { "LocalSlot": "ExponentialShadowmapProjected", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "ProjectedESM" } }, { "LocalSlot": "TileLightData", "AttachmentRef": { "Pass": "LightCullingPass", "Attachment": "TileLightData" } }, { "LocalSlot": "LightListRemapped", "AttachmentRef": { "Pass": "LightCullingPass", "Attachment": "LightListRemapped" } }, // Input/Outputs... { "LocalSlot": "DepthStencilInputOutput", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "DepthMSAA" } } ], "PassData": { "$type": "RasterPassData", "DrawListTag": "lowEndForward", "PipelineViewTag": "MainCamera", "PassSrgShaderAsset": { "FilePath": "Shaders/ForwardPassSrg.shader" } } }, { "Name": "SkyBoxPass", "TemplateName": "SkyBoxTemplate", "Enabled": true, "Connections": [ { "LocalSlot": "SpecularInputOutput", "AttachmentRef": { "Pass": "ForwardPass", "Attachment": "LightingOutput" } }, { "LocalSlot": "SkyBoxDepth", "AttachmentRef": { "Pass": "ForwardPass", "Attachment": "DepthStencilInputOutput" } } ] }, { "Name": "MSAAResolvePass", "TemplateName": "MSAAResolveColorTemplate", "Connections": [ { "LocalSlot": "Input", "AttachmentRef": { "Pass": "SkyBoxPass", "Attachment": "SpecularInputOutput" } } ] }, { "Name": "TransparentPass", "TemplateName": "TransparentParentTemplate", "Connections": [ { "LocalSlot": "DirectionalShadowmap", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "DirectionalShadowmap" } }, { "LocalSlot": "DirectionalESM", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "DirectionalESM" } }, { "LocalSlot": "ProjectedShadowmap", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "ProjectedShadowmap" } }, { "LocalSlot": "ProjectedESM", "AttachmentRef": { "Pass": "ShadowPass", "Attachment": "ProjectedESM" } }, { "LocalSlot": "TileLightData", "AttachmentRef": { "Pass": "LightCullingPass", "Attachment": "TileLightData" } }, { "LocalSlot": "LightListRemapped", "AttachmentRef": { "Pass": "LightCullingPass", "Attachment": "LightListRemapped" } }, { "LocalSlot": "InputLinearDepth", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "DepthLinear" } }, { "LocalSlot": "DepthStencil", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "Depth" } }, { "LocalSlot": "InputOutput", "AttachmentRef": { "Pass": "MSAAResolvePass", "Attachment": "Output" } } ] }, { "Name": "LightAdaptation", "TemplateName": "LightAdaptationParentTemplate", "Connections": [ { "LocalSlot": "LightingInput", "AttachmentRef": { "Pass": "TransparentPass", "Attachment": "InputOutput" } }, { "LocalSlot": "SwapChainOutput", "AttachmentRef": { "Pass": "Parent", "Attachment": "SwapChainOutput" } } ] }, { "Name": "AuxGeomPass", "TemplateName": "AuxGeomPassTemplate", "Enabled": true, "Connections": [ { "LocalSlot": "ColorInputOutput", "AttachmentRef": { "Pass": "LightAdaptation", "Attachment": "Output" } }, { "LocalSlot": "DepthInputOutput", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "Depth" } } ], "PassData": { "$type": "RasterPassData", "DrawListTag": "auxgeom", "PipelineViewTag": "MainCamera" } }, { "Name": "UIPass", "TemplateName": "UIParentTemplate", "Connections": [ { "LocalSlot": "InputOutput", "AttachmentRef": { "Pass": "AuxGeomPass", "Attachment": "ColorInputOutput" } }, { "LocalSlot": "DepthInputOutput", "AttachmentRef": { "Pass": "DepthPrePass", "Attachment": "Depth" } } ] }, { "Name": "CopyToSwapChain", "TemplateName": "FullscreenCopyTemplate", "Connections": [ { "LocalSlot": "Input", "AttachmentRef": { "Pass": "UIPass", "Attachment": "InputOutput" } }, { "LocalSlot": "Output", "AttachmentRef": { "Pass": "Parent", "Attachment": "SwapChainOutput" } } ] } ] } } }