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 3.10 Documentation
Results will update as you type.
  • Modules
  • Namespaces
    • namespace Enlighten
      • class Enlighten A8CpuTextureSampler
      • class Enlighten Alpha8Normalised
      • class Enlighten AsyncTaskThreadGroup
      • class Enlighten AutoProbeVolumes
      • 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 BaseLightMeta
      • class Enlighten BaseProbeSet
      • class Enlighten BaseSystem
      • class Enlighten BaseSystemSolutionSpace
      • class Enlighten BaseUpdateManager
      • class Enlighten BaseWorker
      • class Enlighten BoundingBox2D
      • class Enlighten BoxSpotlight
        • class Enlighten BoxSpotlight CachedData
      • class Enlighten BoxVolume
      • class Enlighten CallableEnqueueFunctorCommand
      • class Enlighten ClusterAlbedoWorkspaceMaterialData
      • class Enlighten ClusterMaterialComponent
      • class Enlighten ClusterMaterials
      • class Enlighten ClusterProbeBounceSampleData
      • class Enlighten ClusterProbeSample
      • 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 CpuUpdateManager
      • class Enlighten CpuWorker
      • class Enlighten CubeMapDataBlock
      • class Enlighten CubeMapMeta
      • class Enlighten DefaultGeometryTransparencySampler
      • class Enlighten DefaultThreadGroup
      • class Enlighten DirectInputLightingParameters
      • class Enlighten DirectionalLight
      • class Enlighten DirectionalLightMeta
      • class Enlighten Dx9TextureUpdater
      • class Enlighten Dx11TextureUpdater
      • class Enlighten DynamicMaterialWorkspace
      • class Enlighten DynamicObject
    Calendars

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

    This is the documentation for Enlighten.

    class Enlighten BoxSpotlight CachedData

    Nov 21, 2019

    class Enlighten::BoxSpotlight::CachedData

        └>Enlighten::InputLightBase

    Cached data for box spotlight.

    Variables

    Name Description
    Geo::v128 m_Bounds[4]

    Bounds.

    Geo::v128 m_BoundsMax

    Bounds max.

    Geo::v128 m_BoundsMin

    Bounds min.

    Geo::v128 m_Colour

    Colour.

    Geo::v128 m_CosLightAngle

    Cos (light angle)

    Geo::v128 m_CutoffSquared

    Cutoff squared.

    Geo::v128 m_Direction

    Direction.

    Geo::v128 m_DirectionScale

    Direction scale.

    Enlighten::InternalLightFalloffTable m_FalloffTable

    Falloff table.

    bool m_HasChanged

    Whether the light has changed since it was last given to the extended direct lighting api.

    Geo::u32 m_HasVisibilityData

    Has visibility data?

    const eLightType m_LightType

    Type of input light corresponding to an eLightType enum value.

    Geo::v128 m_NegativeCosAngleScaledPlusOne

    -Cos(angle scaled) + 1

    Geo::v128 m_NegativeSinLightAngle

    -Sin(light angle)

    Geo::u32 m_Padding

    Unused padding.

    Geo::u64 m_Padding

    Unused (this class is usually extended by one that starts with multiple v128s)

    Geo::v128 m_Position

    Position.

    Geo::v128 m_Radius

    Radius.

    Geo::v128 m_RightDirection

    Right direction.

    Geo::v128 m_SpotlightTable[33]

    Spotlight table.

    Geo::v128 m_UpDirection

    Up direction.

    const Geo::u8 * m_VisibilityData

    Visibility data.

    Geo::u64 m_VisibilityData64

    Visibility data.

    Functions

    Name Description
    CachedData(const BoxSpotlight &, const void *)

    Constructor.

    Hash(Helpers::Hasher &, Geo::u32, Geo::u32)

    Hash the light data.

    InputLightBase(eLightType)

    Constructor.

    InputLightBase(eLightType, bool)

    Constructor.

    IsIntersectingCluster(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &)

    Complex light V normalBoundingBox intersection test.

    IsIntersectingClusterGroup(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &)

    Light v ClusterGroup Bounding box intersection test.

    IsIntersectingSystem(const Geo::v128 &, const Geo::v128 &)

    Simple Light V system BoundingBox intersection test.

    ShadeFourSamples(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, Geo::u32, Geo::v128 &, Geo::v128 &, Geo::v128 &, Geo::v128 &)

    Shades the given samples.

    ShadeQuad(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, Geo::u32, Geo::u32)

    Shades the given quad.

    ShadeQuadIntensities(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &)

    Shades the given quads.


    Enlighten::BoxSpotlight::CachedData::CachedData


    public: CachedData
    (
        const BoxSpotlight & boxSpotLight,
        const void * perDusterVisibility
    )


    Constructor.


    void Enlighten::BoxSpotlight::CachedData::Hash


    public: void Hash
    (
        Helpers::Hasher & hash,
        Geo::u32 clusterVisSize,
        Geo::u32 quadVisSize
    )


    Hash the light data.


    Enlighten::InputLightBase::InputLightBase


    protected: InputLightBase
    (
        eLightType lightType
    )


    Constructor.


    Enlighten::InputLightBase::InputLightBase


    protected: InputLightBase
    (
        eLightType lightType,
        bool hasChanged
    )


    Constructor.


    GEO_CONTROLLED_INLINE bool Enlighten::BoxSpotlight::CachedData::IsIntersectingCluster


    public: GEO_CONTROLLED_INLINE bool IsIntersectingCluster
    (
        const Geo::v128 & bbMin,
        const Geo::v128 & bbMax,
        const Geo::v128 & minNormalFlipped,
        const Geo::v128 & maxNormalFlipped
    ) const


    Complex light V normalBoundingBox intersection test.


    GEO_CONTROLLED_INLINE bool Enlighten::BoxSpotlight::CachedData::IsIntersectingClusterGroup


    public: GEO_CONTROLLED_INLINE bool IsIntersectingClusterGroup
    (
        const Geo::v128 & bbMin,
        const Geo::v128 & bbMax,
        const Geo::v128 & minNormalFlipped,
        const Geo::v128 & maxNormalFlipped
    ) const


    Light v ClusterGroup Bounding box intersection test.


    GEO_CONTROLLED_INLINE bool Enlighten::BoxSpotlight::CachedData::IsIntersectingSystem


    public: GEO_CONTROLLED_INLINE bool IsIntersectingSystem
    (
        const Geo::v128 & bbMin,
        const Geo::v128 & bbMax
    ) const


    Simple Light V system BoundingBox intersection test.


    GEO_CONTROLLED_INLINE void Enlighten::BoxSpotlight::CachedData::ShadeFourSamples


    public: GEO_CONTROLLED_INLINE void ShadeFourSamples
    (
        const Geo::v128 & positionsX,
        const Geo::v128 & positionsY,
        const Geo::v128 & positionsZ,
        const Geo::v128 & normalsX,
        const Geo::v128 & normalsY,
        const Geo::v128 & normalsZ,
        Geo::u32 sampleIdx,
        Geo::v128 & colourOut0,
        Geo::v128 & colourOut1,
        Geo::v128 & colourOut2,
        Geo::v128 & colourOut3
    ) const


    Shades the given samples.


    GEO_CONTROLLED_INLINE Geo::v128 Enlighten::BoxSpotlight::CachedData::ShadeQuad


    public: GEO_CONTROLLED_INLINEGeo::v128 ShadeQuad
    (
        const Geo::v128 & positionsX,
        const Geo::v128 & positionsY,
        const Geo::v128 & positionsZ,
        const Geo::v128 & normalsX,
        const Geo::v128 & normalsY,
        const Geo::v128 & normalsZ,
        Geo::u32 clusterIdx,
        Geo::u32 quadIdx
    ) const


    Shades the given quad.


    GEO_CONTROLLED_INLINE Geo::v128 Enlighten::BoxSpotlight::CachedData::ShadeQuadIntensities


    public: GEO_CONTROLLED_INLINEGeo::v128 ShadeQuadIntensities
    (
        const Geo::v128 & positionsX,
        const Geo::v128 & positionsY,
        const Geo::v128 & positionsZ,
        const Geo::v128 & normalsX,
        const Geo::v128 & normalsY,
        const Geo::v128 & normalsZ,
        const Geo::v128 & visibility
    ) const


    Shades the given quads.

    , multiple selections available,
    {"serverDuration": 13, "requestCorrelationId": "baec0f9da6d44244b7d837ab443b30d6"}