using Ghost.Core; namespace Ghost.Graphics.D3D12; internal readonly struct RTVDesc : IIdentifierType; internal readonly struct DSVDesc : IIdentifierType; internal readonly struct CbvSrvUavDesc : IIdentifierType; internal readonly struct SamplerDesc : IIdentifierType; internal struct ResourceViewGroup { public Identifier rtv; public Identifier dsv; public Identifier srv; public Identifier cbv; public Identifier uav; public Identifier sampler; public static ResourceViewGroup Invalid => new() { rtv = Identifier.Invalid, dsv = Identifier.Invalid, srv = Identifier.Invalid, cbv = Identifier.Invalid, uav = Identifier.Invalid, sampler = Identifier.Invalid, }; }