Files
o3de/Gems/Atom/Feature/Common/Assets/Shaders/Depth/DepthPassCommon.azsli
T
Jeremy Ong 39edcd06e4 Add missing precise attribute to depth prepass output
Commit 67689d48cc enforced precision in
many vertex position outputs. This adds the attribute to the output of
the z-prepass, needed to ensure proper depth testing in the forward
passes.

Signed-off-by: Jeremy Ong <jcong@amazon.com>
2022-01-06 16:51:40 -07:00

37 lines
684 B
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
*
*/
#pragma once
#include <viewsrg.srgi>
struct VSInput
{
float3 m_position : POSITION;
};
struct VSDepthOutput
{
precise float4 m_position : SV_Position;
};
VSDepthOutput DepthPassVS(VSInput IN)
{
VSDepthOutput OUT;
float4x4 objectToWorld = ObjectSrg::GetWorldMatrix();
float4 worldPosition = mul(objectToWorld, float4(IN.m_position, 1.0));
OUT.m_position = mul(ViewSrg::m_viewProjectionMatrix, worldPosition);
return OUT;
}