Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)

Enlighten API 4.03 Documentation
Results will update as you type.
  • Modules
  • Namespaces
    • namespace Enlighten
      • class Enlighten A8CpuTextureSampler
      • class Enlighten Alpha8Normalised
      • class Enlighten AsyncTaskThreadGroup
      • class Enlighten BakedProbeOutputInfo
      • class Enlighten BakeInputLight
      • class Enlighten BakeInputMeshInfo
      • class Enlighten BakeMaterialInfo
      • class Enlighten BaseAlbedoHandler
      • class Enlighten BaseCubeMap
      • class Enlighten BaseDynamicObject
      • class Enlighten BaseEnvironment
      • class Enlighten BaseProbeSet
      • class Enlighten BaseSystem
      • class Enlighten BaseSystemSolutionSpace
      • class Enlighten BaseWorker
      • class Enlighten BoundingBox2D
      • class Enlighten BoxSpotlight
      • class Enlighten BoxVolume
      • class Enlighten CallableEnqueueFunctorCommand
      • class Enlighten ClusterAlbedoWorkspaceMaterialData
      • class Enlighten ClusterMaterialComponent
      • class Enlighten ClusterMaterials
      • class Enlighten ClusterProbeTransparencySampleData
      • class Enlighten ClusterRange
      • class Enlighten Command
      • class Enlighten ConstLightValueIterator
      • class Enlighten CopyAlbedoBufferInfo
      • class Enlighten CopyBounceBufferInfo
      • class Enlighten CopyEmissiveBufferInfo
      • class Enlighten CopyEmissiveEnvironmentInfo
      • class Enlighten CopyInputLightingBufferInfo
      • class Enlighten CopyProbeOutputInfo
      • class Enlighten CopyRawOutputInfo
      • class Enlighten CopyTransparencyBufferInfo
      • class Enlighten CopyVisibilityBufferInfo
      • class Enlighten CpuAlbedoHandler
      • class Enlighten CpuCubeMap
      • class Enlighten CpuDynamicObject
      • class Enlighten CpuEnvironment
      • class Enlighten CpuSystem
      • class Enlighten CpuSystemSolutionSpace
      • class Enlighten CpuTextureSamplerBase
      • class Enlighten CpuWorker
      • class Enlighten DefaultGeometryTransparencySampler
      • class Enlighten DefaultThreadGroup
      • class Enlighten DirectInputLightingParameters
      • class Enlighten DirectionalLight
      • class Enlighten Dx11TextureUpdater
      • class Enlighten DynamicMaterialWorkspace
      • class Enlighten DynamicObject
      • class Enlighten EnlightenProfile
      • class Enlighten EnlightenTask
      • class Enlighten EntireProbeSetTask
      • class Enlighten FitModel
      • class Enlighten FixedTimeLimiter
      • class Enlighten Fp16CpuTextureSampler
      • class Enlighten FrustumLight
      • class Enlighten FunctorCommand
      • class Enlighten GenericColourBuffer
      • class Enlighten GeoClusterNode
      • class Enlighten GeoClusterNodeForest
      • class Enlighten GeoClusterNodeTree
      • class Enlighten GeoDirectionalPoint
      • class Enlighten GeoRayOrigin
      • class Enlighten GlTextureUpdater
      • class Enlighten GpuTextureWrapper
      • class Enlighten IAsyncTask
      • class Enlighten IBake
      • class Enlighten IBakeInputGeometryLightingNormals
      • class Enlighten IBakeInputGeometryTangents
      • class Enlighten IBakeInputGeometryUvs
      • class Enlighten IBakeInputLighting
      • class Enlighten IBakeInputMaterial
      • class Enlighten IBakeInputMeshLightingNormals
      • class Enlighten IBakeInputMeshTangents
      • class Enlighten IBakeInputMeshUvs
      • class Enlighten IBakeInputProperties
      • class Enlighten IBakeInputRayOriginPositions
    Calendars

