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

@@ -328,6 +328,95 @@ static const uint8_t fs_font_distance_field_outline_spv[2302] =
0x00, 0x00, 0x3a, 0x01, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0xd4, 0x00, 0x00, 0x00, 0x3e, 0x01, // ..:...>.......>.
0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00, // ......8.......
};
static const uint8_t fs_font_distance_field_outline_wgsl[1371] =
{
0x46, 0x53, 0x48, 0x0b, 0x94, 0xf7, 0xae, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x75, // FSH....n.......u
0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, // _params.........
0x00, 0x0a, 0x73, 0x5f, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x00, 0x02, 0x00, // ..s_texColor0...
0x00, 0x00, 0x00, 0x04, 0x26, 0x00, 0x1b, 0x05, 0x00, 0x00, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, // ....&.....diagno
0x73, 0x74, 0x69, 0x63, 0x28, 0x6f, 0x66, 0x66, 0x2c, 0x20, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, // stic(off, deriva
0x74, 0x69, 0x76, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x74, 0x79, 0x29, // tive_uniformity)
0x3b, 0x0a, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x28, 0x6f, 0x66, 0x66, // ;.diagnostic(off
0x2c, 0x20, 0x73, 0x75, 0x62, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x75, 0x6e, 0x69, 0x66, 0x6f, // , subgroup_unifo
0x72, 0x6d, 0x69, 0x74, 0x79, 0x29, 0x3b, 0x0a, 0x0a, 0x40, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x28, // rmity);..@group(
0x30, 0x75, 0x29, 0x20, 0x40, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x28, 0x31, 0x38, 0x75, // 0u) @binding(18u
0x29, 0x20, 0x76, 0x61, 0x72, 0x20, 0x73, 0x5f, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, // ) var s_texColor
0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x3a, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, // Sampler : sample
0x72, 0x3b, 0x0a, 0x0a, 0x40, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x28, 0x30, 0x75, 0x29, 0x20, 0x40, // r;..@group(0u) @
0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x28, 0x32, 0x75, 0x29, 0x20, 0x76, 0x61, 0x72, 0x20, // binding(2u) var
0x73, 0x5f, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, // s_texColorTextur
0x65, 0x20, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x75, 0x62, 0x65, // e : texture_cube
0x3c, 0x66, 0x33, 0x32, 0x3e, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x55, // <f32>;..struct U
0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x7b, 0x0a, 0x20, 0x20, // niformBlock {.
0x75, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, // u_params : vec4<
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, 0x31, 0x75, 0x29, // 0u) @binding(1u)
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, 0x3b, 0x0a, // : UniformBlock;.
0x0a, 0x76, 0x61, 0x72, 0x3c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x3e, 0x20, 0x62, 0x67, // .var<private> bg
0x66, 0x78, 0x5f, 0x46, 0x72, 0x61, 0x67, 0x44, 0x61, 0x74, 0x61, 0x30, 0x20, 0x3a, 0x20, 0x76, // fx_FragData0 : v
0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x3b, 0x0a, 0x0a, 0x66, 0x6e, 0x20, 0x6d, 0x61, // ec4<f32>;..fn ma
0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x28, 0x76, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, // in_inner(v_color
0x30, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x2c, 0x20, 0x76, // 0 : vec4<f32>, v
0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, // _color1 : vec4<f
0x33, 0x32, 0x3e, 0x2c, 0x20, 0x76, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, // 32>, v_texcoord0
0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x29, 0x20, 0x7b, 0x0a, // : vec4<f32>) {.
0x20, 0x20, 0x76, 0x61, 0x72, 0x20, 0x76, 0x5f, 0x31, 0x20, 0x3a, 0x20, 0x61, 0x72, 0x72, 0x61, // var v_1 : arra
0x79, 0x3c, 0x66, 0x33, 0x32, 0x2c, 0x20, 0x34, 0x75, 0x3e, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, // y<f32, 4u>;. le
0x74, 0x20, 0x76, 0x5f, 0x32, 0x20, 0x3d, 0x20, 0x76, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, // t v_2 = v_texcoo
0x72, 0x64, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x76, // rd0.xyz;. let v
0x5f, 0x33, 0x20, 0x3d, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x53, 0x61, 0x6d, 0x70, // _3 = textureSamp
0x6c, 0x65, 0x28, 0x73, 0x5f, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x65, 0x78, // le(s_texColorTex
0x74, 0x75, 0x72, 0x65, 0x2c, 0x20, 0x73, 0x5f, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, // ture, s_texColor
0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x76, 0x5f, 0x32, 0x29, 0x3b, 0x0a, 0x20, // Sampler, v_2);.
0x20, 0x76, 0x5f, 0x31, 0x5b, 0x30, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x76, 0x5f, 0x33, 0x2e, 0x7a, // v_1[0i] = v_3.z
0x3b, 0x0a, 0x20, 0x20, 0x76, 0x5f, 0x31, 0x5b, 0x31, 0x69, 0x5d, 0x20, 0x3d, 0x20, 0x76, 0x5f, // ;. v_1[1i] = v_
0x33, 0x2e, 0x79, 0x3b, 0x0a, 0x20, 0x20, 0x76, 0x5f, 0x31, 0x5b, 0x32, 0x69, 0x5d, 0x20, 0x3d, // 3.y;. v_1[2i] =
0x20, 0x76, 0x5f, 0x33, 0x2e, 0x78, 0x3b, 0x0a, 0x20, 0x20, 0x76, 0x5f, 0x31, 0x5b, 0x33, 0x69, // v_3.x;. v_1[3i
0x5d, 0x20, 0x3d, 0x20, 0x76, 0x5f, 0x33, 0x2e, 0x77, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, 0x74, // ] = v_3.w;. let
0x20, 0x76, 0x5f, 0x34, 0x20, 0x3d, 0x20, 0x76, 0x5f, 0x31, 0x5b, 0x69, 0x33, 0x32, 0x28, 0x28, // v_4 = v_1[i32((
0x28, 0x76, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x2e, 0x77, 0x20, 0x2a, // (v_texcoord0.w *
0x20, 0x34, 0x2e, 0x30, 0x66, 0x29, 0x20, 0x2b, 0x20, 0x30, 0x2e, 0x35, 0x66, 0x29, 0x29, 0x5d, // 4.0f) + 0.5f))]
0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x76, 0x5f, 0x35, 0x20, 0x3d, 0x20, 0x28, 0x28, // ;. let v_5 = ((
0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x28, 0x66, 0x77, 0x69, 0x64, 0x74, 0x68, 0x28, 0x76, 0x5f, // length(fwidth(v_
0x32, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x31, 0x31, 0x2e, 0x33, 0x31, 0x33, 0x37, 0x30, 0x38, 0x33, // 2)) * 11.3137083
0x30, 0x35, 0x33, 0x35, 0x38, 0x38, 0x38, 0x36, 0x37, 0x31, 0x38, 0x37, 0x35, 0x66, 0x29, 0x20, // 0535888671875f)
0x2a, 0x20, 0x76, 0x2e, 0x75, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x79, 0x29, 0x3b, // * v.u_params.y);
0x0a, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x76, 0x5f, 0x36, 0x20, 0x3d, 0x20, 0x28, 0x30, 0x2e, // . let v_6 = (0.
0x35, 0x66, 0x20, 0x2d, 0x20, 0x28, 0x76, 0x2e, 0x75, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, // 5f - (v.u_params
0x2e, 0x77, 0x20, 0x2a, 0x20, 0x76, 0x5f, 0x35, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, // .w * v_5));. le
0x74, 0x20, 0x76, 0x5f, 0x37, 0x20, 0x3d, 0x20, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x73, 0x74, // t v_7 = smoothst
0x65, 0x70, 0x28, 0x28, 0x76, 0x5f, 0x36, 0x20, 0x2d, 0x20, 0x76, 0x5f, 0x35, 0x29, 0x2c, 0x20, // ep((v_6 - v_5),
0x28, 0x76, 0x5f, 0x36, 0x20, 0x2b, 0x20, 0x76, 0x5f, 0x35, 0x29, 0x2c, 0x20, 0x76, 0x5f, 0x34, // (v_6 + v_5), v_4
0x29, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x76, 0x5f, 0x38, 0x20, 0x3d, 0x20, 0x73, // );. let v_8 = s
0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x73, 0x74, 0x65, 0x70, 0x28, 0x28, 0x30, 0x2e, 0x35, 0x66, 0x20, // moothstep((0.5f
0x2d, 0x20, 0x76, 0x5f, 0x35, 0x29, 0x2c, 0x20, 0x28, 0x30, 0x2e, 0x35, 0x66, 0x20, 0x2b, 0x20, // - v_5), (0.5f +
0x76, 0x5f, 0x35, 0x29, 0x2c, 0x20, 0x76, 0x5f, 0x34, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x6c, 0x65, // v_5), v_4);. le
0x74, 0x20, 0x76, 0x5f, 0x39, 0x20, 0x3d, 0x20, 0x6d, 0x69, 0x78, 0x28, 0x76, 0x5f, 0x63, 0x6f, // t v_9 = mix(v_co
0x6c, 0x6f, 0x72, 0x31, 0x2e, 0x78, 0x79, 0x7a, 0x2c, 0x20, 0x76, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, // lor1.xyz, v_colo
0x72, 0x30, 0x2e, 0x78, 0x79, 0x7a, 0x2c, 0x20, 0x76, 0x65, 0x63, 0x33, 0x3c, 0x66, 0x33, 0x32, // r0.xyz, vec3<f32
0x3e, 0x28, 0x76, 0x5f, 0x38, 0x2c, 0x20, 0x76, 0x5f, 0x38, 0x2c, 0x20, 0x76, 0x5f, 0x38, 0x29, // >(v_8, v_8, v_8)
0x29, 0x3b, 0x0a, 0x20, 0x20, 0x62, 0x67, 0x66, 0x78, 0x5f, 0x46, 0x72, 0x61, 0x67, 0x44, 0x61, // );. bgfx_FragDa
0x74, 0x61, 0x30, 0x20, 0x3d, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x28, // ta0 = vec4<f32>(
0x76, 0x5f, 0x39, 0x2e, 0x78, 0x2c, 0x20, 0x76, 0x5f, 0x39, 0x2e, 0x79, 0x2c, 0x20, 0x76, 0x5f, // v_9.x, v_9.y, v_
0x39, 0x2e, 0x7a, 0x2c, 0x20, 0x28, 0x76, 0x5f, 0x37, 0x20, 0x2a, 0x20, 0x76, 0x5f, 0x63, 0x6f, // 9.z, (v_7 * v_co
0x6c, 0x6f, 0x72, 0x30, 0x2e, 0x77, 0x29, 0x29, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a, 0x40, 0x66, 0x72, // lor0.w));.}..@fr
0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x66, 0x6e, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x28, 0x40, // agment.fn main(@
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x30, 0x75, 0x29, 0x20, 0x76, 0x5f, 0x63, // location(0u) v_c
0x6f, 0x6c, 0x6f, 0x72, 0x30, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, // olor0 : vec4<f32
0x3e, 0x2c, 0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x31, 0x75, 0x29, // >, @location(1u)
0x20, 0x76, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, // v_color1 : vec4
0x3c, 0x66, 0x33, 0x32, 0x3e, 0x2c, 0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, // <f32>, @location
0x28, 0x32, 0x75, 0x29, 0x20, 0x76, 0x5f, 0x74, 0x65, 0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, // (2u) v_texcoord0
0x20, 0x3a, 0x20, 0x76, 0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x29, 0x20, 0x2d, 0x3e, // : vec4<f32>) ->
0x20, 0x40, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x30, 0x75, 0x29, 0x20, 0x76, // @location(0u) v
0x65, 0x63, 0x34, 0x3c, 0x66, 0x33, 0x32, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x6d, 0x61, 0x69, // ec4<f32> {. mai
0x6e, 0x5f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x28, 0x76, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x30, // n_inner(v_color0
0x2c, 0x20, 0x76, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x2c, 0x20, 0x76, 0x5f, 0x74, 0x65, // , v_color1, v_te
0x78, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x30, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, // xcoord0);. retu
0x72, 0x6e, 0x20, 0x62, 0x67, 0x66, 0x78, 0x5f, 0x46, 0x72, 0x61, 0x67, 0x44, 0x61, 0x74, 0x61, // rn bgfx_FragData
0x30, 0x3b, 0x0a, 0x7d, 0x0a, 0x00, 0x00, 0x10, 0x00, 0x10, 0x00, // 0;.}.......
};
static const uint8_t fs_font_distance_field_outline_dx11[1578] =
{
0x46, 0x53, 0x48, 0x0b, 0x94, 0xf7, 0xae, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x75, // FSH....n.......u