This is the documentation for Enlighten.

class Enlighten IBakeSolvedRuntime

class Enlighten::IBakeSolvedRuntime

    └>Geo::IGeoSerialisable
        └>Geo::IGeoReleasable

Interface for providing radiosity output for systems and probesets for baking.

The probe data is explicitly accessible for efficiently lighting dynamic objects.

Functions

Name Description
Create()

Create a new IBakeSolvedRuntime.

GetSolvedProbe(Geo::GeoGuid, Geo::s32, float *)

Get the solved values of a probe, as floats.

GetSolvedProbeCompressed(Geo::GeoGuid, Geo::s32, float, Geo::u8 *)

Get the solved values of a probe, as chars.

GetSolvedProbePositions(Geo::GeoGuid)

Get the positions of the solved probes, as 4 component vectors.

GetSolvedProbeSet(Geo::GeoGuid)

Get the runtime data for the probe set.

Load(IGeoInputStream &, Geo::u32)

Load an instance of this class from an IGeoInputStream.

NonCopyable(NonCopyable &&)

Defaulted to allow move.

operator=(NonCopyable &&)

Defaulted to allow move.

Release()

Free this object that was created within the Enlighten libraries.

Save(IGeoStream &, Geo::u32)

Save an instance of this class to an IGeoStream.


static IBakeSolvedRuntime* Enlighten::IBakeSolvedRuntime::Create


public: IBakeSolvedRuntime * Create()


Create a new IBakeSolvedRuntime.


virtual bool Enlighten::IBakeSolvedRuntime::GetSolvedProbe


public: bool GetSolvedProbe
(
    Geo::GeoGuid id,
    Geo::s32 idx,
    float * output
) const


Get the solved values of a probe, as floats.

Parameters
[in] id

The probe set id.

[in] idx

The index of the probe within the probeset.

[out] output

The output (SH_Order x 3 probe values) is written here.


virtual bool Enlighten::IBakeSolvedRuntime::GetSolvedProbeCompressed


public: bool GetSolvedProbeCompressed
(
    Geo::GeoGuid id,
    Geo::s32 idx,
    float scale,
    Geo::u8 * output
) const


Get the solved values of a probe, as chars.

Parameters
[in] id

The probe set id.

[in] idx

The index of the probe within the probeset.

[in] scale

The maximum scale of the output (used to normalise from 0 to 255).

[out] output

The output (SH_Order x 3 probe values) is written here.


virtual const Geo::v128* Enlighten::IBakeSolvedRuntime::GetSolvedProbePositions


public: const Geo::v128 * GetSolvedProbePositions
(
    Geo::GeoGuid id
) const


Get the positions of the solved probes, as 4 component vectors.

Parameters
[in] id

The probe set id.


virtual const RadProbeSetCore* Enlighten::IBakeSolvedRuntime::GetSolvedProbeSet


public: const RadProbeSetCore * GetSolvedProbeSet
(
    Geo::GeoGuid id
) const


Get the runtime data for the probe set.

Parameters
[in] id

The probe set id.


virtual bool Geo::IGeoSerialisable::Load


public: bool Load
(
    IGeoInputStream & stream,
    Geo::u32 section
)


Load an instance of this class from an IGeoInputStream.

The stream must be ready to read from. You can load sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will load all sections. It is also safe to call this method on an object multiple times with different section arguments to load multiple parts.


Geo::NonCopyable::NonCopyable


public: NonCopyable
(
    NonCopyable &&
)


Defaulted to allow move.


NonCopyable& Geo::NonCopyable::operator=


public: NonCopyable & operator=
(
    NonCopyable &&
)


Defaulted to allow move.


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)'


virtual bool Geo::IGeoSerialisable::Save


public: bool Save
(
    IGeoStream & stream,
    Geo::u32 section
) const


Save an instance of this class to an IGeoStream.

The stream must be ready to write to. You can save sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will save all sections that are available.