Files
o3de/Gems/Atom/Feature/Common/Assets/ShaderResourceGroups/PostProcessing/ViewSrg.azsli
T
moudgils 1294cd0d7f Various Vulkan fixes (#5880)
* Various Vulkan fixes
- Swapchain related fix for UI editor
  -  Object of type VkQueue is simultaneously used in the main thread and the queue thread. Pushed the swapchain invalidation to the presentation queue thread

- Added padding for DepthOfFieldData to ensure it is 16 byte aligned
- Added aspect flag for SMAAEdgeDetectionTemplate pass
- Reduced MaxUnboundedArrayDescriptors so that it is under the maxDescriptorSetSampledImages limit
- Added CopyRead flag for ReflectionScreenSpaceBlurPass related transient resources.

Signed-off-by: moudgils <47460854+moudgils@users.noreply.github.com>

* Missed file

Signed-off-by: moudgils <47460854+moudgils@users.noreply.github.com>
2021-11-29 13:33:48 -08:00

66 lines
1.7 KiB
Plaintext

/*
* 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
*
*/
#ifndef AZ_COLLECTING_PARTIAL_SRGS
#error Do not include this file directly. Include the main .srgi file instead.
#endif
partial ShaderResourceGroup ViewSrg
{
// Shared data in PostProcessing
// Depth Of Field
struct DepthOfFieldData
{
// x : viewFar, y : viewNear, z : focusDistance
float3 m_cameraParameters;
// Used to determine the pencilMap texture coordinates from depth.
float m_pencilMapTexcoordToCocRadius;
float m_pencilMapFocusPointTexcoordU;
// circle of confusion to screen ratio;
float m_cocToScreenRatio;
[[pad_to(16)]]
};
DepthOfFieldData m_dof;
struct ExposureControlParameters
{
// Minimum exposure for eye adaptation in stops (logarithmic space)
float m_exposureMinLog2;
// Maximum exposure for eye adaptation in stops (logarithmic space)
float m_exposureMaxLog2;
// The speed at which exposure adjusts up to brighter scenes
float m_speedUp;
// The speed at which exposure adjusts down to darker scenes
float m_speedDown;
// Manual exposure compensation value
float m_exposureValueCompensation;
// Eye adaptation feature flag.
uint m_eyeAdaptationEnabled;
// Explicit padding at the end
uint2 m_padding;
};
ConstantBuffer<ExposureControlParameters> m_exposureControl;
float GetExposureValueCompensation()
{
return m_exposureControl.m_exposureValueCompensation;
}
}