candlewick 0.6.0
A tiny cross-platform renderer based on SDL3
|
WIP screen space shadows. More...
#include <candlewick/posteffects/ScreenSpaceShadows.h>
Classes | |
struct | Config |
Public Member Functions | |
bool | valid () const |
ScreenSpaceShadowPass (NoInitT) | |
ScreenSpaceShadowPass (const RenderContext &renderer, const Config &config) | |
void | release (SDL_GPUDevice *device) noexcept |
void | render (CommandBuffer &cmdBuf, const Camera &camera, const DirectionalLight &light, std::span< const OpaqueCastable > castables) |
Public Attributes | |
struct candlewick::effects::ScreenSpaceShadowPass::Config | config |
SDL_GPUTexture * | depthTexture = nullptr |
SDL_GPUSampler * | depthSampler = nullptr |
Sampler for the depth texture (e.g. from the prepass) | |
SDL_GPUTexture * | targetTexture = nullptr |
Target texture to render the shadow to. | |
SDL_GPUGraphicsPipeline * | pipeline = nullptr |
Render pipeline. | |
WIP screen space shadows.
|
inline |
candlewick::effects::ScreenSpaceShadowPass::ScreenSpaceShadowPass | ( | const RenderContext & | renderer, |
const Config & | config ) |
|
noexcept |
void candlewick::effects::ScreenSpaceShadowPass::render | ( | CommandBuffer & | cmdBuf, |
const Camera & | camera, | ||
const DirectionalLight & | light, | ||
std::span< const OpaqueCastable > | castables ) |
|
inline |
struct candlewick::effects::ScreenSpaceShadowPass::Config candlewick::effects::ScreenSpaceShadowPass::config |
SDL_GPUSampler* candlewick::effects::ScreenSpaceShadowPass::depthSampler = nullptr |
Sampler for the depth texture (e.g. from the prepass)
SDL_GPUTexture* candlewick::effects::ScreenSpaceShadowPass::depthTexture = nullptr |
SDL_GPUGraphicsPipeline* candlewick::effects::ScreenSpaceShadowPass::pipeline = nullptr |
Render pipeline.
SDL_GPUTexture* candlewick::effects::ScreenSpaceShadowPass::targetTexture = nullptr |
Target texture to render the shadow to.