candlewick 0.6.0
A tiny cross-platform renderer based on SDL3
Loading...
Searching...
No Matches
RenderContext.h File Reference
#include "Device.h"
#include "CommandBuffer.h"
#include "Texture.h"
#include "Mesh.h"
#include "Window.h"
#include <span>
#include <SDL3/SDL_gpu.h>

Go to the source code of this file.

Classes

struct  candlewick::RenderContext
 The RenderContext class provides a rendering context for a graphical application. More...
 

Namespaces

namespace  candlewick
 
namespace  candlewick::rend
 

Functions

void candlewick::rend::bindMesh (SDL_GPURenderPass *pass, const Mesh &mesh)
 Bind a Mesh object.
 
void candlewick::rend::bindMeshView (SDL_GPURenderPass *pass, const MeshView &view)
 Bind a MeshView object.
 
void candlewick::rend::drawViews (SDL_GPURenderPass *pass, std::span< const MeshView > meshViews, Uint32 numInstances=1)
 Render a collection of MeshView. This collection must satisfy the invariant that they all have the same parent Mesh object, which allows batching draw calls like this without having to rebind the Mesh.
 
void candlewick::rend::draw (SDL_GPURenderPass *pass, const Mesh &mesh, Uint32 numInstances=1)
 
void candlewick::rend::drawView (SDL_GPURenderPass *pass, const MeshView &mesh, Uint32 numInstances=1)
 Draw a MeshView.
 
void candlewick::rend::bindVertexSamplers (SDL_GPURenderPass *pass, Uint32 first_slot, std::span< const SDL_GPUTextureSamplerBinding > bindings)
 Bind multiple fragment shader samplers.
 
void candlewick::rend::bindVertexSamplers (SDL_GPURenderPass *pass, Uint32 first_slot, std::initializer_list< SDL_GPUTextureSamplerBinding > sampler_bindings)
 Bind multiple fragment shader samplers. This overload exists to enable taking a brace-initialized array.
 
void candlewick::rend::bindFragmentSamplers (SDL_GPURenderPass *pass, Uint32 first_slot, std::span< const SDL_GPUTextureSamplerBinding > bindings)
 Bind multiple fragment shader samplers.
 
void candlewick::rend::bindFragmentSamplers (SDL_GPURenderPass *pass, Uint32 first_slot, std::initializer_list< SDL_GPUTextureSamplerBinding > sampler_bindings)
 Bind multiple fragment shader samplers. This overload exists to enable taking a brace-initialized array.