Merge branch 'development' into Prism/ShowRepoGems
commit
500ac030a3
@ -1,6 +1,6 @@
|
|||||||
<RCC>
|
<RCC>
|
||||||
<qresource prefix="/StartupLogoDialog">
|
<qresource prefix="/StartupLogoDialog">
|
||||||
<file>o3de_logo.svg</file>
|
<file>o3de_logo.svg</file>
|
||||||
<file>splashscreen_background_developer_preview.jpg</file>
|
<file>splashscreen_background_2021_11.jpg</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:ffcb7614bed0790bf58a2bb7b2d70958289cb2edf562acc8fc841f4c50a55445
|
||||||
|
size 2974586
|
||||||
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:7105ec99477f124a8ac8d588f2dfc4ee7bb54f39386c8131b7703c86754c0cb8
|
|
||||||
size 248690
|
|
||||||
@ -0,0 +1,59 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) Contributors to the Open 3D Engine Project.
|
||||||
|
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <AzFramework/SurfaceData/SurfaceData.h>
|
||||||
|
#include <AzCore/Serialization/SerializeContext.h>
|
||||||
|
#include <AzCore/RTTI/BehaviorContext.h>
|
||||||
|
|
||||||
|
namespace AzFramework::SurfaceData
|
||||||
|
{
|
||||||
|
void SurfaceTagWeight::Reflect(AZ::ReflectContext* context)
|
||||||
|
{
|
||||||
|
if (AZ::SerializeContext* serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
|
||||||
|
{
|
||||||
|
serializeContext->Class<SurfaceTagWeight>()
|
||||||
|
->Field("m_surfaceType", &SurfaceTagWeight::m_surfaceType)
|
||||||
|
->Field("m_weight", &SurfaceTagWeight::m_weight)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (AZ::BehaviorContext* behaviorContext = azrtti_cast<AZ::BehaviorContext*>(context))
|
||||||
|
{
|
||||||
|
behaviorContext->Class<SurfaceTagWeight>()
|
||||||
|
->Attribute(AZ::Script::Attributes::Category, "SurfaceData")
|
||||||
|
->Constructor()
|
||||||
|
->Property("surfaceType", BehaviorValueProperty(&SurfaceTagWeight::m_surfaceType))
|
||||||
|
->Property("weight", BehaviorValueProperty(&SurfaceTagWeight::m_weight))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SurfacePoint::Reflect(AZ::ReflectContext* context)
|
||||||
|
{
|
||||||
|
if (AZ::SerializeContext* serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
|
||||||
|
{
|
||||||
|
serializeContext->Class<SurfacePoint>()
|
||||||
|
->Field("m_position", &SurfacePoint::m_position)
|
||||||
|
->Field("m_normal", &SurfacePoint::m_normal)
|
||||||
|
->Field("m_surfaceTags", &SurfacePoint::m_surfaceTags)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (AZ::BehaviorContext* behaviorContext = azrtti_cast<AZ::BehaviorContext*>(context))
|
||||||
|
{
|
||||||
|
behaviorContext->Class<SurfacePoint>("AzFramework::SurfaceData::SurfacePoint")
|
||||||
|
->Attribute(AZ::Script::Attributes::Category, "SurfaceData")
|
||||||
|
->Constructor()
|
||||||
|
->Property("position", BehaviorValueProperty(&SurfacePoint::m_position))
|
||||||
|
->Property("normal", BehaviorValueProperty(&SurfacePoint::m_normal))
|
||||||
|
->Property("surfaceTags", BehaviorValueProperty(&SurfacePoint::m_surfaceTags))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace AzFramework::SurfaceData
|
||||||
@ -0,0 +1,72 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) Contributors to the Open 3D Engine Project.
|
||||||
|
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <AzCore/Math/Crc.h>
|
||||||
|
#include <AzCore/Math/Vector2.h>
|
||||||
|
#include <AzCore/Math/Vector3.h>
|
||||||
|
#include <AzCore/std/containers/vector.h>
|
||||||
|
|
||||||
|
namespace AzFramework::SurfaceData
|
||||||
|
{
|
||||||
|
namespace Constants
|
||||||
|
{
|
||||||
|
static constexpr const char* s_unassignedTagName = "(unassigned)";
|
||||||
|
}
|
||||||
|
|
||||||
|
struct SurfaceTagWeight
|
||||||
|
{
|
||||||
|
AZ_TYPE_INFO(SurfaceTagWeight, "{EA14018E-E853-4BF5-8E13-D83BB99A54CC}");
|
||||||
|
SurfaceTagWeight() = default;
|
||||||
|
SurfaceTagWeight(AZ::Crc32 surfaceType, float weight)
|
||||||
|
: m_surfaceType(surfaceType)
|
||||||
|
, m_weight(weight)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
AZ::Crc32 m_surfaceType = AZ::Crc32(Constants::s_unassignedTagName);
|
||||||
|
float m_weight = 0.0f; //! A Value in the range [0.0f .. 1.0f]
|
||||||
|
|
||||||
|
static void Reflect(AZ::ReflectContext* context);
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SurfaceTagWeightComparator
|
||||||
|
{
|
||||||
|
bool operator()(const SurfaceTagWeight& tagWeight1, const SurfaceTagWeight& tagWeight2) const
|
||||||
|
{
|
||||||
|
// Return a deterministic sort order for surface tags from highest to lowest weight, with the surface types sorted
|
||||||
|
// in a predictable order when the weights are equal. The surface type sort order is meaningless since it is sorting CRC
|
||||||
|
// values, it's really just important for it to be stable.
|
||||||
|
// For the floating-point weight comparisons we use exact instead of IsClose value comparisons for a similar reason - we
|
||||||
|
// care about being sorted highest to lowest, but there's no inherent meaning in sorting surface types with *similar* weights
|
||||||
|
// together.
|
||||||
|
|
||||||
|
if (tagWeight1.m_weight != tagWeight2.m_weight)
|
||||||
|
{
|
||||||
|
return tagWeight1.m_weight > tagWeight2.m_weight;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return tagWeight1.m_surfaceType > tagWeight2.m_surfaceType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
using SurfaceTagWeightList = AZStd::vector<SurfaceTagWeight>;
|
||||||
|
|
||||||
|
struct SurfacePoint final
|
||||||
|
{
|
||||||
|
AZ_TYPE_INFO(SurfacePoint, "{331A3D0E-BB1D-47BF-96A2-249FAA0D720D}");
|
||||||
|
|
||||||
|
AZ::Vector3 m_position;
|
||||||
|
AZ::Vector3 m_normal;
|
||||||
|
SurfaceTagWeightList m_surfaceTags;
|
||||||
|
|
||||||
|
static void Reflect(AZ::ReflectContext* context);
|
||||||
|
};
|
||||||
|
} // namespace AzFramework::SurfaceData
|
||||||
@ -0,0 +1,170 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldTemplate",
|
||||||
|
"PassClass": "NewDepthOfFieldParentPass",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "Depth",
|
||||||
|
"SlotType": "Input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "LightingBuffer",
|
||||||
|
"SlotType": "InputOutput",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassRequests": [
|
||||||
|
{
|
||||||
|
"Name": "AutoFocus",
|
||||||
|
"TemplateName": "DepthOfFieldReadBackFocusDepthTemplate",
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "DepthInput",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Parent",
|
||||||
|
"Attachment": "Depth"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "Downsample",
|
||||||
|
"TemplateName": "NewDepthOfFieldDownsampleTemplate",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "ColorInput",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Parent",
|
||||||
|
"Attachment": "LightingBuffer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LocalSlot": "DepthInput",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Parent",
|
||||||
|
"Attachment": "Depth"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "TileReduce",
|
||||||
|
"TemplateName": "NewDepthOfFieldTileReduceTemplate",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "ColorAndCocInput",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Downsample",
|
||||||
|
"Attachment": "OutputColorAndCoC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "Tile3x3",
|
||||||
|
"TemplateName": "NewDepthOfFieldTile3x3Template",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "Input",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "TileReduce",
|
||||||
|
"Attachment": "MinMaxCoC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "Tile5x5",
|
||||||
|
"TemplateName": "NewDepthOfFieldTile3x3Template",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "Input",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Tile3x3",
|
||||||
|
"Attachment": "Output"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "LargeFilter",
|
||||||
|
"TemplateName": "NewDepthOfFieldFilterLargeTemplate",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "ColorAndCoc",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Downsample",
|
||||||
|
"Attachment": "OutputColorAndCoC"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LocalSlot": "CocTile",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Tile5x5",
|
||||||
|
"Attachment": "Output"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "SmallFilter",
|
||||||
|
"TemplateName": "NewDepthOfFieldFilterSmallTemplate",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "ColorAndCoc",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "LargeFilter",
|
||||||
|
"Attachment": "OutputColorAndCoc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LocalSlot": "CocTile",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Tile3x3",
|
||||||
|
"Attachment": "Output"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "Composite",
|
||||||
|
"TemplateName": "NewDepthOfFieldCompositeTemplate",
|
||||||
|
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "Depth",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Parent",
|
||||||
|
"Attachment": "Depth"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LocalSlot": "HalfResColorAndCoC",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "SmallFilter",
|
||||||
|
"Attachment": "OutputColorAndCoc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LocalSlot": "ColorInputOutput",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "Parent",
|
||||||
|
"Attachment": "LightingBuffer"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldCompositeTemplate",
|
||||||
|
"PassClass": "FullScreenTriangle",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "Depth",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_fullResDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "HalfResColorAndCoC",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_halfResDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "ColorInputOutput",
|
||||||
|
"SlotType": "InputOutput",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "FullscreenTrianglePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldComposite.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldDownsampleTemplate",
|
||||||
|
"PassClass": "FullScreenTriangle",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "ColorInput",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_inputDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "DepthInput",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ImageViewDesc": {
|
||||||
|
"AspectFlags": [
|
||||||
|
"Depth"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "OutputColorAndCoC",
|
||||||
|
"SlotType": "Output",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget",
|
||||||
|
"ShaderImageDimensionsConstant": "m_outputDimensions",
|
||||||
|
"LoadStoreAction": {
|
||||||
|
"LoadAction": "Clear"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ImageAttachments": [
|
||||||
|
{
|
||||||
|
"Name": "OutputAttachment",
|
||||||
|
"SizeSource": {
|
||||||
|
"Source": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "ColorInput"
|
||||||
|
},
|
||||||
|
"Multipliers": {
|
||||||
|
"WidthMultiplier": 0.5,
|
||||||
|
"HeightMultiplier": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDescriptor": {
|
||||||
|
"Format": "R16G16B16A16_FLOAT"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "OutputColorAndCoC",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "OutputAttachment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "FullscreenTrianglePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldDownsample.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldFilterLargeTemplate",
|
||||||
|
"PassClass": "NewDepthOfFieldFilterPass",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "ColorAndCoc",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_textureDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "CocTile",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "OutputColorAndCoc",
|
||||||
|
"SlotType": "Output",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget",
|
||||||
|
"LoadStoreAction": {
|
||||||
|
"LoadAction": "Clear"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ImageAttachments": [
|
||||||
|
{
|
||||||
|
"Name": "OutputAttachment",
|
||||||
|
"SizeSource": {
|
||||||
|
"Source": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "ColorAndCoc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDescriptor": {
|
||||||
|
"Format": "R16G16B16A16_FLOAT"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "OutputColorAndCoc",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "OutputAttachment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "FullscreenTrianglePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldFilterLarge.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldFilterSmallTemplate",
|
||||||
|
"PassClass": "NewDepthOfFieldFilterPass",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "ColorAndCoc",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_textureDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "CocTile",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "OutputColorAndCoc",
|
||||||
|
"SlotType": "Output",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget",
|
||||||
|
"LoadStoreAction": {
|
||||||
|
"LoadAction": "Clear"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ImageAttachments": [
|
||||||
|
{
|
||||||
|
"Name": "OutputAttachment",
|
||||||
|
"SizeSource": {
|
||||||
|
"Source": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "ColorAndCoc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDescriptor": {
|
||||||
|
"Format": "R16G16B16A16_FLOAT"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "OutputColorAndCoc",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "OutputAttachment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "FullscreenTrianglePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldFilterSmall.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldTile3x3Template",
|
||||||
|
"PassClass": "FullScreenTriangle",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "Input",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_textureDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "Output",
|
||||||
|
"SlotType": "Output",
|
||||||
|
"ScopeAttachmentUsage": "RenderTarget",
|
||||||
|
"LoadStoreAction": {
|
||||||
|
"LoadAction": "Clear"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ImageAttachments": [
|
||||||
|
{
|
||||||
|
"Name": "OutputAttachment",
|
||||||
|
"SizeSource": {
|
||||||
|
"Source": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "Input"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDescriptor": {
|
||||||
|
"Format": "R16G16_SNORM"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "Output",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "OutputAttachment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "FullscreenTrianglePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldTile3x3.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
{
|
||||||
|
"Type": "JsonSerialization",
|
||||||
|
"Version": 1,
|
||||||
|
"ClassName": "PassAsset",
|
||||||
|
"ClassData": {
|
||||||
|
"PassTemplate": {
|
||||||
|
"Name": "NewDepthOfFieldTileReduceTemplate",
|
||||||
|
"PassClass": "NewDepthOfFieldTileReducePass",
|
||||||
|
"Slots": [
|
||||||
|
{
|
||||||
|
"Name": "ColorAndCocInput",
|
||||||
|
"SlotType": "Input",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_inputDimensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "MinMaxCoC",
|
||||||
|
"SlotType": "Output",
|
||||||
|
"ScopeAttachmentUsage": "Shader",
|
||||||
|
"ShaderImageDimensionsConstant": "m_outputDimensions",
|
||||||
|
"LoadStoreAction": {
|
||||||
|
"LoadAction": "Clear"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ImageAttachments": [
|
||||||
|
{
|
||||||
|
"Name": "MinMaxCoCAttachment",
|
||||||
|
"SizeSource": {
|
||||||
|
"Source": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "ColorAndCocInput"
|
||||||
|
},
|
||||||
|
"Multipliers": {
|
||||||
|
// 1/16 = 0.0625
|
||||||
|
"WidthMultiplier": 0.0625,
|
||||||
|
"HeightMultiplier": 0.0625
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDescriptor": {
|
||||||
|
"Format": "R16G16_SNORM"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Connections": [
|
||||||
|
{
|
||||||
|
"LocalSlot": "MinMaxCoC",
|
||||||
|
"AttachmentRef": {
|
||||||
|
"Pass": "This",
|
||||||
|
"Attachment": "MinMaxCoCAttachment"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"PassData": {
|
||||||
|
"$type": "ComputePassData",
|
||||||
|
"ShaderAsset": {
|
||||||
|
"FilePath": "Shaders/PostProcessing/NewDepthOfFieldTileReduce.shader"
|
||||||
|
},
|
||||||
|
"PipelineViewTag": "MainCamera"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue