class Enlighten::MultithreadCpuWorker
└>Enlighten::MultithreadCpuWorkerCommon
└>Enlighten::CpuWorker
└>Enlighten::BaseWorker
└>Enlighten::IUpdateManagerWorker
Worker for the mulithreaded CPU update manager.
Functions
Name | Description |
---|---|
AddCubeMap(BaseCubeMap *const &) | Add a cube map to the worker. |
AddCubeMap(BaseCubeMap *const &) | Add a cube map to the worker. |
AddCubeMap(BaseCubeMap *const &) | Add a cube map to the worker. |
AddDynamicObject(BaseDynamicObject *const &) | Add a dynamic object to the worker. |
AddDynamicObject(BaseDynamicObject *const &) | Add a dynamic object to the worker. |
AddProbeSet(BaseProbeSet *const &) | Add a probe set to the worker. |
AddProbeSet(BaseProbeSet *const &) | Add a probe set to the worker. |
AddProbeSet(BaseProbeSet *const &) | Add a probe set to the worker. |
AddSystem(BaseSystem *const &) | Add a system to the worker, and allocate any required auxiliary resources. |
AddSystem(BaseSystem *const &) | Add a system to the worker, and allocate any required auxiliary resources. |
AddSystem(BaseSystem *const &) | Add a system to the worker, and allocate any required auxiliary resources. |
AddSystem(BaseSystem *const &) | Add a system to the worker, and allocate any required auxiliary resources. |
AllocateVisibilityData(Geo::s32, Enlighten::eLightType) | Allocates/Frees memory for visibility data. |
AllocateVisibilityData(Geo::s32, Enlighten::eLightType) | Allocates/Frees memory for visibility data. |
BaseWorker(SolveType, eOutputFormat, eOutputFormat, eOutputFormatByteOrder, PrecisionHint::Value, bool, bool, EnlightenProfile *) | Base class constructor. |
ClearCubeMapVolumeTransparency(Geo::GeoGuid const &) | Clears the cube map volume transparency. |
ClearCubeMapVolumeTransparency(Geo::GeoGuid const &) | Clears the cube map volume transparency. |
ClearSystemVolumeTransparency(Geo::GeoGuid const &) | Clears the system volume transparency. |
ClearSystemVolumeTransparency(Geo::GeoGuid const &) | Clears the system volume transparency. |
ClearSystemVolumeTransparency(Geo::GeoGuid const &) | Clears the system volume transparency. |
ComputeDirectionalVisibility(CpuSystem *) | Compute directional light visibility for the given system. |
CopyAlbedoBuffer(CopyAlbedoBufferInfo const &) | Allocate and make a copy of an albedo buffer. |
CopyAlbedoBuffer(CopyAlbedoBufferInfo const &) | Allocate and make a copy of an albedo buffer. |
CopyBounceBuffer(CopyBounceBufferInfo const &) | Allocate and make a copy of an emissive buffer. |
CopyBounceBuffer(CopyBounceBufferInfo const &) | Allocate and make a copy of an emissive buffer. |
CopyEmissiveBuffer(CopyEmissiveBufferInfo const &) | Allocate and make a copy of an emissive buffer. |
CopyEmissiveBuffer(CopyEmissiveBufferInfo const &) | Allocate and make a copy of an emissive buffer. |
CopyEmissiveEnvironment(CopyEmissiveEnvironmentInfo const &) | Allocate and make a copy of an emissive environment. |
CopyEmissiveEnvironment(CopyEmissiveEnvironmentInfo const &) | Allocate and make a copy of an emissive environment. |
CopyGeometryTransparencyBuffer(CopyTransparencyBufferInfo const &) | Copies the geometry transparency buffer. |
CopyGeometryTransparencyBuffer(CopyTransparencyBufferInfo const &) | Copies the geometry transparency buffer. |
CopyGeometryTransparencyBuffer(CopyTransparencyBufferInfo const &) | Allocate and make a copy of a geoemtry transparency buffer. |
CopyInputLightingBuffer(CopyInputLightingBufferInfo const &) | Allocate and make a copy of an input lighting buffer. |
CopyInputLightingBuffer(CopyInputLightingBufferInfo const &) | Allocate and make a copy of an input lighting buffer. |
CopyLightsToSolverArray() | Convert UpdateManagerLights to Enlighten::InputLights in preparation for Enlighten work. |
CopyLightsToSolverArray() | Convert UpdateManagerLights to Enlighten::InputLights in preparation for Enlighten work. |
CopyMaterialTransparencyBuffer(CopyTransparencyBufferInfo const &) | Allocate and make a copy of a material transparency buffer. |
CopyMaterialTransparencyBuffer(CopyTransparencyBufferInfo const &) | Allocate and make a copy of a material transparency buffer. |
CopyProbeOutput(CopyProbeOutputInfo const &) | Allocate and make a copy of Enlighten probe set output. |
CopyProbeOutput(CopyProbeOutputInfo const &) | Allocate and make a copy of Enlighten probe set output. |
CopyRawOutput(CopyRawOutputInfo const &) | Allocate and make a copy of raw Enlighten texture output. |
CopyRawOutput(CopyRawOutputInfo const &) | Allocate and make a copy of raw Enlighten texture output. |
CopyVisibilityBuffer(CopyVisibilityBufferInfo const &) | Allocate and make a copy of a visibility data block. |
CopyVisibilityBuffer(CopyVisibilityBufferInfo const &) | Allocate and make a copy of a visibility data block. |
CpuWorker(SolveType, eOutputFormat, eOutputFormat, eOutputFormatByteOrder, PrecisionHint::Value, bool, bool, EnlightenProfile *, Command *) | Constructor, taking properties which are fixed at creation time. |
DecrementUpdateCounters() | Decrements the update counters for all systems, probe sets, cube maps and light banks. |
DestroyAllWorkerObjects() | Release all the objects this worker constructed. |
DoBounceSolverTask(Enlighten::SolveBounceTask, void *, Geo::u32 &, Geo::u32 &, CpuSystem *) | Call the bounce solver and trigger feedback updates if required. |
DoCubeMapSolve(BaseCubeMap *, WorkerThreadData *) | Do the solve task for a cube map using the working memory of the given thread index. |
DoCubeMapSolve(BaseCubeMap *, WorkerThreadData *) | Do the solve task for a cube map using the working memory of the given thread index. |
DoDynamicObjectInterpolation(BaseDynamicObject *) | Do the interpolation for a single dynamic object, to allow multithreading. |
DoDynamicObjectUpdate() | Runs the probe interpolation tasks for all dynamic objects, non-multithreaded. |
DoEnvironmentUpdate() | Copies the environment values from the application-settable copy to the internal copy. |
DoNextTask(Geo::s32) | Do the next task on the queue using the working memory of the given thread index. |
DoSystemInputLighting(BaseSystem *, WorkerThreadData *) | Do the input lighting task for a system using the working memory of the given thread index. |
DoSystemInputLighting(BaseSystem *, WorkerThreadData *) | Do the input lighting task for a system using the working memory of the given thread index. |
DoSystemSolutionSpaceFreeze(CpuSystemSolutionSpace *, Enlighten::InputLightingBuffer *, CpuSystem *, WorkerThreadData *, Geo::u32 &, bool) | Do a freeze of the solution space data. |
DoSystemSolutionSpaceSolve(CpuSystem *, CpuSystemSolutionSpace *, void *, const Enlighten::InputLightingBuffer *, float, bool, bool, Geo::u32 &, Geo::u32 &) | Do a solve of a particular system solution space for a given system and update bounce buffers. |
EnqueueCommand(CommandType &&) | Enqueues a command for later execution by the worker thread, if it is running. |
EnqueueQuitCommand() | Tell the update thread to quit. |
EnqueueRadiosityUpdate() | Enqueue a radiosity update on the worker thread. |
EnsureSolverLightBufferSize() | Ensure the solver light buffer is large enough to store all the lights. |
EnsureSolverLightBufferSize() | Ensure the solver light buffer is large enough to store all the lights. |
ExcludesEnvironmentInPrimaryBounce() | Have we requested to solve the environment in secondary bounce only. (ie skip primary bounce) |
ExcludesEnvironmentInPrimaryBounce() | Returns the value of the worker property m_ExcludeEnvrionmentInPrimaryBounce. |
ExecuteCommands() | Executes and destroys commands in the command ring buffer until the buffer is empty. |
FindObject(const Geo::GeoGuid &, CpuSystem *&) | Specialise the BaseWorker::FindObject to deal with a concrete type here. |
FindObject(const Geo::GeoGuid &, ObjectType *&) | Finds the object with the given GUID. |
FindObject(const Geo::GeoGuid &, BaseCubeMap *&) | Finds the object with the given GUID. |
FindObject(const Geo::GeoGuid &, BaseProbeSet *&) | Finds the object with the given GUID. |
FindObject(const Geo::GeoGuid &, BaseSystem *&) | Finds the object with the given GUID. |
FindObject(ObjectType *, ObjectType *&) | Finds the object with the given address. |
FindObject(const Geo::GeoGuid &, BaseDynamicObject *&) | Finds the object with the given GUID. |
FreeVisibilityData(Geo::s32, bool) | Allocates/Frees memory for visibility data. |
GetInputLightingPrecisionHint() | Gets the precision hint for the input lighting buffer,. |
GetLightMethodSelector() | Gets the light method selector. |
GetLightMethodSelector() | Gets the light method selector. |
GetSizeOfProbeInputWorkspaceMemory() | Get the total size of probe set output workspaces. |
GetSizeOfProbeInputWorkspaceMemory() | Get the total size of probe set output workspaces. |
GetSizeOfProbeOutputWorkspaceMemory() | Get the total size of probe set input workspaces. |
GetSizeOfProbeOutputWorkspaceMemory() | Get the total size of probe set input workspaces. |
GetSizeOfWorkingMemory() | Get the size of the working memory required for solving. |
GetSizeOfWorkingMemory() | Get the size of the working memory required for solving. |
GetSizeOfWorkingMemory() | Get the size of the working memory required for solving. |
GetSystemArray() | Returns the array of systems. Used by the GeoMaya plug in to work out when to trigger refreshes. |
InitThreadGroup() | One-time thread group initialisation. |
IsCommandThreadSafe() | Returns true if called on the worker thread, or if no worker thread is running. |
IsCommandThreadSafe() | Returns true if called on the worker thread, or if no worker thread is running. |
IsEnvOnlyUpdateRequired(CpuSystemSolutionSpace *, bool, const Enlighten::InputLightingBuffer *) | Returns true if the EnvOnly feature is enabled and an update is required. |
IsUpdateLimited() | Are we at the limit of the number of allowed enqueued updates, and therefore the update rate is throttled? |
IsUpdateLimited() | Are we at the limit of the number of allowed enqueued updates, and therefore the update rate is throttled? |
IsWorkerThreadRunning() | Whether the worker thread is currently running. |
IsWorkerThreadRunning() | Returns true if a separate worker thread is currently running, false if not. |
LogProfiling(const ObjectType *, F) | Log stats with the profiler using an enclosure. |
MultithreadCpuWorker(SolveType, eOutputFormat, eOutputFormat, eOutputFormatByteOrder, PrecisionHint::Value, bool, bool, EnlightenProfile *, Command *, IThreadGroup *, ILimiter *, Geo::u64) | Constructor. |
MultithreadCpuWorkerCommon(SolveType, eOutputFormat, eOutputFormat, eOutputFormatByteOrder, PrecisionHint::Value, bool, bool, EnlightenProfile *, Command *, IThreadGroup *, ILimiter *, Geo::u64) | Constructor. |
ProbeSetManagerSetMaxWeightForProbeSet(Geo::GeoGuid const &, float) | Set max interpolation weight for a given probe set. |
ProbeSetManagerSetMaxWeightForProbeSet(Geo::GeoGuid const &, float) | Set max interpolation weight for a given probe set. |
PushMultipleObjectsToDestroy(Geo::IGeoReleasable *const *, Geo::s32) | Push a list of objects which has been removed from the worker on to a list to be destroyed by the rendering thread. |
PushObjectToDestroy(Geo::IGeoReleasable *) | Push an object which has been removed from the worker on to a list to be destroyed by the rendering thread. |
ReadInputLightingBuffer(ReadInputLightingBufferInfo const &) | These functions are provided for debugging/visualisation purposes. |
ReadInputLightingBuffer(ReadInputLightingBufferInfo const &) | These functions are provided for debugging/visualisation purposes. |
RecreateInterpolationInputList() | Updates the probe interpolation inputs, if required. |
ReleaseSystemSolutionSpaces(ReleaseSystemSolutionSpacesInfo const &) | Release system solution spaces. |
ReleaseSystemSolutionSpaces(ReleaseSystemSolutionSpacesInfo const &) | Release the solution spaces. |
RemoveAllLights() | Remove all lights. |
RemoveAllLights() | Remove all lights. |
RemoveCubeMap(RemoveInfo const &) | Remove a cube map from the worker (either completely or partially) |
RemoveCubeMap(RemoveInfo const &) | Remove a cube map from the worker (either completely or partially) |
RemoveCubeMap(RemoveInfo const &) | Remove a cube map from the worker (either completely or partially) |
RemoveDirectionalLight(Geo::GeoGuid) | Removes a light with the given GUID from the list of directional lights (if one is found), and frees the associated memory. |
RemoveDynamicObject(RemoveInfo const &) | Remove a dynamic object from the worker. |
RemoveDynamicObject(RemoveInfo const &) | Remove a dynamic object from the worker. |
RemoveDynamicObject(RemoveInfo const &) | Remove a dynamic object from the worker. |
RemoveEmissiveEnvironment(Geo::GeoGuid const &) | Remove the environment with the given id. |
RemoveEmissiveEnvironment(Geo::GeoGuid const &) | Remove the environment with the given id. |
RemoveLight(Geo::GeoGuid const &) | Remove the light with the given id. |
RemoveLight(Geo::GeoGuid const &) | Remove the light with the given id. |
RemoveLightBank(Geo::s32 const &) | Remove a light bank. |
RemoveLightBank(Geo::s32 const &) | Remove a light bank. |
RemoveLightWithoutVisibility(Geo::GeoGuid) | Removes a light with the given GUID from the list of lights without visibility (if one is found), and frees the associated memory. |
RemoveLightWithVisibility(Geo::GeoGuid) | Removes a light with the given GUID from the list of lights with visibility (if one is found), and frees the associated memory. |
RemoveProbeSet(RemoveInfo const &) | Remove a probe set from the worker (either completely or partially) |
RemoveProbeSet(RemoveInfo const &) | Remove a probe set from the worker (either completely or partially) |
RemoveProbeSet(RemoveInfo const &) | Remove a probe set from the worker (either completely or partially) |
RemoveSystem(RemoveInfo const &) | Remove a system from the worker (either completely or partially) |
RemoveSystem(RemoveInfo const &) | Remove a system from the worker (either completely or partially) |
RemoveSystem(RemoveInfo const &) | Remove a system from the worker (either completely or partially) |
RemoveSystem(RemoveInfo const &) | Remove a system from the worker (either completely or partially) |
RemoveSystem(RemoveInfo const &) | Remove a system from the worker (either completely or partially) |
RemoveSystemFromDependencyLists(BaseSystem *) | Removes the given system from all cached dependency lists. |
RemoveSystemSolutionSpaces(Geo::GeoGuid const &) | Removes the solution spaces from the system. This function will not release the solution spaces. |
RemoveSystemSolutionSpaces(Geo::GeoGuid const &) | Removes the solution spaces from the system. This function will not release the solution spaces. |
ReRegisterObjectsWithProfiler() | Re-register all objects with the profiler. |
RunWorkerThread() | Start the worker thread if it is not already running. |
RunWorkerThread() | Start the worker thread if it is not already running. |
SetAllUpdateCounters(Geo::s32 const &) | Set all system and probe update counters to count. |
SetAllUpdateCounters(Geo::s32 const &) | Set all system and probe update counters to count. |
SetDoFullSolveNextFrame() | Disable temporal coherence so a full solve is performed next frame. |
SetDoFullSolveNextFrame() | Disable temporal coherence so a full solve is performed next frame. |
SetDoIndirectInputLightingNextFrame(Geo::GeoGuid const &) | Sets a flag to run indirect input lighting on the next frame. |
SetDoIndirectInputLightingNextFrame(Geo::GeoGuid const &) | Sets a flag to run indirect input lighting on the next frame. |
SetDoIndirectInputLightingNextFrame(Geo::GeoGuid const &) | Sets a flag to run indirect input lighting on the next frame. |
SetLightBankUpdateCounter(SetLightBankUpdateCounterInfo const &) | Set a light bank update counter. |
SetLightBankUpdateCounter(SetLightBankUpdateCounterInfo const &) | Set a light bank update counter. |
SetLightBankUpdateCounter(SetLightBankUpdateCounterInfo const &) | Set a light bank update counter. |
SetProbeSetManager(IProbeSetManager *const &) | Set a probe set manager. |
SetProbeSetManager(IProbeSetManager *const &) | Set a probe set manager. |
SetProbeSetTransform(SetProbeSetTransformInfo const &) | Set a probe set world-to-local-space transform. |
SetProbeSetTransform(SetProbeSetTransformInfo const &) | Set a probe set world-to-local-space transform. |
SetSystemSolutionSpaces(ISystemSolutionSpace *const *, const Geo::s32, const Geo::s32) | Set the solution spaces used by a system. |
SetSystemSolutionSpaces(ISystemSolutionSpace *const *, const Geo::s32, const Geo::s32) | Set the solution spaces used by a system. |
SetTransparencySamplePositionOffset(SetTransparencySamplePositionOffsetInfo const &) | Sets the transparency sample position offset. |
SetTransparencySamplePositionOffset(SetTransparencySamplePositionOffsetInfo const &) | Sets the transparency sample position offset. |
SetTransparencySamplePositionOffset(SetTransparencySamplePositionOffsetInfo const &) | Sets the transparency sample position offset. |
SetVisibilityBits(SetVisibilityBitsInfo const &) | Sets the visibility block for a (system, light) pair. |
SetVisibilityBits(SetVisibilityBitsInfo const &) | Sets the visibility block for a (system, light) pair. |
SetVisibilityBits(SetVisibilityBitsInfo const &) | Sets the visibility block for a (system, light) pair. |
SetWorkerProperties(const UpdateManagerWorkerProperties &) | Set the worker global state. |
SetWorkerProperties(UpdateManagerWorkerProperties const &) | Set the worker global state. |
SetWorkerProperties(const UpdateManagerWorkerProperties &) | Set the worker global state. |
ShutdownThreadGroup() | One-time therad group shut down. |
StopWorkerThread() | Signal the worker thread to stop and wait until it quits. |
StopWorkerThread() | Signal the worker thread to stop and wait until it quits. |
TriggerTransparencyVolume(const Enlighten::BoxVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolume(const Enlighten::SphereVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolume(const Enlighten::BoxVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolume(const Enlighten::BoxVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolume(const Enlighten::SphereVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolume(const Enlighten::SphereVolume &) | Triggers a transparency volume. |
TriggerTransparencyVolumeGeneric(const VolumeType &) | Triggers a transparency volume. |
UpdateCubeMapDependencyList(BaseCubeMap *) | Creates the cached dependency list for the given cube map. |
UpdateEmissiveEnvironment(UpdateEnvironmentInfo const &) | Update (or add) the environment with the given id. |
UpdateEmissiveEnvironment(UpdateEnvironmentInfo const &) | Update (or add) the environment with the given id. |
UpdateLight(UpdateLightInfo const &) | Update (or add) the light with the given id. |
UpdateLight(UpdateLightInfo const &) | Update (or add) the light with the given id. |
UpdateLightmapBounceBufferData(BaseSystem *) | Update the lightmap bounce buffer data. |
UpdateLightmapBounceBufferData(BaseSystem *) | Update the lightmap bounce buffer data. |
UpdateProbeBounceBufferData(BaseSystem *) | Update the probe bounce buffer data. |
UpdateProbeBounceBufferData(BaseSystem *) | Update the probe bounce buffer data. |
UpdateProbeDependencyList(BaseProbeSet *) | Creates the cached dependency list for the given probe set. |
UpdateRadiosity() | The main radiosity update function. |
UpdateRadiosity() | The main radiosity update function. |
UpdateRadiosity() | The main radiosity update function. |
UpdateSystemDependencyLists(BaseSystem *) | Creates the cached dependency list for the given system, and updates all other lists with the new system. |
WriteVisibilityPointers(void **, BaseSystem *, Geo::s32) | Write ordered list of visibility data pointers for the given system and light bank Returns TRUE if any of the light inputs have changed. |
Variables
Name | Description |
---|---|
Geo::RingBuffer m_CommandBuffer | Buffer of enqueued commands. |
Geo::s64 m_CommandThreadTicks | Time taken to execute commands on the command thread. |
Geo::GeoKeyValueArray< Geo::GeoGuid, BaseCubeMap > m_CubeMapArray | Cube map GUID to data mapping. |
eOutputFormat m_CubemapOutputFormat | Cubemap output format (immutable) |
ProcessingStage m_CurrentStage | The current processing stage in the Enlighten update loop. |
Geo::GeoCriticalSection m_DestroyArrayCriticalSection | Critical section for modifying the to-be-destroyed array. |
Geo::GeoKeyValueArray< Geo::GeoGuid, UpdateManagerLight > m_DirectionalLights | Array of directional lights. |
Geo::GeoMap< Geo::u32, DirectionPalette * > m_DirectionPalettes | Map of DirectionPalettes for use with EPSS. |
Geo::GeoKeyValueArray< Geo::GeoGuid, BaseDynamicObject > m_DynamicObjectArray | Dynamic object GUID to data mapping. |
Geo::GeoAtomic< Geo::u32 > m_EnlightenTaskIndex | Index of next task in the Enlighten task queue. |
Geo::GeoArray< EnlightenTask > m_EnlightenTasks | List of low-level Enlighten tasks to do. |
Geo::GeoKeyValueArray< Geo::GeoGuid, BaseEnvironment > m_EnvironmentArray | Environment GUID to data mapping. |
Geo::GeoEvent m_ExecuteCommandEvent | Handle to event trigger to execute commands. |
UpdateManagerWorkerProperties m_GlobalState | Global solver parameters. |
bool m_InputLightingListDirty | Regenerate the hash of the InputLightingList. |
Geo::u32 m_InputLightingListHash | Hash of the list of InputLightingBuffers. |
PrecisionHint::Value m_InputLightingPrecisionHint | Input lighting precision hint. |
Geo::u32 m_InterpolationInputChangeId | Counter incremented when the list of probe inputs is recreated. |
bool m_InterpolationInputListRecreated | Flag set when the list of probe inputs was recreated. |
Geo::GeoArray< InterpolationInputSet > m_InterpolationInputSets | List of interpolation inputs (ie probe sets with their output) |
Geo::GeoAtomic< Geo::u32 > m_InterpolationTimeUs | Interpolation times in microseconds. |
eOutputFormat m_IrradianceOutputFormat | Irradiance output format (immutable) |
Geo::s64 m_LastUpdateTick | The last time we started to update (used for stats computation). |
Geo::GeoMap< Geo::s32, Geo::s32 > m_LightBankMap | Light bank id to number of updates counter. |
LightMethodSelector * m_LightMethodSelector | Light method selector. |
Geo::GeoKeyValueArray< Geo::GeoGuid, UpdateManagerLight > m_LightsWithoutVisibility | Array of non-directional lights without visibility data. |
Geo::GeoKeyValueArray< Geo::GeoGuid, UpdateManagerLight > m_LightsWithVisibility | Array of non-directional lights with visibility data. |
ILimiter * m_Limiter | Interface to limit amount of Enlighten work performed. |
Geo::GeoAtomic< Geo::u32 > m_NumEnqueuedUpdates | Number of update calls currently in the command queue. |
Geo::GeoArray< Geo::IGeoReleasable * > m_ObjectsToDestroy | Array of objects which need to be destroyed by update manager. |
eOutputFormatByteOrder m_OutputFormatByteOrder | Byte order to output 8-bit textures (immutable) |
Geo::GeoKeyValueArray< Geo::GeoGuid, BaseProbeSet > m_ProbeSetArray | ProbeSet GUID to data mapping. |
Enlighten::IProbeSetManager * m_ProbeSetManager | Probe Sets Manager object that can provide probe weights for interpolation. |
Geo::u32 m_PropertiesHash | Hash of the worker properties. |
bool m_QuitThread | Flag which tells the worker thread to quit the update loop. |
bool m_RecreateInterpolationInputList | Flag set when we need to regenerate the list of probe inputs. |
bool m_RegisterWithProfiler | Flag to indicate that all objects need to be registered with the profiler. |
bool m_SolvedRadiosity | Whether we have completed a solve since the last stats update. |
Geo::s32 m_SolverLightArraySize | Size of the solver light array allocation. |
InputLightBase ** m_SolverLights | Array of lights to pass to the Enlighten tasks. |
SolveType m_SolveType | Whether to solve directional irradiance, directional irradiance separately for each colour channel or irradiance only) |
EnlightenProfile * m_StatsProfile | Optional pointer to a statistics profiler. |
Geo::GeoKeyValueArray< Geo::GeoGuid, BaseSystem > m_SystemArray | System GUID to data mapping. |
TaskProcessor * m_TaskProcessors | Multithreaded tasks to execute through the interface. |
Command * m_ThreadCreationCommand | Command to execute on the worker thread on creation. |
IThreadGroup * m_ThreadGroup | Interface to execute asynchronous multithreaded tasks. |
bool m_ThreadRunning | Is the command thread running. |
Geo::s32 m_TotalNumLights | Total number of lights in the current solver array. |
bool m_UseEntireProbeSetSolver | Should we use the EPSS? |
bool m_UseProbeSetLod | Use or not Probe Set LOD. |
Geo::GeoArray< WorkerThreadData * > m_WorkerThreadData | Internal array of working data for each worker thread. |
Enums
Name | Description |
---|---|
ProcessingStage | Internal enumeration for keeping track of the update loop. |
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::AddCubeMap
...
public: virtual void AddCubeMap
(
BaseCubeMap *const & cubeMap
)
...
Add a cube map to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::AddCubeMap
...
public: virtual void AddCubeMap
(
BaseCubeMap *const & cubeMap
)
...
Add a cube map to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::AddCubeMap
...
public: void AddCubeMap
(
BaseCubeMap *const & cubeMap
)
...
Add a cube map to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::AddDynamicObject
...
public: void AddDynamicObject
(
BaseDynamicObject *const & dynamicObject
)
...
Add a dynamic object to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::AddDynamicObject
...
public: virtual void AddDynamicObject
(
BaseDynamicObject *const & dynamicObject
)
...
Add a dynamic object to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::AddProbeSet
...
public: virtual void AddProbeSet
(
BaseProbeSet *const & probeSet
)
...
Add a probe set to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::AddProbeSet
...
public: void AddProbeSet
(
BaseProbeSet *const & probeSet
)
...
Add a probe set to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::AddProbeSet
...
public: virtual void AddProbeSet
(
BaseProbeSet *const & probeSet
)
...
Add a probe set to the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::AddSystem
...
public: virtual void AddSystem
(
BaseSystem *const & system
)
...
Add a system to the worker, and allocate any required auxiliary resources.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::AddSystem
...
public: virtual void AddSystem
(
BaseSystem *const & system
)
...
Add a system to the worker, and allocate any required auxiliary resources.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::AddSystem
...
public: virtual void AddSystem
(
BaseSystem *const & system
)
...
Add a system to the worker, and allocate any required auxiliary resources.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::AddSystem
...
public: void AddSystem
(
BaseSystem *const & system
)
...
Add a system to the worker, and allocate any required auxiliary resources.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::AllocateVisibilityData
...
protected: virtual void AllocateVisibilityData
(
Geo::s32 lightIndex,
Enlighten::eLightType lightType
)
...
Allocates/Frees memory for visibility data.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::AllocateVisibilityData
...
protected: virtual void AllocateVisibilityData
(
Geo::s32 lightIndex,
Enlighten::eLightType lightType
)
...
Allocates/Frees memory for visibility data.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::BaseWorker::BaseWorker
...
public: BaseWorker
(
SolveType solveType,
eOutputFormat irradianceOutputFormat,
eOutputFormat cubemapOutputFormat,
eOutputFormatByteOrder byteOrder,
PrecisionHint::Value inputLightingPrecisionHint,
bool useEntireProbeSetSolver,
bool useProbeSetLod,
EnlightenProfile * profile
)
...
Base class constructor.
Irradiance output format and optional stats profile are common to all worker implementations.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::ClearCubeMapVolumeTransparency
...
public: virtual void ClearCubeMapVolumeTransparency
(
Geo::GeoGuid const & cubeMapId
)
...
Clears the cube map volume transparency.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::ClearCubeMapVolumeTransparency
...
public: void ClearCubeMapVolumeTransparency
(
Geo::GeoGuid const & cubeMapId
)
...
Clears the cube map volume transparency.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::ClearSystemVolumeTransparency
...
public: virtual void ClearSystemVolumeTransparency
(
Geo::GeoGuid const & systemId
)
...
Clears the system volume transparency.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::ClearSystemVolumeTransparency
...
public: virtual void ClearSystemVolumeTransparency
(
Geo::GeoGuid const & systemId
)
...
Clears the system volume transparency.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::ClearSystemVolumeTransparency
...
public: void ClearSystemVolumeTransparency
(
Geo::GeoGuid const & systemId
)
...
Clears the system volume transparency.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::ComputeDirectionalVisibility
...
protected: void ComputeDirectionalVisibility
(
CpuSystem * system
)
...
Compute directional light visibility for the given system.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyAlbedoBuffer
...
public: virtual void CopyAlbedoBuffer
(
CopyAlbedoBufferInfo const & copyInfo
)
...
Allocate and make a copy of an albedo buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyAlbedoBuffer
...
public: void CopyAlbedoBuffer
(
CopyAlbedoBufferInfo const & copyInfo
)
...
Allocate and make a copy of an albedo buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyBounceBuffer
...
public: virtual void CopyBounceBuffer
(
CopyBounceBufferInfo const & copyInfo
)
...
Allocate and make a copy of an emissive buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyBounceBuffer
...
public: void CopyBounceBuffer
(
CopyBounceBufferInfo const & copyInfo
)
...
Allocate and make a copy of an emissive buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyEmissiveBuffer
...
public: void CopyEmissiveBuffer
(
CopyEmissiveBufferInfo const & copyInfo
)
...
Allocate and make a copy of an emissive buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyEmissiveBuffer
...
public: virtual void CopyEmissiveBuffer
(
CopyEmissiveBufferInfo const & copyInfo
)
...
Allocate and make a copy of an emissive buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyEmissiveEnvironment
...
public: void CopyEmissiveEnvironment
(
CopyEmissiveEnvironmentInfo const & copyEnvironmentInfo
)
...
Allocate and make a copy of an emissive environment.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::CopyEmissiveEnvironment
...
public: virtual void CopyEmissiveEnvironment
(
CopyEmissiveEnvironmentInfo const & copyEnvironmentInfo
)
...
Allocate and make a copy of an emissive environment.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::CopyGeometryTransparencyBuffer
...
public: virtual void CopyGeometryTransparencyBuffer
(
CopyTransparencyBufferInfo const & copyInfo
)
...
Copies the geometry transparency buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::CopyGeometryTransparencyBuffer
...
protected: virtual void CopyGeometryTransparencyBuffer
(
CopyTransparencyBufferInfo const & copyInfo
)
...
Copies the geometry transparency buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyGeometryTransparencyBuffer
...
public: void CopyGeometryTransparencyBuffer
(
CopyTransparencyBufferInfo const & copyInfo
)
...
Allocate and make a copy of a geoemtry transparency buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyInputLightingBuffer
...
public: void CopyInputLightingBuffer
(
CopyInputLightingBufferInfo const & copyInputLightingBufferInfo
)
...
Allocate and make a copy of an input lighting buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyInputLightingBuffer
...
public: virtual void CopyInputLightingBuffer
(
CopyInputLightingBufferInfo const & copyInputLightingBufferInfo
)
...
Allocate and make a copy of an input lighting buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::CopyLightsToSolverArray
...
protected: void CopyLightsToSolverArray()
...
Convert UpdateManagerLights to Enlighten::InputLights in preparation for Enlighten work.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::CopyLightsToSolverArray
...
protected: virtual void CopyLightsToSolverArray()
...
Convert UpdateManagerLights to Enlighten::InputLights in preparation for Enlighten work.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyMaterialTransparencyBuffer
...
public: virtual void CopyMaterialTransparencyBuffer
(
CopyTransparencyBufferInfo const & copyInfo
)
...
Allocate and make a copy of a material transparency buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyMaterialTransparencyBuffer
...
public: void CopyMaterialTransparencyBuffer
(
CopyTransparencyBufferInfo const & copyInfo
)
...
Allocate and make a copy of a material transparency buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::CopyProbeOutput
...
public: virtual void CopyProbeOutput
(
CopyProbeOutputInfo const & copyProbeOutputInfo
)
...
Allocate and make a copy of Enlighten probe set output.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyProbeOutput
...
public: void CopyProbeOutput
(
CopyProbeOutputInfo const & copyProbeOutputInfo
)
...
Allocate and make a copy of Enlighten probe set output.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyRawOutput
...
public: virtual void CopyRawOutput
(
CopyRawOutputInfo const & copyRawOutputInfo
)
...
Allocate and make a copy of raw Enlighten texture output.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyRawOutput
...
public: void CopyRawOutput
(
CopyRawOutputInfo const & copyRawOutputInfo
)
...
Allocate and make a copy of raw Enlighten texture output.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::CopyVisibilityBuffer
...
public: void CopyVisibilityBuffer
(
CopyVisibilityBufferInfo const & copyVisibilityBufferInfo
)
...
Allocate and make a copy of a visibility data block.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::CopyVisibilityBuffer
...
public: virtual void CopyVisibilityBuffer
(
CopyVisibilityBufferInfo const & copyVisibilityBufferInfo
)
...
Allocate and make a copy of a visibility data block.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::CpuWorker::CpuWorker
...
public: CpuWorker
(
SolveType solveType,
eOutputFormat irradianceOutputFormat,
eOutputFormat cubemapOutputFormat,
eOutputFormatByteOrder byteOrder,
PrecisionHint::Value inputLightingPrecisionHint,
bool useEntireProbeSetSolver,
bool useProbeSetLod,
EnlightenProfile * profile,
Command * threadCreationCommand
)
...
Constructor, taking properties which are fixed at creation time.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::DecrementUpdateCounters
...
protected: void DecrementUpdateCounters()
...
Decrements the update counters for all systems, probe sets, cube maps and light banks.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::DestroyAllWorkerObjects
...
protected: void DestroyAllWorkerObjects()
...
Release all the objects this worker constructed.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::DoBounceSolverTask
...
protected: void DoBounceSolverTask
(
Enlighten::SolveBounceTask bounceSolverTask,
void * threadWorkingMemory,
Geo::u32 & numSolvedPixels,
Geo::u32 & solveTimeUs,
CpuSystem * system
)
...
Call the bounce solver and trigger feedback updates if required.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::DoCubeMapSolve
...
protected: virtual void DoCubeMapSolve
(
BaseCubeMap * cubeMap,
WorkerThreadData * wtd
)
...
Do the solve task for a cube map using the working memory of the given thread index.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::DoCubeMapSolve
...
protected: virtual void DoCubeMapSolve
(
BaseCubeMap * cubeMap,
WorkerThreadData * wtd
)
...
Do the solve task for a cube map using the working memory of the given thread index.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::DoDynamicObjectInterpolation
...
protected: void DoDynamicObjectInterpolation
(
BaseDynamicObject * object
)
...
Do the interpolation for a single dynamic object, to allow multithreading.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::DoDynamicObjectUpdate
...
protected: void DoDynamicObjectUpdate()
...
Runs the probe interpolation tasks for all dynamic objects, non-multithreaded.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::DoEnvironmentUpdate
...
protected: void DoEnvironmentUpdate()
...
Copies the environment values from the application-settable copy to the internal copy.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::MultithreadCpuWorkerCommon::DoNextTask
...
public: bool DoNextTask
(
Geo::s32 threadIdx
)
...
Do the next task on the queue using the working memory of the given thread index.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::DoSystemInputLighting
...
protected: virtual void DoSystemInputLighting
(
BaseSystem * system,
WorkerThreadData * wtd
)
...
Do the input lighting task for a system using the working memory of the given thread index.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::DoSystemInputLighting
...
protected: void DoSystemInputLighting
(
BaseSystem * system,
WorkerThreadData * wtd
)
...
Do the input lighting task for a system using the working memory of the given thread index.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::DoSystemSolutionSpaceFreeze
...
protected: void DoSystemSolutionSpaceFreeze
(
CpuSystemSolutionSpace * solutionSpace,
Enlighten::InputLightingBuffer * envBuffer,
CpuSystem * system,
WorkerThreadData * wtd,
Geo::u32 & freezeTimeUs,
bool isBounceLod
)
...
Do a freeze of the solution space data.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::DoSystemSolutionSpaceSolve
...
protected: void DoSystemSolutionSpaceSolve
(
CpuSystem * system,
CpuSystemSolutionSpace * systemSolutionSpace,
void * threadWorkingMemory,
const Enlighten::InputLightingBuffer * environment,
float temporalCoherenceThreshold,
bool updateAllBuckets,
bool isBounceLod,
Geo::u32 & numSolvedPixels,
Geo::u32 & solveTimeUs
)
...
Do a solve of a particular system solution space for a given system and update bounce buffers.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::EnqueueCommand
...
public: void EnqueueCommand
(
CommandType && newCommand
)
...
Enqueues a command for later execution by the worker thread, if it is running.
If the worker thread isn't running, the command is executed immediately on the calling thread.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::EnqueueQuitCommand
...
protected: void EnqueueQuitCommand()
...
Tell the update thread to quit.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::EnqueueRadiosityUpdate
...
public: void EnqueueRadiosityUpdate()
...
Enqueue a radiosity update on the worker thread.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::EnsureSolverLightBufferSize
...
protected: void EnsureSolverLightBufferSize()
...
Ensure the solver light buffer is large enough to store all the lights.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::EnsureSolverLightBufferSize
...
protected: virtual void EnsureSolverLightBufferSize()
...
Ensure the solver light buffer is large enough to store all the lights.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::ExcludesEnvironmentInPrimaryBounce
...
protected: virtual bool ExcludesEnvironmentInPrimaryBounce() const
...
Have we requested to solve the environment in secondary bounce only. (ie skip primary bounce)
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::IUpdateManagerWorker::ExcludesEnvironmentInPrimaryBounce
...
public: bool ExcludesEnvironmentInPrimaryBounce() const
...
Returns the value of the worker property m_ExcludeEnvrionmentInPrimaryBounce.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::ExecuteCommands
...
public: void ExecuteCommands()
...
Executes and destroys commands in the command ring buffer until the buffer is empty.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
CpuSystem *& systemObjectPtr
)
...
Specialise the BaseWorker::FindObject to deal with a concrete type here.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
ObjectType *& dynamicObjectPtr
)
...
Finds the object with the given GUID.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
BaseCubeMap *& cubeMapPtr
)
...
Finds the object with the given GUID.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
BaseProbeSet *& probeSetPtr
)
...
Finds the object with the given GUID.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
BaseSystem *& systemPtr
)
...
Finds the object with the given GUID.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
ObjectType * object,
ObjectType *& result
)
...
Finds the object with the given address.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::FindObject
...
public: bool FindObject
(
const Geo::GeoGuid & id,
BaseDynamicObject *& dynamicObjectPtr
)
...
Finds the object with the given GUID.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::FreeVisibilityData
...
protected: virtual void FreeVisibilityData
(
Geo::s32 lightIndex,
bool isDirectional
)
...
Allocates/Frees memory for visibility data.
Anchor | ||||
---|---|---|---|---|
|
PrecisionHint::Value Enlighten::BaseWorker::GetInputLightingPrecisionHint
...
public: PrecisionHint::Value GetInputLightingPrecisionHint()
...
Gets the precision hint for the input lighting buffer,.
Anchor | ||||
---|---|---|---|---|
|
virtual LightMethodSelector* Enlighten::IUpdateManagerWorker::GetLightMethodSelector
...
public: LightMethodSelector * GetLightMethodSelector()
...
Gets the light method selector.
Anchor | ||||
---|---|---|---|---|
|
virtual LightMethodSelector* Enlighten::BaseWorker::GetLightMethodSelector
...
public: virtual LightMethodSelector * GetLightMethodSelector()
...
Gets the light method selector.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::IUpdateManagerWorker::GetSizeOfProbeInputWorkspaceMemory
...
public: Geo::u32 GetSizeOfProbeInputWorkspaceMemory() const
...
Get the total size of probe set output workspaces.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::BaseWorker::GetSizeOfProbeInputWorkspaceMemory
...
public: virtual Geo::u32 GetSizeOfProbeInputWorkspaceMemory() const
...
Get the total size of probe set output workspaces.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::BaseWorker::GetSizeOfProbeOutputWorkspaceMemory
...
public: virtual Geo::u32 GetSizeOfProbeOutputWorkspaceMemory() const
...
Get the total size of probe set input workspaces.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::IUpdateManagerWorker::GetSizeOfProbeOutputWorkspaceMemory
...
public: Geo::u32 GetSizeOfProbeOutputWorkspaceMemory() const
...
Get the total size of probe set input workspaces.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::BaseWorker::GetSizeOfWorkingMemory
...
public: virtual Geo::u32 GetSizeOfWorkingMemory() const
...
Get the size of the working memory required for solving.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::IUpdateManagerWorker::GetSizeOfWorkingMemory
...
public: Geo::u32 GetSizeOfWorkingMemory() const
...
Get the size of the working memory required for solving.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::u32 Enlighten::MultithreadCpuWorkerCommon::GetSizeOfWorkingMemory
...
public: virtual Geo::u32 GetSizeOfWorkingMemory() const
...
Get the size of the working memory required for solving.
Anchor | ||||
---|---|---|---|---|
|
Geo::GeoKeyValueArray<Geo::GeoGuid, BaseSystem>& Enlighten::BaseWorker::GetSystemArray
...
public: Geo::GeoKeyValueArray< Geo::GeoGuid, BaseSystem > & GetSystemArray()
...
Returns the array of systems. Used by the GeoMaya plug in to work out when to trigger refreshes.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::InitThreadGroup
...
public: void InitThreadGroup()
...
One-time thread group initialisation.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::MultithreadCpuWorkerCommon::IsCommandThreadSafe
...
protected: virtual bool IsCommandThreadSafe() const
...
Returns true if called on the worker thread, or if no worker thread is running.
Only used to assert thread safety in debug builds.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::BaseWorker::IsCommandThreadSafe
...
protected: bool IsCommandThreadSafe() const
...
Returns true if called on the worker thread, or if no worker thread is running.
Only used to assert thread safety in debug builds.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::MultithreadCpuWorkerCommon::IsEnvOnlyUpdateRequired
...
protected: bool IsEnvOnlyUpdateRequired
(
CpuSystemSolutionSpace * systemSolutionSpace,
bool doFullSolve,
const Enlighten::InputLightingBuffer * environment
) const
...
Returns true if the EnvOnly feature is enabled and an update is required.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::BaseWorker::IsUpdateLimited
...
public: virtual bool IsUpdateLimited() const
...
Are we at the limit of the number of allowed enqueued updates, and therefore the update rate is throttled?
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::IUpdateManagerWorker::IsUpdateLimited
...
public: bool IsUpdateLimited() const
...
Are we at the limit of the number of allowed enqueued updates, and therefore the update rate is throttled?
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::CpuWorker::IsWorkerThreadRunning
...
public: virtual bool IsWorkerThreadRunning()
...
Whether the worker thread is currently running.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::BaseWorker::IsWorkerThreadRunning
...
public: bool IsWorkerThreadRunning()
...
Returns true if a separate worker thread is currently running, false if not.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::LogProfiling
...
protected: void LogProfiling
(
const ObjectType * object,
F f
)
...
Log stats with the profiler using an enclosure.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::MultithreadCpuWorker::MultithreadCpuWorker
...
public: MultithreadCpuWorker
(
SolveType solveType,
eOutputFormat irradianceOutputFormat,
eOutputFormat cubemapOutputFormat,
eOutputFormatByteOrder byteOrder,
PrecisionHint::Value inputLightingPrecisionHint,
bool useEntireProbeSetSolver,
bool useProbeSetLod,
EnlightenProfile * profile,
Command * threadCreationCommand,
IThreadGroup * threadGroup,
ILimiter * limiter,
Geo::u64 workerThreadAffinity
)
...
Constructor.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::MultithreadCpuWorkerCommon::MultithreadCpuWorkerCommon
...
public: MultithreadCpuWorkerCommon
(
SolveType solveType,
eOutputFormat irradianceOutputFormat,
eOutputFormat cubemapOutputFormat,
eOutputFormatByteOrder byteOrder,
PrecisionHint::Value inputLightingPrecisionHint,
bool useEntireProbeSetSolver,
bool useProbeSetLod,
EnlightenProfile * profile,
Command * threadCreationCommand,
IThreadGroup * threadGroup,
ILimiter * limiter,
Geo::u64 workerThreadAffinity
)
...
Constructor.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::ProbeSetManagerSetMaxWeightForProbeSet
...
public: void ProbeSetManagerSetMaxWeightForProbeSet
(
Geo::GeoGuid const & probeSetGuid,
float maxWeight
)
...
Set max interpolation weight for a given probe set.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::ProbeSetManagerSetMaxWeightForProbeSet
...
public: virtual void ProbeSetManagerSetMaxWeightForProbeSet
(
Geo::GeoGuid const & probeSetGuid,
float maxWeight
)
...
Set max interpolation weight for a given probe set.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::PushMultipleObjectsToDestroy
...
protected: void PushMultipleObjectsToDestroy
(
Geo::IGeoReleasable *const * objects,
Geo::s32 count
)
...
Push a list of objects which has been removed from the worker on to a list to be destroyed by the rendering thread.
This is required since the objects may contain graphics resources which can only be destroyed by the rendering thread.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::PushObjectToDestroy
...
protected: void PushObjectToDestroy
(
Geo::IGeoReleasable * object
)
...
Push an object which has been removed from the worker on to a list to be destroyed by the rendering thread.
This is required since the object may contain graphics resources which can only be destroyed by the rendering thread.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::ReadInputLightingBuffer
...
public: virtual void ReadInputLightingBuffer
(
ReadInputLightingBufferInfo const & parameters
)
...
These functions are provided for debugging/visualisation purposes.
Read back the contents of an input lighting buffer.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::ReadInputLightingBuffer
...
public: void ReadInputLightingBuffer
(
ReadInputLightingBufferInfo const & parameters
)
...
These functions are provided for debugging/visualisation purposes.
Read back the contents of an input lighting buffer.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::RecreateInterpolationInputList
...
protected: void RecreateInterpolationInputList()
...
Updates the probe interpolation inputs, if required.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::ReleaseSystemSolutionSpaces
...
public: virtual void ReleaseSystemSolutionSpaces
(
ReleaseSystemSolutionSpacesInfo const & releaseInfo
)
...
Release system solution spaces.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::ReleaseSystemSolutionSpaces
...
public: void ReleaseSystemSolutionSpaces
(
ReleaseSystemSolutionSpacesInfo const & releaseInfo
)
...
Release the solution spaces.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveAllLights
...
public: void RemoveAllLights()
...
Remove all lights.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveAllLights
...
public: virtual void RemoveAllLights()
...
Remove all lights.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveCubeMap
...
public: virtual void RemoveCubeMap
(
RemoveInfo const & removeInfo
)
...
Remove a cube map from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveCubeMap
...
public: void RemoveCubeMap
(
RemoveInfo const & removeInfo
)
...
Remove a cube map from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::RemoveCubeMap
...
public: virtual void RemoveCubeMap
(
RemoveInfo const & removeInfo
)
...
Remove a cube map from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::RemoveDirectionalLight
...
protected: void RemoveDirectionalLight
(
Geo::GeoGuid lightId
)
...
Removes a light with the given GUID from the list of directional lights (if one is found), and frees the associated memory.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveDynamicObject
...
public: void RemoveDynamicObject
(
RemoveInfo const & removeInfo
)
...
Remove a dynamic object from the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveDynamicObject
...
public: virtual void RemoveDynamicObject
(
RemoveInfo const & removeInfo
)
...
Remove a dynamic object from the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::RemoveDynamicObject
...
public: virtual void RemoveDynamicObject
(
RemoveInfo const & removeInfo
)
...
Remove a dynamic object from the worker.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveEmissiveEnvironment
...
public: virtual void RemoveEmissiveEnvironment
(
Geo::GeoGuid const & environmentId
)
...
Remove the environment with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveEmissiveEnvironment
...
public: void RemoveEmissiveEnvironment
(
Geo::GeoGuid const & environmentId
)
...
Remove the environment with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveLight
...
public: virtual void RemoveLight
(
Geo::GeoGuid const & lightId
)
...
Remove the light with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveLight
...
public: void RemoveLight
(
Geo::GeoGuid const & lightId
)
...
Remove the light with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveLightBank
...
public: void RemoveLightBank
(
Geo::s32 const & bankId
)
...
Remove a light bank.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveLightBank
...
public: virtual void RemoveLightBank
(
Geo::s32 const & bankId
)
...
Remove a light bank.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::RemoveLightWithoutVisibility
...
protected: void RemoveLightWithoutVisibility
(
Geo::GeoGuid lightId
)
...
Removes a light with the given GUID from the list of lights without visibility (if one is found), and frees the associated memory.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::RemoveLightWithVisibility
...
protected: void RemoveLightWithVisibility
(
Geo::GeoGuid lightId
)
...
Removes a light with the given GUID from the list of lights with visibility (if one is found), and frees the associated memory.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveProbeSet
...
public: virtual void RemoveProbeSet
(
RemoveInfo const & removeInfo
)
...
Remove a probe set from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveProbeSet
...
public: void RemoveProbeSet
(
RemoveInfo const & removeInfo
)
...
Remove a probe set from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::RemoveProbeSet
...
public: virtual void RemoveProbeSet
(
RemoveInfo const & removeInfo
)
...
Remove a probe set from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::RemoveSystem
...
public: virtual void RemoveSystem
(
RemoveInfo const & removeInfo
)
...
Remove a system from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::RemoveSystem
...
public: virtual void RemoveSystem
(
RemoveInfo const & removeInfo
)
...
Remove a system from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveSystem
...
public: void RemoveSystem
(
RemoveInfo const & removeInfo
)
...
Remove a system from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveSystem
...
public: virtual void RemoveSystem
(
RemoveInfo const & removeInfo
)
...
Remove a system from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::RemoveSystem
...
public: virtual void RemoveSystem
(
RemoveInfo const & removeInfo
)
...
Remove a system from the worker (either completely or partially)
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::RemoveSystemFromDependencyLists
...
protected: void RemoveSystemFromDependencyLists
(
BaseSystem * system
)
...
Removes the given system from all cached dependency lists.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::RemoveSystemSolutionSpaces
...
public: void RemoveSystemSolutionSpaces
(
Geo::GeoGuid const & systemId
)
...
Removes the solution spaces from the system. This function will not release the solution spaces.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::RemoveSystemSolutionSpaces
...
public: virtual void RemoveSystemSolutionSpaces
(
Geo::GeoGuid const & systemId
)
...
Removes the solution spaces from the system. This function will not release the solution spaces.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::ReRegisterObjectsWithProfiler
...
public: void ReRegisterObjectsWithProfiler()
...
Re-register all objects with the profiler.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::RunWorkerThread
...
public: virtual void RunWorkerThread()
...
Start the worker thread if it is not already running.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::RunWorkerThread
...
public: void RunWorkerThread()
...
Start the worker thread if it is not already running.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetAllUpdateCounters
...
public: void SetAllUpdateCounters
(
Geo::s32 const & count
)
...
Set all system and probe update counters to count.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetAllUpdateCounters
...
public: virtual void SetAllUpdateCounters
(
Geo::s32 const & count
)
...
Set all system and probe update counters to count.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetDoFullSolveNextFrame
...
public: virtual void SetDoFullSolveNextFrame()
...
Disable temporal coherence so a full solve is performed next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetDoFullSolveNextFrame
...
public: void SetDoFullSolveNextFrame()
...
Disable temporal coherence so a full solve is performed next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetDoIndirectInputLightingNextFrame
...
public: virtual void SetDoIndirectInputLightingNextFrame
(
Geo::GeoGuid const & systemId
)
...
Sets a flag to run indirect input lighting on the next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetDoIndirectInputLightingNextFrame
...
public: void SetDoIndirectInputLightingNextFrame
(
Geo::GeoGuid const & systemId
)
...
Sets a flag to run indirect input lighting on the next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::SetDoIndirectInputLightingNextFrame
...
public: virtual void SetDoIndirectInputLightingNextFrame
(
Geo::GeoGuid const & systemId
)
...
Sets a flag to run indirect input lighting on the next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetLightBankUpdateCounter
...
public: virtual void SetLightBankUpdateCounter
(
SetLightBankUpdateCounterInfo const & updateCounterInfo
)
...
Set a light bank update counter.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetLightBankUpdateCounter
...
public: void SetLightBankUpdateCounter
(
SetLightBankUpdateCounterInfo const & updateCounterInfo
)
...
Set a light bank update counter.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::SetLightBankUpdateCounter
...
public: virtual void SetLightBankUpdateCounter
(
SetLightBankUpdateCounterInfo const & updateCounterInfo
)
...
Set a light bank update counter.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetProbeSetManager
...
public: void SetProbeSetManager
(
IProbeSetManager *const & probeSetManager
)
...
Set a probe set manager.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetProbeSetManager
...
public: virtual void SetProbeSetManager
(
IProbeSetManager *const & probeSetManager
)
...
Set a probe set manager.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetProbeSetTransform
...
public: void SetProbeSetTransform
(
SetProbeSetTransformInfo const & probeSetTransformInfo
)
...
Set a probe set world-to-local-space transform.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetProbeSetTransform
...
public: virtual void SetProbeSetTransform
(
SetProbeSetTransformInfo const & probeSetTransformInfo
)
...
Set a probe set world-to-local-space transform.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetSystemSolutionSpaces
...
public: virtual void SetSystemSolutionSpaces
(
ISystemSolutionSpace *const * solutionSpaces,
const Geo::s32 solutionSpacesCount,
const Geo::s32 indexForBounceResampling
)
...
Set the solution spaces used by a system.
Note that a system with a matching guid needs to already be added to the worker. This will only set the solution spaces if they all belong to the same system.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetSystemSolutionSpaces
...
public: void SetSystemSolutionSpaces
(
ISystemSolutionSpace *const * solutionSpaces,
const Geo::s32 solutionSpacesCount,
const Geo::s32 indexForBounceResampling
)
...
Set the solution spaces used by a system.
Note that a system with a matching guid needs to already be added to the worker. This will only set the solution spaces if they all belong to the same system.
Parameters
solutionSpaces | Raw array of ISystemSolutionSpace pointers | |
solutionSpacesCount | Number of elements in the solutionSpaces array. | |
indexForBounceResampling | The index for the solution space to use for bounce resampling. Should be the index of the solution space with the smallest output pixel size. |
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::SetTransparencySamplePositionOffset
...
public: virtual void SetTransparencySamplePositionOffset
(
SetTransparencySamplePositionOffsetInfo const & offsetInfo
)
...
Sets the transparency sample position offset.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetTransparencySamplePositionOffset
...
public: void SetTransparencySamplePositionOffset
(
SetTransparencySamplePositionOffsetInfo const & offsetInfo
)
...
Sets the transparency sample position offset.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::SetTransparencySamplePositionOffset
...
public: virtual void SetTransparencySamplePositionOffset
(
SetTransparencySamplePositionOffsetInfo const & offsetInfo
)
...
Sets the transparency sample position offset.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetVisibilityBits
...
public: void SetVisibilityBits
(
SetVisibilityBitsInfo const & visibilityBitsInfo
)
...
Sets the visibility block for a (system, light) pair.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::SetVisibilityBits
...
protected: virtual void SetVisibilityBits
(
SetVisibilityBitsInfo const & visibilityBitsInfo
)
...
Sets the visibility block for a (system, light) pair.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::SetVisibilityBits
...
public: virtual void SetVisibilityBits
(
SetVisibilityBitsInfo const & visibilityBitsInfo
)
...
Sets the visibility block for a (system, light) pair.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseWorker::SetWorkerProperties
...
public: virtual void SetWorkerProperties
(
const UpdateManagerWorkerProperties & properties
)
...
Set the worker global state.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::SetWorkerProperties
...
public: void SetWorkerProperties
(
UpdateManagerWorkerProperties const & properties
)
...
Set the worker global state.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::SetWorkerProperties
...
public: virtual void SetWorkerProperties
(
const UpdateManagerWorkerProperties & properties
)
...
Set the worker global state.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorkerCommon::ShutdownThreadGroup
...
public: void ShutdownThreadGroup()
...
One-time therad group shut down.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::StopWorkerThread
...
public: void StopWorkerThread()
...
Signal the worker thread to stop and wait until it quits.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::StopWorkerThread
...
public: virtual void StopWorkerThread()
...
Signal the worker thread to stop and wait until it quits.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::TriggerTransparencyVolume
...
public: virtual void TriggerTransparencyVolume
(
const Enlighten::BoxVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::TriggerTransparencyVolume
...
public: virtual void TriggerTransparencyVolume
(
const Enlighten::SphereVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::TriggerTransparencyVolume
...
public: void TriggerTransparencyVolume
(
const Enlighten::BoxVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::TriggerTransparencyVolume
...
public: virtual void TriggerTransparencyVolume
(
const Enlighten::BoxVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::TriggerTransparencyVolume
...
public: void TriggerTransparencyVolume
(
const Enlighten::SphereVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::TriggerTransparencyVolume
...
public: virtual void TriggerTransparencyVolume
(
const Enlighten::SphereVolume & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::MultithreadCpuWorker::TriggerTransparencyVolumeGeneric
...
public: void TriggerTransparencyVolumeGeneric
(
const VolumeType & volume
)
...
Triggers a transparency volume.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::UpdateCubeMapDependencyList
...
protected: void UpdateCubeMapDependencyList
(
BaseCubeMap * cubeMap
)
...
Creates the cached dependency list for the given cube map.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::CpuWorker::UpdateEmissiveEnvironment
...
public: virtual void UpdateEmissiveEnvironment
(
UpdateEnvironmentInfo const & updateEnvironmentInfo
)
...
Update (or add) the environment with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::UpdateEmissiveEnvironment
...
public: void UpdateEmissiveEnvironment
(
UpdateEnvironmentInfo const & updateEnvironmentInfo
)
...
Update (or add) the environment with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseWorker::UpdateLight
...
public: virtual void UpdateLight
(
UpdateLightInfo const & updateLightInfo
)
...
Update (or add) the light with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::UpdateLight
...
public: void UpdateLight
(
UpdateLightInfo const & updateLightInfo
)
...
Update (or add) the light with the given id.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::UpdateLightmapBounceBufferData
...
protected: virtual void UpdateLightmapBounceBufferData
(
BaseSystem * system
)
...
Update the lightmap bounce buffer data.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::UpdateLightmapBounceBufferData
...
protected: virtual void UpdateLightmapBounceBufferData
(
BaseSystem * system
)
...
Update the lightmap bounce buffer data.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::UpdateProbeBounceBufferData
...
protected: virtual void UpdateProbeBounceBufferData
(
BaseSystem * system
)
...
Update the probe bounce buffer data.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorker::UpdateProbeBounceBufferData
...
protected: virtual void UpdateProbeBounceBufferData
(
BaseSystem * system
)
...
Update the probe bounce buffer data.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::UpdateProbeDependencyList
...
protected: void UpdateProbeDependencyList
(
BaseProbeSet * probeSet
)
...
Creates the cached dependency list for the given probe set.
Anchor | ||||
---|---|---|---|---|
|
GEO_POP_IGNORE_DEPRECATION_WARNING void Enlighten::BaseWorker::UpdateRadiosity
...
public: virtual void UpdateRadiosity()
...
The main radiosity update function.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::MultithreadCpuWorkerCommon::UpdateRadiosity
...
public: virtual void UpdateRadiosity()
...
The main radiosity update function.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::IUpdateManagerWorker::UpdateRadiosity
...
public: void UpdateRadiosity()
...
The main radiosity update function.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::CpuWorker::UpdateSystemDependencyLists
...
protected: void UpdateSystemDependencyLists
(
BaseSystem * newSystem
)
...
Creates the cached dependency list for the given system, and updates all other lists with the new system.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseWorker::WriteVisibilityPointers
...
protected: bool WriteVisibilityPointers
(
void ** writeAt,
BaseSystem * system,
Geo::s32 lightBank
)
...
Write ordered list of visibility data pointers for the given system and light bank Returns TRUE if any of the light inputs have changed.
Anchor | ||||
---|---|---|---|---|
|
ProcessingStage
...
protected: enum ProcessingStage
{
STAGE_SETUP,
STAGE_QUEUE_INPUT_LIGHTING,
STAGE_INPUT_LIGHTING,
STAGE_QUEUE_SOLVING,
STAGE_SOLVING,
STAGE_QUEUE_INTERPOLATION,
STAGE_INTERPOLATION,
STAGE_HOUSEKEEPING
}
...
Internal enumeration for keeping track of the update loop.
enumerators
STAGE_SETUP | |
STAGE_QUEUE_INPUT_LIGHTING | |
STAGE_INPUT_LIGHTING | |
STAGE_QUEUE_SOLVING | |
STAGE_SOLVING | |
STAGE_QUEUE_INTERPOLATION | |
STAGE_INTERPOLATION | |
STAGE_HOUSEKEEPING |