VulkanRenderer/vulkan_codegen.d

33 lines
562 B
D

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";
writefln("%s %s", p, codegen_name);
auto f = File(codegen_name);
f.writeln("const u8[] CONVERT_SHADER_BYTES = [");
foreach(i, b; shader_bytes)
{
if (i % 50 == 0)
{
f.writefln("");
}
f.write("%d, ", b);
}
f.writeln("];");
f.close();
}