From 009c55fcbae89623c3f2db69f09ab218be3b3f1b Mon Sep 17 00:00:00 2001 From: kd-11 Date: Mon, 24 Jun 2019 13:45:38 +0300 Subject: [PATCH] vk: Fix broken layout stream on first draw call --- llvm | 2 +- rpcs3/Emu/RSX/VK/VKGSRender.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/llvm b/llvm index 99b5284463..b860b5e8f4 160000 --- a/llvm +++ b/llvm @@ -1 +1 @@ -Subproject commit 99b5284463025849c59067e79a3c08899049757e +Subproject commit b860b5e8f4ee90d6eb567d83ce8ed1a3e71e496f diff --git a/rpcs3/Emu/RSX/VK/VKGSRender.cpp b/rpcs3/Emu/RSX/VK/VKGSRender.cpp index 0cedb91276..a4ff930332 100644 --- a/rpcs3/Emu/RSX/VK/VKGSRender.cpp +++ b/rpcs3/Emu/RSX/VK/VKGSRender.cpp @@ -1091,7 +1091,6 @@ void VKGSRender::emit_geometry(u32 sub_index) auto persistent_buffer = m_persistent_attribute_storage ? m_persistent_attribute_storage->value : null_buffer_view->value; auto volatile_buffer = m_volatile_attribute_storage ? m_volatile_attribute_storage->value : null_buffer_view->value; - auto layout_stream = m_vertex_layout_storage ? m_vertex_layout_storage->value : null_buffer_view->value; bool update_descriptors = false; if (sub_index == 0) @@ -1134,11 +1133,12 @@ void VKGSRender::emit_geometry(u32 sub_index) // Update vertex fetch parameters update_vertex_env(sub_index, upload_info); + verify(HERE), m_vertex_layout_storage; if (update_descriptors) { m_program->bind_uniform(persistent_buffer, VERTEX_BUFFERS_FIRST_BIND_SLOT, m_current_frame->descriptor_set); m_program->bind_uniform(volatile_buffer, VERTEX_BUFFERS_FIRST_BIND_SLOT + 1, m_current_frame->descriptor_set); - m_program->bind_uniform(layout_stream, VERTEX_BUFFERS_FIRST_BIND_SLOT + 2, m_current_frame->descriptor_set); + m_program->bind_uniform(m_vertex_layout_storage->value, VERTEX_BUFFERS_FIRST_BIND_SLOT + 2, m_current_frame->descriptor_set); } // Bind the new set of descriptors for use with this draw call