Donner SVG 0.8.0-pre
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
LightingBindings.h File Reference

Bindings shared by the SVG lighting programs and their hosts without linking the shader IR. More...

#include <cstdint>
#include <string_view>
Include dependency graph for LightingBindings.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  donner::gpu::shader::programs::LightingParams
 Host-shareable layout of the lighting parameter storage buffer. More...

Namespaces

namespace  donner
 Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css.

Enumerations

enum class  donner::gpu::shader::programs::LightingBinding : uint32_t {
  InputTexture = 0 ,
  OutputTexture = 1 ,
  Params = 2
}
 Resource bindings for diffuse and specular lighting. More...

Variables

constexpr std::string_view donner::gpu::shader::programs::kLightingEntryPoint = "cs_main"
 Compute entry point shared by diffuse and specular lighting.
constexpr uint32_t donner::gpu::shader::programs::kLightingWorkgroupSize = 8
 Square compute workgroup extent.
constexpr uint64_t donner::gpu::shader::programs::kLightingParamsSize = 144
 Byte size of the read-only parameter block.

Detailed Description

Bindings shared by the SVG lighting programs and their hosts without linking the shader IR.

Enumeration Type Documentation

◆ LightingBinding

enum class donner::gpu::shader::programs::LightingBinding : uint32_t
strong

Resource bindings for diffuse and specular lighting.

Enumerator
InputTexture 

Sampled height-map source.

OutputTexture 

Float storage destination.

Params 

Lighting model, light source, transform, and sample bounds.