ryujinx/src/Ryujinx.Graphics.GAL/Multithreading/Commands
riperiperi 31ed061bea
Vulkan: Improve texture barrier usage, timing and batching (#6240)
* WIP barrier batch

* Add store op to image usage barrier

* Dispose the barrier batch

* Fix encoding?

* Handle read and write on the load op barrier.

Load op consumes read accesses but does not add one, as the only other operation that can read is another load.

* Simplify null check

* Insert barriers on program change in case stale bindings are reintroduced

* Not sure how I messed this one up

* Improve location of bindings barrier update

This is also important for emergency deferred clear

* Update src/Ryujinx.Graphics.Vulkan/BarrierBatch.cs

Co-authored-by: Mary Guillemard <thog@protonmail.com>

---------

Co-authored-by: Mary Guillemard <thog@protonmail.com>
2024-02-17 00:21:37 -03:00
..
Buffer editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
CounterEvent editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Program editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Renderer Implement support for multi-range buffers using Vulkan sparse mappings (#5427) 2023-12-04 20:30:19 +01:00
Sampler editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Texture editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Window editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BarrierCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BeginTransformFeedbackCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
ClearBufferCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
ClearRenderTargetColorCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
ClearRenderTargetDepthStencilCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
CommandBufferBarrierCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
CopyBufferCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DispatchComputeCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DrawCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DrawIndexedCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DrawIndexedIndirectCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DrawIndexedIndirectCountCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DrawIndirectCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DrawIndirectCountCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DrawTextureCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
EndHostConditionalRenderingCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
EndTransformFeedbackCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
IGALCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetAlphaTestCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetBlendStateAdvancedCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
SetBlendStateCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetDepthBiasCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetDepthClampCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetDepthModeCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetDepthTestCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetFaceCullingCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetFrontFaceCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetImageCommand.cs Vulkan: Improve texture barrier usage, timing and batching (#6240) 2024-02-17 00:21:37 -03:00
SetIndexBufferCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetLineParametersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetLogicOpStateCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetMultisampleStateCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
SetPatchParametersCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
SetPointParametersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetPolygonModeCommand.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
SetPrimitiveRestartCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetPrimitiveTopologyCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetProgramCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetRasterizerDiscardCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetRenderTargetColorMasksCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetRenderTargetsCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetScissorsCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetStencilTestCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetStorageBuffersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetTextureAndSamplerCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetTransformFeedbackBuffersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetUniformBuffersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetUserClipDistanceCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetVertexAttribsCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetVertexBuffersCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
SetViewportsCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
TextureBarrierCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
TextureBarrierTiledCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
TryHostConditionalRenderingCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
TryHostConditionalRenderingFlushCommand.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00