Graphics::IModelManager class

This manager stores the model worlds in the game; for more info, check the IModelWorld class.

This manager can be used to create new model worlds or get existing ones, which in turn can be used to render models in the game.

Derived classes

class cModelManager
The implementation of IModelManager; this should only be used for extending and detouring.

Public static functions

static auto Get() -> IModelManager*
Gets the active model manager.

Constructors, destructors, conversion operators

~IModelManager() virtual

Public functions

auto AddRef() -> int pure virtual
auto Release() -> int pure virtual
auto Initialize() -> bool pure virtual
auto Dispose() -> bool pure virtual
auto CreateWorld(uint32_t id, const char* pName = nullptr, bool bEnableBuiltins = false) -> IModelWorld* pure virtual
Creates a new IModelWorld and stores it in this manager, mapped with the given ID.
auto DisposeWorld(uint32_t id) -> void pure virtual
Disposes the model world with the given ID, and removes it from this manager.
auto GetWorld(uint32_t id) -> IModelWorld* pure virtual
Returns the IModelWorld* of this manager mapped to the given ID.
auto GetMainWorld() -> IModelWorld* pure virtual
auto SetMainWorld(IModelWorld* world) -> void pure virtual
auto GetGroupFlag(uint32_t groupID, int = 0) -> int pure virtual
auto func2Ch(int) -> bool pure virtual
auto func30h(int) -> bool pure virtual
auto func34h(float, float, int) -> void pure virtual
auto Update(float, float) -> void pure virtual

Function documentation

IModelWorld* Graphics::IModelManager::CreateWorld(uint32_t id, const char* pName = nullptr, bool bEnableBuiltins = false) pure virtual

Creates a new IModelWorld and stores it in this manager, mapped with the given ID.

Parameters
id The ID the new model world will be mapped to.
pName [Optional] The name of the model world. This might be ignored.
bEnableBuiltins [Optional] If true, builtin models will be used when a model does not exist.

void Graphics::IModelManager::DisposeWorld(uint32_t id) pure virtual

Disposes the model world with the given ID, and removes it from this manager.

Parameters
id The ID the model world was mapped to.

This method should be paired with the CreateWorld() method; call it when the model world won't be used anymore.

IModelWorld* Graphics::IModelManager::GetWorld(uint32_t id) pure virtual

Returns the IModelWorld* of this manager mapped to the given ID.

Parameters
id The ID the model world was mapped to.