Table of Contents

Class Fx2EffectDesc

Namespace
ShadowDusk.Core
Assembly
ShadowDusk.Core.dll

The input IR for Fx2EffectWriter — everything needed to author a D3D9 Effects Framework binary ("fx_2_0", token 0xFEFF0901) for FNA. This is deliberately a separate shape from ShaderIR: the fx_2_0 container carries typed effect parameters with default values and sampler-state blocks that MGFX has no analog for. Field encodings follow docs/fx2-binary-format.md (MojoShader's parser is the spec).

public sealed record Fx2EffectDesc : IEquatable<Fx2EffectDesc>
Inheritance
Fx2EffectDesc
Implements
Inherited Members

Properties

Parameters

The effect parameters, in emission order. Per FNA's loader, every texture parameter MUST precede any sampler parameter that references it, and for every CTAB constant in every shader there MUST be a parameter with the identical name.

public required IReadOnlyList<Fx2Parameter> Parameters { get; init; }

Property Value

IReadOnlyList<Fx2Parameter>

Shaders

The compiled SM1–3 shader blobs; VertexShaderIndex / PixelShaderIndex index into this list.

public required IReadOnlyList<Fx2Shader> Shaders { get; init; }

Property Value

IReadOnlyList<Fx2Shader>

Techniques

The techniques, in source order. MojoShader requires at least one.

public required IReadOnlyList<Fx2Technique> Techniques { get; init; }

Property Value

IReadOnlyList<Fx2Technique>