vulkan: always enable GL_EXT_scalar_block_layout

This makes std430 (which we use everywhere already) fully match C
layout.
Extension was made mandatory in 1.2.
This commit is contained in:
Lynne 2024-09-29 07:31:25 +02:00
parent 37d5cb84e8
commit d80f9f55c8
No known key found for this signature in database
GPG Key ID: A2FEA5F03F034464
2 changed files with 2 additions and 0 deletions

View File

@ -1501,6 +1501,7 @@ static int vulkan_device_create_internal(AVHWDeviceContext *ctx,
p->device_features_1_1.uniformAndStorageBuffer16BitAccess = dev_features_1_1.uniformAndStorageBuffer16BitAccess; p->device_features_1_1.uniformAndStorageBuffer16BitAccess = dev_features_1_1.uniformAndStorageBuffer16BitAccess;
p->device_features_1_2.timelineSemaphore = 1; p->device_features_1_2.timelineSemaphore = 1;
p->device_features_1_2.scalarBlockLayout = dev_features_1_2.scalarBlockLayout;
p->device_features_1_2.bufferDeviceAddress = dev_features_1_2.bufferDeviceAddress; p->device_features_1_2.bufferDeviceAddress = dev_features_1_2.bufferDeviceAddress;
p->device_features_1_2.hostQueryReset = dev_features_1_2.hostQueryReset; p->device_features_1_2.hostQueryReset = dev_features_1_2.hostQueryReset;
p->device_features_1_2.storagePushConstant8 = dev_features_1_2.storagePushConstant8; p->device_features_1_2.storagePushConstant8 = dev_features_1_2.storagePushConstant8;

View File

@ -1478,6 +1478,7 @@ int ff_vk_shader_init(FFVulkanContext *s, FFVulkanShader *shd, const char *name,
/* Common utilities */ /* Common utilities */
GLSLC(0, #define IS_WITHIN(v1, v2) ((v1.x < v2.x) && (v1.y < v2.y)) ); GLSLC(0, #define IS_WITHIN(v1, v2) ((v1.x < v2.x) && (v1.y < v2.y)) );
GLSLC(0, ); GLSLC(0, );
GLSLC(0, #extension GL_EXT_scalar_block_layout : require );
GLSLC(0, #extension GL_EXT_buffer_reference : require ); GLSLC(0, #extension GL_EXT_buffer_reference : require );
GLSLC(0, #extension GL_EXT_buffer_reference2 : require ); GLSLC(0, #extension GL_EXT_buffer_reference2 : require );