candlewick 0.7.0-59-g23c6
A tiny cross-platform renderer based on SDL3
|
Scene for organizing debug entities and render systems. More...
#include <candlewick/core/DebugScene.h>
Public Types | |
enum | { TRANSFORM_SLOT = 0 } |
enum | { COLOR_SLOT = 0 } |
Public Member Functions | |
DebugScene (entt::registry ®istry, const RenderContext &renderer) | |
DebugScene (const DebugScene &)=delete | |
DebugScene & | operator= (const DebugScene &)=delete |
DebugScene (DebugScene &&other) | |
DebugScene & | operator= (DebugScene &&)=delete |
const Device & | device () const noexcept |
entt::registry & | registry () |
const entt::registry & | registry () const |
template<std::derived_from< IDebugSubSystem > System, typename... Args> | |
System & | addSystem (Args &&...args) |
Add a subsystem (IDebugSubSystem) to the scene. | |
std::tuple< entt::entity, DebugMeshComponent & > | addTriad (const Float3 &scale=Float3::Ones()) |
Just the basic 3D triad. | |
std::tuple< entt::entity, DebugMeshComponent & > | addLineGrid (const Float4 &color=Float4::Ones()) |
Add a basic line grid. | |
void | update () |
void | render (CommandBuffer &cmdBuf, const Camera &camera) const |
void | release () |
~DebugScene () | |
Scene for organizing debug entities and render systems.
This implements a basic render system for DebugMeshComponent.
This scene and all subsystems are assumed to use the same shaders and pipelines.
candlewick::DebugScene::DebugScene | ( | entt::registry & | registry, |
const RenderContext & | renderer ) |
|
delete |
candlewick::DebugScene::DebugScene | ( | DebugScene && | other | ) |
|
inline |
std::tuple< entt::entity, DebugMeshComponent & > candlewick::DebugScene::addLineGrid | ( | const Float4 & | color = Float4::Ones() | ) |
Add a basic line grid.
color | Grid color. |
|
inline |
Add a subsystem (IDebugSubSystem) to the scene.
std::tuple< entt::entity, DebugMeshComponent & > candlewick::DebugScene::addTriad | ( | const Float3 & | scale = Float3::Ones() | ) |
Just the basic 3D triad.
|
inlinenoexcept |
|
delete |
|
delete |
|
inline |
|
inline |
void candlewick::DebugScene::release | ( | ) |
void candlewick::DebugScene::render | ( | CommandBuffer & | cmdBuf, |
const Camera & | camera ) const |
|
inline |