/* * 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 { struct Decal { float3 m_position; float m_opacity; float4 m_quaternion; float3 m_halfSize; float m_angleAttenuation; uint m_sortKeyPacked; uint m_textureArrayIndex; uint m_textureIndex; uint m_padding[1]; }; StructuredBuffer m_decals; // Each texture array stores all the decals for one size permutation. // e.g. m_decalTextureArray0 might store 24 textures @128x128, // m_decalTextureArray1 might store 16 * 256x256 // and m_decalTextureArray2 might store 4 @ 512x512 // This must match the variable NumTextureArrays in DecalTextureArrayFeatureProcessor.h Texture2DArray m_decalTextureArrayDiffuse0; Texture2DArray m_decalTextureArrayDiffuse1; Texture2DArray m_decalTextureArrayDiffuse2; Texture2DArray m_decalTextureArrayDiffuse3; Texture2DArray m_decalTextureArrayDiffuse4; Texture2DArray m_decalTextureArrayNormalMaps0; Texture2DArray m_decalTextureArrayNormalMaps1; Texture2DArray m_decalTextureArrayNormalMaps2; Texture2DArray m_decalTextureArrayNormalMaps3; Texture2DArray m_decalTextureArrayNormalMaps4; uint m_decalCount; }