version(VULKAN_CODEGEN) { import std.file; import std.string; import std.path; import std.stdio; void main(string[] argv) { assert(argv.length > 1, "No argument provided"); ubyte[] shader_bytes = cast(ubyte[])read(argv[1]); string p = __FILE__.absolutePath; string codegen_name = chomp(p, baseName(p)) ~ "vulkan_shader.d"; auto f = File(codegen_name, "w"); f.write("ubyte[] CONVERT_SHADER_BYTES = ["); foreach(i, b; shader_bytes) { if (i % 50 == 0) { f.write("\n\t"); } f.writef("%d, ", b); } f.writeln("\n];"); f.close(); } }