Merge pull request #114476 from blueskythlikesclouds/create-separate-graphics-queue-for-transfer
Create separate graphics queue instead of reusing the main queue when transfer queue family is unsupported.
This commit is contained in:
@@ -7029,16 +7029,15 @@ Error RenderingDevice::initialize(RenderingContextDriver *p_context, DisplayServ
|
||||
ERR_FAIL_COND_V(!main_queue, FAILED);
|
||||
|
||||
transfer_queue_family = driver->command_queue_family_get(RDD::COMMAND_QUEUE_FAMILY_TRANSFER_BIT);
|
||||
if (transfer_queue_family) {
|
||||
// Create the transfer queue.
|
||||
transfer_queue = driver->command_queue_create(transfer_queue_family);
|
||||
ERR_FAIL_COND_V(!transfer_queue, FAILED);
|
||||
} else {
|
||||
// Use main queue as the transfer queue.
|
||||
transfer_queue = main_queue;
|
||||
if (!transfer_queue_family) {
|
||||
// Use main queue family if transfer queue family is not supported.
|
||||
transfer_queue_family = main_queue_family;
|
||||
}
|
||||
|
||||
// Create the transfer queue.
|
||||
transfer_queue = driver->command_queue_create(transfer_queue_family);
|
||||
ERR_FAIL_COND_V(!transfer_queue, FAILED);
|
||||
|
||||
if (present_queue_family) {
|
||||
// Create the present queue.
|
||||
present_queue = driver->command_queue_create(present_queue_family);
|
||||
|
||||
Reference in New Issue
Block a user