Prechádzať zdrojové kódy

Fix Vulkan multithreaded compute list and GPU particle processing

(cherry picked from commit 5d18e2ee001f1cecd544b23c29f96daae638adc8)
bitsawer 2 rokov pred
rodič
commit
7d76bcbac6

+ 2 - 0
drivers/vulkan/rendering_device_vulkan.cpp

@@ -7731,6 +7731,8 @@ void RenderingDeviceVulkan::draw_list_end(BitField<BarrierMask> p_post_barrier)
 /***********************/
 
 RenderingDevice::ComputeListID RenderingDeviceVulkan::compute_list_begin(bool p_allow_draw_overlap) {
+	_THREAD_SAFE_METHOD_
+
 	ERR_FAIL_COND_V_MSG(!p_allow_draw_overlap && draw_list != nullptr, INVALID_ID, "Only one draw list can be active at the same time.");
 	ERR_FAIL_COND_V_MSG(compute_list != nullptr, INVALID_ID, "Only one draw/compute list can be active at the same time.");