This is the documentation for Enlighten.

class Enlighten PipelineScene

class Enlighten::PipelineScene

The scene to be precomputed.

Member functions may assert or throw a PipelineError exception to indicate a violation of the API contract.

Functions

Name Description
AddCubemap(const PipelineCubemap &)

Add a cubemap to the scene.

AddGeom(const PipelineGeom &)

Add the geom to the scene.

AddInstance(const PipelineRadiosityInstance &)

Add a radiosity instance to the scene.

AddInstance(const PipelineExcludedInstance &)

Add an excluded instance to the scene.

AddInstance(const PipelineUnlitInstance &)

Add an unlit instance to the scene.

AddInstanceParameters(const PipelineInstanceParameters &)

Add a named set of instance parameters to the scene.

AddProbeRegion(const PipelineVolumeProbeRegion &)

Add a probe region defined by a volume to the specified zone.

AddProbeRegion(const PipelineBoxSetProbeRegion &)

Add a region defined by a set of boxes to the specified probe octree.

AddProbeRegion(const PipelinePointSetProbeRegion &)

Add a region defined by a set of points to the specified probe octree.

AddProbeVolume(const PipelineProbeVolume &)

Adds a probe volume to the scene.

AddRadiosityDependencies(Geo::GeoFileString, const Dependencies &)

Limit the radiosity dependencies of the specified zone to the specified set of zone dependencies.

AddRadiosityDependencies(PipelineRadiosityGroupType, Geo::GeoFileString, const Dependencies &, const Dependencies &)

Adds a dependency set.

CreateAlbedoBuffer(InputWorkspace *)

Create a runtime object.

CreateDynamicMaterialWorkspace(ClusterAlbedoWorkspaceMaterialData *)

Create a runtime object.

CreateEmissiveBuffer(InputWorkspace *)

Create a runtime object.

DumpDebugScene(const Geo::GeoFileString &)

Dump the entire scene to a single text file for debug and test purposes.

GeomExists(const Geo::GeoFileString &)

Returns true if there is a geometry object associated with the specified name. O(1) complexity.

GetInstanceNames(const Geo::GeoFileString &)

Return the names of the instances within the specified group.

LoadClusterAlbedoWorkspaceMaterialData(const Geo::GeoFileString &, Geo::u32)

Load a precompute object from file.

LoadGeneratedSystems(const Geo::GeoFileString &)

Load a precompute object from file.

LoadInputProbeSet(const PrecompOctreeCode, const Geo::GeoFileString &)

Load a precompute object from file.

LoadInputProbeSet(const Geo::GeoFileString &)

Load a precompute object from file.

LoadInputWorkspace(const Geo::GeoFileString &, Geo::u32)

Load a precompute object from file.

LoadOctreeProbeSetCore(const PrecompOctreeCode, const Geo::GeoFileString &)

Load a precompute object from file.

LoadOutputProbeOctree(const Geo::GeoFileString &)

Load a precompute object from file.

LoadPackedGeometry(const Geo::GeoFileString &, const Geo::GeoFileString &)

Load a precompute object from file.

LoadPackedSystem(const Geo::GeoFileString &)

Load a precompute object from file.

LoadPrecomputedVisibilityData(const Geo::GeoFileString &)

Load a precompute object from file.

LoadProbeAtlasMaxima(const Geo::GeoFileString &)

Load a precompute object from file.

LoadRadCubeMapCore(const Geo::GeoFileString &)

Load a precompute object from file.

LoadRadiosityNormalTexture(const Geo::GeoFileString &)

Load a precompute object from file.

LoadRadProbeSetCore(const Geo::GeoFileString &, Geo::u32)

Load a precompute object from file.

LoadRadSystemCore(const Geo::GeoFileString &)

Load a precompute object from file.

LoadRadSystemCoreEx(const Geo::GeoFileString &, Geo::u32)

Load a precompute object from file.

LoadSystemDuster(const Geo::GeoFileString &)

Load a precompute object from file.

PipelineScene(PipelinePaths, const PipelineGlobalParameters &)

To use this class, construct an instance of the PrecomputePipeline class.

SetSceneComment(Geo::GeoFileStringView)

Add a comment to include in the scene file.

WriteScene(Geo::IGeoProgressProxy &)

Write the Enlighten scene to disk.

Enums

Name Description
State

The set of states that an instance may transition between.

Typedefs

Name Description
Geo::GeoArray< Geo::GeoFileString > Dependencies

