39 lines
955 B
C++
39 lines
955 B
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
/*================================================================================================
|
|
VirtualShadowMapDefinitions.h: used in virtual shadow map shaders and C++ code to define common constants
|
|
!!! Changing this file requires recompilation of the engine !!!
|
|
=================================================================================================*/
|
|
|
|
#pragma once
|
|
|
|
#define FROXEL_TILE_SIZE (8)
|
|
#define FROXEL_INVALID_SLICE (1 << 28)
|
|
#define FROXEL_INVALID_PACKED_SLICE (FROXEL_INVALID_SLICE << 2)
|
|
#define FROXEL_PACKED_SLICE_BIAS (1 << 20) // used to represent negative slices (TODO: dont)
|
|
#define FROXEL_INDIRECT_ARG_WORKGROUP_SIZE (64)
|
|
|
|
|
|
#ifdef __cplusplus
|
|
#include "HLSLTypeAliases.h"
|
|
|
|
namespace UE::HLSL
|
|
{
|
|
#endif
|
|
|
|
struct FPackedFroxel
|
|
{
|
|
uint XY;
|
|
int Z;
|
|
};
|
|
|
|
|
|
#ifdef __cplusplus
|
|
} // namespace UE::HLSL
|
|
|
|
namespace Froxel
|
|
{
|
|
using FPackedFroxel = UE::HLSL::FPackedFroxel;
|
|
}
|
|
|
|
#endif |