Added WGSL shaders. (#3543)

This commit is contained in:
Branimir Karadžić
2026-01-09 19:31:01 -08:00
committed by GitHub
parent 1c08bab55a
commit 967f7629b6
342 changed files with 5869 additions and 865 deletions

View File

@@ -137,6 +137,67 @@ static const uint8_t vs_font_distance_field_spv[1218] =
0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00, 0x00, 0x03, 0x05, 0x00, 0x01, 0x00, 0x10, 0x00, // ....8...........
0x40, 0x00, // @.
};
static const uint8_t vs_font_distance_field_wgsl[926] =
{
0x56, 0x53, 0x48, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0xf2, 0xe1, 0x01, 0x00, 0x0f, 0x75, // VSH............u
0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x69, 0x65, 0x77, 0x50, 0x72, 0x6f, 0x6a, 0x04, 0x01, // _modelViewProj..
0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x03, 0x00, 0x00, 0x64, 0x69, 0x61, 0x67, // ........f...diag
0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x28, 0x6f, 0x66, 0x66, 0x2c, 0x20, 0x64, 0x65, 0x72, 0x69, // nostic(off, deri
0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x74, // vative_uniformit
0x79, 0x29, 0x3b, 0x0a, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x28, 0x6f, // y);.diagnostic(o
0x66, 0x66, 0x2c, 0x20, 0x73, 0x75, 0x62, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x75, 0x6e, 0x69, // ff, subgroup_uni
0x66, 0x6f, 0x72, 0x6d, 0x69, 0x74, 0x79, 0x29, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, // formity);..struc
0x74, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x31, // t UniformBlock_1
0x5f, 0x31, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x75, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x69, // _1 {. u_modelVi
0x65, 0x77, 0x50, 0x72, 0x6f, 0x6a, 0x20, 0x3a, 0x20, 0x6d, 0x61, 0x74, 0x34, 0x78, 0x34, 0x3c, // ewProj : mat4x4<
0x66, 0x33, 0x32, 0x3e, 0x2c, 0x0a, 0x7d, 0x0a, 0x0a, 0x40, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x28, // f32>,.}..@group(
0x30, 0x75, 0x29, 0x20, 0x40, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x28, 0x30, 0x75, 0x29, // 0u) @binding(0u)
0x20, 0x76, 0x61, 0x72, 0x3c, 0x75, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x20, 0x76, 0x20, // var<uniform> v
0x3a, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x31, // : UniformBlock_1
0x5f, 0x31, 0x3b, 0x0a, 0x0a, 0x76, 0x61, 0x72, 0x3c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, // _1;..var<private
0x3e, 0x20, 0x76, 0x5f, 0x31, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, // > v_1 : vec4<f32
0x3e, 0x3b, 0x0a, 0x0a, 0x76, 0x61, 0x72, 0x3c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x3e, // >;..var<private>
0x20, 0x76, 0x5f, 0x32, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, // v_2 : vec4<f32>
0x3b, 0x0a, 0x0a, 0x76, 0x61, 0x72, 0x3c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x3e, 0x20, // ;..var<private>
0x76, 0x5f, 0x33, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x3b, // v_3 : vec4<f32>;
0x0a, 0x0a, 0x66, 0x6e, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x28, // ..fn main_inner(
0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, // a_color0 : vec4<
0x66, 0x33, 0x32, 0x3e, 0x2c, 0x20, 0x61, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, // f32>, a_position
0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x32, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x2c, 0x20, 0x61, 0x5f, // : vec2<f32>, a_
0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, // texcoord0 : vec4
0x3c, 0x66, 0x33, 0x32, 0x3e, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x76, 0x5f, 0x31, 0x20, 0x3d, // <f32>) {. v_1 =
0x20, 0x28, 0x76, 0x2e, 0x75, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x69, 0x65, 0x77, 0x50, // (v.u_modelViewP
0x72, 0x6f, 0x6a, 0x20, 0x2a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x28, // roj * vec4<f32>(
0x61, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x78, 0x2c, 0x20, 0x61, 0x5f, // a_position.x, a_
0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x79, 0x2c, 0x20, 0x30, 0x2e, 0x30, 0x66, // position.y, 0.0f
0x2c, 0x20, 0x31, 0x2e, 0x30, 0x66, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x76, 0x5f, 0x32, 0x20, // , 1.0f));. v_2
0x3d, 0x20, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x76, 0x5f, // = a_color0;. v_
0x33, 0x20, 0x3d, 0x20, 0x61, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x3b, // 3 = a_texcoord0;
0x0a, 0x7d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x69, 0x6e, 0x74, 0x5f, // .}..struct tint_
0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x40, 0x62, 0x75, 0x69, 0x6c, // symbol {. @buil
0x74, 0x69, 0x6e, 0x28, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x29, 0x0a, 0x20, 0x20, // tin(position).
0x6d, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x2c, 0x0a, 0x20, // m : vec4<f32>,.
0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x30, 0x75, 0x29, 0x0a, 0x20, // @location(0u).
0x20, 0x6d, 0x5f, 0x31, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, // m_1 : vec4<f32>
0x2c, 0x0a, 0x20, 0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x31, 0x75, // ,. @location(1u
0x29, 0x0a, 0x20, 0x20, 0x6d, 0x5f, 0x32, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, // ). m_2 : vec4<f
0x33, 0x32, 0x3e, 0x2c, 0x0a, 0x7d, 0x0a, 0x0a, 0x40, 0x76, 0x65, 0x72, 0x74, 0x65, 0x78, 0x0a, // 32>,.}..@vertex.
0x66, 0x6e, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x28, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, // fn main(@locatio
0x6e, 0x28, 0x30, 0x75, 0x29, 0x20, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x20, 0x3a, // n(0u) a_color0 :
0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x2c, 0x20, 0x40, 0x6c, 0x6f, 0x63, // vec4<f32>, @loc
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x31, 0x75, 0x29, 0x20, 0x61, 0x5f, 0x70, 0x6f, 0x73, 0x69, // ation(1u) a_posi
0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x32, 0x3c, 0x66, 0x33, 0x32, 0x3e, // tion : vec2<f32>
0x2c, 0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x32, 0x75, 0x29, 0x20, // , @location(2u)
0x61, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x20, 0x3a, 0x20, 0x76, 0x65, // a_texcoord0 : ve
0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x29, 0x20, 0x2d, 0x3e, 0x20, 0x74, 0x69, 0x6e, 0x74, // c4<f32>) -> tint
0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, // _symbol {. main
0x5f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x28, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x2c, // _inner(a_color0,
0x20, 0x61, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x61, 0x5f, 0x74, // a_position, a_t
0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x72, 0x65, 0x74, // excoord0);. ret
0x75, 0x72, 0x6e, 0x20, 0x74, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x28, // urn tint_symbol(
0x76, 0x5f, 0x31, 0x2c, 0x20, 0x76, 0x5f, 0x32, 0x2c, 0x20, 0x76, 0x5f, 0x33, 0x29, 0x3b, 0x0a, // v_1, v_2, v_3);.
0x7d, 0x0a, 0x00, 0x03, 0x05, 0x00, 0x01, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, // }.........@.@.
};
static const uint8_t vs_font_distance_field_dx11[594] =
{
0x56, 0x53, 0x48, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0xf2, 0xe1, 0x01, 0x00, 0x0f, 0x75, // VSH............u