public readonly ref struct BarrierGroupEverything that changes state at one point in a command list.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Submitted as a group rather than one at a time, and that is the whole point: a driver given ten barriers together inserts one pipeline stall, and given them one at a time inserts ten. Batching is not an optimisation the backend can do for us either — by the time it sees the second barrier the first has already been recorded.
Vixen.Graphics.RenderGraph builds these automatically for the code that wants that; hand-written barriers stay available for the hot paths that do not.
Fields and properties (3)
public ReadOnlySpan<BufferBarrier> BuffersThe buffers changing state.
public ReadOnlySpan<TextureBarrier> TexturesThe textures changing state.
public bool IsEmptyWhether the group would do anything.
Methods (1)
public BarrierGroup(ReadOnlySpan<BufferBarrier> buffers, ReadOnlySpan<TextureBarrier> textures)Everything that changes state at one point in a command list.
Used by (9)
- GlCommandListVixen.Graphics.OpenGL
- ICommandListVixen.Graphics
- NullCommandListVixen.Graphics.Null
- OrderProbeVixen.Graphics.RenderGraph.Tests
- TrackingCommandListVixen.Graphics.RenderGraph.Tests
- VideoRenderTargetVixen.Video.Rendering
- VideoTextureVixen.Video
- VulkanCommandListVixen.Graphics.Vulkan
- WebGpuCommandListVixen.Graphics.WebGPU