Foundation
Loading...
Searching...
No Matches
Classes | Variables
GPUScene.hpp File Reference
#include <cstddef>
#include <Core/Allocator.hpp>
#include <Core/AllocatorStack.hpp>
#include <Core/Logging.hpp>
#include <RenderCore/Bindless.hpp>
#include <RenderCore/ImmediateContext.hpp>
#include "Curve.hpp"
#include "Mesh.hpp"
#include "Texture.hpp"
#include "Precompute.hpp"

Go to the source code of this file.

Classes

struct  GeometryHandle
 Opaque, generation-tagged reference to GPUScene-owned geometry residency. More...
 
struct  TextureHandle
 Generation-tagged reference to a bindless texture slot (mirror of GeometryHandle). More...
 
struct  InstanceDesc
 Caller-facing scene instance for GPUScene::BeginScene / GPUScene::EndScene. More...
 
struct  GSMesh
 
struct  GSInstance
 
struct  GSMaterial
 
struct  GSLight
 
struct  GPUSceneDesc
 
class  GPUScene
 Owns all GPU-resident scene data (geometry, textures, instance/material/light tables, acceleration structures) behind an asynchronous upload work queue. More...
 
struct  GPUScene::UpdateResult
 Ring-buffer offsets and element counts for instances/materials/lights. More...
 
struct  GPUScene::GPUSceneTables
 GPUScene-owned, caller-filled spans for the instance/material/light tables, plus their ring-buffer base offsets. More...
 
struct  GPUScene::MemoryStat
 

Variables

constexpr uint32_t kRectLightSBTOffset = 3u
 
constexpr uint32_t kDiskLightSBTOffset = 4u
 
constexpr uint32_t kCurveSBTOffset = 5u
 
constexpr uint32_t kGSInstanceTypeMesh = 0u
 
constexpr uint32_t kGSInstanceTypeCurve = 1u
 
constexpr uint32_t kGSInstanceTypeMask = 0xFFu
 
constexpr uint32_t kGSInstanceFlagDynamic = 0x100u
 

Variable Documentation

◆ kCurveSBTOffset

constexpr uint32_t kCurveSBTOffset = 5u
inlineconstexpr

◆ kDiskLightSBTOffset

constexpr uint32_t kDiskLightSBTOffset = 4u
inlineconstexpr

◆ kGSInstanceFlagDynamic

constexpr uint32_t kGSInstanceFlagDynamic = 0x100u
inlineconstexpr

◆ kGSInstanceTypeCurve

constexpr uint32_t kGSInstanceTypeCurve = 1u
inlineconstexpr

◆ kGSInstanceTypeMask

constexpr uint32_t kGSInstanceTypeMask = 0xFFu
inlineconstexpr

◆ kGSInstanceTypeMesh

constexpr uint32_t kGSInstanceTypeMesh = 0u
inlineconstexpr

◆ kRectLightSBTOffset

constexpr uint32_t kRectLightSBTOffset = 3u
inlineconstexpr