33 lines
562 B
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();
|
|
}
|