Graphics::ILightingManager class

This manager handles the lighting configurations in the game.

It stores a map of ILightingWorld instances.

Public static functions

static auto Get() -> ILightingManager*
Returns the active lighting manager.

Constructors, destructors, conversion operators

~ILightingManager() virtual

Public functions

auto AddRef() -> int pure virtual
auto Release() -> int pure virtual
auto Initialize() -> bool pure virtual
auto Dispose() -> bool pure virtual
auto Update(int) -> void pure virtual
auto CreateLightingWorld(uint32_t worldID, const char* pName = nullptr, uint32_t configID = 0) -> ILightingWorld* pure virtual
Creates a new ILightingWorld and maps it to the specified ID.
auto GetLightingWorld(uint32_t worldID) -> ILightingWorld* pure virtual
Returns the ILightingWorld previously mapped with the given ID, or nullptr if the ID is not mapped.
auto RemoveLightingWorld(uint32_t worldID) -> void pure virtual
Disposes the lighting world with the given ID, and removes it from this manager.
auto GetSunDir() -> Math::Vector3 pure virtual
auto SetAtmosphereModel(const Math::Vector3&, int, const Math::Vector4*) -> void pure virtual
auto SetExtendedFogging(int) -> void pure virtual

Function documentation

ILightingWorld* Graphics::ILightingManager::CreateLightingWorld(uint32_t worldID, const char* pName = nullptr, uint32_t configID = 0) pure virtual

Creates a new ILightingWorld and maps it to the specified ID.

Parameters
worldID The ID the lighting world will be mapped to.
pName [Optional] The name of the world, it might be ignored.
configID [Optional] The instance ID of the configuration file of the lighting.

The instance ID of the configuration file can optionally be specified, to load the lighting configuration.

ILightingWorld* Graphics::ILightingManager::GetLightingWorld(uint32_t worldID) pure virtual

Returns the ILightingWorld previously mapped with the given ID, or nullptr if the ID is not mapped.

Parameters
worldID The ID of the world mapped.

void Graphics::ILightingManager::RemoveLightingWorld(uint32_t worldID) pure virtual

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

Parameters
worldID The ID the lighting world was mapped to.

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