Add UNSCALED to flat primitive vertex shader

This commit is contained in:
JS Deck 2020-10-16 01:48:27 -03:00
parent f4b026b392
commit 188569e164
4 changed files with 108 additions and 3 deletions

View File

@ -0,0 +1,95 @@
{0x07230203,0x00010000,0x000d000a,0x00000035,
0x00000000,0x00020011,0x00000001,0x0006000b,
0x00000001,0x4c534c47,0x6474732e,0x3035342e,
0x00000000,0x0003000e,0x00000000,0x00000001,
0x0009000f,0x00000000,0x00000004,0x6e69616d,
0x00000000,0x00000012,0x00000016,0x00000031,
0x00000032,0x00030003,0x00000002,0x000001c2,
0x000a0004,0x475f4c47,0x4c474f4f,0x70635f45,
0x74735f70,0x5f656c79,0x656e696c,0x7269645f,
0x69746365,0x00006576,0x00080004,0x475f4c47,
0x4c474f4f,0x6e695f45,0x64756c63,0x69645f65,
0x74636572,0x00657669,0x00040005,0x00000004,
0x6e69616d,0x00000000,0x00030005,0x00000009,
0x0066666f,0x00060005,0x00000010,0x505f6c67,
0x65567265,0x78657472,0x00000000,0x00060006,
0x00000010,0x00000000,0x505f6c67,0x7469736f,
0x006e6f69,0x00070006,0x00000010,0x00000001,
0x505f6c67,0x746e696f,0x657a6953,0x00000000,
0x00070006,0x00000010,0x00000002,0x435f6c67,
0x4470696c,0x61747369,0x0065636e,0x00070006,
0x00000010,0x00000003,0x435f6c67,0x446c6c75,
0x61747369,0x0065636e,0x00030005,0x00000012,
0x00000000,0x00050005,0x00000016,0x69736f50,
0x6e6f6974,0x00000000,0x00040005,0x00000031,
0x6c6f4376,0x0000726f,0x00040005,0x00000032,
0x6f6c6f43,0x00000072,0x00050005,0x00000034,
0x5346464f,0x555f5445,0x00000056,0x00050048,
0x00000010,0x00000000,0x0000000b,0x00000000,
0x00050048,0x00000010,0x00000001,0x0000000b,
0x00000001,0x00050048,0x00000010,0x00000002,
0x0000000b,0x00000003,0x00050048,0x00000010,
0x00000003,0x0000000b,0x00000004,0x00030047,
0x00000010,0x00000002,0x00040047,0x00000016,
0x0000001e,0x00000000,0x00030047,0x00000031,
0x00000000,0x00040047,0x00000031,0x0000001e,
0x00000000,0x00040047,0x00000032,0x0000001e,
0x00000001,0x00040047,0x00000034,0x00000001,
0x00000005,0x00020013,0x00000002,0x00030021,
0x00000003,0x00000002,0x00030016,0x00000006,
0x00000020,0x00040017,0x00000007,0x00000006,
0x00000002,0x00040020,0x00000008,0x00000007,
0x00000007,0x0004002b,0x00000006,0x0000000a,
0x3f000000,0x0005002c,0x00000007,0x0000000b,
0x0000000a,0x0000000a,0x00040017,0x0000000c,
0x00000006,0x00000004,0x00040015,0x0000000d,
0x00000020,0x00000000,0x0004002b,0x0000000d,
0x0000000e,0x00000001,0x0004001c,0x0000000f,
0x00000006,0x0000000e,0x0006001e,0x00000010,
0x0000000c,0x00000006,0x0000000f,0x0000000f,
0x00040020,0x00000011,0x00000003,0x00000010,
0x0004003b,0x00000011,0x00000012,0x00000003,
0x00040015,0x00000013,0x00000020,0x00000001,
0x0004002b,0x00000013,0x00000014,0x00000000,
0x00040020,0x00000015,0x00000001,0x0000000c,
0x0004003b,0x00000015,0x00000016,0x00000001,
0x0004002b,0x00000006,0x0000001b,0x44800000,
0x0004002b,0x00000006,0x0000001c,0x44000000,
0x0005002c,0x00000007,0x0000001d,0x0000001b,
0x0000001c,0x0004002b,0x00000006,0x0000001f,
0x40000000,0x0004002b,0x00000006,0x00000021,
0x3f800000,0x0004002b,0x0000000d,0x00000024,
0x00000002,0x00040020,0x00000025,0x00000001,
0x00000006,0x0004002b,0x0000000d,0x0000002b,
0x00000003,0x00040020,0x0000002f,0x00000003,
0x0000000c,0x0004003b,0x0000002f,0x00000031,
0x00000003,0x0004003b,0x00000015,0x00000032,
0x00000001,0x00040032,0x00000013,0x00000034,
0x00000000,0x00050036,0x00000002,0x00000004,
0x00000000,0x00000003,0x000200f8,0x00000005,
0x0004003b,0x00000008,0x00000009,0x00000007,
0x0003003e,0x00000009,0x0000000b,0x0004003d,
0x0000000c,0x00000017,0x00000016,0x0007004f,
0x00000007,0x00000018,0x00000017,0x00000017,
0x00000000,0x00000001,0x0004003d,0x00000007,
0x00000019,0x00000009,0x00050081,0x00000007,
0x0000001a,0x00000018,0x00000019,0x00050088,
0x00000007,0x0000001e,0x0000001a,0x0000001d,
0x0005008e,0x00000007,0x00000020,0x0000001e,
0x0000001f,0x00050050,0x00000007,0x00000022,
0x00000021,0x00000021,0x00050083,0x00000007,
0x00000023,0x00000020,0x00000022,0x00050041,
0x00000025,0x00000026,0x00000016,0x00000024,
0x0004003d,0x00000006,0x00000027,0x00000026,
0x00050051,0x00000006,0x00000028,0x00000023,
0x00000000,0x00050051,0x00000006,0x00000029,
0x00000023,0x00000001,0x00070050,0x0000000c,
0x0000002a,0x00000028,0x00000029,0x00000027,
0x00000021,0x00050041,0x00000025,0x0000002c,
0x00000016,0x0000002b,0x0004003d,0x00000006,
0x0000002d,0x0000002c,0x0005008e,0x0000000c,
0x0000002e,0x0000002a,0x0000002d,0x00050041,
0x0000002f,0x00000030,0x00000012,0x00000014,
0x0003003e,0x00000030,0x0000002e,0x0004003d,
0x0000000c,0x00000033,0x00000032,0x0003003e,
0x00000031,0x00000033,0x000100fd,0x00010038}

