From 1dd737d8a43c626375a6375086c58b26c4a507a3 Mon Sep 17 00:00:00 2001 From: bjorn Date: Tue, 13 Sep 2022 17:36:10 -0700 Subject: [PATCH] Make the logo a default shader; Improves build system, improves filesize, seemingly improves startup time --- etc/nogame.lua | 477 +------------------------------- etc/shaders.h | 1 + etc/shaders/logo.frag | 24 ++ src/api/l_graphics.c | 3 + src/modules/graphics/graphics.c | 4 + src/modules/graphics/graphics.h | 1 + 6 files changed, 35 insertions(+), 475 deletions(-) create mode 100644 etc/shaders/logo.frag diff --git a/etc/nogame.lua b/etc/nogame.lua index 22a4005b..83deba03 100644 --- a/etc/nogame.lua +++ b/etc/nogame.lua @@ -5,8 +5,6 @@ function lovr.conf(t) t.modules.thread = false end -local models = {} - function lovr.load() if not lovr.graphics then print(string.format('LÖVR %d.%d.%d\nNo game', lovr.getVersion())) @@ -15,477 +13,7 @@ function lovr.load() end lovr.graphics.setBackgroundColor(0x20232c) - - --[=[ - logo = lovr.graphics.newShader([[ - vec4 lovrmain() { - return DefaultPosition; - } - ]], [[ - vec4 lovrmain() { - float y = UV.y; - vec2 uv = vec2(UV.x, 1. - UV.y); - uv = uv * 4. - 2.; - const float k = sqrt(3.); - uv.x = abs(uv.x) - 1.; - uv.y = uv.y + 1. / k + .25; - if (uv.x + k * uv.y > 0.) { - uv = vec2(uv.x - k * uv.y, -k * uv.x - uv.y) / 2.; - } - uv.x -= clamp(uv.x, -2., 0.); - float sdf = -length(uv) * sign(uv.y) - .5; - float w = fwidth(sdf) * .5; - float alpha = smoothstep(.22 + w, .22 - w, sdf); - vec3 color = mix(vec3(.094, .662, .890), vec3(.913, .275, .6), clamp(y * 1.5 - .25, 0., 1.)); - color = mix(color, vec3(.2, .2, .24), smoothstep(-.12 + w, -.12 - w, sdf)); - return vec4(pow(color, vec3(2.2)), alpha); - } - ]]) - ]=] - - logo = logo or lovr.graphics.newShader({ - 0x07230203,0x00010000,0x0008000a,0x00000093,0x00000000,0x00020011,0x00000001,0x00020011, - 0x0000114b,0x00020011,0x00001157,0x0006000a,0x5f565053,0x5f52484b,0x746c756d,0x65697669, - 0x00000077,0x0009000a,0x5f565053,0x5f52484b,0x64616873,0x645f7265,0x5f776172,0x61726170, - 0x6574656d,0x00007372,0x0006000b,0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000, - 0x0003000e,0x00000000,0x00000001,0x0011000f,0x00000000,0x00000004,0x6e69616d,0x00000000, - 0x0000000d,0x00000019,0x0000001f,0x00000026,0x00000034,0x00000038,0x00000039,0x00000049, - 0x0000004b,0x00000051,0x0000006e,0x00000092,0x00030003,0x00000002,0x000001cc,0x00060004, - 0x455f4c47,0x6d5f5458,0x69746c75,0x77656976,0x00000000,0x000a0004,0x475f4c47,0x4c474f4f, - 0x70635f45,0x74735f70,0x5f656c79,0x656e696c,0x7269645f,0x69746365,0x00006576,0x00080004, - 0x475f4c47,0x4c474f4f,0x6e695f45,0x64756c63,0x69645f65,0x74636572,0x00657669,0x00040005, - 0x00000004,0x6e69616d,0x00000000,0x00050005,0x00000009,0x72766f6c,0x6e69616d,0x00000028, - 0x00060005,0x0000000d,0x69736f50,0x6e6f6974,0x6c726f57,0x00000064,0x00040005,0x0000000f, - 0x77617244,0x00000000,0x00060006,0x0000000f,0x00000000,0x6e617274,0x726f6673,0x0000006d, - 0x00070006,0x0000000f,0x00000001,0x6d726f6e,0x614d6c61,0x78697274,0x00000000,0x00050006, - 0x0000000f,0x00000002,0x6f6c6f63,0x00000072,0x00050005,0x00000013,0x77617244,0x66667542, - 0x00007265,0x00050006,0x00000013,0x00000000,0x77617244,0x00000073,0x00030005,0x00000015, - 0x00000000,0x00060005,0x00000019,0x425f6c67,0x49657361,0x6174736e,0x0065636e,0x00060005, - 0x0000001f,0x74726556,0x6f507865,0x69746973,0x00006e6f,0x00040005,0x00000026,0x6d726f4e, - 0x00006c61,0x00060005,0x00000034,0x74726556,0x6f4e7865,0x6c616d72,0x00000000,0x00040005, - 0x00000038,0x6f6c6f43,0x00000072,0x00050005,0x00000039,0x74726556,0x6f437865,0x00726f6c, - 0x00060005,0x0000003c,0x6574614d,0x6c616972,0x66667542,0x00007265,0x00050006,0x0000003c, - 0x00000000,0x6f6c6f63,0x00000072,0x00050006,0x0000003c,0x00000001,0x776f6c67,0x00000000, - 0x00050006,0x0000003c,0x00000002,0x68537675,0x00746669,0x00050006,0x0000003c,0x00000003, - 0x63537675,0x00656c61,0x00060006,0x0000003c,0x00000004,0x52666473,0x65676e61,0x00000000, - 0x00060006,0x0000003c,0x00000005,0x6174656d,0x73656e6c,0x00000073,0x00060006,0x0000003c, - 0x00000006,0x67756f72,0x73656e68,0x00000073,0x00060006,0x0000003c,0x00000007,0x61656c63, - 0x616f6372,0x00000074,0x00080006,0x0000003c,0x00000008,0x61656c63,0x616f6372,0x756f5274, - 0x656e6867,0x00007373,0x00080006,0x0000003c,0x00000009,0x6c63636f,0x6f697375,0x7274536e, - 0x74676e65,0x00000068,0x00060006,0x0000003c,0x0000000a,0x6d726f6e,0x63536c61,0x00656c61, - 0x00060006,0x0000003c,0x0000000b,0x68706c61,0x74754361,0x0066666f,0x00060006,0x0000003c, - 0x0000000c,0x6e696f70,0x7a695374,0x00000065,0x00050005,0x0000003e,0x6574614d,0x6c616972, - 0x00000000,0x00030005,0x00000049,0x00005655,0x00050005,0x0000004b,0x74726556,0x56557865, - 0x00000000,0x00060005,0x0000004f,0x505f6c67,0x65567265,0x78657472,0x00000000,0x00060006, - 0x0000004f,0x00000000,0x505f6c67,0x7469736f,0x006e6f69,0x00070006,0x0000004f,0x00000001, - 0x505f6c67,0x746e696f,0x657a6953,0x00000000,0x00070006,0x0000004f,0x00000002,0x435f6c67, - 0x4470696c,0x61747369,0x0065636e,0x00070006,0x0000004f,0x00000003,0x435f6c67,0x446c6c75, - 0x61747369,0x0065636e,0x00030005,0x00000051,0x00000000,0x00070005,0x0000005b,0x62616e65, - 0x5655656c,0x6e617254,0x726f6673,0x0000006d,0x00040005,0x00000068,0x656d6143,0x00006172, - 0x00050006,0x00000068,0x00000000,0x77656976,0x00000000,0x00060006,0x00000068,0x00000001, - 0x6a6f7270,0x69746365,0x00006e6f,0x00070006,0x00000068,0x00000002,0x77656976,0x6a6f7250, - 0x69746365,0x00006e6f,0x00080006,0x00000068,0x00000003,0x65766e69,0x50657372,0x656a6f72, - 0x6f697463,0x0000006e,0x00060005,0x0000006b,0x656d6143,0x75426172,0x72656666,0x00000000, - 0x00050006,0x0000006b,0x00000000,0x656d6143,0x00736172,0x00030005,0x0000006d,0x00000000, - 0x00060005,0x0000006e,0x565f6c67,0x49776569,0x7865646e,0x00000000,0x00070005,0x0000007a, - 0x62616e65,0x6c41656c,0x43616870,0x666f7475,0x00000066,0x00050005,0x0000007b,0x62616e65, - 0x6c47656c,0x0000776f,0x00060005,0x0000007c,0x43657375,0x726f6c6f,0x74786554,0x00657275, - 0x00060005,0x0000007d,0x47657375,0x54776f6c,0x75747865,0x00006572,0x00070005,0x0000007e, - 0x4d657375,0x6c617465,0x7373656e,0x74786554,0x00657275,0x00070005,0x0000007f,0x52657375, - 0x6867756f,0x7373656e,0x74786554,0x00657275,0x00070005,0x00000080,0x4f657375,0x756c6363, - 0x6e6f6973,0x74786554,0x00657275,0x00070005,0x00000081,0x43657375,0x7261656c,0x74616f63, - 0x74786554,0x00657275,0x00070005,0x00000082,0x4e657375,0x616d726f,0x7865546c,0x65727574, - 0x00000000,0x00040005,0x00000083,0x626f6c47,0x00736c61,0x00060006,0x00000083,0x00000000, - 0x6f736552,0x6974756c,0x00006e6f,0x00050006,0x00000083,0x00000001,0x656d6954,0x00000000, - 0x00030005,0x00000085,0x00000000,0x00040005,0x00000088,0x706d6153,0x0072656c,0x00060005, - 0x0000008b,0x6f6c6f43,0x78655472,0x65727574,0x00000000,0x00050005,0x0000008c,0x776f6c47, - 0x74786554,0x00657275,0x00070005,0x0000008d,0x6c63634f,0x6f697375,0x7865546e,0x65727574, - 0x00000000,0x00070005,0x0000008e,0x6174654d,0x73656e6c,0x78655473,0x65727574,0x00000000, - 0x00070005,0x0000008f,0x67756f52,0x73656e68,0x78655473,0x65727574,0x00000000,0x00070005, - 0x00000090,0x61656c43,0x616f6372,0x78655474,0x65727574,0x00000000,0x00060005,0x00000091, - 0x6d726f4e,0x65546c61,0x72757478,0x00000065,0x00060005,0x00000092,0x74726556,0x61547865, - 0x6e65676e,0x00000074,0x00040047,0x0000000d,0x0000001e,0x0000000a,0x00040048,0x0000000f, - 0x00000000,0x00000005,0x00050048,0x0000000f,0x00000000,0x00000023,0x00000000,0x00050048, - 0x0000000f,0x00000000,0x00000007,0x00000010,0x00040048,0x0000000f,0x00000001,0x00000005, - 0x00050048,0x0000000f,0x00000001,0x00000023,0x00000040,0x00050048,0x0000000f,0x00000001, - 0x00000007,0x00000010,0x00050048,0x0000000f,0x00000002,0x00000023,0x00000080,0x00040047, - 0x00000012,0x00000006,0x00000090,0x00050048,0x00000013,0x00000000,0x00000023,0x00000000, - 0x00030047,0x00000013,0x00000002,0x00040047,0x00000015,0x00000022,0x00000000,0x00040047, - 0x00000015,0x00000021,0x00000002,0x00040047,0x00000019,0x0000000b,0x00001149,0x00040047, - 0x0000001f,0x0000001e,0x0000000a,0x00040047,0x00000026,0x0000001e,0x0000000b,0x00040047, - 0x00000034,0x0000001e,0x0000000b,0x00040047,0x00000038,0x0000001e,0x0000000c,0x00040047, - 0x00000039,0x0000001e,0x0000000d,0x00050048,0x0000003c,0x00000000,0x00000023,0x00000000, - 0x00050048,0x0000003c,0x00000001,0x00000023,0x00000010,0x00050048,0x0000003c,0x00000002, - 0x00000023,0x00000020,0x00050048,0x0000003c,0x00000003,0x00000023,0x00000028,0x00050048, - 0x0000003c,0x00000004,0x00000023,0x00000030,0x00050048,0x0000003c,0x00000005,0x00000023, - 0x00000038,0x00050048,0x0000003c,0x00000006,0x00000023,0x0000003c,0x00050048,0x0000003c, - 0x00000007,0x00000023,0x00000040,0x00050048,0x0000003c,0x00000008,0x00000023,0x00000044, - 0x00050048,0x0000003c,0x00000009,0x00000023,0x00000048,0x00050048,0x0000003c,0x0000000a, - 0x00000023,0x0000004c,0x00050048,0x0000003c,0x0000000b,0x00000023,0x00000050,0x00050048, - 0x0000003c,0x0000000c,0x00000023,0x00000054,0x00030047,0x0000003c,0x00000002,0x00040047, - 0x0000003e,0x00000022,0x00000001,0x00040047,0x0000003e,0x00000021,0x00000000,0x00040047, - 0x00000049,0x0000001e,0x0000000d,0x00040047,0x0000004b,0x0000001e,0x0000000c,0x00050048, - 0x0000004f,0x00000000,0x0000000b,0x00000000,0x00050048,0x0000004f,0x00000001,0x0000000b, - 0x00000001,0x00050048,0x0000004f,0x00000002,0x0000000b,0x00000003,0x00050048,0x0000004f, - 0x00000003,0x0000000b,0x00000004,0x00030047,0x0000004f,0x00000002,0x00040047,0x0000005b, - 0x00000001,0x000003e8,0x00040048,0x00000068,0x00000000,0x00000005,0x00050048,0x00000068, - 0x00000000,0x00000023,0x00000000,0x00050048,0x00000068,0x00000000,0x00000007,0x00000010, - 0x00040048,0x00000068,0x00000001,0x00000005,0x00050048,0x00000068,0x00000001,0x00000023, - 0x00000040,0x00050048,0x00000068,0x00000001,0x00000007,0x00000010,0x00040048,0x00000068, - 0x00000002,0x00000005,0x00050048,0x00000068,0x00000002,0x00000023,0x00000080,0x00050048, - 0x00000068,0x00000002,0x00000007,0x00000010,0x00040048,0x00000068,0x00000003,0x00000005, - 0x00050048,0x00000068,0x00000003,0x00000023,0x000000c0,0x00050048,0x00000068,0x00000003, - 0x00000007,0x00000010,0x00040047,0x0000006a,0x00000006,0x00000100,0x00050048,0x0000006b, - 0x00000000,0x00000023,0x00000000,0x00030047,0x0000006b,0x00000002,0x00040047,0x0000006d, - 0x00000022,0x00000000,0x00040047,0x0000006d,0x00000021,0x00000001,0x00040047,0x0000006e, - 0x0000000b,0x00001158,0x00040047,0x0000007a,0x00000001,0x000003e9,0x00040047,0x0000007b, - 0x00000001,0x000003ea,0x00040047,0x0000007c,0x00000001,0x000003eb,0x00040047,0x0000007d, - 0x00000001,0x000003ec,0x00040047,0x0000007e,0x00000001,0x000003ed,0x00040047,0x0000007f, - 0x00000001,0x000003ee,0x00040047,0x00000080,0x00000001,0x000003ef,0x00040047,0x00000081, - 0x00000001,0x000003f0,0x00040047,0x00000082,0x00000001,0x000003f1,0x00050048,0x00000083, - 0x00000000,0x00000023,0x00000000,0x00050048,0x00000083,0x00000001,0x00000023,0x00000010, - 0x00030047,0x00000083,0x00000002,0x00040047,0x00000085,0x00000022,0x00000000,0x00040047, - 0x00000085,0x00000021,0x00000000,0x00040047,0x00000088,0x00000022,0x00000000,0x00040047, - 0x00000088,0x00000021,0x00000003,0x00040047,0x0000008b,0x00000022,0x00000001,0x00040047, - 0x0000008b,0x00000021,0x00000001,0x00040047,0x0000008c,0x00000022,0x00000001,0x00040047, - 0x0000008c,0x00000021,0x00000002,0x00040047,0x0000008d,0x00000022,0x00000001,0x00040047, - 0x0000008d,0x00000021,0x00000003,0x00040047,0x0000008e,0x00000022,0x00000001,0x00040047, - 0x0000008e,0x00000021,0x00000004,0x00040047,0x0000008f,0x00000022,0x00000001,0x00040047, - 0x0000008f,0x00000021,0x00000005,0x00040047,0x00000090,0x00000022,0x00000001,0x00040047, - 0x00000090,0x00000021,0x00000006,0x00040047,0x00000091,0x00000022,0x00000001,0x00040047, - 0x00000091,0x00000021,0x00000007,0x00040047,0x00000092,0x0000001e,0x0000000e,0x00020013, - 0x00000002,0x00030021,0x00000003,0x00000002,0x00030016,0x00000006,0x00000020,0x00040017, - 0x00000007,0x00000006,0x00000004,0x00030021,0x00000008,0x00000007,0x00040017,0x0000000b, - 0x00000006,0x00000003,0x00040020,0x0000000c,0x00000003,0x0000000b,0x0004003b,0x0000000c, - 0x0000000d,0x00000003,0x00040018,0x0000000e,0x00000007,0x00000004,0x0005001e,0x0000000f, - 0x0000000e,0x0000000e,0x00000007,0x00040015,0x00000010,0x00000020,0x00000000,0x0004002b, - 0x00000010,0x00000011,0x00000100,0x0004001c,0x00000012,0x0000000f,0x00000011,0x0003001e, - 0x00000013,0x00000012,0x00040020,0x00000014,0x00000002,0x00000013,0x0004003b,0x00000014, - 0x00000015,0x00000002,0x00040015,0x00000016,0x00000020,0x00000001,0x0004002b,0x00000016, - 0x00000017,0x00000000,0x00040020,0x00000018,0x00000001,0x00000016,0x0004003b,0x00000018, - 0x00000019,0x00000001,0x00040020,0x0000001b,0x00000002,0x0000000e,0x00040020,0x0000001e, - 0x00000001,0x00000007,0x0004003b,0x0000001e,0x0000001f,0x00000001,0x0004003b,0x0000000c, - 0x00000026,0x00000003,0x0004002b,0x00000016,0x00000028,0x00000001,0x00040018,0x0000002b, - 0x0000000b,0x00000003,0x00040020,0x00000033,0x00000001,0x0000000b,0x0004003b,0x00000033, - 0x00000034,0x00000001,0x00040020,0x00000037,0x00000003,0x00000007,0x0004003b,0x00000037, - 0x00000038,0x00000003,0x0004003b,0x0000001e,0x00000039,0x00000001,0x00040017,0x0000003b, - 0x00000006,0x00000002,0x000f001e,0x0000003c,0x00000007,0x00000007,0x0000003b,0x0000003b, - 0x0000003b,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006, - 0x00000006,0x00040020,0x0000003d,0x00000002,0x0000003c,0x0004003b,0x0000003d,0x0000003e, - 0x00000002,0x00040020,0x0000003f,0x00000002,0x00000007,0x0004002b,0x00000016,0x00000044, - 0x00000002,0x00040020,0x00000048,0x00000003,0x0000003b,0x0004003b,0x00000048,0x00000049, - 0x00000003,0x00040020,0x0000004a,0x00000001,0x0000003b,0x0004003b,0x0000004a,0x0000004b, - 0x00000001,0x0004002b,0x00000010,0x0000004d,0x00000001,0x0004001c,0x0000004e,0x00000006, - 0x0000004d,0x0006001e,0x0000004f,0x00000007,0x00000006,0x0000004e,0x0000004e,0x00040020, - 0x00000050,0x00000003,0x0000004f,0x0004003b,0x00000050,0x00000051,0x00000003,0x0004002b, - 0x00000016,0x00000052,0x0000000c,0x00040020,0x00000053,0x00000002,0x00000006,0x00040020, - 0x00000056,0x00000003,0x00000006,0x00020014,0x0000005a,0x00030030,0x0000005a,0x0000005b, - 0x0004002b,0x00000016,0x0000005e,0x00000003,0x00040020,0x0000005f,0x00000002,0x0000003b, - 0x0006001e,0x00000068,0x0000000e,0x0000000e,0x0000000e,0x0000000e,0x0004002b,0x00000010, - 0x00000069,0x00000006,0x0004001c,0x0000006a,0x00000068,0x00000069,0x0003001e,0x0000006b, - 0x0000006a,0x00040020,0x0000006c,0x00000002,0x0000006b,0x0004003b,0x0000006c,0x0000006d, - 0x00000002,0x0004003b,0x00000018,0x0000006e,0x00000001,0x00030031,0x0000005a,0x0000007a, - 0x00030031,0x0000005a,0x0000007b,0x00030031,0x0000005a,0x0000007c,0x00030031,0x0000005a, - 0x0000007d,0x00030031,0x0000005a,0x0000007e,0x00030031,0x0000005a,0x0000007f,0x00030031, - 0x0000005a,0x00000080,0x00030031,0x0000005a,0x00000081,0x00030031,0x0000005a,0x00000082, - 0x0004001e,0x00000083,0x00000007,0x00000006,0x00040020,0x00000084,0x00000002,0x00000083, - 0x0004003b,0x00000084,0x00000085,0x00000002,0x0002001a,0x00000086,0x00040020,0x00000087, - 0x00000000,0x00000086,0x0004003b,0x00000087,0x00000088,0x00000000,0x00090019,0x00000089, - 0x00000006,0x00000001,0x00000000,0x00000000,0x00000000,0x00000001,0x00000000,0x00040020, - 0x0000008a,0x00000000,0x00000089,0x0004003b,0x0000008a,0x0000008b,0x00000000,0x0004003b, - 0x0000008a,0x0000008c,0x00000000,0x0004003b,0x0000008a,0x0000008d,0x00000000,0x0004003b, - 0x0000008a,0x0000008e,0x00000000,0x0004003b,0x0000008a,0x0000008f,0x00000000,0x0004003b, - 0x0000008a,0x00000090,0x00000000,0x0004003b,0x0000008a,0x00000091,0x00000000,0x0004003b, - 0x00000033,0x00000092,0x00000001,0x00050036,0x00000002,0x00000004,0x00000000,0x00000003, - 0x000200f8,0x00000005,0x0004003d,0x00000016,0x0000001a,0x00000019,0x00070041,0x0000001b, - 0x0000001c,0x00000015,0x00000017,0x0000001a,0x00000017,0x0004003d,0x0000000e,0x0000001d, - 0x0000001c,0x0004003d,0x00000007,0x00000020,0x0000001f,0x00050091,0x00000007,0x00000021, - 0x0000001d,0x00000020,0x00050051,0x00000006,0x00000022,0x00000021,0x00000000,0x00050051, - 0x00000006,0x00000023,0x00000021,0x00000001,0x00050051,0x00000006,0x00000024,0x00000021, - 0x00000002,0x00060050,0x0000000b,0x00000025,0x00000022,0x00000023,0x00000024,0x0003003e, - 0x0000000d,0x00000025,0x0004003d,0x00000016,0x00000027,0x00000019,0x00070041,0x0000001b, - 0x00000029,0x00000015,0x00000017,0x00000027,0x00000028,0x0004003d,0x0000000e,0x0000002a, - 0x00000029,0x00050051,0x00000007,0x0000002c,0x0000002a,0x00000000,0x0008004f,0x0000000b, - 0x0000002d,0x0000002c,0x0000002c,0x00000000,0x00000001,0x00000002,0x00050051,0x00000007, - 0x0000002e,0x0000002a,0x00000001,0x0008004f,0x0000000b,0x0000002f,0x0000002e,0x0000002e, - 0x00000000,0x00000001,0x00000002,0x00050051,0x00000007,0x00000030,0x0000002a,0x00000002, - 0x0008004f,0x0000000b,0x00000031,0x00000030,0x00000030,0x00000000,0x00000001,0x00000002, - 0x00060050,0x0000002b,0x00000032,0x0000002d,0x0000002f,0x00000031,0x0004003d,0x0000000b, - 0x00000035,0x00000034,0x00050091,0x0000000b,0x00000036,0x00000032,0x00000035,0x0003003e, - 0x00000026,0x00000036,0x0004003d,0x00000007,0x0000003a,0x00000039,0x00050041,0x0000003f, - 0x00000040,0x0000003e,0x00000017,0x0004003d,0x00000007,0x00000041,0x00000040,0x00050085, - 0x00000007,0x00000042,0x0000003a,0x00000041,0x0004003d,0x00000016,0x00000043,0x00000019, - 0x00070041,0x0000003f,0x00000045,0x00000015,0x00000017,0x00000043,0x00000044,0x0004003d, - 0x00000007,0x00000046,0x00000045,0x00050085,0x00000007,0x00000047,0x00000042,0x00000046, - 0x0003003e,0x00000038,0x00000047,0x0004003d,0x0000003b,0x0000004c,0x0000004b,0x0003003e, - 0x00000049,0x0000004c,0x00050041,0x00000053,0x00000054,0x0000003e,0x00000052,0x0004003d, - 0x00000006,0x00000055,0x00000054,0x00050041,0x00000056,0x00000057,0x00000051,0x00000028, - 0x0003003e,0x00000057,0x00000055,0x00040039,0x00000007,0x00000058,0x00000009,0x00050041, - 0x00000037,0x00000059,0x00000051,0x00000017,0x0003003e,0x00000059,0x00000058,0x000300f7, - 0x0000005d,0x00000000,0x000400fa,0x0000005b,0x0000005c,0x0000005d,0x000200f8,0x0000005c, - 0x00050041,0x0000005f,0x00000060,0x0000003e,0x0000005e,0x0004003d,0x0000003b,0x00000061, - 0x00000060,0x0004003d,0x0000003b,0x00000062,0x00000049,0x00050085,0x0000003b,0x00000063, - 0x00000062,0x00000061,0x0003003e,0x00000049,0x00000063,0x00050041,0x0000005f,0x00000064, - 0x0000003e,0x00000044,0x0004003d,0x0000003b,0x00000065,0x00000064,0x0004003d,0x0000003b, - 0x00000066,0x00000049,0x00050081,0x0000003b,0x00000067,0x00000066,0x00000065,0x0003003e, - 0x00000049,0x00000067,0x000200f9,0x0000005d,0x000200f8,0x0000005d,0x000100fd,0x00010038, - 0x00050036,0x00000007,0x00000009,0x00000000,0x00000008,0x000200f8,0x0000000a,0x0004003d, - 0x00000016,0x0000006f,0x0000006e,0x00070041,0x0000001b,0x00000070,0x0000006d,0x00000017, - 0x0000006f,0x00000044,0x0004003d,0x0000000e,0x00000071,0x00000070,0x0004003d,0x00000016, - 0x00000072,0x00000019,0x00070041,0x0000001b,0x00000073,0x00000015,0x00000017,0x00000072, - 0x00000017,0x0004003d,0x0000000e,0x00000074,0x00000073,0x00050092,0x0000000e,0x00000075, - 0x00000071,0x00000074,0x0004003d,0x00000007,0x00000076,0x0000001f,0x00050091,0x00000007, - 0x00000077,0x00000075,0x00000076,0x000200fe,0x00000077,0x00010038 - }, { - 0x07230203,0x00010000,0x0008000a,0x00000101,0x00000000,0x00020011,0x00000001,0x0006000b, - 0x00000001,0x4c534c47,0x6474732e,0x3035342e,0x00000000,0x0003000e,0x00000000,0x00000001, - 0x000a000f,0x00000004,0x00000004,0x6e69616d,0x00000000,0x00000023,0x0000002f,0x000000fd, - 0x000000fe,0x00000100,0x00030010,0x00000004,0x00000007,0x00030003,0x00000002,0x000001cc, - 0x00060004,0x455f4c47,0x6d5f5458,0x69746c75,0x77656976,0x00000000,0x000a0004,0x475f4c47, - 0x4c474f4f,0x70635f45,0x74735f70,0x5f656c79,0x656e696c,0x7269645f,0x69746365,0x00006576, - 0x00080004,0x475f4c47,0x4c474f4f,0x6e695f45,0x64756c63,0x69645f65,0x74636572,0x00657669, - 0x00040005,0x00000004,0x6e69616d,0x00000000,0x00070005,0x0000000f,0x50746567,0x6c657869, - 0x31327428,0x3266763b,0x0000003b,0x00030005,0x0000000d,0x00000074,0x00030005,0x0000000e, - 0x00007675,0x00050005,0x00000012,0x72766f6c,0x6e69616d,0x00000028,0x00040005,0x00000017, - 0x706d6153,0x0072656c,0x00050005,0x00000023,0x65786950,0x6c6f436c,0x0073726f,0x00050005, - 0x0000002a,0x62616e65,0x6c47656c,0x0000776f,0x00050005,0x0000002d,0x776f6c47,0x74786554, - 0x00657275,0x00030005,0x0000002f,0x00005655,0x00040005,0x00000030,0x61726170,0x0000006d, - 0x00060005,0x00000035,0x6574614d,0x6c616972,0x66667542,0x00007265,0x00050006,0x00000035, - 0x00000000,0x6f6c6f63,0x00000072,0x00050006,0x00000035,0x00000001,0x776f6c67,0x00000000, - 0x00050006,0x00000035,0x00000002,0x68537675,0x00746669,0x00050006,0x00000035,0x00000003, - 0x63537675,0x00656c61,0x00060006,0x00000035,0x00000004,0x52666473,0x65676e61,0x00000000, - 0x00060006,0x00000035,0x00000005,0x6174656d,0x73656e6c,0x00000073,0x00060006,0x00000035, - 0x00000006,0x67756f72,0x73656e68,0x00000073,0x00060006,0x00000035,0x00000007,0x61656c63, - 0x616f6372,0x00000074,0x00080006,0x00000035,0x00000008,0x61656c63,0x616f6372,0x756f5274, - 0x656e6867,0x00007373,0x00080006,0x00000035,0x00000009,0x6c63636f,0x6f697375,0x7274536e, - 0x74676e65,0x00000068,0x00060006,0x00000035,0x0000000a,0x6d726f6e,0x63536c61,0x00656c61, - 0x00060006,0x00000035,0x0000000b,0x68706c61,0x74754361,0x0066666f,0x00060006,0x00000035, - 0x0000000c,0x6e696f70,0x7a695374,0x00000065,0x00050005,0x00000037,0x6574614d,0x6c616972, - 0x00000000,0x00070005,0x00000050,0x62616e65,0x6c41656c,0x43616870,0x666f7475,0x00000066, - 0x00030005,0x0000005e,0x00000079,0x00030005,0x00000062,0x00007675,0x00030005,0x0000009f, - 0x00666473,0x00030005,0x000000a9,0x00000077,0x00040005,0x000000ad,0x68706c61,0x00000061, - 0x00040005,0x000000b6,0x6f6c6f63,0x00000072,0x00070005,0x000000de,0x62616e65,0x5655656c, - 0x6e617254,0x726f6673,0x0000006d,0x00060005,0x000000df,0x43657375,0x726f6c6f,0x74786554, - 0x00657275,0x00060005,0x000000e0,0x47657375,0x54776f6c,0x75747865,0x00006572,0x00070005, - 0x000000e1,0x4d657375,0x6c617465,0x7373656e,0x74786554,0x00657275,0x00070005,0x000000e2, - 0x52657375,0x6867756f,0x7373656e,0x74786554,0x00657275,0x00070005,0x000000e3,0x4f657375, - 0x756c6363,0x6e6f6973,0x74786554,0x00657275,0x00070005,0x000000e4,0x43657375,0x7261656c, - 0x74616f63,0x74786554,0x00657275,0x00070005,0x000000e5,0x4e657375,0x616d726f,0x7865546c, - 0x65727574,0x00000000,0x00040005,0x000000e6,0x626f6c47,0x00736c61,0x00060006,0x000000e6, - 0x00000000,0x6f736552,0x6974756c,0x00006e6f,0x00050006,0x000000e6,0x00000001,0x656d6954, - 0x00000000,0x00030005,0x000000e8,0x00000000,0x00040005,0x000000ea,0x656d6143,0x00006172, - 0x00050006,0x000000ea,0x00000000,0x77656976,0x00000000,0x00060006,0x000000ea,0x00000001, - 0x6a6f7270,0x69746365,0x00006e6f,0x00070006,0x000000ea,0x00000002,0x77656976,0x6a6f7250, - 0x69746365,0x00006e6f,0x00080006,0x000000ea,0x00000003,0x65766e69,0x50657372,0x656a6f72, - 0x6f697463,0x0000006e,0x00060005,0x000000ed,0x656d6143,0x75426172,0x72656666,0x00000000, - 0x00050006,0x000000ed,0x00000000,0x656d6143,0x00736172,0x00030005,0x000000ef,0x00000000, - 0x00040005,0x000000f0,0x77617244,0x00000000,0x00060006,0x000000f0,0x00000000,0x6e617274, - 0x726f6673,0x0000006d,0x00070006,0x000000f0,0x00000001,0x6d726f6e,0x614d6c61,0x78697274, - 0x00000000,0x00050006,0x000000f0,0x00000002,0x6f6c6f63,0x00000072,0x00050005,0x000000f3, - 0x77617244,0x66667542,0x00007265,0x00050006,0x000000f3,0x00000000,0x77617244,0x00000073, - 0x00030005,0x000000f5,0x00000000,0x00060005,0x000000f6,0x6f6c6f43,0x78655472,0x65727574, - 0x00000000,0x00070005,0x000000f7,0x6c63634f,0x6f697375,0x7865546e,0x65727574,0x00000000, - 0x00070005,0x000000f8,0x6174654d,0x73656e6c,0x78655473,0x65727574,0x00000000,0x00070005, - 0x000000f9,0x67756f52,0x73656e68,0x78655473,0x65727574,0x00000000,0x00070005,0x000000fa, - 0x61656c43,0x616f6372,0x78655474,0x65727574,0x00000000,0x00060005,0x000000fb,0x6d726f4e, - 0x65546c61,0x72757478,0x00000065,0x00060005,0x000000fd,0x69736f50,0x6e6f6974,0x6c726f57, - 0x00000064,0x00040005,0x000000fe,0x6d726f4e,0x00006c61,0x00040005,0x00000100,0x6f6c6f43, - 0x00000072,0x00040047,0x00000017,0x00000022,0x00000000,0x00040047,0x00000017,0x00000021, - 0x00000003,0x00040047,0x00000023,0x0000001e,0x00000000,0x00040047,0x0000002a,0x00000001, - 0x000003ea,0x00040047,0x0000002d,0x00000022,0x00000001,0x00040047,0x0000002d,0x00000021, - 0x00000002,0x00040047,0x0000002f,0x0000001e,0x0000000d,0x00050048,0x00000035,0x00000000, - 0x00000023,0x00000000,0x00050048,0x00000035,0x00000001,0x00000023,0x00000010,0x00050048, - 0x00000035,0x00000002,0x00000023,0x00000020,0x00050048,0x00000035,0x00000003,0x00000023, - 0x00000028,0x00050048,0x00000035,0x00000004,0x00000023,0x00000030,0x00050048,0x00000035, - 0x00000005,0x00000023,0x00000038,0x00050048,0x00000035,0x00000006,0x00000023,0x0000003c, - 0x00050048,0x00000035,0x00000007,0x00000023,0x00000040,0x00050048,0x00000035,0x00000008, - 0x00000023,0x00000044,0x00050048,0x00000035,0x00000009,0x00000023,0x00000048,0x00050048, - 0x00000035,0x0000000a,0x00000023,0x0000004c,0x00050048,0x00000035,0x0000000b,0x00000023, - 0x00000050,0x00050048,0x00000035,0x0000000c,0x00000023,0x00000054,0x00030047,0x00000035, - 0x00000002,0x00040047,0x00000037,0x00000022,0x00000001,0x00040047,0x00000037,0x00000021, - 0x00000000,0x00040047,0x00000050,0x00000001,0x000003e9,0x00040047,0x000000de,0x00000001, - 0x000003e8,0x00040047,0x000000df,0x00000001,0x000003eb,0x00040047,0x000000e0,0x00000001, - 0x000003ec,0x00040047,0x000000e1,0x00000001,0x000003ed,0x00040047,0x000000e2,0x00000001, - 0x000003ee,0x00040047,0x000000e3,0x00000001,0x000003ef,0x00040047,0x000000e4,0x00000001, - 0x000003f0,0x00040047,0x000000e5,0x00000001,0x000003f1,0x00050048,0x000000e6,0x00000000, - 0x00000023,0x00000000,0x00050048,0x000000e6,0x00000001,0x00000023,0x00000010,0x00030047, - 0x000000e6,0x00000002,0x00040047,0x000000e8,0x00000022,0x00000000,0x00040047,0x000000e8, - 0x00000021,0x00000000,0x00040048,0x000000ea,0x00000000,0x00000005,0x00050048,0x000000ea, - 0x00000000,0x00000023,0x00000000,0x00050048,0x000000ea,0x00000000,0x00000007,0x00000010, - 0x00040048,0x000000ea,0x00000001,0x00000005,0x00050048,0x000000ea,0x00000001,0x00000023, - 0x00000040,0x00050048,0x000000ea,0x00000001,0x00000007,0x00000010,0x00040048,0x000000ea, - 0x00000002,0x00000005,0x00050048,0x000000ea,0x00000002,0x00000023,0x00000080,0x00050048, - 0x000000ea,0x00000002,0x00000007,0x00000010,0x00040048,0x000000ea,0x00000003,0x00000005, - 0x00050048,0x000000ea,0x00000003,0x00000023,0x000000c0,0x00050048,0x000000ea,0x00000003, - 0x00000007,0x00000010,0x00040047,0x000000ec,0x00000006,0x00000100,0x00050048,0x000000ed, - 0x00000000,0x00000023,0x00000000,0x00030047,0x000000ed,0x00000002,0x00040047,0x000000ef, - 0x00000022,0x00000000,0x00040047,0x000000ef,0x00000021,0x00000001,0x00040048,0x000000f0, - 0x00000000,0x00000005,0x00050048,0x000000f0,0x00000000,0x00000023,0x00000000,0x00050048, - 0x000000f0,0x00000000,0x00000007,0x00000010,0x00040048,0x000000f0,0x00000001,0x00000005, - 0x00050048,0x000000f0,0x00000001,0x00000023,0x00000040,0x00050048,0x000000f0,0x00000001, - 0x00000007,0x00000010,0x00050048,0x000000f0,0x00000002,0x00000023,0x00000080,0x00040047, - 0x000000f2,0x00000006,0x00000090,0x00050048,0x000000f3,0x00000000,0x00000023,0x00000000, - 0x00030047,0x000000f3,0x00000002,0x00040047,0x000000f5,0x00000022,0x00000000,0x00040047, - 0x000000f5,0x00000021,0x00000002,0x00040047,0x000000f6,0x00000022,0x00000001,0x00040047, - 0x000000f6,0x00000021,0x00000001,0x00040047,0x000000f7,0x00000022,0x00000001,0x00040047, - 0x000000f7,0x00000021,0x00000003,0x00040047,0x000000f8,0x00000022,0x00000001,0x00040047, - 0x000000f8,0x00000021,0x00000004,0x00040047,0x000000f9,0x00000022,0x00000001,0x00040047, - 0x000000f9,0x00000021,0x00000005,0x00040047,0x000000fa,0x00000022,0x00000001,0x00040047, - 0x000000fa,0x00000021,0x00000006,0x00040047,0x000000fb,0x00000022,0x00000001,0x00040047, - 0x000000fb,0x00000021,0x00000007,0x00040047,0x000000fd,0x0000001e,0x0000000a,0x00040047, - 0x000000fe,0x0000001e,0x0000000b,0x00040047,0x00000100,0x0000001e,0x0000000c,0x00020013, - 0x00000002,0x00030021,0x00000003,0x00000002,0x00030016,0x00000006,0x00000020,0x00090019, - 0x00000007,0x00000006,0x00000001,0x00000000,0x00000000,0x00000000,0x00000001,0x00000000, - 0x00040020,0x00000008,0x00000000,0x00000007,0x00040017,0x00000009,0x00000006,0x00000002, - 0x00040020,0x0000000a,0x00000007,0x00000009,0x00040017,0x0000000b,0x00000006,0x00000004, - 0x00050021,0x0000000c,0x0000000b,0x00000008,0x0000000a,0x00030021,0x00000011,0x0000000b, - 0x0002001a,0x00000015,0x00040020,0x00000016,0x00000000,0x00000015,0x0004003b,0x00000016, - 0x00000017,0x00000000,0x0003001b,0x00000019,0x00000007,0x00040015,0x0000001f,0x00000020, - 0x00000000,0x0004002b,0x0000001f,0x00000020,0x00000001,0x0004001c,0x00000021,0x0000000b, - 0x00000020,0x00040020,0x00000022,0x00000003,0x00000021,0x0004003b,0x00000022,0x00000023, - 0x00000003,0x00040015,0x00000024,0x00000020,0x00000001,0x0004002b,0x00000024,0x00000025, - 0x00000000,0x00040020,0x00000027,0x00000003,0x0000000b,0x00020014,0x00000029,0x00030031, - 0x00000029,0x0000002a,0x0004003b,0x00000008,0x0000002d,0x00000000,0x00040020,0x0000002e, - 0x00000001,0x00000009,0x0004003b,0x0000002e,0x0000002f,0x00000001,0x00040017,0x00000033, - 0x00000006,0x00000003,0x000f001e,0x00000035,0x0000000b,0x0000000b,0x00000009,0x00000009, - 0x00000009,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006,0x00000006, - 0x00000006,0x00040020,0x00000036,0x00000002,0x00000035,0x0004003b,0x00000036,0x00000037, - 0x00000002,0x0004002b,0x00000024,0x00000038,0x00000001,0x00040020,0x00000039,0x00000002, - 0x0000000b,0x0004002b,0x0000001f,0x0000003e,0x00000003,0x00040020,0x0000003f,0x00000002, - 0x00000006,0x0004002b,0x0000001f,0x00000047,0x00000000,0x00040020,0x00000048,0x00000003, - 0x00000006,0x0004002b,0x0000001f,0x0000004d,0x00000002,0x00030031,0x00000029,0x00000050, - 0x0004002b,0x00000024,0x00000055,0x0000000b,0x00040020,0x0000005d,0x00000007,0x00000006, - 0x00040020,0x0000005f,0x00000001,0x00000006,0x0004002b,0x00000006,0x00000065,0x3f800000, - 0x0004002b,0x00000006,0x0000006b,0x40800000,0x0004002b,0x00000006,0x0000006d,0x40000000, - 0x0004002b,0x00000006,0x00000077,0x3f13cd3a,0x0004002b,0x00000006,0x00000079,0x3e800000, - 0x0004002b,0x00000006,0x0000007e,0x3fddb3d7,0x0004002b,0x00000006,0x00000083,0x00000000, - 0x0004002b,0x00000006,0x0000008d,0xbfddb3d7,0x0004002b,0x00000006,0x00000099,0xc0000000, - 0x0004002b,0x00000006,0x000000a7,0x3f000000,0x0004002b,0x00000006,0x000000ae,0x3e6147ae, - 0x00040020,0x000000b5,0x00000007,0x00000033,0x0004002b,0x00000006,0x000000b7,0x3dc08312, - 0x0004002b,0x00000006,0x000000b8,0x3f2978d5,0x0004002b,0x00000006,0x000000b9,0x3f63d70a, - 0x0006002c,0x00000033,0x000000ba,0x000000b7,0x000000b8,0x000000b9,0x0004002b,0x00000006, - 0x000000bb,0x3f69ba5e,0x0004002b,0x00000006,0x000000bc,0x3e8ccccd,0x0004002b,0x00000006, - 0x000000bd,0x3f19999a,0x0006002c,0x00000033,0x000000be,0x000000bb,0x000000bc,0x000000bd, - 0x0004002b,0x00000006,0x000000c0,0x3fc00000,0x0004002b,0x00000006,0x000000c7,0x3e4ccccd, - 0x0004002b,0x00000006,0x000000c8,0x3e75c28f,0x0006002c,0x00000033,0x000000c9,0x000000c7, - 0x000000c7,0x000000c8,0x0004002b,0x00000006,0x000000ca,0xbdf5c28f,0x0004002b,0x00000006, - 0x000000d4,0x400ccccd,0x0006002c,0x00000033,0x000000d5,0x000000d4,0x000000d4,0x000000d4, - 0x00030030,0x00000029,0x000000de,0x00030031,0x00000029,0x000000df,0x00030031,0x00000029, - 0x000000e0,0x00030031,0x00000029,0x000000e1,0x00030031,0x00000029,0x000000e2,0x00030031, - 0x00000029,0x000000e3,0x00030031,0x00000029,0x000000e4,0x00030031,0x00000029,0x000000e5, - 0x0004001e,0x000000e6,0x0000000b,0x00000006,0x00040020,0x000000e7,0x00000002,0x000000e6, - 0x0004003b,0x000000e7,0x000000e8,0x00000002,0x00040018,0x000000e9,0x0000000b,0x00000004, - 0x0006001e,0x000000ea,0x000000e9,0x000000e9,0x000000e9,0x000000e9,0x0004002b,0x0000001f, - 0x000000eb,0x00000006,0x0004001c,0x000000ec,0x000000ea,0x000000eb,0x0003001e,0x000000ed, - 0x000000ec,0x00040020,0x000000ee,0x00000002,0x000000ed,0x0004003b,0x000000ee,0x000000ef, - 0x00000002,0x0005001e,0x000000f0,0x000000e9,0x000000e9,0x0000000b,0x0004002b,0x0000001f, - 0x000000f1,0x00000100,0x0004001c,0x000000f2,0x000000f0,0x000000f1,0x0003001e,0x000000f3, - 0x000000f2,0x00040020,0x000000f4,0x00000002,0x000000f3,0x0004003b,0x000000f4,0x000000f5, - 0x00000002,0x0004003b,0x00000008,0x000000f6,0x00000000,0x0004003b,0x00000008,0x000000f7, - 0x00000000,0x0004003b,0x00000008,0x000000f8,0x00000000,0x0004003b,0x00000008,0x000000f9, - 0x00000000,0x0004003b,0x00000008,0x000000fa,0x00000000,0x0004003b,0x00000008,0x000000fb, - 0x00000000,0x00040020,0x000000fc,0x00000001,0x00000033,0x0004003b,0x000000fc,0x000000fd, - 0x00000001,0x0004003b,0x000000fc,0x000000fe,0x00000001,0x00040020,0x000000ff,0x00000001, - 0x0000000b,0x0004003b,0x000000ff,0x00000100,0x00000001,0x00050036,0x00000002,0x00000004, - 0x00000000,0x00000003,0x000200f8,0x00000005,0x0004003b,0x0000000a,0x00000030,0x00000007, - 0x00040039,0x0000000b,0x00000026,0x00000012,0x00050041,0x00000027,0x00000028,0x00000023, - 0x00000025,0x0003003e,0x00000028,0x00000026,0x000300f7,0x0000002c,0x00000000,0x000400fa, - 0x0000002a,0x0000002b,0x0000002c,0x000200f8,0x0000002b,0x0004003d,0x00000009,0x00000031, - 0x0000002f,0x0003003e,0x00000030,0x00000031,0x00060039,0x0000000b,0x00000032,0x0000000f, - 0x0000002d,0x00000030,0x0008004f,0x00000033,0x00000034,0x00000032,0x00000032,0x00000000, - 0x00000001,0x00000002,0x00050041,0x00000039,0x0000003a,0x00000037,0x00000038,0x0004003d, - 0x0000000b,0x0000003b,0x0000003a,0x0008004f,0x00000033,0x0000003c,0x0000003b,0x0000003b, - 0x00000000,0x00000001,0x00000002,0x00050085,0x00000033,0x0000003d,0x00000034,0x0000003c, - 0x00060041,0x0000003f,0x00000040,0x00000037,0x00000038,0x0000003e,0x0004003d,0x00000006, - 0x00000041,0x00000040,0x0005008e,0x00000033,0x00000042,0x0000003d,0x00000041,0x00050041, - 0x00000027,0x00000043,0x00000023,0x00000025,0x0004003d,0x0000000b,0x00000044,0x00000043, - 0x0008004f,0x00000033,0x00000045,0x00000044,0x00000044,0x00000000,0x00000001,0x00000002, - 0x00050081,0x00000033,0x00000046,0x00000045,0x00000042,0x00060041,0x00000048,0x00000049, - 0x00000023,0x00000025,0x00000047,0x00050051,0x00000006,0x0000004a,0x00000046,0x00000000, - 0x0003003e,0x00000049,0x0000004a,0x00060041,0x00000048,0x0000004b,0x00000023,0x00000025, - 0x00000020,0x00050051,0x00000006,0x0000004c,0x00000046,0x00000001,0x0003003e,0x0000004b, - 0x0000004c,0x00060041,0x00000048,0x0000004e,0x00000023,0x00000025,0x0000004d,0x00050051, - 0x00000006,0x0000004f,0x00000046,0x00000002,0x0003003e,0x0000004e,0x0000004f,0x000200f9, - 0x0000002c,0x000200f8,0x0000002c,0x000300f7,0x00000052,0x00000000,0x000400fa,0x00000050, - 0x00000051,0x00000052,0x000200f8,0x00000051,0x00060041,0x00000048,0x00000053,0x00000023, - 0x00000025,0x0000003e,0x0004003d,0x00000006,0x00000054,0x00000053,0x00050041,0x0000003f, - 0x00000056,0x00000037,0x00000055,0x0004003d,0x00000006,0x00000057,0x00000056,0x000500bc, - 0x00000029,0x00000058,0x00000054,0x00000057,0x000200f9,0x00000052,0x000200f8,0x00000052, - 0x000700f5,0x00000029,0x00000059,0x00000050,0x0000002c,0x00000058,0x00000051,0x000300f7, - 0x0000005b,0x00000000,0x000400fa,0x00000059,0x0000005a,0x0000005b,0x000200f8,0x0000005a, - 0x000100fc,0x000200f8,0x0000005b,0x000100fd,0x00010038,0x00050036,0x0000000b,0x0000000f, - 0x00000000,0x0000000c,0x00030037,0x00000008,0x0000000d,0x00030037,0x0000000a,0x0000000e, - 0x000200f8,0x00000010,0x0004003d,0x00000007,0x00000014,0x0000000d,0x0004003d,0x00000015, - 0x00000018,0x00000017,0x00050056,0x00000019,0x0000001a,0x00000014,0x00000018,0x0004003d, - 0x00000009,0x0000001b,0x0000000e,0x00050057,0x0000000b,0x0000001c,0x0000001a,0x0000001b, - 0x000200fe,0x0000001c,0x00010038,0x00050036,0x0000000b,0x00000012,0x00000000,0x00000011, - 0x000200f8,0x00000013,0x0004003b,0x0000005d,0x0000005e,0x00000007,0x0004003b,0x0000000a, - 0x00000062,0x00000007,0x0004003b,0x0000005d,0x0000009f,0x00000007,0x0004003b,0x0000005d, - 0x000000a9,0x00000007,0x0004003b,0x0000005d,0x000000ad,0x00000007,0x0004003b,0x000000b5, - 0x000000b6,0x00000007,0x00050041,0x0000005f,0x00000060,0x0000002f,0x00000020,0x0004003d, - 0x00000006,0x00000061,0x00000060,0x0003003e,0x0000005e,0x00000061,0x00050041,0x0000005f, - 0x00000063,0x0000002f,0x00000047,0x0004003d,0x00000006,0x00000064,0x00000063,0x00050041, - 0x0000005f,0x00000066,0x0000002f,0x00000020,0x0004003d,0x00000006,0x00000067,0x00000066, - 0x00050083,0x00000006,0x00000068,0x00000065,0x00000067,0x00050050,0x00000009,0x00000069, - 0x00000064,0x00000068,0x0003003e,0x00000062,0x00000069,0x0004003d,0x00000009,0x0000006a, - 0x00000062,0x0005008e,0x00000009,0x0000006c,0x0000006a,0x0000006b,0x00050050,0x00000009, - 0x0000006e,0x0000006d,0x0000006d,0x00050083,0x00000009,0x0000006f,0x0000006c,0x0000006e, - 0x0003003e,0x00000062,0x0000006f,0x00050041,0x0000005d,0x00000070,0x00000062,0x00000047, - 0x0004003d,0x00000006,0x00000071,0x00000070,0x0006000c,0x00000006,0x00000072,0x00000001, - 0x00000004,0x00000071,0x00050083,0x00000006,0x00000073,0x00000072,0x00000065,0x00050041, - 0x0000005d,0x00000074,0x00000062,0x00000047,0x0003003e,0x00000074,0x00000073,0x00050041, - 0x0000005d,0x00000075,0x00000062,0x00000020,0x0004003d,0x00000006,0x00000076,0x00000075, - 0x00050081,0x00000006,0x00000078,0x00000076,0x00000077,0x00050081,0x00000006,0x0000007a, - 0x00000078,0x00000079,0x00050041,0x0000005d,0x0000007b,0x00000062,0x00000020,0x0003003e, - 0x0000007b,0x0000007a,0x00050041,0x0000005d,0x0000007c,0x00000062,0x00000047,0x0004003d, - 0x00000006,0x0000007d,0x0000007c,0x00050041,0x0000005d,0x0000007f,0x00000062,0x00000020, - 0x0004003d,0x00000006,0x00000080,0x0000007f,0x00050085,0x00000006,0x00000081,0x0000007e, - 0x00000080,0x00050081,0x00000006,0x00000082,0x0000007d,0x00000081,0x000500ba,0x00000029, - 0x00000084,0x00000082,0x00000083,0x000300f7,0x00000086,0x00000000,0x000400fa,0x00000084, - 0x00000085,0x00000086,0x000200f8,0x00000085,0x00050041,0x0000005d,0x00000087,0x00000062, - 0x00000047,0x0004003d,0x00000006,0x00000088,0x00000087,0x00050041,0x0000005d,0x00000089, - 0x00000062,0x00000020,0x0004003d,0x00000006,0x0000008a,0x00000089,0x00050085,0x00000006, - 0x0000008b,0x0000007e,0x0000008a,0x00050083,0x00000006,0x0000008c,0x00000088,0x0000008b, - 0x00050041,0x0000005d,0x0000008e,0x00000062,0x00000047,0x0004003d,0x00000006,0x0000008f, - 0x0000008e,0x00050085,0x00000006,0x00000090,0x0000008d,0x0000008f,0x00050041,0x0000005d, - 0x00000091,0x00000062,0x00000020,0x0004003d,0x00000006,0x00000092,0x00000091,0x00050083, - 0x00000006,0x00000093,0x00000090,0x00000092,0x00050050,0x00000009,0x00000094,0x0000008c, - 0x00000093,0x00050050,0x00000009,0x00000095,0x0000006d,0x0000006d,0x00050088,0x00000009, - 0x00000096,0x00000094,0x00000095,0x0003003e,0x00000062,0x00000096,0x000200f9,0x00000086, - 0x000200f8,0x00000086,0x00050041,0x0000005d,0x00000097,0x00000062,0x00000047,0x0004003d, - 0x00000006,0x00000098,0x00000097,0x0008000c,0x00000006,0x0000009a,0x00000001,0x0000002b, - 0x00000098,0x00000099,0x00000083,0x00050041,0x0000005d,0x0000009b,0x00000062,0x00000047, - 0x0004003d,0x00000006,0x0000009c,0x0000009b,0x00050083,0x00000006,0x0000009d,0x0000009c, - 0x0000009a,0x00050041,0x0000005d,0x0000009e,0x00000062,0x00000047,0x0003003e,0x0000009e, - 0x0000009d,0x0004003d,0x00000009,0x000000a0,0x00000062,0x0006000c,0x00000006,0x000000a1, - 0x00000001,0x00000042,0x000000a0,0x0004007f,0x00000006,0x000000a2,0x000000a1,0x00050041, - 0x0000005d,0x000000a3,0x00000062,0x00000020,0x0004003d,0x00000006,0x000000a4,0x000000a3, - 0x0006000c,0x00000006,0x000000a5,0x00000001,0x00000006,0x000000a4,0x00050085,0x00000006, - 0x000000a6,0x000000a2,0x000000a5,0x00050083,0x00000006,0x000000a8,0x000000a6,0x000000a7, - 0x0003003e,0x0000009f,0x000000a8,0x0004003d,0x00000006,0x000000aa,0x0000009f,0x000400d1, - 0x00000006,0x000000ab,0x000000aa,0x00050085,0x00000006,0x000000ac,0x000000ab,0x000000a7, - 0x0003003e,0x000000a9,0x000000ac,0x0004003d,0x00000006,0x000000af,0x000000a9,0x00050081, - 0x00000006,0x000000b0,0x000000ae,0x000000af,0x0004003d,0x00000006,0x000000b1,0x000000a9, - 0x00050083,0x00000006,0x000000b2,0x000000ae,0x000000b1,0x0004003d,0x00000006,0x000000b3, - 0x0000009f,0x0008000c,0x00000006,0x000000b4,0x00000001,0x00000031,0x000000b0,0x000000b2, - 0x000000b3,0x0003003e,0x000000ad,0x000000b4,0x0004003d,0x00000006,0x000000bf,0x0000005e, - 0x00050085,0x00000006,0x000000c1,0x000000bf,0x000000c0,0x00050083,0x00000006,0x000000c2, - 0x000000c1,0x00000079,0x0008000c,0x00000006,0x000000c3,0x00000001,0x0000002b,0x000000c2, - 0x00000083,0x00000065,0x00060050,0x00000033,0x000000c4,0x000000c3,0x000000c3,0x000000c3, - 0x0008000c,0x00000033,0x000000c5,0x00000001,0x0000002e,0x000000ba,0x000000be,0x000000c4, - 0x0003003e,0x000000b6,0x000000c5,0x0004003d,0x00000033,0x000000c6,0x000000b6,0x0004003d, - 0x00000006,0x000000cb,0x000000a9,0x00050081,0x00000006,0x000000cc,0x000000ca,0x000000cb, - 0x0004003d,0x00000006,0x000000cd,0x000000a9,0x00050083,0x00000006,0x000000ce,0x000000ca, - 0x000000cd,0x0004003d,0x00000006,0x000000cf,0x0000009f,0x0008000c,0x00000006,0x000000d0, - 0x00000001,0x00000031,0x000000cc,0x000000ce,0x000000cf,0x00060050,0x00000033,0x000000d1, - 0x000000d0,0x000000d0,0x000000d0,0x0008000c,0x00000033,0x000000d2,0x00000001,0x0000002e, - 0x000000c6,0x000000c9,0x000000d1,0x0003003e,0x000000b6,0x000000d2,0x0004003d,0x00000033, - 0x000000d3,0x000000b6,0x0007000c,0x00000033,0x000000d6,0x00000001,0x0000001a,0x000000d3, - 0x000000d5,0x0004003d,0x00000006,0x000000d7,0x000000ad,0x00050051,0x00000006,0x000000d8, - 0x000000d6,0x00000000,0x00050051,0x00000006,0x000000d9,0x000000d6,0x00000001,0x00050051, - 0x00000006,0x000000da,0x000000d6,0x00000002,0x00070050,0x0000000b,0x000000db,0x000000d8, - 0x000000d9,0x000000da,0x000000d7,0x000200fe,0x000000db,0x00010038 - }) + logo = lovr.graphics.newShader('unlit', 'logo') end function lovr.draw(pass) @@ -498,9 +26,8 @@ function lovr.draw(pass) pass:setCullMode('back') pass:setShader(logo) pass:plane(0, 2, -3) - pass:setShader() - pass:setColor(1, 1, 1) + pass:text('LÖVR', -.012, titlePosition, -3, .25, quat(0, 0, 1, 0), nil, 'center', 'top') pass:setColor(.9, .9, .9, fade) diff --git a/etc/shaders.h b/etc/shaders.h index 19ea1ae1..e9990d23 100644 --- a/etc/shaders.h +++ b/etc/shaders.h @@ -10,6 +10,7 @@ #include "shaders/fill_stereo.frag.h" #include "shaders/animator.comp.h" #include "shaders/timewizard.comp.h" +#include "shaders/logo.frag.h" #include "shaders/lovr.glsl.h" diff --git a/etc/shaders/logo.frag b/etc/shaders/logo.frag new file mode 100644 index 00000000..329f1c53 --- /dev/null +++ b/etc/shaders/logo.frag @@ -0,0 +1,24 @@ +#version 460 +#extension GL_EXT_multiview : require +#extension GL_GOOGLE_include_directive : require + +#include "lovr.glsl" + +vec4 lovrmain() { + float y = UV.y; + vec2 uv = vec2(UV.x, 1. - UV.y); + uv = uv * 4. - 2.; + const float k = sqrt(3.); + uv.x = abs(uv.x) - 1.; + uv.y = uv.y + 1. / k + .25; + if (uv.x + k * uv.y > 0.) { + uv = vec2(uv.x - k * uv.y, -k * uv.x - uv.y) / 2.; + } + uv.x -= clamp(uv.x, -2., 0.); + float sdf = -length(uv) * sign(uv.y) - .5; + float w = fwidth(sdf) * .5; + float alpha = smoothstep(.22 + w, .22 - w, sdf); + vec3 color = mix(vec3(.094, .662, .890), vec3(.913, .275, .6), clamp(y * 1.5 - .25, 0., 1.)); + color = mix(color, vec3(.2, .2, .24), smoothstep(-.12 + w, -.12 - w, sdf)); + return vec4(pow(color, vec3(2.2)), alpha); +} diff --git a/src/api/l_graphics.c b/src/api/l_graphics.c index 484dba26..091d399c 100644 --- a/src/api/l_graphics.c +++ b/src/api/l_graphics.c @@ -59,6 +59,9 @@ StringEntry lovrDefaultShader[] = { [SHADER_CUBEMAP] = ENTRY("cubemap"), [SHADER_EQUIRECT] = ENTRY("equirect"), [SHADER_FILL] = ENTRY("fill"), + [SHADER_FILL_ARRAY] = ENTRY("fillarray"), + [SHADER_FILL_STEREO] = ENTRY("fillstereo"), + [SHADER_LOGO] = ENTRY("logo"), { 0 } }; diff --git a/src/modules/graphics/graphics.c b/src/modules/graphics/graphics.c index d5bc534d..928b56e9 100644 --- a/src/modules/graphics/graphics.c +++ b/src/modules/graphics/graphics.c @@ -1630,6 +1630,10 @@ ShaderSource lovrGraphicsGetDefaultShaderSource(DefaultShader type, ShaderStage [SHADER_FILL_STEREO] = { { lovr_shader_fill_vert, sizeof(lovr_shader_fill_vert) }, { lovr_shader_fill_stereo_frag, sizeof(lovr_shader_fill_stereo_frag) } + }, + [SHADER_LOGO] = { + { lovr_shader_unlit_vert, sizeof(lovr_shader_unlit_vert) }, + { lovr_shader_logo_frag, sizeof(lovr_shader_logo_frag) } } }; diff --git a/src/modules/graphics/graphics.h b/src/modules/graphics/graphics.h index 3d620337..04ed5b11 100644 --- a/src/modules/graphics/graphics.h +++ b/src/modules/graphics/graphics.h @@ -276,6 +276,7 @@ typedef enum { SHADER_FILL, SHADER_FILL_ARRAY, SHADER_FILL_STEREO, + SHADER_LOGO, DEFAULT_SHADER_COUNT } DefaultShader;