Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::gpu::shader::programs::SlugGradientParams Struct Reference

Host uniform layout for dedicated Slug gradients. More...

#include "donner/gpu/shader/programs/SlugGradient.h"

Public Attributes

float mvp [16]
 Column-major transform from path to clip space.
float viewport [2]
 Render-target extent in pixels.
uint32_t fillRule
 Zero for nonzero winding, one for even-odd.
uint32_t spreadMode
 Zero clamps, one reflects, two repeats.
float row0 [4]
 First affine row of gradientFromPath.
float row1 [4]
 Second affine row of gradientFromPath.
float startGrad [2]
 Linear-gradient start in gradient space.
float endGrad [2]
 Linear-gradient end in gradient space.
float radialCenter [2]
 Outer-circle center in gradient space.
float radialFocal [2]
 Focal-circle center in gradient space.
float radialRadius
 Outer-circle radius.
float radialFocalRadius
 Focal-circle radius.
uint32_t gradientKind
 Zero selects linear, one selects radial.
uint32_t stopCount
 Admitted stop count, at most sixteen.
float stopColors [kSlugGradientMaxStops *4]
 Straight-alpha RGBA stop colors.
float stopOffsets [4 *4]
 Stop offsets packed four per vector.
uint32_t hasClipPolygon
 One enables the convex clip half-planes.
uint32_t hasClipMask
 One intersects the path-clip texture.
uint32_t antialias
 One enables analytic coverage; zero uses binary coverage.
uint32_t _clipPad2
 Reserved layout padding.
float gridYBase
 Horizontal-band grid origin.
float gridHStride
 Horizontal-band grid spacing.
uint32_t gridHBandCount
 Horizontal-band grid cell count.
float gridXBase
 Vertical-band grid origin.
float gridVStride
 Vertical-band grid spacing.
uint32_t gridVBandCount
 Vertical-band grid cell count.
uint32_t _gridPad0
 Reserved layout padding.
uint32_t _gridPad1
 Reserved layout padding.
float clipPolygonPlanes [16]
 Four inward-facing clip half-planes in viewport pixels.
uint32_t boundingVertexCount
 Convex bounding-polygon vertex count, at most eight.
uint32_t _boundingPad0
 Reserved layout padding.
uint32_t _boundingPad1
 Reserved layout padding.
uint32_t _boundingPad2
 Reserved layout padding.
float boundingVertices [4 *4]
 Four packed pairs of bounding vertices.
float pathFromPixel [4]
 Inverse linear transform, two columns, pixel to path.
float pixelOrigin [2]
 Integer pixel the mapping is taken relative to.
float pathOffset [2]
 Path position of pixelOrigin's fractional remainder.

Detailed Description

Host uniform layout for dedicated Slug gradients.

Member Data Documentation

◆ _boundingPad0

uint32_t donner::gpu::shader::programs::SlugGradientParams::_boundingPad0

Reserved layout padding.

◆ _boundingPad1

uint32_t donner::gpu::shader::programs::SlugGradientParams::_boundingPad1

Reserved layout padding.

◆ _boundingPad2

uint32_t donner::gpu::shader::programs::SlugGradientParams::_boundingPad2

Reserved layout padding.

◆ _clipPad2

uint32_t donner::gpu::shader::programs::SlugGradientParams::_clipPad2

Reserved layout padding.

◆ _gridPad0

uint32_t donner::gpu::shader::programs::SlugGradientParams::_gridPad0

Reserved layout padding.

◆ _gridPad1

uint32_t donner::gpu::shader::programs::SlugGradientParams::_gridPad1

Reserved layout padding.

◆ antialias

uint32_t donner::gpu::shader::programs::SlugGradientParams::antialias

One enables analytic coverage; zero uses binary coverage.

◆ boundingVertexCount

uint32_t donner::gpu::shader::programs::SlugGradientParams::boundingVertexCount

Convex bounding-polygon vertex count, at most eight.

◆ boundingVertices

float donner::gpu::shader::programs::SlugGradientParams::boundingVertices[4 *4]

