Vixen
02b45cc4
csharp
public sealed class ResourceBinding

Where one of a node's graph resources goes in the descriptor set it binds.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The binding index comes from the shader, not from the compositor: Raven decides what binding = 3 means. Name is how to say that without writing the number down — it resolves against Bindings, the plan the reflection always had and the runtime now carries. Binding remains for a provider that reports no plan.

Kind decides where Resource is looked up. A texture kind resolves against what the node declared as a texture, a buffer kind against its buffers, and Sampler against neither — a sampler is not a frame resource, it is device state that outlives every graph.

Fields and properties (9)

  • public string? Name

    The shader's own name for it, resolved against the effect's binding plan.

  • public uint Binding

    Its index within the set, when Name is not used or not found.

  • public DescriptorKind Kind

    What it binds, which is also what decides how Resource resolves.

  • public string Resource

    The graph resource's name, for every kind but a bare sampler.

  • public SamplerHandle Sampler

    The sampler, for Sampler.

  • public TextureViewHandle View

    A view of a texture the host owns, for a binding that is not a graph resource.

  • public SamplerDescription? Sampled

    The sampler to use, described rather than handed over.

  • public long Offset

    Where in the buffer the binding starts.

  • public long Size

    How much of the buffer, or zero for the rest of it.

Methods (2)

  • public static bool IsTexture(DescriptorKind kind)

    Whether a kind resolves against a texture.

  • public static bool IsBuffer(DescriptorKind kind)

    Whether a kind resolves against a buffer.

Used by (33)

  • AmbientCombineRendererVixen.Rendering.PostFx
  • AmbientOcclusionRendererVixen.Rendering.PostFx
  • AutoExposureRendererVixen.Rendering.PostFx
  • BloomRendererVixen.Rendering.PostFx
  • BloomTestsVixen.Rendering.PostFx.Tests
  • BoundBindingsVixen.Rendering
  • BufferTransferDeviceTestsVixen.Graphics.Golden.Tests
  • ClusterCullingDeviceTestsVixen.Graphics.Golden.Tests
  • ClusteredLightingTestsVixen.Rendering.Tests
  • ClusteredShadingDeviceTestsVixen.Graphics.Golden.Tests
  • CompositorAssetTestsVixen.Rendering.Tests
  • CompositorBuilderVixen.Rendering
  • CompositorImageTestsVixen.Graphics.Golden.Tests
  • DepthOfFieldRendererVixen.Rendering.PostFx
  • DescriptorBindingTestsVixen.Rendering.Tests
  • DescriptorBindingsVixen.Rendering
  • DistanceFieldAoRendererVixen.Rendering.PostFx
  • FogRendererVixen.Rendering.PostFx
  • FxaaRendererVixen.Rendering.PostFx
  • IndirectDiffuseRendererVixen.Rendering.PostFx
  • LensFlareRendererVixen.Rendering.PostFx
  • LocalExposureRendererVixen.Rendering.PostFx
  • MotionBlurRendererVixen.Rendering.PostFx
  • OutlineRendererVixen.Rendering.PostFx
  • PostEffectRendererVixen.Rendering.PostFx
  • PostEffectTestsVixen.Rendering.PostFx.Tests
  • PostProcessTestsVixen.Rendering.Tests
  • ScreenProbeUpsampleRendererVixen.Rendering.PostFx
  • SharpenRendererVixen.Rendering.PostFx
  • SkyRendererVixen.Rendering.PostFx
  • TemporalAntialiasingRendererVixen.Rendering.PostFx
  • TonemapRendererVixen.Rendering.PostFx
  • VignetteRendererVixen.Rendering.PostFx