You‘re viewing this with anonymous access, so some content might be blocked.
/
class Enlighten CpuDynamicObject

    This is the documentation for Enlighten.

    class Enlighten CpuDynamicObject

    Sept 09, 2025

    class Enlighten::CpuDynamicObject

        └>Enlighten::BaseDynamicObject
            └>Geo::IGeoReleasable

    Implementation of BaseDynamicObject for Cpu Solving.

    Variables

    Name Description
    bool m_AddedToManager

    false when the object is allocated; true when it is added to the working set

    IGpuTexture * m_GpuTexture[ENLIGHTEN_PROBE_VOLUME_NUM_TYPES]

    GPU output volume textures for R/G/B/Env.

    InterpolatedPoint * m_InterpolationPoints

    Set of points where we require interpolated probe output.

    eSHOrder m_MaximumEnvVisShOrder

    The amount of storage allocated for environment SH results.

    eSHOrder m_MaximumShOrder

    Whether this dynamic object has L1 or L2 storage allocated.

    bool m_NewSolverOutputToCopy

    Flag set when there is fresh output to copy to the GPU.

    const DynamicObject m_Object

    Fixed description of the object.

    Geo::s32 m_RowPitch[ENLIGHTEN_PROBE_VOLUME_NUM_TYPES]

    The row pitch of the CPU output, in bytes.

    Geo::s32 m_SlicePitch[ENLIGHTEN_PROBE_VOLUME_NUM_TYPES]

    The slice pitch of the CPU output, in bytes.

    void * m_SolverOutput[ENLIGHTEN_PROBE_VOLUME_NUM_TYPES]

    CPU output for R/G/B/Env.

    Geo::Matrix m_Transform

    Current local-to-world-space transform of the object.

    bool m_UseVolumeTextures

    Whether this dynamic object has volume textures.

    Geo::Matrix m_WorldToUvw

    Current world-space-to-uvw-coordinate transform of the object.

    Functions

    Name Description
    AllocateSolutionSpace(IGpuTextureAllocator *, Enlighten::eSHOrder, Enlighten::eSHOrder, bool)

    Allocates space for probe output - CPU buffer if useVolumeTextures is false; GPU textures if true.

    AllocateSolutionSpace(IGpuTextureAllocator *, Enlighten::eSHOrder, Enlighten::eSHOrder, bool)

    Allocates space to hold the interpolated probe coefficients for the object.

    BaseDynamicObject(const DynamicObject &)

    Constructor, taking a DynamicObject description. Called during IUpdateManager::AllocateDynamicObject.

    CpuDynamicObject(const DynamicObject &)

    Constructor, taking a DynamicObject description.

    GetNumInterpolationPoints()

    Helper function to return the resolution of the output volume textures.

    GetOutputPointer(Geo::s32, Geo::s32, Geo::s32, Geo::s32)

    Returns the CPU pointer to write interpolated data for the given channel and grid coordinates.

    GetOutputPointer(Geo::s32, Geo::s32, Geo::s32, Geo::s32)

    Returns the CPU pointer to write interpolated data for the given channel and grid coordinates.

    GetWorldToUvwMatrix()

    Returns a matrix which transforms from world space to UVW volume texture coordinates to look up light probe data.

    IsUpdatePending()

    Are any irradiance buffers marked for an update?

    IsUpdatePending()

    Are any irradiance buffers marked for an update?

    MarkUpdate(bool)

    Mark solution buffer as requiring update in next call to UpdateGpuTexture.

    MarkUpdate(bool)

    Mark solution buffer as requiring update in next call to UpdateGpuTexture.

    NonCopyable(NonCopyable &&)

    Defaulted to allow move.

    operator=(NonCopyable &&)

    Defaulted to allow move.

    Release()

    Free this object that was created within the Enlighten libraries.

    Release()

    Free this object that was created within the Enlighten libraries.

    RequestInterpolationOnAllPoints()

    will setInterpolatedPoint:: m_RecomputeInterpolants to true on all the interpolated points.

    SetGpuTexture(ProbeVolumeOutputTextureType, IGpuTexture *)

    Sets an output texture for the dynamic object.

    SetGpuTexture(ProbeVolumeOutputTextureType, IGpuTexture *)

    Sets an output texture for the dynamic object.

    SetTransform(const Geo::Matrix &)

    Sets the world transform for the object, and updates the world-to-uvw transform.

    UpdateGpuTexture()

    Update textures using the marked solution buffers.

    UpdateGpuTexture()

    Update the GPU volume textures.


    virtual void Enlighten::CpuDynamicObject::AllocateSolutionSpace


    public: virtual void AllocateSolutionSpace
    (
        IGpuTextureAllocator * textureAllocator,
        Enlighten::eSHOrder maximumShOrder,
        Enlighten::eSHOrder maximumEnvVisShOrder,
        bool useVolumeTextures
    )


    Allocates space for probe output - CPU buffer if useVolumeTextures is false; GPU textures if true.


    virtual void Enlighten::BaseDynamicObject::AllocateSolutionSpace


    protected: void AllocateSolutionSpace
    (
        IGpuTextureAllocator * textureAllocator,
        Enlighten::eSHOrder maximumShOrder,
        Enlighten::eSHOrder maximumEnvVisShOrder,
        bool useVolumeTextures
    )


    Allocates space to hold the interpolated probe coefficients for the object.

    If useVolumeTextures is false this will be a CPU buffer. If useVolumeTextures is true it will be GPU textures, along with whatever other resources are required to update the textures.


    Enlighten::BaseDynamicObject::BaseDynamicObject


    protected: BaseDynamicObject
    (
        const DynamicObject & object
    )


    Constructor, taking a DynamicObject description. Called during IUpdateManager::AllocateDynamicObject.


    Enlighten::CpuDynamicObject::CpuDynamicObject


    public: CpuDynamicObject
    (
        const DynamicObject & object
    )


    Constructor, taking a DynamicObject description.


    Geo::s32 Enlighten::BaseDynamicObject::GetNumInterpolationPoints


    protected: Geo::s32 GetNumInterpolationPoints()


    Helper function to return the resolution of the output volume textures.


    virtual void* Enlighten::BaseDynamicObject::GetOutputPointer


    protected: virtual void * GetOutputPointer
    (
        Geo::s32 channel,
        Geo::s32 x,
        Geo::s32 y,
        Geo::s32 z
    )


    Returns the CPU pointer to write interpolated data for the given channel and grid coordinates.


    virtual void* Enlighten::CpuDynamicObject::GetOutputPointer


    public: virtual void * GetOutputPointer
    (
        Geo::s32 channel,
        Geo::s32 x,
        Geo::s32 y,
        Geo::s32 z
    )


    Returns the CPU pointer to write interpolated data for the given channel and grid coordinates.


    Geo::Matrix Enlighten::BaseDynamicObject::GetWorldToUvwMatrix


    protected: Geo::Matrix GetWorldToUvwMatrix() const


    Returns a matrix which transforms from world space to UVW volume texture coordinates to look up light probe data.


    virtual bool Enlighten::CpuDynamicObject::IsUpdatePending


    public: virtual bool IsUpdatePending() const


    Are any irradiance buffers marked for an update?


    virtual bool Enlighten::BaseDynamicObject::IsUpdatePending


    protected: virtual bool IsUpdatePending() const


    Are any irradiance buffers marked for an update?


    virtual void Enlighten::CpuDynamicObject::MarkUpdate


    public: virtual void MarkUpdate
    (
        bool value
    )


    Mark solution buffer as requiring update in next call to UpdateGpuTexture.


    virtual void Enlighten::BaseDynamicObject::MarkUpdate


    protected: virtual void MarkUpdate
    (
        bool value
    )


    Mark solution buffer as requiring update in next call to UpdateGpuTexture.


    Geo::NonCopyable::NonCopyable


    public: NonCopyable
    (
        NonCopyable &&
    )


    Defaulted to allow move.


    NonCopyable& Geo::NonCopyable::operator=


    public: NonCopyable & operator=
    (
        NonCopyable &&
    )


    Defaulted to allow move.


    virtual void Enlighten::BaseDynamicObject::Release


    protected: virtual 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 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)'


    void Enlighten::BaseDynamicObject::RequestInterpolationOnAllPoints


    public: void RequestInterpolationOnAllPoints()


    will setInterpolatedPoint:: m_RecomputeInterpolants to true on all the interpolated points.


    virtual void Enlighten::BaseDynamicObject::SetGpuTexture


    public: virtual void SetGpuTexture
    (
        ProbeVolumeOutputTextureType textureType,
        IGpuTexture * gpuTexture
    )


    Sets an output texture for the dynamic object.


    virtual void Enlighten::CpuDynamicObject::SetGpuTexture


    public: virtual void SetGpuTexture
    (
        ProbeVolumeOutputTextureType textureType,
        IGpuTexture * gpuTexture
    )


    Sets an output texture for the dynamic object.


    void Enlighten::BaseDynamicObject::SetTransform


    public: void SetTransform
    (
        const Geo::Matrix & transform
    )


    Sets the world transform for the object, and updates the world-to-uvw transform.


    virtual void Enlighten::CpuDynamicObject::UpdateGpuTexture


    public: virtual void UpdateGpuTexture()


    Update textures using the marked solution buffers.


    virtual void Enlighten::BaseDynamicObject::UpdateGpuTexture


    protected: virtual void UpdateGpuTexture()


    Update the GPU volume textures.

    , multiple selections available,
    {"serverDuration": 11, "requestCorrelationId": "6e61259c6ef2460c91548484b7e4d227"}