Vixen
02b45cc4
csharp
public record class EffectBindingData

One resource the shader binds, with everything a set layout needs.

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

Remarks

One record for two jobs: Bindings, which answers "where does source go", and the DescriptorSetLayoutDescription the device wants. They were separate in the compiler's reflection and separating them here too would leave two lists that have to agree and no reason they would.

Fields and properties (7)

  • public string Name

    The shader's own name for it.

  • public DescriptorSetSlot Set

    Which of the four conventional sets holds it.

  • public uint Binding

    Its index within that set.

  • public DescriptorKind Kind

    What it binds.

  • public ShaderStage Stages

    Which stages reference it.

  • public int Count

    Array length; 1 for a single resource, 0 for unbounded.

  • public int Size

    How many bytes a block binding is; 0 for a resource. Per binding rather than per effect because a shader that marks its sets has a block in each of them.

Methods (1)

  • public EffectBindingData(string Name = "", DescriptorSetSlot Set = PerMaterial, uint Binding = 0, DescriptorKind Kind = UniformBuffer, ShaderStage Stages = None, int Count = 1, int Size = 0)

    One resource the shader binds, with everything a set layout needs.

Used by (14)

  • BindlessSetLayoutTestsVixen.Shaders.Tests
  • ClusteredShadingDeviceTestsVixen.Graphics.Golden.Tests
  • DistanceFieldDeviceTestsVixen.Graphics.Golden.Tests
  • EffectCacheTestsVixen.Shaders.Tests
  • EffectDataVixen.Shaders
  • EffectLoaderVixen.Shaders
  • ForwardFrameTestsVixen.Rendering.Tests
  • IrradianceShadingDeviceTestsVixen.Graphics.Golden.Tests
  • ScreenProbeUpsampleCompileTestsVixen.Graphics.Golden.Tests
  • TypeRegistrationVixen.Shaders
  • Vixen_Shaders_EffectBindingDataSerializerVixen.Shaders
  • Vixen_Shaders_EffectDataSerializerVixen.Shaders
  • EffectCompilerTestsVixen.ShaderCompiler.Tests
  • EffectTranslatorVixen.ShaderCompiler