Array of dependencies.

Geo::GeoArray< Geo::GeoFileString > InstanceNames

An array of instance names.

Variables

Name Description
State m_State

The current state of this instance.


void Enlighten::PipelineScene::AddCubemap


public: void AddCubemap
(
    const PipelineCubemap & cubemap
)


Add a cubemap to the scene.


void Enlighten::PipelineScene::AddGeom


public: void AddGeom
(
    const PipelineGeom & geom
)


Add the geom to the scene.


void Enlighten::PipelineScene::AddInstance


public: void AddInstance
(
    const PipelineRadiosityInstance & instance
)


Add a radiosity instance to the scene.


void Enlighten::PipelineScene::AddInstance


public: void AddInstance
(
    const PipelineExcludedInstance & instance
)


Add an excluded instance to the scene.


void Enlighten::PipelineScene::AddInstance


public: void AddInstance
(
    const PipelineUnlitInstance & instance
)


Add an unlit instance to the scene.


void Enlighten::PipelineScene::AddInstanceParameters


public: void AddInstanceParameters
(
    const PipelineInstanceParameters & parameters
)


Add a named set of instance parameters to the scene.


void Enlighten::PipelineScene::AddProbeRegion


public: void AddProbeRegion
(
    const PipelineVolumeProbeRegion & region
)


Add a probe region defined by a volume to the specified zone.


void Enlighten::PipelineScene::AddProbeRegion


public: void AddProbeRegion
(
    const PipelineBoxSetProbeRegion & region
)


Add a region defined by a set of boxes to the specified probe octree.


void Enlighten::PipelineScene::AddProbeRegion


public: void AddProbeRegion
(
    const PipelinePointSetProbeRegion & region
)


Add a region defined by a set of points to the specified probe octree.


void Enlighten::PipelineScene::AddProbeVolume


public: void AddProbeVolume
(
    const PipelineProbeVolume & probeVolume
)


Adds a probe volume to the scene.


void Enlighten::PipelineScene::AddRadiosityDependencies


public: void AddRadiosityDependencies
(
    Geo::GeoFileString zone,
    const Dependencies & dependencies
)


Limit the radiosity dependencies of the specified zone to the specified set of zone dependencies.


void Enlighten::PipelineScene::AddRadiosityDependencies


public: void AddRadiosityDependencies
(
    PipelineRadiosityGroupType type,
    Geo::GeoFileString groupName,
    const Dependencies & dependencies,
    const Dependencies & explicitDependencies
)


Adds a dependency set.


static AlbedoBufferPtr Enlighten::PipelineScene::CreateAlbedoBuffer


public: AlbedoBufferPtr CreateAlbedoBuffer
(
    InputWorkspace * inputWorkspace
)


Create a runtime object.

Return a unique pointer which owns the object.


static DynamicMaterialWorkspacePtr Enlighten::PipelineScene::CreateDynamicMaterialWorkspace


public: DynamicMaterialWorkspacePtr CreateDynamicMaterialWorkspace
(
    ClusterAlbedoWorkspaceMaterialData * cawMaterialData
)


Create a runtime object.

Return a unique pointer which owns the object.


static EmissiveBufferPtr Enlighten::PipelineScene::CreateEmissiveBuffer


public: EmissiveBufferPtr CreateEmissiveBuffer
(
    InputWorkspace * inputWorkspace
)


Create a runtime object.

Return a unique pointer which owns the object.


void Enlighten::PipelineScene::DumpDebugScene


public: void DumpDebugScene
(
    const Geo::GeoFileString & filename
) const


Dump the entire scene to a single text file for debug and test purposes.

Note: For use only in Enlighten internal testing, may be removed in a future release!


bool Enlighten::PipelineScene::GeomExists


public: bool GeomExists
(
    const Geo::GeoFileString & name
) const


Returns true if there is a geometry object associated with the specified name. O(1) complexity.


const InstanceNames& Enlighten::PipelineScene::GetInstanceNames


public: const InstanceNames & GetInstanceNames
(
    const Geo::GeoFileString & group
) const


Return the names of the instances within the specified group.

The instances are listed in the order that they were added to the scene. Use IPrecompPackedInstance::GetInstanceId to index this array.


CAWMaterialDataPtr Enlighten::PipelineScene::LoadClusterAlbedoWorkspaceMaterialData


