mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-07-27 00:00:03 -06:00
Allow any shader SSBO constant buffer slot and offset (#2237)
* Allow any shader SSBO constant buffer slot and offset * Fix slot value passed to SetUsedStorageBuffer on fallback case * Shader cache version * Ensure that the storage buffer source constant buffer offset is word aligned * Fix FirstBinding on GetUniformBufferDescriptors
This commit is contained in:
@ -5,13 +5,27 @@ namespace Ryujinx.Graphics.Shader
|
||||
// New fields should be added to the end of the struct to keep disk shader cache compatibility.
|
||||
|
||||
public readonly int Binding;
|
||||
public readonly int Slot;
|
||||
public readonly byte Slot;
|
||||
public readonly byte SbCbSlot;
|
||||
public readonly ushort SbCbOffset;
|
||||
public BufferUsageFlags Flags;
|
||||
|
||||
public BufferDescriptor(int binding, int slot)
|
||||
{
|
||||
Binding = binding;
|
||||
Slot = slot;
|
||||
Slot = (byte)slot;
|
||||
SbCbSlot = 0;
|
||||
SbCbOffset = 0;
|
||||
|
||||
Flags = BufferUsageFlags.None;
|
||||
}
|
||||
|
||||
public BufferDescriptor(int binding, int slot, int sbCbSlot, int sbCbOffset)
|
||||
{
|
||||
Binding = binding;
|
||||
Slot = (byte)slot;
|
||||
SbCbSlot = (byte)sbCbSlot;
|
||||
SbCbOffset = (ushort)sbCbOffset;
|
||||
|
||||
Flags = BufferUsageFlags.None;
|
||||
}
|
||||
|
Reference in New Issue
Block a user