This makes std430 (which we use everywhere already) fully match C
layout.
Extension was made mandatory in 1.2.
---
libavutil/hwcontext_vulkan.c | 1 +
libavutil/vulkan.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
index f6d6ff6cb1..d6500de677 100644
--- a/libavutil/hwcontext_vulkan.c
+++ b/libavutil/hwcontext_vulkan.c
@@ -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_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.hostQueryReset = dev_features_1_2.hostQueryReset;
p->device_features_1_2.storagePushConstant8 =
dev_features_1_2.storagePushConstant8;
diff --git a/libavutil/vulkan.c b/libavutil/vulkan.c
index 1dc168e645..c6aa6cdd10 100644
--- a/libavutil/vulkan.c
+++ b/libavutil/vulkan.c
@@ -1478,6 +1478,7 @@ int ff_vk_shader_init(FFVulkanContext *s, FFVulkanShader
*shd, const char *name,
/* Common utilities */
GLSLC(0, #define IS_WITHIN(v1, v2) ((v1.x < v2.x) && (v1.y < v2.y))
);
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_reference2 : require
);
--
2.45.2.753.g447d99e1c3b
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".