OpenBarnyard
 
Loading...
Searching...
No Matches
AWorldVIS.h
Go to the documentation of this file.
1#pragma once
2#include "AWorld.h"
3
5{
6public:
7 static constexpr TUINT MAX_VISIBLE_CELLS = 1;
8
15
16 using t_RenderCallback = void ( * )( CellMeshSphere* a_pMeshSphere, RenderData* a_pRenderData );
17
18public:
19 AWorldVis();
20 ~AWorldVis();
21
22 void Create( World* a_pWorld );
23 void Reset();
24
25 void Build( const Toshi::TMatrix44& a_rModelView, const Toshi::TMatrix44& a_rProjection, TINT a_iCellIndex );
26 void Build( const Toshi::TMatrix44& a_rModelView, const Toshi::TMatrix44& a_rProjection, TINT a_iCellIndex, const CullBox& a_rCullBox );
27
28 void Render( const Toshi::TMatrix44& a_rModelView );
30 void RenderLeafNodeIntersect( CellSphereTreeBranchNode* a_pNode, RenderData* a_pRenderData );
31
32private:
33 inline static StackValue* s_pStack;
34 static constexpr TUINT s_iStackSize = 100;
35
36public:
43 Toshi::TVector3 m_ViewModelPos;
45};
unsigned int TUINT
Definition Typedefs.h:8
int TINT
Definition Typedefs.h:7
Toshi::TVector3 m_ViewModelPos
Definition AWorldVIS.h:43
t_RenderCallback m_pfnRenderCallback
Definition AWorldVIS.h:44
void RenderLeafNodeIntersect(CellSphereTreeBranchNode *a_pNode, RenderData *a_pRenderData)
TINT Unknown
Definition AWorldVIS.h:42
TINT m_iNumBuiltCells
Definition AWorldVIS.h:40
void Reset()
Definition AWorldVIS.cpp:41
void Build(const Toshi::TMatrix44 &a_rModelView, const Toshi::TMatrix44 &a_rProjection, TINT a_iCellIndex)
Definition AWorldVIS.cpp:52
CellSettings m_aCellSettings[MAX_VISIBLE_CELLS]
Definition AWorldVIS.h:38
void Create(World *a_pWorld)
Definition AWorldVIS.cpp:34
TINT m_iNumCellSettings
Definition AWorldVIS.h:41
World * m_pWorld
Definition AWorldVIS.h:37
void RenderTreeIntersectNonRecurse(CellSphereTreeBranchNode *a_pNode, RenderData *a_pRenderData)
void(*)(CellMeshSphere *a_pMeshSphere, RenderData *a_pRenderData) t_RenderCallback
Definition AWorldVIS.h:16
static constexpr TUINT MAX_VISIBLE_CELLS
Definition AWorldVIS.h:7
CellNode * m_pCellNodes
Definition AWorldVIS.h:39
void Render(const Toshi::TMatrix44 &a_rModelView)
CellSphereTreeBranchNode * pPrevNode
Definition AWorldVIS.h:12
CellSphereTreeBranchNode * pNextNode
Definition AWorldVIS.h:11