module Ray Tracing

This is the documentation for Enlighten.

module Ray Tracing

Classes

Name

Description

Name

Description

Geo::AbstractRayChunk

Buffer that holds a chunk of rays and results.

Geo::AbstractRayChunk::ResultsIterator

Iterator to a const ray result, allows iterating linearly over the ray results.

Geo::ClippedRay

A finite ray with near and far clipping planes.

Geo::GeoEmbreeContext

An IGeoRayTracingContext that implements the Intel Embree raytracer.

Geo::IGeoRayTracingContext

Ray-tracing context.

Geo::InitRayTracing

Small helper class to ensure init/cleanup are called when object is created/destroyed.

Geo::IRtMesh

An interface used by the raytracers to fill their internal mesh data structures.

Geo::Rayf

A single ray.

Geo::RayResult

The result of a ray intersection test.

Geo::RtMesh

A mesh container that can be stored to disk and used later as a ray tracing mesh.

Geo::RtMeshGroup

A ray tracing mesh that is a collection of other meshes.

Enums

Name

Description

Name

Description

ECpuGpuMode

Controls how the hardware is used by Enlighten to generate precompute data.

eRTAPI

Ray-tracing APIs.

Typedefs

Name

Description

Name

Description

AbstractRayChunk< ClippedRay > ClippedRayChunk

A chunk of clipped rays.

bool(* MemoryLimitCallback)(s64 delta)

Called when memory is allocated or deallocated. Returns false when memory exceeds the limit.

AbstractRayChunk< Rayf > RayChunk

A chunk of rays.

GeoEmbreeContext RayTracingContext

The default ray tracing context to use when casting single rays.

Variables

Name

Description

Name

Description

const char * g_FriendlyRTAPINames[RTAPI_NUM_API] = { "EMBREE" }

Names of the ray-tracing APIs.

Functions

Name

Description

Name

Description

GetFriendlyName(eRTAPI)

Gets the name of the given ray-tracing API.

GetIsPointOccluded(const Rayf &, const Geo::v128 &)

Checks if the given point is behind the intersection of the given ray.

LogStatistics(const IGeoRayTracingContext *, const double &)

Log ray tracing timings.



ECpuGpuMode


public: enum ECpuGpuMode
{
    ertCpuShared = 0,
    ertCpuExclusive,
    ertDefault = ertCpuShared
}