You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
152 lines
5.7 KiB
Plaintext
152 lines
5.7 KiB
Plaintext
{
|
|
"Type": "JsonSerialization",
|
|
"Version": 1,
|
|
"ClassName": "PassAsset",
|
|
"ClassData": {
|
|
"PassTemplate": {
|
|
"Name": "HairPPLLResolvePassTemplate",
|
|
"PassClass": "HairPPLLResolvePass",
|
|
"Slots": [
|
|
//------ General Input/Output resources and Render Target ------
|
|
{
|
|
"Name": "RenderTargetInputOutput",
|
|
"SlotType": "InputOutput",
|
|
"ScopeAttachmentUsage": "RenderTarget",
|
|
"LoadStoreAction": {
|
|
"LoadAction": "Load",
|
|
"StoreAction": "Store"
|
|
}
|
|
},
|
|
{ // Will be used to get the background color for the hair blending
|
|
"Name": "RenderTargetCopy",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"ShaderInputName": "m_frameBuffer"
|
|
},
|
|
{ // Used to get the transform from screen space to world space.
|
|
"Name": "DepthLinear",
|
|
"SlotType": "Input",
|
|
"ShaderInputName": "m_linearDepth",
|
|
"ScopeAttachmentUsage": "Shader"
|
|
},
|
|
{ // The depth buffer will be used to write the closest hair fragment depth
|
|
"Name": "Depth",
|
|
"SlotType": "InputOutput",
|
|
"ScopeAttachmentUsage": "DepthStencil",
|
|
"LoadStoreAction": {
|
|
"LoadAction": "Load",
|
|
"StoreAction": "Store"
|
|
}
|
|
},
|
|
|
|
//------------- Shadowing Resources -------------
|
|
{
|
|
"Name": "DirectionalShadowmap",
|
|
"ShaderInputName": "m_directionalLightShadowmap",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"ImageViewDesc": {
|
|
"IsArray": 1
|
|
}
|
|
},
|
|
{
|
|
"Name": "DirectionalESM",
|
|
"ShaderInputName": "m_directionalLightExponentialShadowmap",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"ImageViewDesc": {
|
|
"IsArray": 1
|
|
}
|
|
},
|
|
{
|
|
"Name": "ProjectedShadowmap",
|
|
"ShaderInputName": "m_projectedShadowmaps",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"ImageViewDesc": {
|
|
"IsArray": 1
|
|
}
|
|
},
|
|
{
|
|
"Name": "ProjectedESM",
|
|
"ShaderInputName": "m_projectedExponentialShadowmap",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"ImageViewDesc": {
|
|
"IsArray": 1
|
|
}
|
|
},
|
|
|
|
//------------- Lighting Resources -------------
|
|
{
|
|
"Name": "BRDFTextureInput",
|
|
"ShaderInputName": "m_brdfMap",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader"
|
|
},
|
|
{
|
|
"Name": "TileLightData",
|
|
"SlotType": "Input",
|
|
"ShaderInputName": "m_tileLightData",
|
|
"ScopeAttachmentUsage": "Shader"
|
|
},
|
|
{
|
|
"Name": "LightListRemapped",
|
|
"SlotType": "Input",
|
|
"ShaderInputName": "m_lightListRemapped",
|
|
"ScopeAttachmentUsage": "Shader"
|
|
},
|
|
|
|
//---------- PPLL Resources -----------
|
|
{
|
|
"Name": "PerPixelListHead",
|
|
"ShaderInputName": "m_fragmentListHead",
|
|
"SlotType": "Input", // Read only - the reset is done before the fill pass
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"LoadStoreAction": {
|
|
"LoadAction": "Load",
|
|
"StoreAction": "DontCare"
|
|
}
|
|
},
|
|
{
|
|
"Name": "PerPixelLinkedList",
|
|
"ShaderInputName": "m_linkedListNodes",
|
|
"SlotType": "Input",
|
|
"ScopeAttachmentUsage": "Shader",
|
|
"LoadStoreAction": {
|
|
"LoadAction": "Load",
|
|
"StoreAction": "DontCare"
|
|
}
|
|
}
|
|
],
|
|
"ImageAttachments": [
|
|
{
|
|
"Name": "BRDFTexture",
|
|
"Lifetime": "Imported",
|
|
"AssetRef": {
|
|
"FilePath": "Textures/BRDFTexture.attimage"
|
|
}
|
|
}
|
|
],
|
|
"Connections": [
|
|
{
|
|
"LocalSlot": "BRDFTextureInput",
|
|
"AttachmentRef": {
|
|
"Pass": "This",
|
|
"Attachment": "BRDFTexture"
|
|
}
|
|
}
|
|
],
|
|
"PassData": {
|
|
"$type": "FullscreenTrianglePassData",
|
|
"PipelineViewTag": "MainCamera",
|
|
"ShaderAsset": {
|
|
// Looking for it in the Shaders directory relative to the Assets directory
|
|
"FilePath": "Shaders/HairRenderingResolvePPLL.shader"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|