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.
  • class Geo AtlasMesh
  • class Geo AtlasMeshChart
  • class Geo AtlasMeshPackingFlags
  • class Geo BasicAllocator
  • class Geo ChartParametiserFailure
  • class Geo ConvexHull
  • class Geo ConvexHullBuilder
  • class Geo CovarianceMatrix
  • class Geo CovarianceMatrixBuilder
  • class Geo EmbreeRtMeshVisitor
  • class Geo Geo2DTransform
  • class Geo GeoAlignedFreeDestructor
  • class Geo GeoAllocationPage
  • class Geo GeoAllocator
  • class Geo GeoAllocatorUnchecked
  • class Geo GeoArray
  • class Geo GeoArray_Stl
  • class Geo GeoAutoArrayPtr
  • class Geo GeoAutoDeleteArray
  • class Geo GeoAutoDeleteList
  • class Geo GeoAutoDeleteMap
  • class Geo GeoAutoPtr
  • class Geo GeoAutoReleaseArray
  • class Geo GeoAutoReleaseMap
  • class Geo GeoAutoReleasePtr
  • class Geo GeoBitArray
  • class Geo GeoBitStore
  • class Geo GeoBlueNoise
  • class Geo GeoBlueNoiseDiskPalette
  • class Geo GeoBlueNoiseRayPalette
  • class Geo GeoBoundingBox
  • class Geo GeoBoundingSphere
  • class Geo GeoBufferedFileStream
  • class Geo GeoBufferedInputStream
  • class Geo GeoCriticalSection
  • class Geo GeoDebugAllocator
  • class Geo GeoDelegateDestructor
  • class Geo GeoDeleteArrayDestructor
  • class Geo GeoDeleteDestructor
  • class Geo GeoDepthCubeMap
  • class Geo GeoEmbreeContext
  • class Geo GeoEqualCString
  • class Geo GeoEvent
  • class Geo GeoFileManager
  • class Geo GeoFileStream
  • class Geo GeoFixedBinarySearchMap
  • class Geo GeoFixedBinarySearchMapCompare
  • class Geo GeoFixedPoolAllocator
  • class Geo GeoFixedString
  • class Geo GeoFlattenAndPackResults
  • class Geo GeoFp16Texture
  • class Geo GeoFpControl
  • class Geo GeoFrameTime
  • class Geo GeoFreeDestructor
  • class Geo GeoGenericTexture
  • class Geo GeoGuid
  • class Geo GeoHalf
  • class Geo GeoHashConstHandle
  • class Geo GeoHashCString
  • class Geo GeoHashDefault
  • class Geo GeoHashHandle
  • class Geo GeoHashMap
  • class Geo GeoHashString
  • class Geo GeoImmutableArray
  • class Geo GeoInputEvent
  • class Geo GeoInstanceCount
  • class Geo GeoIntRange
  • class Geo GeoIntrusivePtr
  • class Geo GeoKeyValueArray
  • class Geo GeoLineSegment
  • class Geo GeoList
  • class Geo GeoMap
  • class Geo GeoMemoryDefault
  • class Geo GeoMemoryPool
  • class Geo GeoMemoryStream
  • class Geo GeoNonAABoundingBox
  • class Geo GeoNoopDestructor
  • class Geo GeoPair
  • class Geo GeoParametrisedPlane3
  • class Geo GeoPriorityQueue
  • class Geo GeoProgress
    Calendars

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

    This is the documentation for Enlighten.

    class Geo GeoEmbreeContext

    Nov 21, 2019

    class Geo::GeoEmbreeContext

        └>Geo::IGeoRayTracingContext
            └>Geo::IGeoReleasable

    An IGeoRayTracingContext that implements the Intel Embree raytracer.

    Note

    Enlighten changes

    • We have removed the SSSE3 and SSE3 instructions from the common/simd header files. This breaks the bvh2 path completely (missing shuffle8 instruction).

    • Level of Detail filtering (required for baking) is only implemented in the Plücker Triangle4v Intersector, other paths are unavailable.

    • Prevent the TaskScheduler from being allocated at program initialisation, so we control when it uses memory.

    Functions

    Name Description
    Create(const IRtMesh *, bool)

    Creates a GeoEmbreeContext.

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

    Ray trace a ray built from origin and direction. Returns length of ray.

    GetAPI()

    Query which API the interface is using.

    GetAPI()

    Query which API the interface is using.

    GetNumRaysTraced()

    Total number of rays traced.

    GetNumRaysTraced()

    Total number of rays traced.

    GetNumTriangles()

    Ray trace a chunk of rays. Returns true on success.

    GetNumTriangles()

    Ray trace a chunk of rays. Returns true on success.

    GetRayTraceSecs()

    Total number of seconds used on raw ray tracing.

    GetRayTraceSecs()

    Total number of seconds used on raw ray tracing.

    IsAnyHitTraversal()

    Is the context using any hit traversal.

    IsAnyHitTraversal()

    Is the context using any hit traversal.

    ReentrantAndThreadSafe()

    Is this object re-entrant and thread safe?

    ReentrantAndThreadSafe()

    Is this object re-entrant and thread safe?

    Release()

    Free this object that was created within the Enlighten libraries.

    Release()

    Free this object that was created within the Enlighten libraries.

    TraceChunk(ClippedRayChunk *)

    Ray trace a chunk of rays.

    TraceChunk(RayChunk *)

    Ray trace a chunk of rays.

    TraceChunk(Geo::ClippedRayChunk *)

    Ray trace a chunk of rays.

    TraceChunk(Geo::RayChunk *)

    Ray trace a chunk of rays.

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

    Ray trace a ray built from origin and direction. Returns full ray info.

    TraceRay(const Geo::ClippedRay &, RayResult &, Geo::u32)

    Ray trace a ray. Returns true on success.

    TraceRay(const Geo::ClippedRay &, RayResult &, Geo::u32)

    Ray trace a ray. Returns true on success.


    static GeoEmbreeContext* Geo::GeoEmbreeContext::Create


    public: GeoEmbreeContext * Create
    (
        const IRtMesh * world,
        bool anyHitTraversal
    )


    Creates a GeoEmbreeContext.


    float Geo::IGeoRayTracingContext::DistanceQuery


    public: float DistanceQuery
    (
        const Geo::v128 & origin,
        const Geo::v128 & direction,
        Geo::u32 filter
    ) const


    Ray trace a ray built from origin and direction. Returns length of ray.


    virtual eRTAPI Geo::GeoEmbreeContext::GetAPI


    public: virtual eRTAPI GetAPI() const


    Query which API the interface is using.


    virtual eRTAPI Geo::IGeoRayTracingContext::GetAPI


    public: eRTAPI GetAPI() const


    Query which API the interface is using.


    virtual Geo::u64 Geo::GeoEmbreeContext::GetNumRaysTraced


    public: virtual Geo::u64 GetNumRaysTraced() const


    Total number of rays traced.


    virtual Geo::u64 Geo::IGeoRayTracingContext::GetNumRaysTraced


    public: Geo::u64 GetNumRaysTraced() const


    Total number of rays traced.


    virtual Geo::s32 Geo::GeoEmbreeContext::GetNumTriangles


    public: virtual Geo::s32 GetNumTriangles() const


    Ray trace a chunk of rays. Returns true on success.


    virtual Geo::s32 Geo::IGeoRayTracingContext::GetNumTriangles


    public: Geo::s32 GetNumTriangles() const


    Ray trace a chunk of rays. Returns true on success.


    virtual double Geo::GeoEmbreeContext::GetRayTraceSecs


    public: virtual double GetRayTraceSecs() const


    Total number of seconds used on raw ray tracing.


    virtual double Geo::IGeoRayTracingContext::GetRayTraceSecs


    public: double GetRayTraceSecs() const


    Total number of seconds used on raw ray tracing.


    virtual bool Geo::GeoEmbreeContext::IsAnyHitTraversal


    public: virtual bool IsAnyHitTraversal() const


    Is the context using any hit traversal.


    virtual bool Geo::IGeoRayTracingContext::IsAnyHitTraversal


    public: bool IsAnyHitTraversal() const


    Is the context using any hit traversal.


    virtual bool Geo::GeoEmbreeContext::ReentrantAndThreadSafe


    public: virtual bool ReentrantAndThreadSafe() const


    Is this object re-entrant and thread safe?


    virtual bool Geo::IGeoRayTracingContext::ReentrantAndThreadSafe


    public: bool ReentrantAndThreadSafe() const


    Is this object re-entrant and thread safe?


    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 void Geo::GeoEmbreeContext::Release


    public: 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 bool Geo::GeoEmbreeContext::TraceChunk


    public: virtual bool TraceChunk
    (
        ClippedRayChunk * chunk
    ) const


    Ray trace a chunk of rays.

    Returns true on success.


    virtual bool Geo::GeoEmbreeContext::TraceChunk


    public: virtual bool TraceChunk
    (
        RayChunk * chunk
    ) const


    Ray trace a chunk of rays.

    Returns true on success.


    virtual bool Geo::IGeoRayTracingContext::TraceChunk


    public: bool TraceChunk
    (
        Geo::ClippedRayChunk * chunk
    ) const


    Ray trace a chunk of rays.

    Returns true on success.


    virtual bool Geo::IGeoRayTracingContext::TraceChunk


    public: bool TraceChunk
    (
        Geo::RayChunk * chunk
    ) const


    Ray trace a chunk of rays.

    Returns true on success.


    RayResult Geo::IGeoRayTracingContext::TraceRay


    public: RayResult TraceRay
    (
        const Geo::v128 & origin,
        const Geo::v128 & direction,
        Geo::u32 filter
    ) const


    Ray trace a ray built from origin and direction. Returns full ray info.


    virtual bool Geo::GeoEmbreeContext::TraceRay


    public: virtual bool TraceRay
    (
        const Geo::ClippedRay & ray,
        RayResult & rayResult,
        Geo::u32 filter
    ) const


    Ray trace a ray. Returns true on success.


    virtual bool Geo::IGeoRayTracingContext::TraceRay


    public: bool TraceRay
    (
        const Geo::ClippedRay & ray,
        RayResult & rayResult,
        Geo::u32 filter
    ) const


    Ray trace a ray. Returns true on success.

    , multiple selections available,
    {"serverDuration": 9, "requestCorrelationId": "3a26946b11224a32b40fabed57a00031"}