Nebula
Loading...
Searching...
No Matches
Raytracing Namespace Reference

Detailed Description

Context dealing with scene management for ray tracing.

Classes

class  RaytracingContext
 
struct  RaytracingSetupSettings
 

Enumerations

enum  ObjectType { BRDFObject , BSDFObject , GLTFObject , ParticleObject }
 
enum  UpdateType { Dynamic , Static }
 

Functions

 __ImplementContext (RaytracingContext, raytracingContextAllocator)
 

Variables

struct { 
 
   Threading::CriticalSection   Raytracing::blasLock 
 
   Util::Array< CoreGraphics::BlasInstanceId >   Raytracing::blasInstances 
 
   Util::Array< CoreGraphics::MeshId >   Raytracing::blasInstanceMeshes 
 
   Util::Array< CoreGraphics::BlasId >   Raytracing::blasesToRebuild 
 
   Util::Array< CoreGraphics::BlasId >   Raytracing::blases 
 
   CoreGraphics::TlasId   Raytracing::toplevelAccelerationStructure 
 
   Memory::RangeAllocator   Raytracing::blasInstanceAllocator 
 
   bool   Raytracing::topLevelNeedsReconstruction 
 
   bool   Raytracing::topLevelNeedsBuild 
 
   bool   Raytracing::topLevelNeedsUpdate 
 
   Util::HashTable< CoreGraphics::MeshId, Util::Tuple< uint, CoreGraphics::BlasId > >   Raytracing::blasLookup 
 
   CoreGraphics::BufferWithStaging   Raytracing::blasInstanceBuffer 
 
   CoreGraphics::ResourceTableSet   Raytracing::raytracingTestTables 
 
   CoreGraphics::BufferId   Raytracing::geometryBindingBuffer 
 
   CoreGraphics::BufferWithStaging   Raytracing::objectBindingBuffer 
 
   Util::Array< Raytracetest::Object >   Raytracing::objects 
 
   CoreGraphics::BufferId   Raytracing::lightGrid 
 
   CoreGraphics::BufferId   Raytracing::lightGridConstants 
 
   CoreGraphics::ShaderId   Raytracing::lightGridShader 
 
   CoreGraphics::ResourceTableSet   Raytracing::lightGridResourceTables 
 
   CoreGraphics::ShaderProgramId   Raytracing::lightGridGenProgram 
 
   CoreGraphics::ShaderProgramId   Raytracing::lightGridCullProgram 
 
   CoreGraphics::BufferId   Raytracing::lightGridIndexLists 
 
   CoreGraphics::PipelineRayTracingTable   Raytracing::raytracingBundle 
 
   Threading::Event   Raytracing::jobWaitEvent 
 
   SizeT   Raytracing::maxAllowedInstances = 0 
 
   SizeT   Raytracing::numRegisteredInstances = 0 
 
   SizeT   Raytracing::numInstancesToFlush 
 
state 
 
static uint MaterialPropertyMappings [(uint) MaterialTemplates::MaterialProperties::Num]
 

Enumeration Type Documentation

◆ ObjectType

Enumerator
BRDFObject 
BSDFObject 
GLTFObject 
ParticleObject 

◆ UpdateType

Enumerator
Dynamic 
Static 

Function Documentation

◆ __ImplementContext()

Raytracing::__ImplementContext ( RaytracingContext ,
raytracingContextAllocator  )

Variable Documentation

◆ blases

Util::Array<CoreGraphics::BlasId> Raytracing::blases

◆ blasesToRebuild

Util::Array<CoreGraphics::BlasId> Raytracing::blasesToRebuild

◆ blasInstanceAllocator

Memory::RangeAllocator Raytracing::blasInstanceAllocator

◆ blasInstanceBuffer

CoreGraphics::BufferWithStaging Raytracing::blasInstanceBuffer

◆ blasInstanceMeshes

Util::Array<CoreGraphics::MeshId> Raytracing::blasInstanceMeshes

◆ blasInstances

Util::Array<CoreGraphics::BlasInstanceId> Raytracing::blasInstances

◆ blasLock

Threading::CriticalSection Raytracing::blasLock

◆ blasLookup

◆ geometryBindingBuffer

CoreGraphics::BufferId Raytracing::geometryBindingBuffer

◆ jobWaitEvent

Threading::Event Raytracing::jobWaitEvent

◆ lightGrid

CoreGraphics::BufferId Raytracing::lightGrid

◆ lightGridConstants

CoreGraphics::BufferId Raytracing::lightGridConstants

◆ lightGridCullProgram

CoreGraphics::ShaderProgramId Raytracing::lightGridCullProgram

◆ lightGridGenProgram

CoreGraphics::ShaderProgramId Raytracing::lightGridGenProgram

◆ lightGridIndexLists

CoreGraphics::BufferId Raytracing::lightGridIndexLists

◆ lightGridResourceTables

CoreGraphics::ResourceTableSet Raytracing::lightGridResourceTables

◆ lightGridShader

CoreGraphics::ShaderId Raytracing::lightGridShader

◆ MaterialPropertyMappings

uint Raytracing::MaterialPropertyMappings[(uint) MaterialTemplates::MaterialProperties::Num]
static

◆ maxAllowedInstances

SizeT Raytracing::maxAllowedInstances = 0

◆ numInstancesToFlush

SizeT Raytracing::numInstancesToFlush

◆ numRegisteredInstances

SizeT Raytracing::numRegisteredInstances = 0

◆ objectBindingBuffer

CoreGraphics::BufferWithStaging Raytracing::objectBindingBuffer

◆ objects

Util::Array<Raytracetest::Object> Raytracing::objects

◆ raytracingBundle

CoreGraphics::PipelineRayTracingTable Raytracing::raytracingBundle

◆ raytracingTestTables

CoreGraphics::ResourceTableSet Raytracing::raytracingTestTables

◆ [struct]

struct { ... } Raytracing::state

◆ toplevelAccelerationStructure

CoreGraphics::TlasId Raytracing::toplevelAccelerationStructure

◆ topLevelNeedsBuild

bool Raytracing::topLevelNeedsBuild

◆ topLevelNeedsReconstruction

bool Raytracing::topLevelNeedsReconstruction

◆ topLevelNeedsUpdate

bool Raytracing::topLevelNeedsUpdate