Ryujinx/src/Ryujinx.Graphics.Vulkan
extherian 5fccfb76b9
Fix divide by zero when recovering from missed draw (Vulkan), authored by EmulationEnjoyer (#235)
Adds the fix for the crash in the opening cutscene of Baldo: The Sacred
Owls when using Vulkan, from ryujinx-mirror. The original discussion
about the fix can be found
[here.](https://github.com/ryujinx-mirror/ryujinx/pull/52)

It's up to you if you want to merge this, it's one of the very few
improvements that ryujinx-mirror got that hasn't made it into your fork
yet. My opinion is that without a graphics expert on board, we can't
know the real cause of this divide-by-zero issue and will have to make
do with this patch to fix it. And I think we will have to do this many
times in the future for other games that suffer crashes at the moment as
well, at least going by current discussions in the #development section
of the discord.

I did not come up with this fix, all credit goes to
[EmulationEnjoyer](https://github.com/EmulationEnjoyer) for putting
Ryujinx through a debugger and discovering the cause of the crash.
2024-11-13 20:36:59 -06:00
..
Effects Change image format view handling to allow view incompatible formats (#7311) 2024-09-17 15:52:30 -03:00
MoltenVK misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
Queries misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
Shaders Vulkan: Device Local and higher invocation count for buffer conversions (#5623) 2023-09-02 17:58:15 -03:00
Auto.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
AutoFlushCounter.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BackgroundResources.cs Use draw clear on Adreno, instead of vkCmdClearAttachments (#7013) 2024-07-10 17:52:45 -03:00
BarrierBatch.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
BitMap.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BitMapStruct.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BufferAllocationType.cs Implement support for multi-range buffers using Vulkan sparse mappings (#5427) 2023-12-04 20:30:19 +01:00
BufferHolder.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
BufferManager.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
BufferMirrorRangeList.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BufferState.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
BufferUsageBitmap.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
CacheByRange.cs [Ryujinx.Graphics.Vulkan] Address dotnet-format issues (#5378) 2023-07-01 12:31:42 +02:00
CommandBufferPool.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
CommandBufferScoped.cs Remove CommandBufferScoped Dependencies (#6958) 2024-07-16 17:01:06 -03:00
Constants.cs Vulkan: Use push descriptors for uniform bindings when possible (#6154) 2024-02-16 21:41:30 -03:00
DescriptorSetCollection.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
DescriptorSetManager.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
DescriptorSetTemplate.cs Add support for bindless textures from shader input (vertex buffer) on Vulkan (#6577) 2024-04-22 15:05:55 -03:00
DescriptorSetTemplateUpdater.cs Vulkan: Use push descriptors for uniform bindings when possible (#6154) 2024-02-16 21:41:30 -03:00
DescriptorSetUpdater.cs Change image format view handling to allow view incompatible formats (#7311) 2024-09-17 15:52:30 -03:00
DisposableBuffer.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableBufferView.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableFramebuffer.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableImage.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableImageView.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableMemory.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposablePipeline.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableRenderPass.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
DisposableSampler.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
EnumConversion.cs GPU: Migrate buffers on GPU project, pre-emptively flush device local mappings (#6794) 2024-05-19 16:53:37 -03:00
FeedbackLoopAspects.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
FenceHelper.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
FenceHolder.cs Disallow concurrent fence waits on Adreno (#7001) 2024-07-07 19:33:28 -03:00
FormatCapabilities.cs Implement X8Z24 texture format (#6315) 2024-02-15 19:06:26 -03:00
FormatConverter.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
FormatTable.cs Implement X8Z24 texture format (#6315) 2024-02-15 19:06:26 -03:00
FramebufferParams.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
HardwareCapabilities.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
HashTableSlim.cs Vulkan: Add Render Pass / Framebuffer Cache (#6182) 2024-01-31 23:49:50 +01:00
HelperShader.cs Change image format view handling to allow view incompatible formats (#7311) 2024-09-17 15:52:30 -03:00
HostMemoryAllocator.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
IdList.cs [Ryujinx.Graphics.Vulkan] Address dotnet-format issues (#5378) 2023-07-01 12:31:42 +02:00
ImageArray.cs Change image format view handling to allow view incompatible formats (#7311) 2024-09-17 15:52:30 -03:00
IndexBufferPattern.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
IndexBufferState.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
MemoryAllocation.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
MemoryAllocator.cs CPU: Add low-power PPTC load mode. 2024-10-14 21:48:21 -05:00
MemoryAllocatorBlockList.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
MultiFenceHolder.cs Disallow concurrent fence waits on Adreno (#7001) 2024-07-07 19:33:28 -03:00
NativeArray.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
PersistentFlushBuffer.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
PipelineBase.cs Fix quads draws after DrawTexture on Vulkan (#7336) 2024-09-22 19:36:53 -03:00
PipelineConverter.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
PipelineDynamicState.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
PipelineFull.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
PipelineHelperShader.cs Vulkan: Add Render Pass / Framebuffer Cache (#6182) 2024-01-31 23:49:50 +01:00
PipelineLayoutCache.cs [Ryujinx.Graphics.Vulkan] Address dotnet-format issues (#5378) 2023-07-01 12:31:42 +02:00
PipelineLayoutCacheEntry.cs Vulkan separate descriptor set fixes (#6895) 2024-06-02 22:40:28 -03:00
PipelineLayoutFactory.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
PipelineState.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
PipelineUid.cs GPU: Remove unused dynamic state and pipeline settings (#6796) 2024-06-02 22:32:10 -03:00
RenderPassCacheKey.cs Vulkan: Add Render Pass / Framebuffer Cache (#6182) 2024-01-31 23:49:50 +01:00
RenderPassHolder.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
ResourceArray.cs Fix NRE when using buffer image array (#7159) 2024-08-21 00:49:17 +01:00
ResourceBindingSegment.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
ResourceLayoutBuilder.cs Vulkan: Defer guest barriers, and improve image barrier timings (#7012) 2024-07-17 20:21:32 -03:00
Ryujinx.Graphics.Vulkan.csproj Add area sampling scaler to allow for super-sampled anti-aliasing. (#7304) 2024-09-17 15:30:50 -03:00
SamplerHolder.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
Shader.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
ShaderCollection.cs Vulkan: Defer guest barriers, and improve image barrier timings (#7012) 2024-07-17 20:21:32 -03:00
SpecInfo.cs [Ryujinx.Graphics.Vulkan] Address dotnet-format issues (#5378) 2023-07-01 12:31:42 +02:00
StagingBuffer.cs Vulkan: Use staging buffer for temporary constants (#6168) 2024-01-25 19:29:53 +01:00
SyncManager.cs [Ryujinx.Graphics.Vulkan] Address dotnet-format issues (#5378) 2023-07-01 12:31:42 +02:00
TextureArray.cs Fix NRE when using buffer image array (#7159) 2024-08-21 00:49:17 +01:00
TextureBuffer.cs Replace passing by IMemoryOwner<byte> with passing by concrete MemoryOwner<byte> (#7171) 2024-09-18 23:00:54 -03:00
TextureCopy.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
TextureStorage.cs Vulkan: Feedback loop detection and barriers (#7226) 2024-09-01 21:28:16 -03:00
TextureView.cs Replace passing by IMemoryOwner<byte> with passing by concrete MemoryOwner<byte> (#7171) 2024-09-18 23:00:54 -03:00
Vendor.cs Vulkan: Update Silk.NET to 2.21 (#7266) 2024-09-01 17:33:11 -03:00
VertexBufferState.cs Fix divide by zero when recovering from missed draw (Vulkan), authored by EmulationEnjoyer (#235) 2024-11-13 20:36:59 -06:00
VertexBufferUpdater.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
VulkanConfiguration.cs Vulkan: Use push descriptors for uniform bindings when possible (#6154) 2024-02-16 21:41:30 -03:00
VulkanDebugMessenger.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
VulkanException.cs Allow skipping draws with broken pipeline variants on Vulkan (#5807) 2024-01-26 13:58:57 -03:00
VulkanInitialization.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
VulkanInstance.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
VulkanPhysicalDevice.cs misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups. 2024-10-26 08:46:50 -05:00
VulkanRenderer.cs TESTERS WANTED: RyuLDN implementation (#65) 2024-11-11 16:06:50 -06:00
Window.cs Add area sampling scaler to allow for super-sampled anti-aliasing. (#7304) 2024-09-17 15:30:50 -03:00
WindowBase.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00