class Enlighten::BaseSystemSolutionSpace
└>Enlighten::ISystemSolutionSpace
└>Geo::IGeoReleasable
Base implementation of ISystemSolutionSpace.
Functions
Name | Description |
---|---|
BaseSystemSolutionSpace(const Enlighten::RadSystemCore *, IGpuTexture *, eOutputFormat) | Constructor. |
CacheSystemOutputInfo() | Function to cache the pointers and strides for output textures. |
DisableUpdatesAndFreeMemory() | Disable Updates and Free memory. |
GetDeviceTextureFormat(OutputTextureType, eOutputFormat) | Helper function to convert the Enlighten format specifier to a device-specific format. |
GetDirectionalOutputStride() | Returns the row stride of the directional output cpu data. |
GetDoFullSolutionSolveNextFrame() | Gets/sets a flag which determines if we should do a full solve next frame. |
GetIrradianceOutputFormat() | Get the output format if the irradiance texture. |
GetIrradianceOutputStride() | Returns the row stride of the irradiance output cpu data. |
GetOutputPitchInBytes(OutputTextureType) | Returns the pitch that Enlighten should use when writing the output buffer (texture) |
GetOutputPointer(OutputTextureType) | Returns the memory location where Enlighten should write the output data. |
GetOutputTexture(OutputTextureType, bool) | Get the output textures. |
GetOutputTexture(OutputTextureType, bool) | Get the output texture from the solution space. Useful when you use IGpuTextureAllocator to allocate the textures. |
GetRadiosityCore() | Get the immutable Radiosity System core. |
GetRadiosityCore() | Get the RadSystemCore object which this solution space represents. |
GetStale() | Gets/sets a flag which when true indicates that a solution space should have been solved but was not for some reason (e.g. |
HasEnvironmentOnlyBounceData() | Determine if the environment only bounce data is present. Requires excludeEnvironmentInPrimaryBounce="true" in paramset. |
IsReadyForRendering(OutputTextureType) | Returns true if the texture has been solved at least once and is ready for rendering. |
IsReadyForRendering(OutputTextureType) | Returns true if the texture has been solved at least once and is ready for rendering. |
MarkUpdate(Geo::u32) | Sets or clears the update status flag of the given output texture. |
NonCopyable(NonCopyable &&) | Defaulted to allow move. |
operator=(NonCopyable &&) | Defaulted to allow move. |
Release() | Release the resources which are owned by this object. |
Release() | Free this object that was created within the Enlighten libraries. |
ReleaseOwnResources() | Releases owned resources. |
SetDoFullSolutionSolveNextFrame(bool) | Gets/sets a flag which determines if we should do a full solve next frame. |
SetGpuTexture(OutputTextureType, IGpuTexture *) | Set the GPU textures on SystemSolutionSpace objects. This should be called via the command processor. |
SetIsReadyForRendering(bool) | Set is ready for rendering textures flag. |
SetStale(bool) | Gets/sets a flag which when true indicates that a solution space should have been solved but was not for some reason (e.g. |
UpdateGpuTextures() | Update the Gpu textures. This should be called on the render thread. Returns true if any work was done. |
Variables
Name | Description |
---|---|
bool m_IsReadyForRendering | Has the output been solved at least once and is ready for rendering. |
Anchor | ||||
---|---|---|---|---|
|
Enlighten::BaseSystemSolutionSpace::BaseSystemSolutionSpace
...
protected: BaseSystemSolutionSpace
(
const Enlighten::RadSystemCore * core,
IGpuTexture * outputTextures,
eOutputFormat irradianceTextureFormat
)
...
Constructor.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseSystemSolutionSpace::CacheSystemOutputInfo
...
protected: virtual void CacheSystemOutputInfo()
...
Function to cache the pointers and strides for output textures.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseSystemSolutionSpace::DisableUpdatesAndFreeMemory
...
public: virtual void DisableUpdatesAndFreeMemory()
...
Disable Updates and Free memory.
Anchor | ||||
---|---|---|---|---|
|
static TextureFormat Enlighten::BaseSystemSolutionSpace::GetDeviceTextureFormat
...
public: TextureFormat GetDeviceTextureFormat
(
OutputTextureType type,
eOutputFormat irradianceOutputFormat
)
...
Helper function to convert the Enlighten format specifier to a device-specific format.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::BaseSystemSolutionSpace::GetDirectionalOutputStride
...
public: Geo::s32 GetDirectionalOutputStride() const
...
Returns the row stride of the directional output cpu data.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseSystemSolutionSpace::GetDoFullSolutionSolveNextFrame
...
public: bool GetDoFullSolutionSolveNextFrame() const
...
Gets/sets a flag which determines if we should do a full solve next frame.
Anchor | ||||
---|---|---|---|---|
|
eOutputFormat Enlighten::BaseSystemSolutionSpace::GetIrradianceOutputFormat
...
public: eOutputFormat GetIrradianceOutputFormat() const
...
Get the output format if the irradiance texture.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::BaseSystemSolutionSpace::GetIrradianceOutputStride
...
public: Geo::s32 GetIrradianceOutputStride() const
...
Returns the row stride of the irradiance output cpu data.
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::s32 Enlighten::BaseSystemSolutionSpace::GetOutputPitchInBytes
...
public: virtual Geo::s32 GetOutputPitchInBytes
(
OutputTextureType textureType
)
...
Returns the pitch that Enlighten should use when writing the output buffer (texture)
Anchor | ||||
---|---|---|---|---|
|
virtual void* Enlighten::BaseSystemSolutionSpace::GetOutputPointer
...
public: virtual void * GetOutputPointer
(
OutputTextureType textureType
)
...
Returns the memory location where Enlighten should write the output data.
Anchor | ||||
---|---|---|---|---|
|
virtual IGpuTexture* Enlighten::BaseSystemSolutionSpace::GetOutputTexture
...
public: virtual IGpuTexture * GetOutputTexture
(
OutputTextureType textureType,
bool forceGet
) const
...
Get the output textures.
Anchor | ||||
---|---|---|---|---|
|
virtual IGpuTexture* Enlighten::ISystemSolutionSpace::GetOutputTexture
...
public: IGpuTexture * GetOutputTexture
(
OutputTextureType textureType,
bool forceGet
) const
...
Get the output texture from the solution space. Useful when you use IGpuTextureAllocator to allocate the textures.
Anchor | ||||
---|---|---|---|---|
|
virtual const RadSystemCore* Enlighten::BaseSystemSolutionSpace::GetRadiosityCore
...
public: virtual const RadSystemCore * GetRadiosityCore() const
...
Get the immutable Radiosity System core.
Anchor | ||||
---|---|---|---|---|
|
virtual const RadSystemCore* Enlighten::ISystemSolutionSpace::GetRadiosityCore
...
public: const RadSystemCore * GetRadiosityCore() const
...
Get the RadSystemCore object which this solution space represents.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseSystemSolutionSpace::GetStale
...
public: bool GetStale() const
...
Gets/sets a flag which when true indicates that a solution space should have been solved but was not for some reason (e.g.
update rate), and thus a solve must happen eventually in the future.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::BaseSystemSolutionSpace::HasEnvironmentOnlyBounceData
...
public: bool HasEnvironmentOnlyBounceData()
...
Determine if the environment only bounce data is present. Requires excludeEnvironmentInPrimaryBounce="true" in paramset.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::BaseSystemSolutionSpace::IsReadyForRendering
...
public: virtual bool IsReadyForRendering
(
OutputTextureType textureType
) const
...
Returns true if the texture has been solved at least once and is ready for rendering.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::ISystemSolutionSpace::IsReadyForRendering
...
public: bool IsReadyForRendering
(
OutputTextureType textureType
) const
...
Returns true if the texture has been solved at least once and is ready for rendering.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseSystemSolutionSpace::MarkUpdate
...
public: void MarkUpdate
(
Geo::u32 value
)
...
Sets or clears the update status flag of the given output texture.
TRUE means that the internal solution for that texture has finished, but the GPU resource has not yet been updated.
Anchor | ||||
---|---|---|---|---|
|
Geo::NonCopyable::NonCopyable
...
public: NonCopyable
(
NonCopyable &&
)
...
Defaulted to allow move.
Anchor | ||||
---|---|---|---|---|
|
NonCopyable& Geo::NonCopyable::operator=
...
public: NonCopyable & operator=
(
NonCopyable &&
)
...
Defaulted to allow move.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseSystemSolutionSpace::Release
...
public: virtual void Release()
...
Release the resources which are owned by this object.
Anchor | ||||
---|---|---|---|---|
|
virtual void Geo::IGeoReleasable::Release
...
public: void Release()
...
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseSystemSolutionSpace::ReleaseOwnResources
...
protected: void ReleaseOwnResources()
...
Releases owned resources.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseSystemSolutionSpace::SetDoFullSolutionSolveNextFrame
...
public: void SetDoFullSolutionSolveNextFrame
(
bool value
)
...
Gets/sets a flag which determines if we should do a full solve next frame.
Anchor | ||||
---|---|---|---|---|
|
virtual void Enlighten::BaseSystemSolutionSpace::SetGpuTexture
...
public: virtual void SetGpuTexture
(
OutputTextureType textureType,
IGpuTexture * gpuTexture
)
...
Set the GPU textures on SystemSolutionSpace objects. This should be called via the command processor.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseSystemSolutionSpace::SetIsReadyForRendering
...
public: void SetIsReadyForRendering
(
bool value
)
...
Set is ready for rendering textures flag.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::BaseSystemSolutionSpace::SetStale
...
public: void SetStale
(
bool value
)
...
Gets/sets a flag which when true indicates that a solution space should have been solved but was not for some reason (e.g.
update rate), and thus a solve must happen eventually in the future.
Anchor | ||||
---|---|---|---|---|
|
virtual bool Enlighten::BaseSystemSolutionSpace::UpdateGpuTextures
...
public: bool UpdateGpuTextures()
...
Update the Gpu textures. This should be called on the render thread. Returns true if any work was done.