Four packed pairs of bounding vertices.

◆ clipPolygonPlanes

float donner::gpu::shader::programs::SlugGradientParams::clipPolygonPlanes[16]

Four inward-facing clip half-planes in viewport pixels.

◆ endGrad

float donner::gpu::shader::programs::SlugGradientParams::endGrad[2]

Linear-gradient end in gradient space.

◆ fillRule

uint32_t donner::gpu::shader::programs::SlugGradientParams::fillRule

Zero for nonzero winding, one for even-odd.

◆ gradientKind

uint32_t donner::gpu::shader::programs::SlugGradientParams::gradientKind

Zero selects linear, one selects radial.

◆ gridHBandCount

uint32_t donner::gpu::shader::programs::SlugGradientParams::gridHBandCount

Horizontal-band grid cell count.

◆ gridHStride

float donner::gpu::shader::programs::SlugGradientParams::gridHStride

Horizontal-band grid spacing.

◆ gridVBandCount

uint32_t donner::gpu::shader::programs::SlugGradientParams::gridVBandCount

Vertical-band grid cell count.

◆ gridVStride

float donner::gpu::shader::programs::SlugGradientParams::gridVStride

Vertical-band grid spacing.

◆ gridXBase

float donner::gpu::shader::programs::SlugGradientParams::gridXBase

Vertical-band grid origin.

◆ gridYBase

float donner::gpu::shader::programs::SlugGradientParams::gridYBase

Horizontal-band grid origin.

◆ hasClipMask

uint32_t donner::gpu::shader::programs::SlugGradientParams::hasClipMask

One intersects the path-clip texture.

◆ hasClipPolygon

uint32_t donner::gpu::shader::programs::SlugGradientParams::hasClipPolygon

One enables the convex clip half-planes.

◆ mvp

float donner::gpu::shader::programs::SlugGradientParams::mvp[16]

Column-major transform from path to clip space.

◆ pathFromPixel

float donner::gpu::shader::programs::SlugGradientParams::pathFromPixel[4]

Inverse linear transform, two columns, pixel to path.

◆ pathOffset

float donner::gpu::shader::programs::SlugGradientParams::pathOffset[2]

Path position of pixelOrigin's fractional remainder.

◆ pixelOrigin

float donner::gpu::shader::programs::SlugGradientParams::pixelOrigin[2]

Integer pixel the mapping is taken relative to.

◆ radialCenter

float donner::gpu::shader::programs::SlugGradientParams::radialCenter[2]

Outer-circle center in gradient space.

◆ radialFocal

float donner::gpu::shader::programs::SlugGradientParams::radialFocal[2]

Focal-circle center in gradient space.

◆ radialFocalRadius

float donner::gpu::shader::programs::SlugGradientParams::radialFocalRadius

Focal-circle radius.

◆ radialRadius

float donner::gpu::shader::programs::SlugGradientParams::radialRadius

Outer-circle radius.

◆ row0

float donner::gpu::shader::programs::SlugGradientParams::row0[4]

First affine row of gradientFromPath.

◆ row1

float donner::gpu::shader::programs::SlugGradientParams::row1[4]

Second affine row of gradientFromPath.

◆ spreadMode

uint32_t donner::gpu::shader::programs::SlugGradientParams::spreadMode

Zero clamps, one reflects, two repeats.

◆ startGrad

float donner::gpu::shader::programs::SlugGradientParams::startGrad[2]

Linear-gradient start in gradient space.

◆ stopColors

float donner::gpu::shader::programs::SlugGradientParams::stopColors[kSlugGradientMaxStops *4]

Straight-alpha RGBA stop colors.

◆ stopCount

uint32_t donner::gpu::shader::programs::SlugGradientParams::stopCount

Admitted stop count, at most sixteen.

◆ stopOffsets

float donner::gpu::shader::programs::SlugGradientParams::stopOffsets[4 *4]

Stop offsets packed four per vector.

◆ viewport

float donner::gpu::shader::programs::SlugGradientParams::viewport[2]

Render-target extent in pixels.


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