Private->Function variables, fragment output, geometry shader tweaks.

This commit is contained in:
Ben Vanik
2016-02-20 20:44:11 -08:00
parent 1e87d1fa7f
commit ff373a83a4
18 changed files with 60 additions and 47 deletions

View File

@@ -62,12 +62,12 @@ const uint8_t line_quad_list_geom[] = {
0x10, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0x10, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x22, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x24, 0x00, 0x00, 0x00,
0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
0x25, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,

View File

@@ -42,10 +42,10 @@
OpMemberDecorate %16 1 BuiltIn PointSize
OpMemberDecorate %16 2 BuiltIn ClipDistance
OpDecorate %16 Block
OpMemberDecorate %34 0 Location 1
OpMemberDecorate %34 0 Location 0
OpDecorate %34 Stream 0
OpDecorate %36 Stream 0
OpMemberDecorate %37 0 Location 1
OpMemberDecorate %37 0 Location 0
%2 = OpTypeVoid
%3 = OpTypeFunction %2
%6 = OpTypeFloat 32

View File

@@ -67,12 +67,12 @@ const uint8_t point_list_geom[] = {
0x27, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x4A, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x4C, 0x00, 0x00, 0x00,
0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
0x4D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,

View File

@@ -46,10 +46,10 @@
OpDecorate %39 Block
OpDecorate %39 Stream 0
OpDecorate %41 Stream 0
OpMemberDecorate %74 0 Location 1
OpMemberDecorate %74 0 Location 0
OpDecorate %74 Stream 0
OpDecorate %76 Stream 0
OpMemberDecorate %77 0 Location 1
OpMemberDecorate %77 0 Location 0
%2 = OpTypeVoid
%3 = OpTypeFunction %2
%6 = OpTypeFloat 32

View File

@@ -67,11 +67,11 @@ const uint8_t quad_list_geom[] = {
0x0B, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00,
0x27, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x39, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x39, 0x00, 0x00, 0x00,
0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x3B, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x05, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
0x02, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,

View File

@@ -45,10 +45,10 @@
OpMemberDecorate %39 1 BuiltIn PointSize
OpMemberDecorate %39 2 BuiltIn ClipDistance
OpDecorate %39 Block
OpMemberDecorate %57 0 Location 1
OpMemberDecorate %57 0 Location 0
OpDecorate %57 Stream 0
OpDecorate %59 Stream 0
OpMemberDecorate %60 0 Location 1
OpMemberDecorate %60 0 Location 0
%2 = OpTypeVoid
%3 = OpTypeFunction %2
%6 = OpTypeInt 32 1

View File

@@ -66,12 +66,12 @@ const uint8_t rect_list_geom[] = {
0x20, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x22, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x2F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x2F, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x31, 0x00, 0x00, 0x00,
0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x14, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,

View File

@@ -45,10 +45,10 @@
OpDecorate %32 Block
OpDecorate %32 Stream 0
OpDecorate %34 Stream 0
OpMemberDecorate %47 0 Location 1
OpMemberDecorate %47 0 Location 0
OpDecorate %47 Stream 0
OpDecorate %49 Stream 0
OpMemberDecorate %50 0 Location 1
OpMemberDecorate %50 0 Location 0
%2 = OpTypeVoid
%3 = OpTypeFunction %2
%6 = OpTypeBool

View File

@@ -1,7 +1,7 @@
// NOTE: This file is compiled and embedded into the exe.
// Use `xenia-build genspirv` and check in any changes under bin/.
#version 450
#version 450 core
#extension all : warn
in gl_PerVertex {
@@ -19,8 +19,8 @@ out gl_PerVertex {
struct VertexData {
vec4 o[16];
};
layout(location = 1) in VertexData in_vtx[];
layout(location = 1) out VertexData out_vtx;
layout(location = 0) in VertexData in_vtx[];
layout(location = 0) out VertexData out_vtx;
layout(lines_adjacency) in;
layout(line_strip, max_vertices = 5) out;

View File

@@ -1,7 +1,7 @@
// NOTE: This file is compiled and embedded into the exe.
// Use `xenia-build genspirv` and check in any changes under bin/.
#version 450
#version 450 core
#extension all : warn
in gl_PerVertex {
@@ -19,8 +19,8 @@ out gl_PerVertex {
struct VertexData {
vec4 o[16];
};
layout(location = 1) in VertexData in_vtx[];
layout(location = 1) out VertexData out_vtx;
layout(location = 0) in VertexData in_vtx[];
layout(location = 0) out VertexData out_vtx;
// TODO(benvanik): fetch default point size from register and use that if
// the VS doesn't write oPointSize.

View File

@@ -1,7 +1,7 @@
// NOTE: This file is compiled and embedded into the exe.
// Use `xenia-build genspirv` and check in any changes under bin/.
#version 450
#version 450 core
#extension all : warn
in gl_PerVertex {
@@ -19,8 +19,8 @@ out gl_PerVertex {
struct VertexData {
vec4 o[16];
};
layout(location = 1) in VertexData in_vtx[];
layout(location = 1) out VertexData out_vtx;
layout(location = 0) in VertexData in_vtx[];
layout(location = 0) out VertexData out_vtx;
layout(lines_adjacency) in;
layout(triangle_strip, max_vertices = 4) out;

View File

@@ -1,7 +1,7 @@
// NOTE: This file is compiled and embedded into the exe.
// Use `xenia-build genspirv` and check in any changes under bin/.
#version 450
#version 450 core
#extension all : warn
in gl_PerVertex {
@@ -19,8 +19,8 @@ out gl_PerVertex {
struct VertexData {
vec4 o[16];
};
layout(location = 1) in VertexData in_vtx[];
layout(location = 1) out VertexData out_vtx;
layout(location = 0) in VertexData in_vtx[];
layout(location = 0) out VertexData out_vtx;
layout(triangles) in;
layout(triangle_strip, max_vertices = 6) out;