Vixen
02b45cc4
csharp
public sealed class PermutationKey<T>

A parameter that selects which variant of a shader gets compiled.

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

Remarks

A different type from ParameterKey`1 rather than a flag on it, because the two are consumed by different machinery and confusing them is expensive in one direction: setting a permutation key at draw time does nothing until something recompiles, and setting a value key per variant multiplies the cache for no reason. Raven reports which is which — a [Permutation] field is not a uniform — so the generator never has to guess.

Fields and properties (4)

  • public T DefaultValue

    The value the shader declared, used when a material does not override it.

  • public override bool HasDeclaredDefault
  • public override bool IsPermutation

    Whether this key selects a shader variant rather than carrying a value into one.

  • public override ReadOnlySpan<byte> DefaultBytes

Used by (56, showing 40)

  • AutoExposureKeysVixen.Rendering
  • BindlessFrameTestsVixen.Rendering.Tests
  • BloomKeysVixen.Rendering
  • BloomTestsVixen.Rendering.PostFx.Tests
  • ClusterSoftwareRasterKeysVixen.Rendering
  • CompositorBuilderVixen.Rendering
  • CullingKeysVixen.Rendering
  • DepthOfFieldKeysVixen.Rendering
  • DistanceFieldAoKeysVixen.Rendering.PostFx
  • DrawArgumentsKeysVixen.Rendering
  • DrawCompactionTestsVixen.Rendering.Tests
  • EffectKeyVixen.Shaders
  • EffectSystemTestsVixen.Shaders.Tests
  • FogKeysVixen.Rendering.PostFx
  • FoliageCullKeysVixen.Rendering.Terrain
  • ForwardLightingRenderFeatureVixen.Rendering
  • ForwardPlusKeysVixen.Rendering
  • FxaaKeysVixen.Rendering.PostFx
  • GeneratedBindingsTestsVixen.Shaders.Tests
  • GpuDrivenCompositorTestsVixen.Rendering.Tests
  • GrassKeysVixen.Rendering.Terrain
  • GrassScatterKeysVixen.Rendering.Terrain
  • IPermutationSubFeatureVixen.Rendering
  • ImpostorFinishKeysVixen.Rendering
  • ImpostorKeysVixen.Rendering.Terrain
  • InstancingRenderFeatureVixen.Rendering
  • IrradianceRepairKeysVixen.Rendering
  • LensFlareKeysVixen.Rendering
  • LightingKeysVixen.Shaders.Tests
  • LocalExposureKeysVixen.Rendering
  • MaterialKeysVixen.Rendering
  • MaterialRenderFeatureVixen.Rendering
  • MeshRenderFeatureTestsVixen.Rendering.Tests
  • MotionBlurKeysVixen.Rendering
  • MotionVectorsKeysVixen.Rendering
  • ObjectRecordTestsVixen.Rendering.Tests
  • OutlineKeysVixen.Rendering.PostFx
  • ParameterCollectionVixen.Shaders
  • ParameterCollectionTestsVixen.Shaders.Tests
  • ParameterKeyTestsVixen.Shaders.Tests