diff options
author | sunshineinabox <aqemail@gmail.com> | 2024-06-26 05:21:44 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-26 09:21:44 -0300 |
commit | 1a0a351a152f837094699e78f51f8970e131bd1a (patch) | |
tree | 0eb83d8b5fc76ba3470b06876a3e970c754c5de2 /src/Ryujinx.Graphics.Vulkan/BufferManager.cs | |
parent | bd3335c143d2420875ff6ea0abd7487deb5a9ddc (diff) |
Resolve some Vulkan validation errors (#6915)1.1.1340
* Fix some validation errors
* Whitespace correction
* Resolve some runtime validation errors.
* Whitespace
* Properly fix usage realted validation error by setting Extended Usage image creation flag.
* Only if supported
* Remove checking extension for features that are core functionality of Vulkan 1.2
Diffstat (limited to 'src/Ryujinx.Graphics.Vulkan/BufferManager.cs')
-rw-r--r-- | src/Ryujinx.Graphics.Vulkan/BufferManager.cs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Ryujinx.Graphics.Vulkan/BufferManager.cs b/src/Ryujinx.Graphics.Vulkan/BufferManager.cs index e73cde83..1b6ac998 100644 --- a/src/Ryujinx.Graphics.Vulkan/BufferManager.cs +++ b/src/Ryujinx.Graphics.Vulkan/BufferManager.cs @@ -103,12 +103,19 @@ namespace Ryujinx.Graphics.Vulkan usage |= BufferUsageFlags.IndirectBufferBit; } + var externalMemoryBuffer = new ExternalMemoryBufferCreateInfo + { + SType = StructureType.ExternalMemoryBufferCreateInfo, + HandleTypes = ExternalMemoryHandleTypeFlags.HostAllocationBitExt, + }; + var bufferCreateInfo = new BufferCreateInfo { SType = StructureType.BufferCreateInfo, Size = (ulong)size, Usage = usage, SharingMode = SharingMode.Exclusive, + PNext = &externalMemoryBuffer, }; gd.Api.CreateBuffer(_device, in bufferCreateInfo, null, out var buffer).ThrowOnError(); |