Donner SVG 0.8.0-pre
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::geode::GeodeGradientPipeline Class Reference

Caches a compiled render pipeline for the Slug gradient-fill shader plus its bind-group layout. More...

#include "donner/svg/renderer/geode/GeodePipeline.h"

Public Member Functions

 GeodeGradientPipeline (GeodeWgpuAdapterDevice &adapterDevice, gpu::TextureFormat colorFormat)
 Construct a gradient pipeline for the given device and color target format.
 GeodeGradientPipeline (const GeodeGradientPipeline &)=delete
GeodeGradientPipelineoperator= (const GeodeGradientPipeline &)=delete
 GeodeGradientPipeline (GeodeGradientPipeline &&) noexcept=default
 Move constructor.
GeodeGradientPipelineoperator= (GeodeGradientPipeline &&) noexcept=default
 Move assignment operator.
const gpu::RenderPipelinepipeline () const
 The compiled render pipeline.
const gpu::BindGroupLayoutbindGroupLayout () const
 The bind group layout used by the pipeline.
gpu::TextureFormat colorFormat () const
 Color format the pipeline was built for.

Detailed Description

Caches a compiled render pipeline for the Slug gradient-fill shader plus its bind-group layout.

Parallel to GeodePipeline but with a larger uniform buffer that carries linear-gradient parameters (pathFromGradient transform, start/end, spread mode, per-stop colors and offsets). The vertex layout, Band / curve storage bindings, and blend state are identical.

Kept as a sibling class instead of a branch inside GeodePipeline to keep the solid-fill pipeline's 128-byte uniform layout untouched, and so radial / sweep gradient pipelines can slot in alongside this one later without churning the solid-fill path.


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