public: CAWMaterialDataPtr LoadClusterAlbedoWorkspaceMaterialData
(
    const Geo::GeoFileString & systemName,
    Geo::u32 sections
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


GeneratedSystemsPtr Enlighten::PipelineScene::LoadGeneratedSystems


public: GeneratedSystemsPtr LoadGeneratedSystems
(
    const Geo::GeoFileString & zoneName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


InputProbeSetPtr Enlighten::PipelineScene::LoadInputProbeSet


public: InputProbeSetPtr LoadInputProbeSet
(
    const PrecompOctreeCode octreeCode,
    const Geo::GeoFileString & paramsetName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


InputProbeSetPtr Enlighten::PipelineScene::LoadInputProbeSet


public: InputProbeSetPtr LoadInputProbeSet
(
    const Geo::GeoFileString & octreeName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


InputWorkspacePtr Enlighten::PipelineScene::LoadInputWorkspace


public: InputWorkspacePtr LoadInputWorkspace
(
    const Geo::GeoFileString & systemName,
    Geo::u32 sections
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RadProbeSetCorePtr Enlighten::PipelineScene::LoadOctreeProbeSetCore


public: RadProbeSetCorePtr LoadOctreeProbeSetCore
(
    const PrecompOctreeCode octreeCode,
    const Geo::GeoFileString & paramsetName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


OutputProbeOctreePtr Enlighten::PipelineScene::LoadOutputProbeOctree


public: OutputProbeOctreePtr LoadOutputProbeOctree
(
    const Geo::GeoFileString & octreeName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


PackedGeometryPtr Enlighten::PipelineScene::LoadPackedGeometry


public: PackedGeometryPtr LoadPackedGeometry
(
    const Geo::GeoFileString & geomName,
    const Geo::GeoFileString & paramsetName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


PackedSystemPtr Enlighten::PipelineScene::LoadPackedSystem


public: PackedSystemPtr LoadPackedSystem
(
    const Geo::GeoFileString & systemName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


PrecompVisDataPtr Enlighten::PipelineScene::LoadPrecomputedVisibilityData


public: PrecompVisDataPtr LoadPrecomputedVisibilityData
(
    const Geo::GeoFileString & systemName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


ProbeAtlasMaximaPtr Enlighten::PipelineScene::LoadProbeAtlasMaxima


public: ProbeAtlasMaximaPtr LoadProbeAtlasMaxima
(
    const Geo::GeoFileString & paramsetName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RadCubeMapCorePtr Enlighten::PipelineScene::LoadRadCubeMapCore


public: RadCubeMapCorePtr LoadRadCubeMapCore
(
    const Geo::GeoFileString & cubeMapName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RGBXTexturePtr Enlighten::PipelineScene::LoadRadiosityNormalTexture


public: RGBXTexturePtr LoadRadiosityNormalTexture
(
    const Geo::GeoFileString & systemName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RadProbeSetCorePtr Enlighten::PipelineScene::LoadRadProbeSetCore


public: RadProbeSetCorePtr LoadRadProbeSetCore
(
    const Geo::GeoFileString & probeSetName,
    Geo::u32 sections
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RadSystemCorePtr Enlighten::PipelineScene::LoadRadSystemCore


public: RadSystemCorePtr LoadRadSystemCore
(
    const Geo::GeoFileString & systemName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


RadSystemCorePtr Enlighten::PipelineScene::LoadRadSystemCoreEx


public: RadSystemCorePtr LoadRadSystemCoreEx
(
    const Geo::GeoFileString & systemName,
    Geo::u32 sections
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


SystemDusterPtr Enlighten::PipelineScene::LoadSystemDuster


public: SystemDusterPtr LoadSystemDuster
(
    const Geo::GeoFileString & systemName
) const


Load a precompute object from file.

Return a unique pointer which owns the object. The unique pointer is compatible with either std::move or GeoStd::Move.


Enlighten::PipelineScene::PipelineScene


protected: PipelineScene
(
    PipelinePaths paths,
    const PipelineGlobalParameters & global
)


To use this class, construct an instance of the PrecomputePipeline class.

Do not directly construct an instance of PipelineScene.


void Enlighten::PipelineScene::SetSceneComment


public: void SetSceneComment
(
    Geo::GeoFileStringView comment
)


Add a comment to include in the scene file.


void Enlighten::PipelineScene::WriteScene


public: void WriteScene
(
    Geo::IGeoProgressProxy & progressProxy
) const


Write the Enlighten scene to disk.


State


protected: enum State{}


The set of states that an instance may transition between.