Skip to content

Commit 72eff60

Browse files
authored
fix: vulkan GPU OSR pipeline selection error (#165)
1 parent adb42cf commit 72eff60

2 files changed

Lines changed: 8 additions & 2 deletions

File tree

crates/gdcef/src/accelerated_osr/linux/vulkan.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ impl VulkanTextureImporter {
145145

146146
// Try to find a separate queue for our copy operations
147147
// This avoids synchronization issues with Godot's main graphics queue
148-
let (queue_family_index, queue_index, uses_separate_queue) =
148+
let (mut queue_family_index, mut queue_index, mut uses_separate_queue) =
149149
Self::find_copy_queue(&lib, physical_device, fns);
150150

151151
let mut queue: vk::Queue = unsafe { std::mem::zeroed() };
@@ -161,6 +161,9 @@ impl VulkanTextureImporter {
161161
unsafe {
162162
(fns.get_device_queue)(device, 0, 0, &mut queue);
163163
}
164+
queue_family_index = 0;
165+
queue_index = 0;
166+
uses_separate_queue = false;
164167
}
165168

166169
if queue == vk::Queue::null() {

crates/gdcef/src/accelerated_osr/windows/vulkan.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ impl VulkanTextureImporter {
143143

144144
// Try to find a separate queue for our copy operations
145145
// This avoids synchronization issues with Godot's main graphics queue
146-
let (queue_family_index, queue_index, uses_separate_queue) =
146+
let (mut queue_family_index, mut queue_index, mut uses_separate_queue) =
147147
Self::find_copy_queue(&lib, physical_device, fns);
148148

149149
let mut queue: vk::Queue = unsafe { std::mem::zeroed() };
@@ -159,6 +159,9 @@ impl VulkanTextureImporter {
159159
unsafe {
160160
(fns.get_device_queue)(device, 0, 0, &mut queue);
161161
}
162+
queue_family_index = 0;
163+
queue_index = 0;
164+
uses_separate_queue = false;
162165
}
163166

164167
if queue == vk::Queue::null() {

0 commit comments

Comments
 (0)