Stop identifying shader textures with handle and cbuf, use binding instead (#5266)
* Stop identifying shader textures with handle and cbuf, use binding instead * Remove now unused code * Consider image operations as having accurate type information too I don't know why that was not the case before * Fix missing unscale on InsertCoordNormalization, stop calling SetUsageFlagsForTextureQuery when not needed * Shader cache version bump * Change get texture methods to return descriptors created from ResourceManager state This is required to ensure that reserved textures and images will not be bound as a guest texture/image * Fix BindlessElimination.SetHandle inserting coords at the wrong place
This commit is contained in:
parent
3b46bb73f7
commit
1c7a90ef35
25 changed files with 656 additions and 659 deletions
|
@ -12,23 +12,16 @@ namespace Ryujinx.Graphics.Shader
|
|||
public readonly int CbufSlot;
|
||||
public readonly int HandleIndex;
|
||||
|
||||
public TextureUsageFlags Flags;
|
||||
public readonly TextureUsageFlags Flags;
|
||||
|
||||
public TextureDescriptor(int binding, SamplerType type, TextureFormat format, int cbufSlot, int handleIndex)
|
||||
public TextureDescriptor(int binding, SamplerType type, TextureFormat format, int cbufSlot, int handleIndex, TextureUsageFlags flags)
|
||||
{
|
||||
Binding = binding;
|
||||
Type = type;
|
||||
Format = format;
|
||||
CbufSlot = cbufSlot;
|
||||
HandleIndex = handleIndex;
|
||||
Flags = TextureUsageFlags.None;
|
||||
}
|
||||
|
||||
public TextureDescriptor SetFlag(TextureUsageFlags flag)
|
||||
{
|
||||
Flags |= flag;
|
||||
|
||||
return this;
|
||||
Flags = flags;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue