Nebula
Loading...
Searching...
No Matches
GI::DDGIContext Class Reference

#include <ddgicontext.h>

Inherits Graphics::GraphicsContext.

Classes

struct  Volume
 
struct  VolumeSetup
 

Private Types

typedef Ids::IdAllocator< VolumeDDGIVolumeAllocator
 

Private Member Functions

__DeclareContext() public ~DDGIContext ()
 Destructor.
 

Static Private Member Functions

static void Create ()
 setup light context
 
static void Discard ()
 discard light context
 
static void SetupVolume (const Graphics::GraphicsEntityId id, const VolumeSetup &setup)
 Create volume.
 
static void SetPosition (const Graphics::GraphicsEntityId id, const Math::vec3 &position)
 Set volume position.
 
static void SetSize (const Graphics::GraphicsEntityId id, const Math::vec3 &size)
 Set volume scale.
 
static void UpdateActiveVolumes (const Ptr< Graphics::View > &view, const Graphics::FrameContext &ctx)
 prepare light lists
 
static void OnRenderDebug (uint32_t flags)
 
static Graphics::ContextEntityId Alloc ()
 allocate a new slice for this context
 
static void Dealloc (Graphics::ContextEntityId id)
 deallocate a slice
 

Static Private Attributes

static DDGIVolumeAllocator ddgiVolumeAllocator
 

Additional Inherited Members

- Public Member Functions inherited from Graphics::GraphicsContext
 GraphicsContext ()
 constructor
 
virtual ~GraphicsContext ()
 destructor
 
- Static Protected Member Functions inherited from Graphics::GraphicsContext
static void InternalRegisterEntity (const Graphics::GraphicsEntityId id, Graphics::GraphicsContextState &&state)
 
static void InternalDeregisterEntity (const Graphics::GraphicsEntityId id, Graphics::GraphicsContextState &&state)
 
template<class ID_ALLOCATOR>
static void InternalDefragment (ID_ALLOCATOR &allocator, Graphics::GraphicsContextState &&state)
 

Member Typedef Documentation

◆ DDGIVolumeAllocator

Constructor & Destructor Documentation

◆ ~DDGIContext()

GI::DDGIContext::~DDGIContext ( )
private

Destructor.

Member Function Documentation

◆ Alloc()

Graphics::ContextEntityId GI::DDGIContext::Alloc ( )
staticprivate

allocate a new slice for this context

◆ Create()

void GI::DDGIContext::Create ( )
staticprivate

setup light context

◆ Dealloc()

void GI::DDGIContext::Dealloc ( Graphics::ContextEntityId id)
staticprivate

deallocate a slice

◆ Discard()

void GI::DDGIContext::Discard ( )
staticprivate

discard light context

◆ OnRenderDebug()

void GI::DDGIContext::OnRenderDebug ( uint32_t flags)
staticprivate

◆ SetPosition()

void GI::DDGIContext::SetPosition ( const Graphics::GraphicsEntityId id,
const Math::vec3 & position )
staticprivate

Set volume position.

◆ SetSize()

void GI::DDGIContext::SetSize ( const Graphics::GraphicsEntityId id,
const Math::vec3 & size )
staticprivate

Set volume scale.

◆ SetupVolume()

void GI::DDGIContext::SetupVolume ( const Graphics::GraphicsEntityId id,
const VolumeSetup & setup )
staticprivate

Create volume.

◆ UpdateActiveVolumes()

void GI::DDGIContext::UpdateActiveVolumes ( const Ptr< Graphics::View > & view,
const Graphics::FrameContext & ctx )
staticprivate

prepare light lists

Member Data Documentation

◆ ddgiVolumeAllocator

DDGIContext::DDGIVolumeAllocator GI::DDGIContext::ddgiVolumeAllocator
staticprivate

The documentation for this class was generated from the following files: