class Enlighten::InputWorkspaceInternal
Runtime data about the dusters (internal).
This is the internal implementation of the main RadDataBlock in InputWorkspace in the main api. The data for this class lies immediately after it in memory.
Functions
Name | Description |
---|---|
AddCachedValues(InputLightingBuffer *, const InputLightingBuffer *) | Adds lights values from previously cached input. |
AddDusterValues(InputLightingBuffer *, const Geo::v128 *) | Adds light values laid out in a duster block to the input workspace. |
AddDusterValues(Enlighten::IncidentLightingBuffer *, const Geo::v128 *) | Adds light values laid out in a duster block to the input workspace. |
BadMagicNumber() | Sanity check. |
Clear(InputLightingBuffer *) | Clears the light values to zero, useful for "starting over". |
ConvertEndian(Geo::EConvertEndianMode) | Converts the endian-ness of this block. |
End(InputLightingBuffer *) | Generate the rest of the Enlighten input tree from the leaves. |
GetClusterBoundsGroupArray() | Access to the leaf cluster bounds array data for cluster groups. Each cluster group stores 'ClusterBoundsGroupSize' clusters (except the last group) |
GetDusterBoundsArray() | Access to the leaf cluster bounds array. |
GetInputWorkspaceDebugIterator() | Debugging functionality. |
GetInputWorkspaceDebugPoint(InputWorkspaceDebugPoint *, Geo::s32) | Debugging functionality. |
GetInputWorkspaceLitDebugPoint(InputWorkspaceDebugPoint *, Geo::s32, const InputLightingBuffer *) | Debugging functionality. |
GetInputWorkspaceNormalArray(Geo::v128 *) | Fills an array with the normals of all of the input points in an input workspace. |
GetInputWorkspacePositionAndNormalArray(Geo::v128 *, Geo::v128 *) | Fills an array with the positions and normals of all of the input points in an input workspace. |
GetInputWorkspacePositionArray(Geo::v128 *) | Fills an array with the positions of all of the input points in an input workspace. |
GetNonLeafChildCountArray() | Access to the the number of children in the non-leaf clusters. |
GetNumChildrenTable() | Returns the table containing the number of children for each internal node. |
GetNumClusters() | Gets the number of clusters. |
GetNumClustersInTree() | Gets the number of clusters in the tree. |
GetNumPoints() | Debugging functionality. |
GetPackedDusterData() | Retrieve the packed positions and normals for 4 dusters. |
GetPackedDusterData() | Retrieve the packed positions and normals for 4 dusters. |
GetQuadIndexClusterArray() | Returns the index of quads per cluster. |
GetQuadIndexTableSize() | Returns the size of the quad index table. |
GetQuadsInClusterArray() | Returns the number of quads per cluster. |
GetRadiosityInputTree() | Returns the internal cluster tree. |
GetScaleFactorTable() | Returns the table containing the EndInputWorkspace scale factor for each node (except the final node) |
GetScaleFactorTableSize() | Returns the size of the scale factor table. |
GetSystemBoundingBox(Geo::GeoBoundingBox &) | Returns the bounding box of the system. |
NonCopyable(NonCopyable &&) | Defaulted to allow move. |
operator=(NonCopyable &&) | Defaulted to allow move. |
Variables
Name | Description |
---|---|
const Geo::u32 ClusterBoundsGroupSize = 32 | The number of clusters in each cluster group. |
Geo::s32 m_ClusterBoundsGroupOffset | Offset to the leaf cluster group bounds array. |
Geo::s32 m_DusterBoundsOffset | Offset to the leaf cluster bounds array. |
Geo::s32 m_InputTreeOffset | The cluster tree. |
Geo::u32 m_MagicNumber | Bit pattern to check that we have a valid InputWorkspace. TBD?? |
Geo::s32 m_MaxDusterQuadsInClusterGroup | The maximum number of duster quads in the cluster groups. |
Geo::s32 m_NodeDusterIndicesOffset | Offset to u32s storing the quad index for each leaf. |
Geo::s32 m_NumClusters | Number of clusters. |
Geo::s32 m_NumClustersInTree | Number of clusters in tree. |
Geo::s32 m_NumSamples | Number of dusters. |
Geo::s32 m_PackedDusterDataOffset | Offset to the packed data for positions and normals. |
Geo::s32 m_Padding | Some padding to make it up to 16 byte aligned. |
Geo::v128 m_SystemBoundsMax | Size of the system. |
Geo::v128 m_SystemBoundsMin | Size of the system. |
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::AddCachedValues
...
public: void AddCachedValues
(
InputLightingBuffer * output,
const InputLightingBuffer * cachedValues
) const
...
Adds lights values from previously cached input.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::AddDusterValues
...
public: void AddDusterValues
(
InputLightingBuffer * output,
const Geo::v128 * dusterValues
) const
...
Adds light values laid out in a duster block to the input workspace.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::AddDusterValues
...
public: void AddDusterValues
(
Enlighten::IncidentLightingBuffer * output,
const Geo::v128 * dusterValues
) const
...
Adds light values laid out in a duster block to the input workspace.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::InputWorkspaceInternal::BadMagicNumber
...
public: bool BadMagicNumber() const
...
Sanity check.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::Clear
...
public: void Clear
(
InputLightingBuffer * output
) const
...
Clears the light values to zero, useful for "starting over".
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::ConvertEndian
...
public: void ConvertEndian
(
Geo::EConvertEndianMode mode
)
...
Converts the endian-ness of this block.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::End
...
public: void End
(
InputLightingBuffer * buffer
) const
...
Generate the rest of the Enlighten input tree from the leaves.
This must be called after input generation has finished.
Anchor | ||||
---|---|---|---|---|
|
const Geo::v128* Enlighten::InputWorkspaceInternal::GetClusterBoundsGroupArray
...
public: const Geo::v128 * GetClusterBoundsGroupArray() const
...
Access to the leaf cluster bounds array data for cluster groups. Each cluster group stores 'ClusterBoundsGroupSize' clusters (except the last group)
Anchor | ||||
---|---|---|---|---|
|
const Geo::v128* Enlighten::InputWorkspaceInternal::GetDusterBoundsArray
...
public: const Geo::v128 * GetDusterBoundsArray() const
...
Access to the leaf cluster bounds array.
Anchor | ||||
---|---|---|---|---|
|
InputWorkspaceDebugIterator Enlighten::InputWorkspaceInternal::GetInputWorkspaceDebugIterator
...
public: InputWorkspaceDebugIterator GetInputWorkspaceDebugIterator() const
...
Debugging functionality.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetInputWorkspaceDebugPoint
...
public: void GetInputWorkspaceDebugPoint
(
InputWorkspaceDebugPoint * debugPoint,
Geo::s32 index
) const
...
Debugging functionality.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetInputWorkspaceLitDebugPoint
...
public: void GetInputWorkspaceLitDebugPoint
(
InputWorkspaceDebugPoint * debugPoint,
Geo::s32 index,
const InputLightingBuffer * lightValues
) const
...
Debugging functionality.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetInputWorkspaceNormalArray
...
public: void GetInputWorkspaceNormalArray
(
Geo::v128 * normalOut
) const
...
Fills an array with the normals of all of the input points in an input workspace.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetInputWorkspacePositionAndNormalArray
...
public: void GetInputWorkspacePositionAndNormalArray
(
Geo::v128 * positionsOut,
Geo::v128 * normalsOut
) const
...
Fills an array with the positions and normals of all of the input points in an input workspace.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetInputWorkspacePositionArray
...
public: void GetInputWorkspacePositionArray
(
Geo::v128 * positionsOut
) const
...
Fills an array with the positions of all of the input points in an input workspace.
Anchor | ||||
---|---|---|---|---|
|
const Geo::u8* Enlighten::InputWorkspaceInternal::GetNonLeafChildCountArray
...
public: const Geo::u8 * GetNonLeafChildCountArray() const
...
Access to the the number of children in the non-leaf clusters.
Anchor | ||||
---|---|---|---|---|
|
const Geo::u8* Enlighten::InputWorkspaceInternal::GetNumChildrenTable
...
public: const Geo::u8 * GetNumChildrenTable() const
...
Returns the table containing the number of children for each internal node.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::InputWorkspaceInternal::GetNumClusters
...
public: Geo::s32 GetNumClusters() const
...
Gets the number of clusters.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::InputWorkspaceInternal::GetNumClustersInTree
...
public: Geo::s32 GetNumClustersInTree() const
...
Gets the number of clusters in the tree.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::InputWorkspaceInternal::GetNumPoints
...
public: Geo::s32 GetNumPoints() const
...
Debugging functionality.
Anchor | ||||
---|---|---|---|---|
|
PackedDusterPoint* Enlighten::InputWorkspaceInternal::GetPackedDusterData
...
public: PackedDusterPoint * GetPackedDusterData()
...
Retrieve the packed positions and normals for 4 dusters.
Anchor | ||||
---|---|---|---|---|
|
const PackedDusterPoint* Enlighten::InputWorkspaceInternal::GetPackedDusterData
...
public: const PackedDusterPoint * GetPackedDusterData() const
...
Retrieve the packed positions and normals for 4 dusters.
Anchor | ||||
---|---|---|---|---|
|
const Geo::u32* Enlighten::InputWorkspaceInternal::GetQuadIndexClusterArray
...
public: const Geo::u32 * GetQuadIndexClusterArray() const
...
Returns the index of quads per cluster.
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::InputWorkspaceInternal::GetQuadIndexTableSize
...
public: Geo::s32 GetQuadIndexTableSize() const
...
Returns the size of the quad index table.
Anchor | ||||
---|---|---|---|---|
|
const Geo::u8* Enlighten::InputWorkspaceInternal::GetQuadsInClusterArray
...
public: const Geo::u8 * GetQuadsInClusterArray() const
...
Returns the number of quads per cluster.
Anchor | ||||
---|---|---|---|---|
|
const RadiosityInputTree* Enlighten::InputWorkspaceInternal::GetRadiosityInputTree
...
public: const RadiosityInputTree * GetRadiosityInputTree() const
...
Returns the internal cluster tree.
Anchor | ||||
---|---|---|---|---|
|
const Geo::u8* Enlighten::InputWorkspaceInternal::GetScaleFactorTable
...
public: const Geo::u8 * GetScaleFactorTable() const
...
Returns the table containing the EndInputWorkspace scale factor for each node (except the final node)
Anchor | ||||
---|---|---|---|---|
|
Geo::s32 Enlighten::InputWorkspaceInternal::GetScaleFactorTableSize
...
public: Geo::s32 GetScaleFactorTableSize() const
...
Returns the size of the scale factor table.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::InputWorkspaceInternal::GetSystemBoundingBox
...
public: void GetSystemBoundingBox
(
Geo::GeoBoundingBox & bb
) const
...
Returns the bounding box of the system.
Anchor | ||||
---|---|---|---|---|
|
Geo::NonCopyable::NonCopyable
...
public: NonCopyable
(
NonCopyable &&
)
...
Defaulted to allow move.
Anchor | ||||
---|---|---|---|---|
|
NonCopyable& Geo::NonCopyable::operator=
...
public: NonCopyable & operator=
(
NonCopyable &&
)
...
Defaulted to allow move.