View File

@ -13,6 +13,7 @@ mkdir -p prebuilt
# Primitives shaders
"$GLSLC" -o prebuilt/flat.vert.inc -mfmt=c primitive.vert
"$GLSLC" -o prebuilt/flat.unscaled.vert.inc -mfmt=c -DUNSCALED primitive.vert
"$GLSLC" -o prebuilt/flat.frag.inc -mfmt=c primitive.frag
"$GLSLC" -o prebuilt/textured.vert.inc -mfmt=c -DTEXTURED primitive.vert
"$GLSLC" -o prebuilt/textured.unscaled.vert.inc -mfmt=c -DTEXTURED -DUNSCALED primitive.vert

View File

@ -241,7 +241,11 @@ void Renderer::set_filter_mode(FilterMode mode)
void Renderer::init_primitive_pipelines()
{
pipelines.flat = device.request_program(flat_vert, sizeof(flat_vert), flat_frag, sizeof(flat_frag));
if (msaa > 1 || scaling > 1)
pipelines.flat = device.request_program(flat_vert, sizeof(flat_vert), flat_frag, sizeof(flat_frag));
else
pipelines.flat = device.request_program(flat_unscaled_vert, sizeof(flat_unscaled_vert), flat_frag, sizeof(flat_frag));
if (msaa > 1)
{
pipelines.textured_scaled = device.request_program(textured_vert, sizeof(textured_vert), textured_msaa_frag, sizeof(textured_msaa_frag));
@ -276,10 +280,10 @@ void Renderer::init_primitive_feedback_pipelines()
}
else
{
pipelines.flat_masked = device.request_program(flat_vert, sizeof(flat_vert),
feedback_flat_frag, sizeof(feedback_flat_frag));
if (scaling > 1)
{
pipelines.flat_masked = device.request_program(flat_vert, sizeof(flat_vert),
feedback_flat_frag, sizeof(feedback_flat_frag));
pipelines.textured_masked_scaled = device.request_program(textured_vert, sizeof(textured_vert),
feedback_frag, sizeof(feedback_frag));
pipelines.textured_masked_unscaled = device.request_program(textured_vert, sizeof(textured_vert),
@ -287,6 +291,8 @@ void Renderer::init_primitive_feedback_pipelines()
}
else
{
pipelines.flat_masked = device.request_program(flat_unscaled_vert, sizeof(flat_unscaled_vert),
feedback_flat_frag, sizeof(feedback_flat_frag));
pipelines.textured_masked_scaled = device.request_program(textured_unscaled_vert, sizeof(textured_unscaled_vert),
feedback_frag, sizeof(feedback_frag));
pipelines.textured_masked_unscaled = device.request_program(textured_unscaled_vert, sizeof(textured_unscaled_vert),

View File

@ -45,6 +45,9 @@ static const uint32_t resolve_msaa_to_unscaled[] =
static const uint32_t flat_vert[] =
#include "flat.vert.inc"
;
static const uint32_t flat_unscaled_vert[] =
#include "flat.unscaled.vert.inc"
;
static const uint32_t flat_frag[] =
#include "flat.frag.inc"
;