33 lines
569 B
D
33 lines
569 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, "w");
|
|
|
|
f.write("const u8[] 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();
|
|
}
|