diff --git a/vulkan.d b/vulkan.d index 098cf5b..a910f30 100644 --- a/vulkan.d +++ b/vulkan.d @@ -366,6 +366,8 @@ struct Vulkan BufferView a_buffer_view; ImageView aux_image; + u8[] convert_shader_bytes; + alias queues this; } @@ -390,13 +392,9 @@ struct QueueInfo bool single_queue; } -u8[] CONVERT_SHADER; - Vulkan -Init(PlatformHandles platform_handles, u64 permanent_mem, u64 frame_mem, string convert_shader) +Init(PlatformHandles platform_handles, u64 permanent_mem, u64 frame_mem, u8[] conv_shader) { - CONVERT_SHADER = mixin(Embed(convert_shader)); - bool success = true; Vulkan vk = { @@ -406,6 +404,7 @@ Init(PlatformHandles platform_handles, u64 permanent_mem, u64 frame_mem, string CreateArena(frame_mem), ], platform_handles: platform_handles, + convert_shader_bytes: conv_shader, }; Push(&vk, SI.Renderer); @@ -556,7 +555,7 @@ InitConversionPipeline(Vulkan* vk) } ]; CompPipelineInfo conv_info = { - shader: CONVERT_SHADER, + shader: vk.convert_shader_bytes, layout: vk.conv_pipeline_layout, spec: { data: &channels,