15 #pragma warning( push )
16 #pragma warning( disable : 4251 )
20 #define NUM_POSSIBLE_LIGHTS (1024)
24 #define MAX_ALLOWED_MSAA_SAMPLES 16
29 #include <vrvGraphicsUtils/DtVector2.h>
36 class DtLightScreenSpacePerViewData;
60 uint32 getGridMaxDimsFlattened(
void)
const;
64 void update(
const VectorLights& frustumVisibleLights
67 ,
const std::vector<Matrix4_64>& view_projection_matrix
84 const int *tileDataPtr()
const
95 return &myTileLightIndexLists[0];
100 return uint32(myTileLightIndexLists.size());
106 void setScreenAreaCullSize(
uint32 val);
108 uint32 screenAreaCullSize(
void)
const;
112 void updateScreenSpaceRectangles(
const VectorLights& frustumVisibleLights
120 return m_minMaxGridValid ?
121 m_gridMinMaxZ[x + y * m_gridDim.x]
122 : chag::make_vector(0.0f, 0.0f);
124 std::vector<chag::float2> m_gridMinMaxZ;
129 void updateToAccountForScreenRes(
const Vector2_uint32& viewport_size);
143 return myGridOffsets[x + y * myGridMaxDims.x];
147 return myGridCounts[x + y * myGridMaxDims.x];
int & GridCount(int x, int y)
Definition: DtTileSpaceLightGrid.h:145
Per-view data used to calculate the DtLightScreenSpaceData below.
Definition: DtLightScreenSpaceData.h:26
int32 * myGridCounts
Definition: DtTileSpaceLightGrid.h:134
Vector2_uint32 myGridMaxDims
Definition: DtTileSpaceLightGrid.h:131
Screen Space Rectangle class.
std::vector< DtLightScreenSpaceDataVector > myScreenSpaceData
Definition: DtTileSpaceLightGrid.h:139
#define FORWARD_DECLARE_DIFFERENT_SUFFIX(T, U)
Definition: DtForwardDeclare.h:31
const int * tileLightIndexListsPtr() const
Definition: DtTileSpaceLightGrid.h:93
Camera forward declarations.
Vector2_uint32 myTileSize
Definition: DtTileSpaceLightGrid.h:115
int32 * myGridOffsets
Definition: DtTileSpaceLightGrid.h:133
const int * tileCountsDataPtr() const
Definition: DtTileSpaceLightGrid.h:89
Vector2_uint32 myCurrentMaxScreenResolution
Definition: DtTileSpaceLightGrid.h:128
static const Vector2_uint32 m_InitialMaxScreenResolution
Definition: DtTileSpaceLightGrid.h:127
Class doing all the heavy lifting in regards of forward+ lighting.
Definition: DtTileSpaceLightGrid.h:40
uint32 totalTileLightIndexListLength() const
Definition: DtTileSpaceLightGrid.h:98
unsigned int uint32
Definition: DtCommonTypes.h:28
int & GridOffset(int x, int y)
Definition: DtTileSpaceLightGrid.h:141
uint32 myMaxTileLightCount
Definition: DtTileSpaceLightGrid.h:137
#define DT_DLL_VRVGRAPHICSUTILS
Definition: vrvGraphicsUtils.h:18
Helpers to easily define forward declarations.
uint32 myRejectArea
Definition: DtTileSpaceLightGrid.h:150
std::vector< int > myTileLightIndexLists
Definition: DtTileSpaceLightGrid.h:136