#include <ATerrainInterface.h>
Public Types | |
| using | JobSlot = Toshi::T2SListNodeWrapper<AMainThreadJob> |
| using | t_GetCurrentVISGroup = TINT ( * )() |
| using | t_OnVISGroupChanged = void ( * )( ATerrainSection* a_pCurrent, ATerrainSection* a_pPrevious ) |
| using | t_OnModelNodeReady = void ( * )( ATerrainSection::ModelNode* a_pModelNode ) |
Public Member Functions | |
| ATerrainInterface (TINT a_iUnused1, TINT a_iUnused2, TINT a_iPreloadTerrainBlockSize, TINT a_iStartVISGroup) | |
| virtual | ~ATerrainInterface () |
| void | Update () |
| void | Render () |
| TBOOL | IsLoaded () const |
| void | LoadFromFile (const TCHAR *a_szFilePath, TBOOL a_bLoadLater, TBOOL a_bStreamCollision) |
| Loads information about terrain. | |
| void | WaitUntilLoaded () |
| void | DestroyModelData (ATerrainSection::ModelNode *a_pModelData) |
| void | UpdateUsedBlocks (ATerrainLODType a_eLODType) |
| Sets visible blocks of specified LOD type to be used. | |
| void | QueueStreamingAssets () |
| void | UnqueueStreamingAssets () |
| TBOOL | HasAnyLODsQueued () |
| void | CancelUnrequiredJobs () |
| ATerrainSection::ModelNode * | CreateModelInstance (ATerrainSection::ModelNode *a_pModelNode, const char *a_szModelName, const char *a_szType) |
| ATerrainLODBlock * | AllocateLODBlock (ATerrainLODType a_eLODType, ATerrainSection *a_pVISGroup) |
| Allocates free LODBlock of specified type and assigns it to the section. | |
| TBOOL | IsCollisionStreamed () const |
| ATerrainVIS * | GetVIS () const |
| void | GetLocatorTransform (const TCHAR *a_pszLocatorName, Toshi::TMatrix44 &a_rOutTransform) |
| Finds a locator (bone) by the specified name and obtains it current transform if found. | |
| Toshi::TVector4 | GetLocatorPos (const TCHAR *a_pszLocatorName) |
| Finds a locator (bone) by the specified name and obtains it current position if found. | |
| void | GetLocatorPosAndRot (const TCHAR *a_pszLocatorName, Toshi::TVector4 &a_rOutPosition, Toshi::TQuaternion &a_rOutRotation) |
| Finds a locator (bone) by the specified name and obtains it current position and rotation if found. | |
| ATerrainLocator * | FindLocator (const TCHAR *a_pszLocatorName) |
| Finds a locator (bone) by the specified name and returns it if found. | |
| ATRBLoaderJob * | GetFreeTRBLoaderJob () |
| ASkeletonDoneJob * | GetFreeSkeletonLoaderJob () |
| AMatLibLoaderJob * | GetFreeMatlibLoaderJob () |
| ACollisionDoneJob * | GetFreeCollisionLoaderJob () |
| AModelLoaderJob * | GetFreeModelLoaderJob () |
| ASectionDoneJob * | GetFreeSectionLoaderJob () |
| ATerrainLocatorList * | GetLocatorList () const |
| const Toshi::TVector4 & | GetDefaultShadowColor () const |
| const Toshi::TVector4 & | GetDefaultAmbientColor () const |
| const Toshi::TVector4 & | GetLitShadowColor () const |
| const Toshi::TVector4 & | GetLitAmbientColor () const |
| t_OnModelNodeReady | GetOnModelNodeReadyCallback () const |
Public Attributes | |
| friend | ATerrainVIS |
Static Public Attributes | |
| static constexpr TUINT | MAX_NUM_MODEL_LOADER_JOBS = 128 |
| static constexpr TUINT | MAX_NUM_MATLIB_LOADER_JOBS = 10 |
| static constexpr TUINT | MAX_NUM_KEYLIB_LOADER_JOBS = 10 |
| static constexpr TUINT | MAX_NUM_SECTION_LOADER_JOBS = 32 |
| static constexpr TUINT | MAX_NUM_TRB_LOADER_JOBS = 2 |
| static constexpr TUINT | MAX_NUM_SKELETON_LOADER_JOBS = 2 |
| static constexpr TUINT | MAX_NUM_COLLISION_LOADER_JOBS = 64 |
| static constexpr TUINT | NUM_TOTAL_JOBS |
Friends | |
| class | ABYardTerrainManager |
Definition at line 10 of file ATerrainInterface.h.
| using ATerrainInterface::JobSlot = Toshi::T2SListNodeWrapper<AMainThreadJob> |
Definition at line 29 of file ATerrainInterface.h.
| using ATerrainInterface::t_GetCurrentVISGroup = TINT ( * )() |
Definition at line 34 of file ATerrainInterface.h.
| using ATerrainInterface::t_OnModelNodeReady = void ( * )( ATerrainSection::ModelNode* a_pModelNode ) |
Definition at line 36 of file ATerrainInterface.h.
| using ATerrainInterface::t_OnVISGroupChanged = void ( * )( ATerrainSection* a_pCurrent, ATerrainSection* a_pPrevious ) |
Definition at line 35 of file ATerrainInterface.h.
| ATerrainInterface::ATerrainInterface | ( | TINT | a_iUnused1, |
| TINT | a_iUnused2, | ||
| TINT | a_iPreloadTerrainBlockSize, | ||
| TINT | a_iStartVISGroup ) |
Definition at line 23 of file ATerrainInterface.cpp.
|
virtual |
Definition at line 94 of file ATerrainInterface.cpp.
| ATerrainLODBlock * ATerrainInterface::AllocateLODBlock | ( | ATerrainLODType | a_eLODType, |
| ATerrainSection * | a_pVISGroup ) |
Allocates free LODBlock of specified type and assigns it to the section.
| a_eLODType | type of the block you want to allocate |
| a_pVISGroup | section you allocate the block for |
Definition at line 599 of file ATerrainInterface.cpp.
| void ATerrainInterface::CancelUnrequiredJobs | ( | ) |
Definition at line 1075 of file ATerrainInterface.cpp.
| ATerrainSection::ModelNode * ATerrainInterface::CreateModelInstance | ( | ATerrainSection::ModelNode * | a_pModelNode, |
| const char * | a_szModelName, | ||
| const char * | a_szType ) |
Definition at line 992 of file ATerrainInterface.cpp.
| void ATerrainInterface::DestroyModelData | ( | ATerrainSection::ModelNode * | a_pModelData | ) |
Definition at line 488 of file ATerrainInterface.cpp.
| ATerrainLocator * ATerrainInterface::FindLocator | ( | const TCHAR * | a_pszLocatorName | ) |
Finds a locator (bone) by the specified name and returns it if found.
Definition at line 757 of file ATerrainInterface.cpp.
|
inline |
Definition at line 140 of file ATerrainInterface.h.
|
inline |
Definition at line 139 of file ATerrainInterface.h.
| ACollisionDoneJob * ATerrainInterface::GetFreeCollisionLoaderJob | ( | ) |
Definition at line 816 of file ATerrainInterface.cpp.
| AMatLibLoaderJob * ATerrainInterface::GetFreeMatlibLoaderJob | ( | ) |
Definition at line 799 of file ATerrainInterface.cpp.
| AModelLoaderJob * ATerrainInterface::GetFreeModelLoaderJob | ( | ) |
Definition at line 833 of file ATerrainInterface.cpp.
| ASectionDoneJob * ATerrainInterface::GetFreeSectionLoaderJob | ( | ) |
Definition at line 850 of file ATerrainInterface.cpp.
| ASkeletonDoneJob * ATerrainInterface::GetFreeSkeletonLoaderJob | ( | ) |
Definition at line 782 of file ATerrainInterface.cpp.
| ATRBLoaderJob * ATerrainInterface::GetFreeTRBLoaderJob | ( | ) |
Definition at line 765 of file ATerrainInterface.cpp.
|
inline |
Definition at line 142 of file ATerrainInterface.h.
|
inline |
Definition at line 141 of file ATerrainInterface.h.
|
inline |
Definition at line 133 of file ATerrainInterface.h.
Finds a locator (bone) by the specified name and obtains it current position if found.
Definition at line 715 of file ATerrainInterface.cpp.
| void ATerrainInterface::GetLocatorPosAndRot | ( | const TCHAR * | a_pszLocatorName, |
| Toshi::TVector4 & | a_rOutPosition, | ||
| Toshi::TQuaternion & | a_rOutRotation ) |
Finds a locator (bone) by the specified name and obtains it current position and rotation if found.
Definition at line 735 of file ATerrainInterface.cpp.
| void ATerrainInterface::GetLocatorTransform | ( | const TCHAR * | a_pszLocatorName, |
| Toshi::TMatrix44 & | a_rOutTransform ) |
Finds a locator (bone) by the specified name and obtains it current transform if found.
Definition at line 696 of file ATerrainInterface.cpp.
|
inline |
Definition at line 144 of file ATerrainInterface.h.
|
inline |
Definition at line 104 of file ATerrainInterface.h.
| TBOOL ATerrainInterface::HasAnyLODsQueued | ( | ) |
Definition at line 584 of file ATerrainInterface.cpp.
|
inline |
Definition at line 99 of file ATerrainInterface.h.
| TBOOL ATerrainInterface::IsLoaded | ( | ) | const |
Definition at line 328 of file ATerrainInterface.cpp.
| void ATerrainInterface::LoadFromFile | ( | const TCHAR * | a_szFilePath, |
| TBOOL | a_bLoadLater, | ||
| TBOOL | a_bStreamCollision ) |
Loads information about terrain.
| a_szFilePath | path to the terrain info file |
| a_bLoadLater | if TFALSE, doesn't pause thread to load all resources |
| a_bPreloadCollision | if TFALSE, loads all collision objects at once |
Definition at line 351 of file ATerrainInterface.cpp.
| void ATerrainInterface::QueueStreamingAssets | ( | ) |
Definition at line 546 of file ATerrainInterface.cpp.
| void ATerrainInterface::Render | ( | ) |
Definition at line 271 of file ATerrainInterface.cpp.
| void ATerrainInterface::UnqueueStreamingAssets | ( | ) |
Definition at line 576 of file ATerrainInterface.cpp.
| void ATerrainInterface::Update | ( | ) |
Definition at line 119 of file ATerrainInterface.cpp.
| void ATerrainInterface::UpdateUsedBlocks | ( | ATerrainLODType | a_eLODType | ) |
Sets visible blocks of specified LOD type to be used.
| a_eLODType | type of LODs to load (can be ATerrainLODType_High or ATerrainLODType_Low) |
Definition at line 503 of file ATerrainInterface.cpp.
| void ATerrainInterface::WaitUntilLoaded | ( | ) |
Definition at line 470 of file ATerrainInterface.cpp.
|
friend |
Definition at line 32 of file ATerrainInterface.h.
| friend ATerrainInterface::ATerrainVIS |
Definition at line 31 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 19 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 15 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 14 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 13 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 16 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 18 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 17 of file ATerrainInterface.h.
|
staticconstexpr |
Definition at line 20 of file ATerrainInterface.h.