mirror of https://github.com/bkaradzic/bgfx
Updated glslang.
This commit is contained in:
parent
29c334fc19
commit
369669b17d
|
@ -23,7 +23,7 @@
|
|||
#include <limits>
|
||||
#include <sstream>
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER < 1700
|
||||
#if defined(_MSC_VER) && _MSC_VER < 1800
|
||||
namespace std {
|
||||
bool isnan(double f)
|
||||
{
|
||||
|
|
|
@ -65,6 +65,14 @@ const Id NoResult = 0;
|
|||
const Id NoType = 0;
|
||||
|
||||
const Decoration NoPrecision = DecorationMax;
|
||||
|
||||
#ifdef __GNUC__
|
||||
# define POTENTIALLY_UNUSED __attribute__((unused))
|
||||
#else
|
||||
# define POTENTIALLY_UNUSED
|
||||
#endif
|
||||
|
||||
POTENTIALLY_UNUSED
|
||||
const MemorySemanticsMask MemorySemanticsAllMemory =
|
||||
(MemorySemanticsMask)(MemorySemanticsSequentiallyConsistentMask |
|
||||
MemorySemanticsUniformMemoryMask |
|
||||
|
|
|
@ -1,10 +1,9 @@
|
|||
glspv.frag
|
||||
ERROR: 0:4: '#error' : GL_SPIRV is set ( correct , not an error )
|
||||
ERROR: 0:6: '#error' : GL_SPIR is 100
|
||||
ERROR: 0:14: 'f' : non-opaque uniform variables need a layout(location=L)
|
||||
ERROR: 0:19: 'input_attachment_index' : only allowed when using GLSL for Vulkan
|
||||
ERROR: 0:19: '' : syntax error, unexpected IDENTIFIER, expecting LEFT_BRACE or COMMA or SEMICOLON
|
||||
ERROR: 5 compilation errors. No code generated.
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
|
|
@ -23,14 +23,14 @@ gl_FragCoord origin is upper left
|
|||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:? 'clip' ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 1-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:? 'cull' ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 1-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -74,14 +74,14 @@ gl_FragCoord origin is upper left
|
|||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:? 'clip' ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 1-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:? 'cull' ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 1-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
|
|
@ -1,80 +1,276 @@
|
|||
hlsl.clipdistance-1.geom
|
||||
ERROR: 0:13: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 0:13: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 0:20: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 0:20: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 500
|
||||
invocations = -1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:13 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-f1-f11;f1[3];f1[3]; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
0:13 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:13 'clip' ( in 3-element array of float)
|
||||
0:13 'cull' ( in 3-element array of float)
|
||||
0:? Sequence
|
||||
0:11 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3]; ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:11 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:11 'VertexID' ( in 3-element array of uint)
|
||||
0:11 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:11 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 clip: direct index for structure ( temp float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 'clip' ( in 3-element array of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 cull: direct index for structure ( temp float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 'cull' ( in 3-element array of float)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:20 Sequence
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:14 move second child to first child ( temp 4-component vector of float)
|
||||
0:14 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:14 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 direct index ( temp 4-component vector of float)
|
||||
0:14 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:15 move second child to first child ( temp 2-component vector of float)
|
||||
0:15 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:15 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:15 vector swizzle ( temp 2-component vector of float)
|
||||
0:15 direct index ( temp 4-component vector of float)
|
||||
0:15 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 Sequence
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:17 Sequence
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:20 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 EmitVertex ( temp void)
|
||||
0:13 Function Definition: main( ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:17 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:? Sequence
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 EmitVertex ( temp void)
|
||||
0:11 Function Definition: main( ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:11 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:13 move second child to first child ( temp 3-element array of uint)
|
||||
0:11 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:13 Function Call: @main(vf4[3];u1[3];struct-S-vf4-f1-f11;f1[3];f1[3]; ( temp void)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:? 'clip' ( temp 3-element array of float)
|
||||
0:? 'cull' ( temp 3-element array of float)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
@ -85,69 +281,457 @@ invocations = 1
|
|||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:13 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-f1-f11;f1[3];f1[3]; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
0:13 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:13 'clip' ( in 3-element array of float)
|
||||
0:13 'cull' ( in 3-element array of float)
|
||||
0:? Sequence
|
||||
0:11 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3]; ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:11 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:11 'VertexID' ( in 3-element array of uint)
|
||||
0:11 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:11 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 clip: direct index for structure ( temp float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 'clip' ( in 3-element array of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 cull: direct index for structure ( temp float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 'cull' ( in 3-element array of float)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:20 Sequence
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:14 move second child to first child ( temp 4-component vector of float)
|
||||
0:14 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:14 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 direct index ( temp 4-component vector of float)
|
||||
0:14 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:15 move second child to first child ( temp 2-component vector of float)
|
||||
0:15 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:15 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:15 vector swizzle ( temp 2-component vector of float)
|
||||
0:15 direct index ( temp 4-component vector of float)
|
||||
0:15 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 Sequence
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:17 Sequence
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:20 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 EmitVertex ( temp void)
|
||||
0:13 Function Definition: main( ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:17 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:? Sequence
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 move second child to first child ( temp float)
|
||||
0:17 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp float)
|
||||
0:17 clip: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 EmitVertex ( temp void)
|
||||
0:11 Function Definition: main( ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:11 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:13 move second child to first child ( temp 3-element array of uint)
|
||||
0:11 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:13 Function Call: @main(vf4[3];u1[3];struct-S-vf4-f1-f11;f1[3];f1[3]; ( temp void)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp float clip, temp float cull})
|
||||
0:? 'clip' ( temp 3-element array of float)
|
||||
0:? 'cull' ( temp 3-element array of float)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip})
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 2-element array of float ClipDistance)
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 118
|
||||
|
||||
Capability Geometry
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 38 44 57 61 68
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 3
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 15 "S"
|
||||
MemberName 15(S) 0 "pos"
|
||||
MemberName 15(S) 1 "clip"
|
||||
Name 22 "@main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3];"
|
||||
Name 18 "pos"
|
||||
Name 19 "VertexID"
|
||||
Name 20 "OutputStream"
|
||||
Name 21 "clip"
|
||||
Name 24 "s"
|
||||
Name 38 "OutputStream.pos"
|
||||
Name 44 "OutputStream.clip"
|
||||
Name 55 "pos"
|
||||
Name 57 "pos"
|
||||
Name 59 "VertexID"
|
||||
Name 61 "VertexID"
|
||||
Name 63 "clip"
|
||||
Name 68 "clip"
|
||||
Name 108 "OutputStream"
|
||||
Name 109 "param"
|
||||
Name 111 "param"
|
||||
Name 113 "param"
|
||||
Name 114 "param"
|
||||
Decorate 38(OutputStream.pos) BuiltIn Position
|
||||
Decorate 44(OutputStream.clip) BuiltIn ClipDistance
|
||||
Decorate 57(pos) BuiltIn Position
|
||||
Decorate 61(VertexID) Location 0
|
||||
Decorate 68(clip) BuiltIn ClipDistance
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Function 10
|
||||
12: TypeArray 8(int) 9
|
||||
13: TypePointer Function 12
|
||||
14: TypeVector 6(float) 2
|
||||
15(S): TypeStruct 7(fvec4) 14(fvec2)
|
||||
16: TypePointer Function 15(S)
|
||||
17: TypeFunction 2 11(ptr) 13(ptr) 16(ptr) 11(ptr)
|
||||
25: TypeInt 32 1
|
||||
26: 25(int) Constant 0
|
||||
27: TypePointer Function 7(fvec4)
|
||||
31: 25(int) Constant 1
|
||||
35: TypePointer Function 14(fvec2)
|
||||
37: TypePointer Output 7(fvec4)
|
||||
38(OutputStream.pos): 37(ptr) Variable Output
|
||||
41: 8(int) Constant 2
|
||||
42: TypeArray 6(float) 41
|
||||
43: TypePointer Output 42
|
||||
44(OutputStream.clip): 43(ptr) Variable Output
|
||||
45: 8(int) Constant 0
|
||||
46: TypePointer Function 6(float)
|
||||
49: TypePointer Output 6(float)
|
||||
51: 8(int) Constant 1
|
||||
56: TypePointer Input 10
|
||||
57(pos): 56(ptr) Variable Input
|
||||
60: TypePointer Input 12
|
||||
61(VertexID): 60(ptr) Variable Input
|
||||
64: 8(int) Constant 4
|
||||
65: TypeArray 6(float) 64
|
||||
66: TypeArray 65 9
|
||||
67: TypePointer Input 66
|
||||
68(clip): 67(ptr) Variable Input
|
||||
69: TypePointer Input 6(float)
|
||||
76: 25(int) Constant 2
|
||||
80: 25(int) Constant 3
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
55(pos): 11(ptr) Variable Function
|
||||
59(VertexID): 13(ptr) Variable Function
|
||||
63(clip): 11(ptr) Variable Function
|
||||
108(OutputStream): 16(ptr) Variable Function
|
||||
109(param): 11(ptr) Variable Function
|
||||
111(param): 13(ptr) Variable Function
|
||||
113(param): 16(ptr) Variable Function
|
||||
114(param): 11(ptr) Variable Function
|
||||
58: 10 Load 57(pos)
|
||||
Store 55(pos) 58
|
||||
62: 12 Load 61(VertexID)
|
||||
Store 59(VertexID) 62
|
||||
70: 69(ptr) AccessChain 68(clip) 26 26
|
||||
71: 6(float) Load 70
|
||||
72: 46(ptr) AccessChain 63(clip) 26 45
|
||||
Store 72 71
|
||||
73: 69(ptr) AccessChain 68(clip) 26 31
|
||||
74: 6(float) Load 73
|
||||
75: 46(ptr) AccessChain 63(clip) 26 51
|
||||
Store 75 74
|
||||
77: 69(ptr) AccessChain 68(clip) 26 76
|
||||
78: 6(float) Load 77
|
||||
79: 46(ptr) AccessChain 63(clip) 26 41
|
||||
Store 79 78
|
||||
81: 69(ptr) AccessChain 68(clip) 26 80
|
||||
82: 6(float) Load 81
|
||||
83: 46(ptr) AccessChain 63(clip) 26 9
|
||||
Store 83 82
|
||||
84: 69(ptr) AccessChain 68(clip) 31 26
|
||||
85: 6(float) Load 84
|
||||
86: 46(ptr) AccessChain 63(clip) 31 45
|
||||
Store 86 85
|
||||
87: 69(ptr) AccessChain 68(clip) 31 31
|
||||
88: 6(float) Load 87
|
||||
89: 46(ptr) AccessChain 63(clip) 31 51
|
||||
Store 89 88
|
||||
90: 69(ptr) AccessChain 68(clip) 31 76
|
||||
91: 6(float) Load 90
|
||||
92: 46(ptr) AccessChain 63(clip) 31 41
|
||||
Store 92 91
|
||||
93: 69(ptr) AccessChain 68(clip) 31 80
|
||||
94: 6(float) Load 93
|
||||
95: 46(ptr) AccessChain 63(clip) 31 9
|
||||
Store 95 94
|
||||
96: 69(ptr) AccessChain 68(clip) 76 26
|
||||
97: 6(float) Load 96
|
||||
98: 46(ptr) AccessChain 63(clip) 76 45
|
||||
Store 98 97
|
||||
99: 69(ptr) AccessChain 68(clip) 76 31
|
||||
100: 6(float) Load 99
|
||||
101: 46(ptr) AccessChain 63(clip) 76 51
|
||||
Store 101 100
|
||||
102: 69(ptr) AccessChain 68(clip) 76 76
|
||||
103: 6(float) Load 102
|
||||
104: 46(ptr) AccessChain 63(clip) 76 41
|
||||
Store 104 103
|
||||
105: 69(ptr) AccessChain 68(clip) 76 80
|
||||
106: 6(float) Load 105
|
||||
107: 46(ptr) AccessChain 63(clip) 76 9
|
||||
Store 107 106
|
||||
110: 10 Load 55(pos)
|
||||
Store 109(param) 110
|
||||
112: 12 Load 59(VertexID)
|
||||
Store 111(param) 112
|
||||
115: 10 Load 63(clip)
|
||||
Store 114(param) 115
|
||||
116: 2 FunctionCall 22(@main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3];) 109(param) 111(param) 113(param) 114(param)
|
||||
117: 15(S) Load 113(param)
|
||||
Store 108(OutputStream) 117
|
||||
Return
|
||||
FunctionEnd
|
||||
22(@main(vf4[3];u1[3];struct-S-vf4-vf21;vf4[3];): 2 Function None 17
|
||||
18(pos): 11(ptr) FunctionParameter
|
||||
19(VertexID): 13(ptr) FunctionParameter
|
||||
20(OutputStream): 16(ptr) FunctionParameter
|
||||
21(clip): 11(ptr) FunctionParameter
|
||||
23: Label
|
||||
24(s): 16(ptr) Variable Function
|
||||
28: 27(ptr) AccessChain 18(pos) 26
|
||||
29: 7(fvec4) Load 28
|
||||
30: 27(ptr) AccessChain 24(s) 26
|
||||
Store 30 29
|
||||
32: 27(ptr) AccessChain 21(clip) 26
|
||||
33: 7(fvec4) Load 32
|
||||
34: 14(fvec2) VectorShuffle 33 33 0 1
|
||||
36: 35(ptr) AccessChain 24(s) 31
|
||||
Store 36 34
|
||||
39: 27(ptr) AccessChain 24(s) 26
|
||||
40: 7(fvec4) Load 39
|
||||
Store 38(OutputStream.pos) 40
|
||||
47: 46(ptr) AccessChain 24(s) 31 45
|
||||
48: 6(float) Load 47
|
||||
50: 49(ptr) AccessChain 44(OutputStream.clip) 26
|
||||
Store 50 48
|
||||
52: 46(ptr) AccessChain 24(s) 31 51
|
||||
53: 6(float) Load 52
|
||||
54: 49(ptr) AccessChain 44(OutputStream.clip) 31
|
||||
Store 54 53
|
||||
EmitVertex
|
||||
Return
|
||||
FunctionEnd
|
||||
|
|
|
@ -34,14 +34,14 @@ Shader version: 500
|
|||
0:? 'pos' ( temp 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 1-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:? 'clip' ( temp float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 1-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -90,14 +90,14 @@ Shader version: 500
|
|||
0:? 'pos' ( temp 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 1-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:? 'clip' ( temp float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 1-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
|
|
@ -41,7 +41,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -53,7 +53,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -65,7 +65,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -77,7 +77,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -90,7 +90,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -102,7 +102,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -114,7 +114,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -126,7 +126,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -188,7 +188,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -200,7 +200,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -212,7 +212,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -224,7 +224,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float ClipDistance)
|
||||
0:? 'clip' ( in 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -237,7 +237,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -249,7 +249,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 0 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -261,7 +261,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -273,7 +273,7 @@ gl_FragCoord origin is upper left
|
|||
0:4 1 (const int)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( in float CullDistance)
|
||||
0:? 'cull' ( in 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
|
|
@ -1,15 +1,10 @@
|
|||
hlsl.clipdistance-2.geom
|
||||
ERROR: 0:11: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 0:18: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 500
|
||||
invocations = -1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Sequence
|
||||
0:11 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2]; ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:11 'pos' ( in 3-element array of 4-component vector of float)
|
||||
|
@ -64,6 +59,67 @@ ERROR: node is still EOpNull!
|
|||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:? Sequence
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 3 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 EmitVertex ( temp void)
|
||||
0:11 Function Definition: main( ( temp void)
|
||||
0:11 Function Parameters:
|
||||
|
@ -74,6 +130,223 @@ ERROR: node is still EOpNull!
|
|||
0:11 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
|
@ -83,6 +356,8 @@ ERROR: node is still EOpNull!
|
|||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
@ -93,7 +368,7 @@ invocations = 1
|
|||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Sequence
|
||||
0:11 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2]; ( temp void)
|
||||
0:11 Function Parameters:
|
||||
0:11 'pos' ( in 3-element array of 4-component vector of float)
|
||||
|
@ -148,6 +423,67 @@ ERROR: node is still EOpNull!
|
|||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:? Sequence
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 move second child to first child ( temp float)
|
||||
0:18 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 3 (const int)
|
||||
0:18 direct index ( temp float)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 clip: direct index for structure ( temp 2-element array of 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-element array of 2-component vector of float clip})
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 EmitVertex ( temp void)
|
||||
0:11 Function Definition: main( ( temp void)
|
||||
0:11 Function Parameters:
|
||||
|
@ -158,6 +494,223 @@ ERROR: node is still EOpNull!
|
|||
0:11 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( temp 2-component vector of float)
|
||||
0:11 direct index ( temp 2-element array of 2-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 2-element array of 2-component vector of float)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 direct index ( in float ClipDistance)
|
||||
0:11 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
0:11 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
|
@ -167,5 +720,205 @@ ERROR: node is still EOpNull!
|
|||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip' ( out 4-element array of float ClipDistance)
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 128
|
||||
|
||||
Capability Geometry
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 44 50 71 75 80
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 3
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 17 "S"
|
||||
MemberName 17(S) 0 "pos"
|
||||
MemberName 17(S) 1 "clip"
|
||||
Name 26 "@main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2];"
|
||||
Name 22 "pos"
|
||||
Name 23 "VertexID"
|
||||
Name 24 "OutputStream"
|
||||
Name 25 "clip"
|
||||
Name 28 "s"
|
||||
Name 44 "OutputStream.pos"
|
||||
Name 50 "OutputStream.clip"
|
||||
Name 69 "pos"
|
||||
Name 71 "pos"
|
||||
Name 73 "VertexID"
|
||||
Name 75 "VertexID"
|
||||
Name 77 "clip"
|
||||
Name 80 "clip"
|
||||
Name 118 "OutputStream"
|
||||
Name 119 "param"
|
||||
Name 121 "param"
|
||||
Name 123 "param"
|
||||
Name 124 "param"
|
||||
Decorate 44(OutputStream.pos) BuiltIn Position
|
||||
Decorate 50(OutputStream.clip) BuiltIn ClipDistance
|
||||
Decorate 71(pos) BuiltIn Position
|
||||
Decorate 75(VertexID) Location 0
|
||||
Decorate 80(clip) BuiltIn ClipDistance
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Function 10
|
||||
12: TypeArray 8(int) 9
|
||||
13: TypePointer Function 12
|
||||
14: TypeVector 6(float) 2
|
||||
15: 8(int) Constant 2
|
||||
16: TypeArray 14(fvec2) 15
|
||||
17(S): TypeStruct 7(fvec4) 16
|
||||
18: TypePointer Function 17(S)
|
||||
19: TypeArray 16 9
|
||||
20: TypePointer Function 19
|
||||
21: TypeFunction 2 11(ptr) 13(ptr) 18(ptr) 20(ptr)
|
||||
29: TypeInt 32 1
|
||||
30: 29(int) Constant 0
|
||||
31: TypePointer Function 7(fvec4)
|
||||
35: 29(int) Constant 1
|
||||
36: TypePointer Function 14(fvec2)
|
||||
43: TypePointer Output 7(fvec4)
|
||||
44(OutputStream.pos): 43(ptr) Variable Output
|
||||
47: 8(int) Constant 4
|
||||
48: TypeArray 6(float) 47
|
||||
49: TypePointer Output 48
|
||||
50(OutputStream.clip): 49(ptr) Variable Output
|
||||
51: 8(int) Constant 0
|
||||
52: TypePointer Function 6(float)
|
||||
55: TypePointer Output 6(float)
|
||||
57: 8(int) Constant 1
|
||||
61: 29(int) Constant 2
|
||||
65: 29(int) Constant 3
|
||||
70: TypePointer Input 10
|
||||
71(pos): 70(ptr) Variable Input
|
||||
74: TypePointer Input 12
|
||||
75(VertexID): 74(ptr) Variable Input
|
||||
78: TypeArray 48 9
|
||||
79: TypePointer Input 78
|
||||
80(clip): 79(ptr) Variable Input
|
||||
81: TypePointer Input 6(float)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
69(pos): 11(ptr) Variable Function
|
||||
73(VertexID): 13(ptr) Variable Function
|
||||
77(clip): 20(ptr) Variable Function
|
||||
118(OutputStream): 18(ptr) Variable Function
|
||||
119(param): 11(ptr) Variable Function
|
||||
121(param): 13(ptr) Variable Function
|
||||
123(param): 18(ptr) Variable Function
|
||||
124(param): 20(ptr) Variable Function
|
||||
72: 10 Load 71(pos)
|
||||
Store 69(pos) 72
|
||||
76: 12 Load 75(VertexID)
|
||||
Store 73(VertexID) 76
|
||||
82: 81(ptr) AccessChain 80(clip) 30 30
|
||||
83: 6(float) Load 82
|
||||
84: 52(ptr) AccessChain 77(clip) 30 30 51
|
||||
Store 84 83
|
||||
85: 81(ptr) AccessChain 80(clip) 30 35
|
||||
86: 6(float) Load 85
|
||||
87: 52(ptr) AccessChain 77(clip) 30 30 57
|
||||
Store 87 86
|
||||
88: 81(ptr) AccessChain 80(clip) 30 61
|
||||
89: 6(float) Load 88
|
||||
90: 52(ptr) AccessChain 77(clip) 30 35 51
|
||||
Store 90 89
|
||||
91: 81(ptr) AccessChain 80(clip) 30 65
|
||||
92: 6(float) Load 91
|
||||
93: 52(ptr) AccessChain 77(clip) 30 35 57
|
||||
Store 93 92
|
||||
94: 81(ptr) AccessChain 80(clip) 35 30
|
||||
95: 6(float) Load 94
|
||||
96: 52(ptr) AccessChain 77(clip) 35 30 51
|
||||
Store 96 95
|
||||
97: 81(ptr) AccessChain 80(clip) 35 35
|
||||
98: 6(float) Load 97
|
||||
99: 52(ptr) AccessChain 77(clip) 35 30 57
|
||||
Store 99 98
|
||||
100: 81(ptr) AccessChain 80(clip) 35 61
|
||||
101: 6(float) Load 100
|
||||
102: 52(ptr) AccessChain 77(clip) 35 35 51
|
||||
Store 102 101
|
||||
103: 81(ptr) AccessChain 80(clip) 35 65
|
||||
104: 6(float) Load 103
|
||||
105: 52(ptr) AccessChain 77(clip) 35 35 57
|
||||
Store 105 104
|
||||
106: 81(ptr) AccessChain 80(clip) 61 30
|
||||
107: 6(float) Load 106
|
||||
108: 52(ptr) AccessChain 77(clip) 61 30 51
|
||||
Store 108 107
|
||||
109: 81(ptr) AccessChain 80(clip) 61 35
|
||||
110: 6(float) Load 109
|
||||
111: 52(ptr) AccessChain 77(clip) 61 30 57
|
||||
Store 111 110
|
||||
112: 81(ptr) AccessChain 80(clip) 61 61
|
||||
113: 6(float) Load 112
|
||||
114: 52(ptr) AccessChain 77(clip) 61 35 51
|
||||
Store 114 113
|
||||
115: 81(ptr) AccessChain 80(clip) 61 65
|
||||
116: 6(float) Load 115
|
||||
117: 52(ptr) AccessChain 77(clip) 61 35 57
|
||||
Store 117 116
|
||||
120: 10 Load 69(pos)
|
||||
Store 119(param) 120
|
||||
122: 12 Load 73(VertexID)
|
||||
Store 121(param) 122
|
||||
125: 19 Load 77(clip)
|
||||
Store 124(param) 125
|
||||
126: 2 FunctionCall 26(@main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2];) 119(param) 121(param) 123(param) 124(param)
|
||||
127: 17(S) Load 123(param)
|
||||
Store 118(OutputStream) 127
|
||||
Return
|
||||
FunctionEnd
|
||||
26(@main(vf4[3];u1[3];struct-S-vf4-vf2[2]1;vf2[3][2];): 2 Function None 21
|
||||
22(pos): 11(ptr) FunctionParameter
|
||||
23(VertexID): 13(ptr) FunctionParameter
|
||||
24(OutputStream): 18(ptr) FunctionParameter
|
||||
25(clip): 20(ptr) FunctionParameter
|
||||
27: Label
|
||||
28(s): 18(ptr) Variable Function
|
||||
32: 31(ptr) AccessChain 22(pos) 30
|
||||
33: 7(fvec4) Load 32
|
||||
34: 31(ptr) AccessChain 28(s) 30
|
||||
Store 34 33
|
||||
37: 36(ptr) AccessChain 25(clip) 30 30
|
||||
38: 14(fvec2) Load 37
|
||||
39: 36(ptr) AccessChain 28(s) 35 30
|
||||
Store 39 38
|
||||
40: 36(ptr) AccessChain 25(clip) 30 35
|
||||
41: 14(fvec2) Load 40
|
||||
42: 36(ptr) AccessChain 28(s) 35 35
|
||||
Store 42 41
|
||||
45: 31(ptr) AccessChain 28(s) 30
|
||||
46: 7(fvec4) Load 45
|
||||
Store 44(OutputStream.pos) 46
|
||||
53: 52(ptr) AccessChain 28(s) 35 30 51
|
||||
54: 6(float) Load 53
|
||||
56: 55(ptr) AccessChain 50(OutputStream.clip) 30
|
||||
Store 56 54
|
||||
58: 52(ptr) AccessChain 28(s) 35 30 57
|
||||
59: 6(float) Load 58
|
||||
60: 55(ptr) AccessChain 50(OutputStream.clip) 35
|
||||
Store 60 59
|
||||
62: 52(ptr) AccessChain 28(s) 35 35 51
|
||||
63: 6(float) Load 62
|
||||
64: 55(ptr) AccessChain 50(OutputStream.clip) 61
|
||||
Store 64 63
|
||||
66: 52(ptr) AccessChain 28(s) 35 35 57
|
||||
67: 6(float) Load 66
|
||||
68: 55(ptr) AccessChain 50(OutputStream.clip) 65
|
||||
Store 68 67
|
||||
EmitVertex
|
||||
Return
|
||||
FunctionEnd
|
||||
|
|
|
@ -106,7 +106,7 @@ Shader version: 500
|
|||
0:? 'pos' ( temp 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -118,7 +118,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -130,7 +130,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -142,7 +142,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -155,7 +155,7 @@ Shader version: 500
|
|||
0:4 1 (const int)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -167,7 +167,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -179,7 +179,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -191,7 +191,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -318,7 +318,7 @@ Shader version: 500
|
|||
0:? 'pos' ( temp 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -330,7 +330,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -342,7 +342,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -354,7 +354,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float ClipDistance)
|
||||
0:? 'clip' ( out 4-element array of float ClipDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
@ -367,7 +367,7 @@ Shader version: 500
|
|||
0:4 1 (const int)
|
||||
0:? Sequence
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
|
@ -379,7 +379,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
|
@ -391,7 +391,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 1 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 2 (const int)
|
||||
|
@ -403,7 +403,7 @@ Shader version: 500
|
|||
0:4 Constant:
|
||||
0:4 0 (const int)
|
||||
0:4 move second child to first child ( temp float)
|
||||
0:4 direct index ( temp float)
|
||||
0:4 direct index ( out float CullDistance)
|
||||
0:? 'cull' ( out 4-element array of float CullDistance)
|
||||
0:4 Constant:
|
||||
0:4 3 (const int)
|
||||
|
|
|
@ -0,0 +1,830 @@
|
|||
hlsl.clipdistance-3.geom
|
||||
Shader version: 500
|
||||
invocations = -1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:12 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3]; ( temp void)
|
||||
0:12 Function Parameters:
|
||||
0:12 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:12 'VertexID' ( in 3-element array of uint)
|
||||
0:12 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:12 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp 4-component vector of float)
|
||||
0:15 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:15 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 direct index ( temp 4-component vector of float)
|
||||
0:15 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:16 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:16 vector swizzle ( temp 2-component vector of float)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 Sequence
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:17 move second child to first child ( temp 2-component vector of float)
|
||||
0:17 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 vector swizzle ( temp 2-component vector of float)
|
||||
0:17 direct index ( temp 4-component vector of float)
|
||||
0:17 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 Sequence
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 Constant:
|
||||
0:17 3 (const int)
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:19 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:? Sequence
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:? Sequence
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 3 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 EmitVertex ( temp void)
|
||||
0:12 Function Definition: main( ( temp void)
|
||||
0:12 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:12 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
||||
|
||||
Shader version: 500
|
||||
invocations = 1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:12 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3]; ( temp void)
|
||||
0:12 Function Parameters:
|
||||
0:12 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:12 'VertexID' ( in 3-element array of uint)
|
||||
0:12 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:12 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp 4-component vector of float)
|
||||
0:15 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:15 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 direct index ( temp 4-component vector of float)
|
||||
0:15 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:16 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:16 vector swizzle ( temp 2-component vector of float)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 Sequence
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:17 move second child to first child ( temp 2-component vector of float)
|
||||
0:17 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 vector swizzle ( temp 2-component vector of float)
|
||||
0:17 direct index ( temp 4-component vector of float)
|
||||
0:17 'clip' ( in 3-element array of 4-component vector of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 Sequence
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 Constant:
|
||||
0:17 3 (const int)
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:19 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:? Sequence
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:? Sequence
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp float)
|
||||
0:19 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:19 Constant:
|
||||
0:19 3 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 EmitVertex ( temp void)
|
||||
0:12 Function Definition: main( ( temp void)
|
||||
0:12 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:12 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 move second child to first child ( temp float)
|
||||
0:12 direct index ( temp float)
|
||||
0:12 direct index ( temp 4-component vector of float)
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 direct index ( in float ClipDistance)
|
||||
0:12 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:12 Constant:
|
||||
0:12 2 (const int)
|
||||
0:12 Constant:
|
||||
0:12 3 (const int)
|
||||
0:12 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:? 'clip' ( temp 3-element array of 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 127
|
||||
|
||||
Capability Geometry
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 43 49 69 73 78
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 3
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 15 "S"
|
||||
MemberName 15(S) 0 "pos"
|
||||
MemberName 15(S) 1 "clip0"
|
||||
MemberName 15(S) 2 "clip1"
|
||||
Name 22 "@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3];"
|
||||
Name 18 "pos"
|
||||
Name 19 "VertexID"
|
||||
Name 20 "OutputStream"
|
||||
Name 21 "clip"
|
||||
Name 24 "s"
|
||||
Name 43 "OutputStream.pos"
|
||||
Name 49 "OutputStream.clip1"
|
||||
Name 67 "pos"
|
||||
Name 69 "pos"
|
||||
Name 71 "VertexID"
|
||||
Name 73 "VertexID"
|
||||
Name 75 "clip"
|
||||
Name 78 "clip"
|
||||
Name 117 "OutputStream"
|
||||
Name 118 "param"
|
||||
Name 120 "param"
|
||||
Name 122 "param"
|
||||
Name 123 "param"
|
||||
Decorate 43(OutputStream.pos) BuiltIn Position
|
||||
Decorate 49(OutputStream.clip1) BuiltIn ClipDistance
|
||||
Decorate 69(pos) BuiltIn Position
|
||||
Decorate 73(VertexID) Location 0
|
||||
Decorate 78(clip) BuiltIn ClipDistance
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Function 10
|
||||
12: TypeArray 8(int) 9
|
||||
13: TypePointer Function 12
|
||||
14: TypeVector 6(float) 2
|
||||
15(S): TypeStruct 7(fvec4) 14(fvec2) 14(fvec2)
|
||||
16: TypePointer Function 15(S)
|
||||
17: TypeFunction 2 11(ptr) 13(ptr) 16(ptr) 11(ptr)
|
||||
25: TypeInt 32 1
|
||||
26: 25(int) Constant 0
|
||||
27: TypePointer Function 7(fvec4)
|
||||
31: 25(int) Constant 1
|
||||
35: TypePointer Function 14(fvec2)
|
||||
37: 25(int) Constant 2
|
||||
42: TypePointer Output 7(fvec4)
|
||||
43(OutputStream.pos): 42(ptr) Variable Output
|
||||
46: 8(int) Constant 4
|
||||
47: TypeArray 6(float) 46
|
||||
48: TypePointer Output 47
|
||||
49(OutputStream.clip1): 48(ptr) Variable Output
|
||||
50: 8(int) Constant 0
|
||||
51: TypePointer Function 6(float)
|
||||
54: TypePointer Output 6(float)
|
||||
56: 8(int) Constant 1
|
||||
63: 25(int) Constant 3
|
||||
68: TypePointer Input 10
|
||||
69(pos): 68(ptr) Variable Input
|
||||
72: TypePointer Input 12
|
||||
73(VertexID): 72(ptr) Variable Input
|
||||
76: TypeArray 47 9
|
||||
77: TypePointer Input 76
|
||||
78(clip): 77(ptr) Variable Input
|
||||
79: TypePointer Input 6(float)
|
||||
88: 8(int) Constant 2
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
67(pos): 11(ptr) Variable Function
|
||||
71(VertexID): 13(ptr) Variable Function
|
||||
75(clip): 11(ptr) Variable Function
|
||||
117(OutputStream): 16(ptr) Variable Function
|
||||
118(param): 11(ptr) Variable Function
|
||||
120(param): 13(ptr) Variable Function
|
||||
122(param): 16(ptr) Variable Function
|
||||
123(param): 11(ptr) Variable Function
|
||||
70: 10 Load 69(pos)
|
||||
Store 67(pos) 70
|
||||
74: 12 Load 73(VertexID)
|
||||
Store 71(VertexID) 74
|
||||
80: 79(ptr) AccessChain 78(clip) 26 26
|
||||
81: 6(float) Load 80
|
||||
82: 51(ptr) AccessChain 75(clip) 26 50
|
||||
Store 82 81
|
||||
83: 79(ptr) AccessChain 78(clip) 26 31
|
||||
84: 6(float) Load 83
|
||||
85: 51(ptr) AccessChain 75(clip) 26 56
|
||||
Store 85 84
|
||||
86: 79(ptr) AccessChain 78(clip) 26 37
|
||||
87: 6(float) Load 86
|
||||
89: 51(ptr) AccessChain 75(clip) 26 88
|
||||
Store 89 87
|
||||
90: 79(ptr) AccessChain 78(clip) 26 63
|
||||
91: 6(float) Load 90
|
||||
92: 51(ptr) AccessChain 75(clip) 26 9
|
||||
Store 92 91
|
||||
93: 79(ptr) AccessChain 78(clip) 31 26
|
||||
94: 6(float) Load 93
|
||||
95: 51(ptr) AccessChain 75(clip) 31 50
|
||||
Store 95 94
|
||||
96: 79(ptr) AccessChain 78(clip) 31 31
|
||||
97: 6(float) Load 96
|
||||
98: 51(ptr) AccessChain 75(clip) 31 56
|
||||
Store 98 97
|
||||
99: 79(ptr) AccessChain 78(clip) 31 37
|
||||
100: 6(float) Load 99
|
||||
101: 51(ptr) AccessChain 75(clip) 31 88
|
||||
Store 101 100
|
||||
102: 79(ptr) AccessChain 78(clip) 31 63
|
||||
103: 6(float) Load 102
|
||||
104: 51(ptr) AccessChain 75(clip) 31 9
|
||||
Store 104 103
|
||||
105: 79(ptr) AccessChain 78(clip) 37 26
|
||||
106: 6(float) Load 105
|
||||
107: 51(ptr) AccessChain 75(clip) 37 50
|
||||
Store 107 106
|
||||
108: 79(ptr) AccessChain 78(clip) 37 31
|
||||
109: 6(float) Load 108
|
||||
110: 51(ptr) AccessChain 75(clip) 37 56
|
||||
Store 110 109
|
||||
111: 79(ptr) AccessChain 78(clip) 37 37
|
||||
112: 6(float) Load 111
|
||||
113: 51(ptr) AccessChain 75(clip) 37 88
|
||||
Store 113 112
|
||||
114: 79(ptr) AccessChain 78(clip) 37 63
|
||||
115: 6(float) Load 114
|
||||
116: 51(ptr) AccessChain 75(clip) 37 9
|
||||
Store 116 115
|
||||
119: 10 Load 67(pos)
|
||||
Store 118(param) 119
|
||||
121: 12 Load 71(VertexID)
|
||||
Store 120(param) 121
|
||||
124: 10 Load 75(clip)
|
||||
Store 123(param) 124
|
||||
125: 2 FunctionCall 22(@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3];) 118(param) 120(param) 122(param) 123(param)
|
||||
126: 15(S) Load 122(param)
|
||||
Store 117(OutputStream) 126
|
||||
Return
|
||||
FunctionEnd
|
||||
22(@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf4[3];): 2 Function None 17
|
||||
18(pos): 11(ptr) FunctionParameter
|
||||
19(VertexID): 13(ptr) FunctionParameter
|
||||
20(OutputStream): 16(ptr) FunctionParameter
|
||||
21(clip): 11(ptr) FunctionParameter
|
||||
23: Label
|
||||
24(s): 16(ptr) Variable Function
|
||||
28: 27(ptr) AccessChain 18(pos) 26
|
||||
29: 7(fvec4) Load 28
|
||||
30: 27(ptr) AccessChain 24(s) 26
|
||||
Store 30 29
|
||||
32: 27(ptr) AccessChain 21(clip) 26
|
||||
33: 7(fvec4) Load 32
|
||||
34: 14(fvec2) VectorShuffle 33 33 0 1
|
||||
36: 35(ptr) AccessChain 24(s) 31
|
||||
Store 36 34
|
||||
38: 27(ptr) AccessChain 21(clip) 26
|
||||
39: 7(fvec4) Load 38
|
||||
40: 14(fvec2) VectorShuffle 39 39 2 3
|
||||
41: 35(ptr) AccessChain 24(s) 37
|
||||
Store 41 40
|
||||
44: 27(ptr) AccessChain 24(s) 26
|
||||
45: 7(fvec4) Load 44
|
||||
Store 43(OutputStream.pos) 45
|
||||
52: 51(ptr) AccessChain 24(s) 31 50
|
||||
53: 6(float) Load 52
|
||||
55: 54(ptr) AccessChain 49(OutputStream.clip1) 26
|
||||
Store 55 53
|
||||
57: 51(ptr) AccessChain 24(s) 31 56
|
||||
58: 6(float) Load 57
|
||||
59: 54(ptr) AccessChain 49(OutputStream.clip1) 31
|
||||
Store 59 58
|
||||
60: 51(ptr) AccessChain 24(s) 37 50
|
||||
61: 6(float) Load 60
|
||||
62: 54(ptr) AccessChain 49(OutputStream.clip1) 37
|
||||
Store 62 61
|
||||
64: 51(ptr) AccessChain 24(s) 37 56
|
||||
65: 6(float) Load 64
|
||||
66: 54(ptr) AccessChain 49(OutputStream.clip1) 63
|
||||
Store 66 65
|
||||
EmitVertex
|
||||
Return
|
||||
FunctionEnd
|
|
@ -35,7 +35,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -47,7 +47,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -59,7 +59,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -71,7 +71,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
@ -124,7 +124,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -136,7 +136,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -148,7 +148,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -160,7 +160,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
|
|
@ -0,0 +1,819 @@
|
|||
hlsl.clipdistance-4.geom
|
||||
Shader version: 500
|
||||
invocations = -1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:13 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3]; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
0:13 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:13 'clip0' ( in 3-element array of 2-component vector of float)
|
||||
0:13 'clip1' ( in 3-element array of 2-component vector of float)
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:17 move second child to first child ( temp 2-component vector of float)
|
||||
0:17 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp 2-component vector of float)
|
||||
0:17 'clip0' ( in 3-element array of 2-component vector of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:18 move second child to first child ( temp 2-component vector of float)
|
||||
0:18 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 'clip1' ( in 3-element array of 2-component vector of float)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:20 Sequence
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:20 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:? Sequence
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:? Sequence
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 3 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 EmitVertex ( temp void)
|
||||
0:13 Function Definition: main( ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:13 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
||||
|
||||
Shader version: 500
|
||||
invocations = 1
|
||||
max_vertices = 3
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:13 Function Definition: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3]; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
0:13 'OutputStream' ( out structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:13 'clip0' ( in 3-element array of 2-component vector of float)
|
||||
0:13 'clip1' ( in 3-element array of 2-component vector of float)
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 direct index ( temp 4-component vector of float)
|
||||
0:16 'pos' ( in 3-element array of 4-component vector of float)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:17 move second child to first child ( temp 2-component vector of float)
|
||||
0:17 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:17 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 direct index ( temp 2-component vector of float)
|
||||
0:17 'clip0' ( in 3-element array of 2-component vector of float)
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:18 move second child to first child ( temp 2-component vector of float)
|
||||
0:18 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:18 direct index ( temp 2-component vector of float)
|
||||
0:18 'clip1' ( in 3-element array of 2-component vector of float)
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:20 Sequence
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:20 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:? Sequence
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip0: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:? Sequence
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child ( temp float)
|
||||
0:20 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:20 Constant:
|
||||
0:20 3 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 clip1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 EmitVertex ( temp void)
|
||||
0:13 Function Definition: main( ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:13 move second child to first child ( temp 3-element array of uint)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:? Sequence
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 move second child to first child ( temp float)
|
||||
0:13 direct index ( temp float)
|
||||
0:13 direct index ( temp 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 direct index ( in float ClipDistance)
|
||||
0:13 direct index ( in 4-element array of float ClipDistance)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:13 Constant:
|
||||
0:13 2 (const int)
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:13 Function Call: @main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3]; ( temp void)
|
||||
0:? 'pos' ( temp 3-element array of 4-component vector of float)
|
||||
0:? 'VertexID' ( temp 3-element array of uint)
|
||||
0:? 'OutputStream' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float clip0, temp 2-component vector of float clip1})
|
||||
0:? 'clip0' ( temp 3-element array of 2-component vector of float)
|
||||
0:? 'clip1' ( temp 3-element array of 2-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'pos' ( in 3-element array of 4-component vector of float Position)
|
||||
0:? 'VertexID' (layout( location=0) in 3-element array of uint)
|
||||
0:? 'OutputStream.pos' ( out 4-component vector of float Position)
|
||||
0:? 'clip0' ( in 3-element array of 4-element array of float ClipDistance)
|
||||
0:? 'OutputStream.clip1' ( out 4-element array of float ClipDistance)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 130
|
||||
|
||||
Capability Geometry
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 44 50 70 74 79
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 3
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 15 "S"
|
||||
MemberName 15(S) 0 "pos"
|
||||
MemberName 15(S) 1 "clip0"
|
||||
MemberName 15(S) 2 "clip1"
|
||||
Name 25 "@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3];"
|
||||
Name 20 "pos"
|
||||
Name 21 "VertexID"
|
||||
Name 22 "OutputStream"
|
||||
Name 23 "clip0"
|
||||
Name 24 "clip1"
|
||||
Name 27 "s"
|
||||
Name 44 "OutputStream.pos"
|
||||
Name 50 "OutputStream.clip1"
|
||||
Name 68 "pos"
|
||||
Name 70 "pos"
|
||||
Name 72 "VertexID"
|
||||
Name 74 "VertexID"
|
||||
Name 76 "clip0"
|
||||
Name 79 "clip0"
|
||||
Name 99 "clip1"
|
||||
Name 118 "OutputStream"
|
||||
Name 119 "param"
|
||||
Name 121 "param"
|
||||
Name 123 "param"
|
||||
Name 124 "param"
|
||||
Name 126 "param"
|
||||
Decorate 44(OutputStream.pos) BuiltIn Position
|
||||
Decorate 50(OutputStream.clip1) BuiltIn ClipDistance
|
||||
Decorate 70(pos) BuiltIn Position
|
||||
Decorate 74(VertexID) Location 0
|
||||
Decorate 79(clip0) BuiltIn ClipDistance
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Function 10
|
||||
12: TypeArray 8(int) 9
|
||||
13: TypePointer Function 12
|
||||
14: TypeVector 6(float) 2
|
||||
15(S): TypeStruct 7(fvec4) 14(fvec2) 14(fvec2)
|
||||
16: TypePointer Function 15(S)
|
||||
17: TypeArray 14(fvec2) 9
|
||||
18: TypePointer Function 17
|
||||
19: TypeFunction 2 11(ptr) 13(ptr) 16(ptr) 18(ptr) 18(ptr)
|
||||
28: TypeInt 32 1
|
||||
29: 28(int) Constant 0
|
||||
30: TypePointer Function 7(fvec4)
|
||||
34: 28(int) Constant 1
|
||||
35: TypePointer Function 14(fvec2)
|
||||
39: 28(int) Constant 2
|
||||
43: TypePointer Output 7(fvec4)
|
||||
44(OutputStream.pos): 43(ptr) Variable Output
|
||||
47: 8(int) Constant 4
|
||||
48: TypeArray 6(float) 47
|
||||
49: TypePointer Output 48
|
||||
50(OutputStream.clip1): 49(ptr) Variable Output
|
||||
51: 8(int) Constant 0
|
||||
52: TypePointer Function 6(float)
|
||||
55: TypePointer Output 6(float)
|
||||
57: 8(int) Constant 1
|
||||
64: 28(int) Constant 3
|
||||
69: TypePointer Input 10
|
||||
70(pos): 69(ptr) Variable Input
|
||||
73: TypePointer Input 12
|
||||
74(VertexID): 73(ptr) Variable Input
|
||||
77: TypeArray 48 9
|
||||
78: TypePointer Input 77
|
||||
79(clip0): 78(ptr) Variable Input
|
||||
80: TypePointer Input 6(float)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
68(pos): 11(ptr) Variable Function
|
||||
72(VertexID): 13(ptr) Variable Function
|
||||
76(clip0): 18(ptr) Variable Function
|
||||
99(clip1): 18(ptr) Variable Function
|
||||
118(OutputStream): 16(ptr) Variable Function
|
||||
119(param): 11(ptr) Variable Function
|
||||
121(param): 13(ptr) Variable Function
|
||||
123(param): 16(ptr) Variable Function
|
||||
124(param): 18(ptr) Variable Function
|
||||
126(param): 18(ptr) Variable Function
|
||||
71: 10 Load 70(pos)
|
||||
Store 68(pos) 71
|
||||
75: 12 Load 74(VertexID)
|
||||
Store 72(VertexID) 75
|
||||
81: 80(ptr) AccessChain 79(clip0) 29 29
|
||||
82: 6(float) Load 81
|
||||
83: 52(ptr) AccessChain 76(clip0) 29 51
|
||||
Store 83 82
|
||||
84: 80(ptr) AccessChain 79(clip0) 29 34
|
||||
85: 6(float) Load 84
|
||||
86: 52(ptr) AccessChain 76(clip0) 29 57
|
||||
Store 86 85
|
||||
87: 80(ptr) AccessChain 79(clip0) 29 39
|
||||
88: 6(float) Load 87
|
||||
89: 52(ptr) AccessChain 76(clip0) 34 51
|
||||
Store 89 88
|
||||
90: 80(ptr) AccessChain 79(clip0) 29 64
|
||||
91: 6(float) Load 90
|
||||
92: 52(ptr) AccessChain 76(clip0) 34 57
|
||||
Store 92 91
|
||||
93: 80(ptr) AccessChain 79(clip0) 34 29
|
||||
94: 6(float) Load 93
|
||||
95: 52(ptr) AccessChain 76(clip0) 39 51
|
||||
Store 95 94
|
||||
96: 80(ptr) AccessChain 79(clip0) 34 34
|
||||
97: 6(float) Load 96
|
||||
98: 52(ptr) AccessChain 76(clip0) 39 57
|
||||
Store 98 97
|
||||
100: 80(ptr) AccessChain 79(clip0) 29 39
|
||||
101: 6(float) Load 100
|
||||
102: 52(ptr) AccessChain 99(clip1) 29 51
|
||||
Store 102 101
|
||||
103: 80(ptr) AccessChain 79(clip0) 29 64
|
||||
104: 6(float) Load 103
|
||||
105: 52(ptr) AccessChain 99(clip1) 29 57
|
||||
Store 105 104
|
||||
106: 80(ptr) AccessChain 79(clip0) 34 39
|
||||
107: 6(float) Load 106
|
||||
108: 52(ptr) AccessChain 99(clip1) 34 51
|
||||
Store 108 107
|
||||
109: 80(ptr) AccessChain 79(clip0) 34 64
|
||||
110: 6(float) Load 109
|
||||
111: 52(ptr) AccessChain 99(clip1) 34 57
|
||||
Store 111 110
|
||||
112: 80(ptr) AccessChain 79(clip0) 39 39
|
||||
113: 6(float) Load 112
|
||||
114: 52(ptr) AccessChain 99(clip1) 39 51
|
||||
Store 114 113
|
||||
115: 80(ptr) AccessChain 79(clip0) 39 64
|
||||
116: 6(float) Load 115
|
||||
117: 52(ptr) AccessChain 99(clip1) 39 57
|
||||
Store 117 116
|
||||
120: 10 Load 68(pos)
|
||||
Store 119(param) 120
|
||||
122: 12 Load 72(VertexID)
|
||||
Store 121(param) 122
|
||||
125: 17 Load 76(clip0)
|
||||
Store 124(param) 125
|
||||
127: 17 Load 99(clip1)
|
||||
Store 126(param) 127
|
||||
128: 2 FunctionCall 25(@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3];) 119(param) 121(param) 123(param) 124(param) 126(param)
|
||||
129: 15(S) Load 123(param)
|
||||
Store 118(OutputStream) 129
|
||||
Return
|
||||
FunctionEnd
|
||||
25(@main(vf4[3];u1[3];struct-S-vf4-vf2-vf21;vf2[3];vf2[3];): 2 Function None 19
|
||||
20(pos): 11(ptr) FunctionParameter
|
||||
21(VertexID): 13(ptr) FunctionParameter
|
||||
22(OutputStream): 16(ptr) FunctionParameter
|
||||
23(clip0): 18(ptr) FunctionParameter
|
||||
24(clip1): 18(ptr) FunctionParameter
|
||||
26: Label
|
||||
27(s): 16(ptr) Variable Function
|
||||
31: 30(ptr) AccessChain 20(pos) 29
|
||||
32: 7(fvec4) Load 31
|
||||
33: 30(ptr) AccessChain 27(s) 29
|
||||
Store 33 32
|
||||
36: 35(ptr) AccessChain 23(clip0) 29
|
||||
37: 14(fvec2) Load 36
|
||||
38: 35(ptr) AccessChain 27(s) 34
|
||||
Store 38 37
|
||||
40: 35(ptr) AccessChain 24(clip1) 29
|
||||
41: 14(fvec2) Load 40
|
||||
42: 35(ptr) AccessChain 27(s) 39
|
||||
Store 42 41
|
||||
45: 30(ptr) AccessChain 27(s) 29
|
||||
46: 7(fvec4) Load 45
|
||||
Store 44(OutputStream.pos) 46
|
||||
53: 52(ptr) AccessChain 27(s) 34 51
|
||||
54: 6(float) Load 53
|
||||
56: 55(ptr) AccessChain 50(OutputStream.clip1) 29
|
||||
Store 56 54
|
||||
58: 52(ptr) AccessChain 27(s) 34 57
|
||||
59: 6(float) Load 58
|
||||
60: 55(ptr) AccessChain 50(OutputStream.clip1) 34
|
||||
Store 60 59
|
||||
61: 52(ptr) AccessChain 27(s) 39 51
|
||||
62: 6(float) Load 61
|
||||
63: 55(ptr) AccessChain 50(OutputStream.clip1) 39
|
||||
Store 63 62
|
||||
65: 52(ptr) AccessChain 27(s) 39 57
|
||||
66: 6(float) Load 65
|
||||
67: 55(ptr) AccessChain 50(OutputStream.clip1) 64
|
||||
Store 67 66
|
||||
EmitVertex
|
||||
Return
|
||||
FunctionEnd
|
|
@ -80,7 +80,7 @@ Shader version: 500
|
|||
0:11 0 (const int)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
|
@ -92,7 +92,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
|
@ -104,7 +104,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
|
@ -116,7 +116,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
|
@ -217,7 +217,7 @@ Shader version: 500
|
|||
0:11 0 (const int)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
|
@ -229,7 +229,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
|
@ -241,7 +241,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
|
@ -253,7 +253,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
|
|
|
@ -55,7 +55,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 0 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -70,7 +70,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 0 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -85,7 +85,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -100,7 +100,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
@ -173,7 +173,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 0 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -188,7 +188,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 0 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -203,7 +203,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -218,7 +218,7 @@ gl_FragCoord origin is upper left
|
|||
0:7 1 (const int)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( in float ClipDistance)
|
||||
0:? 'v.ClipRect' ( in 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
|
|
@ -92,7 +92,7 @@ Shader version: 500
|
|||
0:11 0 (const int)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
|
@ -107,7 +107,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
|
@ -122,7 +122,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
|
@ -137,7 +137,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
|
@ -253,7 +253,7 @@ Shader version: 500
|
|||
0:11 0 (const int)
|
||||
0:? Sequence
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
|
@ -268,7 +268,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
|
@ -283,7 +283,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 1 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 2 (const int)
|
||||
|
@ -298,7 +298,7 @@ Shader version: 500
|
|||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 move second child to first child ( temp float)
|
||||
0:11 direct index ( temp float)
|
||||
0:11 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
|
||||
0:11 Constant:
|
||||
0:11 3 (const int)
|
||||
|
|
|
@ -40,7 +40,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -52,7 +52,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -64,7 +64,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -76,7 +76,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -89,7 +89,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -101,7 +101,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -113,7 +113,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -125,7 +125,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
@ -183,7 +183,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -195,7 +195,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -207,7 +207,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -219,7 +219,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -232,7 +232,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -244,7 +244,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -256,7 +256,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -268,7 +268,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
|
|
@ -111,7 +111,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -123,7 +123,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -135,7 +135,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -147,7 +147,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -160,7 +160,7 @@ Shader version: 500
|
|||
0:8 3 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -172,7 +172,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -184,7 +184,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -196,7 +196,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
@ -327,7 +327,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -339,7 +339,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -351,7 +351,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -363,7 +363,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -376,7 +376,7 @@ Shader version: 500
|
|||
0:8 3 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -388,7 +388,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -400,7 +400,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -412,7 +412,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
|
|
@ -46,7 +46,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -58,7 +58,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -70,7 +70,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -83,7 +83,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -95,7 +95,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -107,7 +107,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -119,7 +119,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
@ -183,7 +183,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -195,7 +195,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -207,7 +207,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -220,7 +220,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -232,7 +232,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -244,7 +244,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -256,7 +256,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 2 (const int)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
|
|
@ -101,7 +101,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -113,7 +113,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -125,7 +125,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -138,7 +138,7 @@ Shader version: 500
|
|||
0:8 2 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -150,7 +150,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -162,7 +162,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -174,7 +174,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
@ -295,7 +295,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -307,7 +307,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -319,7 +319,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -332,7 +332,7 @@ Shader version: 500
|
|||
0:8 2 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 4 (const int)
|
||||
|
@ -344,7 +344,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 5 (const int)
|
||||
|
@ -356,7 +356,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 6 (const int)
|
||||
|
@ -368,7 +368,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 8-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 7 (const int)
|
||||
|
|
|
@ -43,7 +43,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -55,7 +55,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -67,7 +67,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -77,7 +77,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'v' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float clip0, temp float clip1})
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -138,7 +138,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -150,7 +150,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -162,7 +162,7 @@ gl_FragCoord origin is upper left
|
|||
0:8 1 (const int)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -172,7 +172,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'v' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float clip0, temp float clip1})
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( in float ClipDistance)
|
||||
0:? 'v.clip1' ( in 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
|
|
@ -68,7 +68,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -80,7 +80,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -92,7 +92,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -105,7 +105,7 @@ Shader version: 500
|
|||
0:8 2 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
@ -190,7 +190,7 @@ Shader version: 500
|
|||
0:8 0 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
|
@ -202,7 +202,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
|
@ -214,7 +214,7 @@ Shader version: 500
|
|||
0:8 Constant:
|
||||
0:8 1 (const int)
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 2 (const int)
|
||||
|
@ -227,7 +227,7 @@ Shader version: 500
|
|||
0:8 2 (const int)
|
||||
0:? Sequence
|
||||
0:8 move second child to first child ( temp float)
|
||||
0:8 direct index ( temp float)
|
||||
0:8 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 4-element array of float ClipDistance)
|
||||
0:8 Constant:
|
||||
0:8 3 (const int)
|
||||
|
|
|
@ -29,7 +29,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
|
@ -38,7 +38,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
|
@ -47,14 +47,14 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 2 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 2 (const int)
|
||||
0:? Sequence
|
||||
0:6 move second child to first child ( temp float)
|
||||
0:? 'clip1' ( temp float)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 3 (const int)
|
||||
|
@ -103,7 +103,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
|
@ -112,7 +112,7 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
|
@ -121,14 +121,14 @@ gl_FragCoord origin is upper left
|
|||
0:? 'clip0' ( temp 3-component vector of float)
|
||||
0:6 Constant:
|
||||
0:6 2 (const int)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 2 (const int)
|
||||
0:? Sequence
|
||||
0:6 move second child to first child ( temp float)
|
||||
0:? 'clip1' ( temp float)
|
||||
0:6 direct index ( temp float)
|
||||
0:6 direct index ( in float ClipDistance)
|
||||
0:? 'clip0' ( in 4-element array of float ClipDistance)
|
||||
0:6 Constant:
|
||||
0:6 3 (const int)
|
||||
|
|
|
@ -57,7 +57,7 @@ Shader version: 500
|
|||
0:7 0 (const int)
|
||||
0:? Sequence
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -66,7 +66,7 @@ Shader version: 500
|
|||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -75,7 +75,7 @@ Shader version: 500
|
|||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -85,7 +85,7 @@ Shader version: 500
|
|||
0:7 2 (const int)
|
||||
0:? Sequence
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
@ -156,7 +156,7 @@ Shader version: 500
|
|||
0:7 0 (const int)
|
||||
0:? Sequence
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
|
@ -165,7 +165,7 @@ Shader version: 500
|
|||
0:7 Constant:
|
||||
0:7 0 (const int)
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
|
@ -174,7 +174,7 @@ Shader version: 500
|
|||
0:7 Constant:
|
||||
0:7 1 (const int)
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 2 (const int)
|
||||
|
@ -184,7 +184,7 @@ Shader version: 500
|
|||
0:7 2 (const int)
|
||||
0:? Sequence
|
||||
0:7 move second child to first child ( temp float)
|
||||
0:7 direct index ( temp float)
|
||||
0:7 direct index ( out float ClipDistance)
|
||||
0:? 'clip0' ( out 4-element array of float ClipDistance)
|
||||
0:7 Constant:
|
||||
0:7 3 (const int)
|
||||
|
|
|
@ -0,0 +1,163 @@
|
|||
hlsl.preprocessor.frag
|
||||
Shader version: 500
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:9 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
||||
0:9 Function Parameters:
|
||||
0:9 'input' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child ( temp 4-component vector of float)
|
||||
0:10 'tex' ( temp 4-component vector of float)
|
||||
0:10 texture ( temp 4-component vector of float)
|
||||
0:10 Construct combined texture-sampler ( temp sampler2D)
|
||||
0:10 'test_texture' ( uniform texture2D)
|
||||
0:10 'test_texture_ss' ( uniform sampler)
|
||||
0:10 vector swizzle ( temp 2-component vector of float)
|
||||
0:10 vector swizzle ( temp 2-component vector of float)
|
||||
0:10 'input' ( in 4-component vector of float)
|
||||
0:10 Sequence
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:10 Sequence
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'tex' ( temp 4-component vector of float)
|
||||
0:9 Function Definition: main( ( temp void)
|
||||
0:9 Function Parameters:
|
||||
0:? Sequence
|
||||
0:9 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'input' ( temp 4-component vector of float)
|
||||
0:? 'input' (layout( location=0) in 4-component vector of float)
|
||||
0:9 move second child to first child ( temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||
0:9 Function Call: @main(vf4; ( temp 4-component vector of float)
|
||||
0:? 'input' ( temp 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'test_texture' ( uniform texture2D)
|
||||
0:? 'test_texture_ss' ( uniform sampler)
|
||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||
0:? 'input' (layout( location=0) in 4-component vector of float)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 500
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:9 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
||||
0:9 Function Parameters:
|
||||
0:9 'input' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child ( temp 4-component vector of float)
|
||||
0:10 'tex' ( temp 4-component vector of float)
|
||||
0:10 texture ( temp 4-component vector of float)
|
||||
0:10 Construct combined texture-sampler ( temp sampler2D)
|
||||
0:10 'test_texture' ( uniform texture2D)
|
||||
0:10 'test_texture_ss' ( uniform sampler)
|
||||
0:10 vector swizzle ( temp 2-component vector of float)
|
||||
0:10 vector swizzle ( temp 2-component vector of float)
|
||||
0:10 'input' ( in 4-component vector of float)
|
||||
0:10 Sequence
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:10 Sequence
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'tex' ( temp 4-component vector of float)
|
||||
0:9 Function Definition: main( ( temp void)
|
||||
0:9 Function Parameters:
|
||||
0:? Sequence
|
||||
0:9 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'input' ( temp 4-component vector of float)
|
||||
0:? 'input' (layout( location=0) in 4-component vector of float)
|
||||
0:9 move second child to first child ( temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||
0:9 Function Call: @main(vf4; ( temp 4-component vector of float)
|
||||
0:? 'input' ( temp 4-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'test_texture' ( uniform texture2D)
|
||||
0:? 'test_texture_ss' ( uniform sampler)
|
||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||
0:? 'input' (layout( location=0) in 4-component vector of float)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 40
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 33 36
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 11 "@main(vf4;"
|
||||
Name 10 "input"
|
||||
Name 13 "tex"
|
||||
Name 16 "test_texture"
|
||||
Name 20 "test_texture_ss"
|
||||
Name 31 "input"
|
||||
Name 33 "input"
|
||||
Name 36 "@entryPointOutput"
|
||||
Name 37 "param"
|
||||
Decorate 16(test_texture) DescriptorSet 0
|
||||
Decorate 20(test_texture_ss) DescriptorSet 0
|
||||
Decorate 33(input) Location 0
|
||||
Decorate 36(@entryPointOutput) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Function 7(fvec4)
|
||||
9: TypeFunction 7(fvec4) 8(ptr)
|
||||
14: TypeImage 6(float) 2D sampled format:Unknown
|
||||
15: TypePointer UniformConstant 14
|
||||
16(test_texture): 15(ptr) Variable UniformConstant
|
||||
18: TypeSampler
|
||||
19: TypePointer UniformConstant 18
|
||||
20(test_texture_ss): 19(ptr) Variable UniformConstant
|
||||
22: TypeSampledImage 14
|
||||
24: TypeVector 6(float) 2
|
||||
32: TypePointer Input 7(fvec4)
|
||||
33(input): 32(ptr) Variable Input
|
||||
35: TypePointer Output 7(fvec4)
|
||||
36(@entryPointOutput): 35(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
31(input): 8(ptr) Variable Function
|
||||
37(param): 8(ptr) Variable Function
|
||||
34: 7(fvec4) Load 33(input)
|
||||
Store 31(input) 34
|
||||
38: 7(fvec4) Load 31(input)
|
||||
Store 37(param) 38
|
||||
39: 7(fvec4) FunctionCall 11(@main(vf4;) 37(param)
|
||||
Store 36(@entryPointOutput) 39
|
||||
Return
|
||||
FunctionEnd
|
||||
11(@main(vf4;): 7(fvec4) Function None 9
|
||||
10(input): 8(ptr) FunctionParameter
|
||||
12: Label
|
||||
13(tex): 8(ptr) Variable Function
|
||||
17: 14 Load 16(test_texture)
|
||||
21: 18 Load 20(test_texture_ss)
|
||||
23: 22 SampledImage 17 21
|
||||
25: 7(fvec4) Load 10(input)
|
||||
26: 24(fvec2) VectorShuffle 25 25 0 1
|
||||
27: 7(fvec4) ImageSampleImplicitLod 23 26
|
||||
Store 13(tex) 27
|
||||
28: 7(fvec4) Load 13(tex)
|
||||
ReturnValue 28
|
||||
FunctionEnd
|
|
@ -0,0 +1,374 @@
|
|||
hlsl.semantic-1.vert
|
||||
Shader version: 500
|
||||
0:? Sequence
|
||||
0:16 Function Definition: @main(vf4; ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Parameters:
|
||||
0:16 'v' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:18 move second child to first child ( temp 4-component vector of float)
|
||||
0:18 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 'v' ( in 4-component vector of float)
|
||||
0:19 move second child to first child ( temp 2-component vector of float)
|
||||
0:19 UV0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 'v' ( in 4-component vector of float)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 'v' ( in 4-component vector of float)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:20 move second child to first child ( temp 2-component vector of float)
|
||||
0:20 UV1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 'v' ( in 4-component vector of float)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 'v' ( in 4-component vector of float)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:21 move second child to first child ( temp 2-component vector of float)
|
||||
0:21 UV2: direct index for structure ( temp 2-component vector of float)
|
||||
0:21 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:21 Constant:
|
||||
0:21 3 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:21 direct index ( temp float)
|
||||
0:21 'v' ( in 4-component vector of float)
|
||||
0:21 Constant:
|
||||
0:21 2 (const int)
|
||||
0:21 direct index ( temp float)
|
||||
0:21 'v' ( in 4-component vector of float)
|
||||
0:21 Constant:
|
||||
0:21 2 (const int)
|
||||
0:22 move second child to first child ( temp 2-component vector of float)
|
||||
0:22 UV3: direct index for structure ( temp 2-component vector of float)
|
||||
0:22 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:22 Constant:
|
||||
0:22 4 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:22 direct index ( temp float)
|
||||
0:22 'v' ( in 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 3 (const int)
|
||||
0:22 direct index ( temp float)
|
||||
0:22 'v' ( in 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 3 (const int)
|
||||
0:23 Branch: Return with expression
|
||||
0:23 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Definition: main( ( temp void)
|
||||
0:16 Function Parameters:
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'v' ( temp 4-component vector of float)
|
||||
0:? 'v' (layout( location=0) in 4-component vector of float)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Call: @main(vf4; ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:? 'v' ( temp 4-component vector of float)
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
|
||||
0:16 UV0: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
|
||||
0:16 UV1: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 2 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
|
||||
0:16 UV2: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 3 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
|
||||
0:16 UV3: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 4 (const int)
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:? '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
|
||||
0:? 'v' (layout( location=0) in 4-component vector of float)
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
Shader version: 500
|
||||
0:? Sequence
|
||||
0:16 Function Definition: @main(vf4; ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Parameters:
|
||||
0:16 'v' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:18 move second child to first child ( temp 4-component vector of float)
|
||||
0:18 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:18 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 'v' ( in 4-component vector of float)
|
||||
0:19 move second child to first child ( temp 2-component vector of float)
|
||||
0:19 UV0: direct index for structure ( temp 2-component vector of float)
|
||||
0:19 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 'v' ( in 4-component vector of float)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index ( temp float)
|
||||
0:19 'v' ( in 4-component vector of float)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:20 move second child to first child ( temp 2-component vector of float)
|
||||
0:20 UV1: direct index for structure ( temp 2-component vector of float)
|
||||
0:20 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:20 Constant:
|
||||
0:20 2 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 'v' ( in 4-component vector of float)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 direct index ( temp float)
|
||||
0:20 'v' ( in 4-component vector of float)
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:21 move second child to first child ( temp 2-component vector of float)
|
||||
0:21 UV2: direct index for structure ( temp 2-component vector of float)
|
||||
0:21 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:21 Constant:
|
||||
0:21 3 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:21 direct index ( temp float)
|
||||
0:21 'v' ( in 4-component vector of float)
|
||||
0:21 Constant:
|
||||
0:21 2 (const int)
|
||||
0:21 direct index ( temp float)
|
||||
0:21 'v' ( in 4-component vector of float)
|
||||
0:21 Constant:
|
||||
0:21 2 (const int)
|
||||
0:22 move second child to first child ( temp 2-component vector of float)
|
||||
0:22 UV3: direct index for structure ( temp 2-component vector of float)
|
||||
0:22 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:22 Constant:
|
||||
0:22 4 (const int)
|
||||
0:? Construct vec2 ( temp 2-component vector of float)
|
||||
0:22 direct index ( temp float)
|
||||
0:22 'v' ( in 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 3 (const int)
|
||||
0:22 direct index ( temp float)
|
||||
0:22 'v' ( in 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 3 (const int)
|
||||
0:23 Branch: Return with expression
|
||||
0:23 's' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Definition: main( ( temp void)
|
||||
0:16 Function Parameters:
|
||||
0:? Sequence
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:? 'v' ( temp 4-component vector of float)
|
||||
0:? 'v' (layout( location=0) in 4-component vector of float)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Function Call: @main(vf4; ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:? 'v' ( temp 4-component vector of float)
|
||||
0:16 move second child to first child ( temp 4-component vector of float)
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:16 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
|
||||
0:16 UV0: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 1 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
|
||||
0:16 UV1: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 2 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
|
||||
0:16 UV2: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 3 (const int)
|
||||
0:16 move second child to first child ( temp 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
|
||||
0:16 UV3: direct index for structure ( temp 2-component vector of float)
|
||||
0:16 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 2-component vector of float UV0, temp 2-component vector of float UV1, temp 2-component vector of float UV2, temp 2-component vector of float UV3})
|
||||
0:16 Constant:
|
||||
0:16 4 (const int)
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:? '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
|
||||
0:? '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
|
||||
0:? 'v' (layout( location=0) in 4-component vector of float)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 84
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 61 68 72 75 78 81
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 10 "S"
|
||||
MemberName 10(S) 0 "pos"
|
||||
MemberName 10(S) 1 "UV0"
|
||||
MemberName 10(S) 2 "UV1"
|
||||
MemberName 10(S) 3 "UV2"
|
||||
MemberName 10(S) 4 "UV3"
|
||||
Name 13 "@main(vf4;"
|
||||
Name 12 "v"
|
||||
Name 16 "s"
|
||||
Name 59 "v"
|
||||
Name 61 "v"
|
||||
Name 63 "flattenTemp"
|
||||
Name 64 "param"
|
||||
Name 68 "@entryPointOutput.pos"
|
||||
Name 72 "@entryPointOutput.UV0"
|
||||
Name 75 "@entryPointOutput.UV1"
|
||||
Name 78 "@entryPointOutput.UV2"
|
||||
Name 81 "@entryPointOutput.UV3"
|
||||
Decorate 61(v) Location 0
|
||||
Decorate 68(@entryPointOutput.pos) Location 0
|
||||
Decorate 72(@entryPointOutput.UV0) Location 1
|
||||
Decorate 75(@entryPointOutput.UV1) Location 2
|
||||
Decorate 78(@entryPointOutput.UV2) Location 3
|
||||
Decorate 81(@entryPointOutput.UV3) Location 4
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Function 7(fvec4)
|
||||
9: TypeVector 6(float) 2
|
||||
10(S): TypeStruct 7(fvec4) 9(fvec2) 9(fvec2) 9(fvec2) 9(fvec2)
|
||||
11: TypeFunction 10(S) 8(ptr)
|
||||
15: TypePointer Function 10(S)
|
||||
17: TypeInt 32 1
|
||||
18: 17(int) Constant 0
|
||||
21: 17(int) Constant 1
|
||||
22: TypeInt 32 0
|
||||
23: 22(int) Constant 0
|
||||
24: TypePointer Function 6(float)
|
||||
30: TypePointer Function 9(fvec2)
|
||||
32: 17(int) Constant 2
|
||||
33: 22(int) Constant 1
|
||||
40: 17(int) Constant 3
|
||||
41: 22(int) Constant 2
|
||||
48: 17(int) Constant 4
|
||||
49: 22(int) Constant 3
|
||||
60: TypePointer Input 7(fvec4)
|
||||
61(v): 60(ptr) Variable Input
|
||||
67: TypePointer Output 7(fvec4)
|
||||
68(@entryPointOutput.pos): 67(ptr) Variable Output
|
||||
71: TypePointer Output 9(fvec2)
|
||||
72(@entryPointOutput.UV0): 71(ptr) Variable Output
|
||||
75(@entryPointOutput.UV1): 71(ptr) Variable Output
|
||||
78(@entryPointOutput.UV2): 71(ptr) Variable Output
|
||||
81(@entryPointOutput.UV3): 71(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
59(v): 8(ptr) Variable Function
|
||||
63(flattenTemp): 15(ptr) Variable Function
|
||||
64(param): 8(ptr) Variable Function
|
||||
62: 7(fvec4) Load 61(v)
|
||||
Store 59(v) 62
|
||||
65: 7(fvec4) Load 59(v)
|
||||
Store 64(param) 65
|
||||
66: 10(S) FunctionCall 13(@main(vf4;) 64(param)
|
||||
Store 63(flattenTemp) 66
|
||||
69: 8(ptr) AccessChain 63(flattenTemp) 18
|
||||
70: 7(fvec4) Load 69
|
||||
Store 68(@entryPointOutput.pos) 70
|
||||
73: 30(ptr) AccessChain 63(flattenTemp) 21
|
||||
74: 9(fvec2) Load 73
|
||||
Store 72(@entryPointOutput.UV0) 74
|
||||
76: 30(ptr) AccessChain 63(flattenTemp) 32
|
||||
77: 9(fvec2) Load 76
|
||||
Store 75(@entryPointOutput.UV1) 77
|
||||
79: 30(ptr) AccessChain 63(flattenTemp) 40
|
||||
80: 9(fvec2) Load 79
|
||||
Store 78(@entryPointOutput.UV2) 80
|
||||
82: 30(ptr) AccessChain 63(flattenTemp) 48
|
||||
83: 9(fvec2) Load 82
|
||||
Store 81(@entryPointOutput.UV3) 83
|
||||
Return
|
||||
FunctionEnd
|
||||
13(@main(vf4;): 10(S) Function None 11
|
||||
12(v): 8(ptr) FunctionParameter
|
||||
14: Label
|
||||
16(s): 15(ptr) Variable Function
|
||||
19: 7(fvec4) Load 12(v)
|
||||
20: 8(ptr) AccessChain 16(s) 18
|
||||
Store 20 19
|
||||
25: 24(ptr) AccessChain 12(v) 23
|
||||
26: 6(float) Load 25
|
||||
27: 24(ptr) AccessChain 12(v) 23
|
||||
28: 6(float) Load 27
|
||||
29: 9(fvec2) CompositeConstruct 26 28
|
||||
31: 30(ptr) AccessChain 16(s) 21
|
||||
Store 31 29
|
||||
34: 24(ptr) AccessChain 12(v) 33
|
||||
35: 6(float) Load 34
|
||||
36: 24(ptr) AccessChain 12(v) 33
|
||||
37: 6(float) Load 36
|
||||
38: 9(fvec2) CompositeConstruct 35 37
|
||||
39: 30(ptr) AccessChain 16(s) 32
|
||||
Store 39 38
|
||||
42: 24(ptr) AccessChain 12(v) 41
|
||||
43: 6(float) Load 42
|
||||
44: 24(ptr) AccessChain 12(v) 41
|
||||
45: 6(float) Load 44
|
||||
46: 9(fvec2) CompositeConstruct 43 45
|
||||
47: 30(ptr) AccessChain 16(s) 40
|
||||
Store 47 46
|
||||
50: 24(ptr) AccessChain 12(v) 49
|
||||
51: 6(float) Load 50
|
||||
52: 24(ptr) AccessChain 12(v) 49
|
||||
53: 6(float) Load 52
|
||||
54: 9(fvec2) CompositeConstruct 51 53
|
||||
55: 30(ptr) AccessChain 16(s) 48
|
||||
Store 55 54
|
||||
56: 10(S) Load 16(s)
|
||||
ReturnValue 56
|
||||
FunctionEnd
|
|
@ -1,15 +1,10 @@
|
|||
hlsl.semantic.geom
|
||||
ERROR: 0:15: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 0:15: '' : unimplemented: clip/cull not currently implemented for this stage
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 500
|
||||
invocations = -1
|
||||
max_vertices = 4
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Sequence
|
||||
0:13 Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
|
@ -23,6 +18,26 @@ ERROR: node is still EOpNull!
|
|||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp float)
|
||||
0:15 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 clip0: direct index for structure ( temp float)
|
||||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp float)
|
||||
0:15 direct index ( out float CullDistance)
|
||||
0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 cull0: direct index for structure ( temp float)
|
||||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 2 (const int)
|
||||
0:15 move second child to first child ( temp uint)
|
||||
0:? 'OutputStream.vpai' ( out uint ViewportIndex)
|
||||
0:15 vpai: direct index for structure ( temp uint)
|
||||
|
@ -57,6 +72,8 @@ ERROR: node is still EOpNull!
|
|||
0:? 'OutputStream.vpai' ( out uint ViewportIndex)
|
||||
0:? 'OutputStream.rtai' ( out uint Layer)
|
||||
0:? 'OutputStream.ii' (layout( location=0) out int)
|
||||
0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
|
||||
0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
@ -67,7 +84,7 @@ invocations = 1
|
|||
max_vertices = 4
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Sequence
|
||||
0:13 Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
|
||||
0:13 Function Parameters:
|
||||
0:13 'VertexID' ( in 3-element array of uint)
|
||||
|
@ -81,6 +98,26 @@ ERROR: node is still EOpNull!
|
|||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp float)
|
||||
0:15 direct index ( out float ClipDistance)
|
||||
0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 clip0: direct index for structure ( temp float)
|
||||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:? Sequence
|
||||
0:15 move second child to first child ( temp float)
|
||||
0:15 direct index ( out float CullDistance)
|
||||
0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:15 cull0: direct index for structure ( temp float)
|
||||
0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii})
|
||||
0:15 Constant:
|
||||
0:15 2 (const int)
|
||||
0:15 move second child to first child ( temp uint)
|
||||
0:? 'OutputStream.vpai' ( out uint ViewportIndex)
|
||||
0:15 vpai: direct index for structure ( temp uint)
|
||||
|
@ -115,5 +152,129 @@ ERROR: node is still EOpNull!
|
|||
0:? 'OutputStream.vpai' ( out uint ViewportIndex)
|
||||
0:? 'OutputStream.rtai' ( out uint Layer)
|
||||
0:? 'OutputStream.ii' (layout( location=0) out int)
|
||||
0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
|
||||
0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance)
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 65
|
||||
|
||||
Capability Geometry
|
||||
Capability ClipDistance
|
||||
Capability CullDistance
|
||||
Capability MultiViewport
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 20 29 34 40 45 50 57
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 4
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 12 "S"
|
||||
MemberName 12(S) 0 "clip0"
|
||||
MemberName 12(S) 1 "clip0"
|
||||
MemberName 12(S) 2 "cull0"
|
||||
MemberName 12(S) 3 "vpai"
|
||||
MemberName 12(S) 4 "rtai"
|
||||
MemberName 12(S) 5 "ii"
|
||||
Name 17 "@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;"
|
||||
Name 15 "VertexID"
|
||||
Name 16 "OutputStream"
|
||||
Name 20 "OutputStream.clip0"
|
||||
Name 21 "s"
|
||||
Name 29 "OutputStream.clip0"
|
||||
Name 34 "OutputStream.cull0"
|
||||
Name 40 "OutputStream.vpai"
|
||||
Name 45 "OutputStream.rtai"
|
||||
Name 50 "OutputStream.ii"
|
||||
Name 55 "VertexID"
|
||||
Name 57 "VertexID"
|
||||
Name 59 "OutputStream"
|
||||
Name 60 "param"
|
||||
Name 62 "param"
|
||||
Decorate 20(OutputStream.clip0) BuiltIn Position
|
||||
Decorate 29(OutputStream.clip0) BuiltIn ClipDistance
|
||||
Decorate 34(OutputStream.cull0) BuiltIn CullDistance
|
||||
Decorate 40(OutputStream.vpai) BuiltIn ViewportIndex
|
||||
Decorate 45(OutputStream.rtai) BuiltIn Layer
|
||||
Decorate 50(OutputStream.ii) Location 0
|
||||
Decorate 57(VertexID) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: 6(int) Constant 3
|
||||
8: TypeArray 6(int) 7
|
||||
9: TypePointer Function 8
|
||||
10: TypeFloat 32
|
||||
11: TypeInt 32 1
|
||||
12(S): TypeStruct 10(float) 10(float) 10(float) 6(int) 6(int) 11(int)
|
||||
13: TypePointer Function 12(S)
|
||||
14: TypeFunction 2 9(ptr) 13(ptr)
|
||||
19: TypePointer Output 10(float)
|
||||
20(OutputStream.clip0): 19(ptr) Variable Output
|
||||
22: 11(int) Constant 0
|
||||
23: TypePointer Function 10(float)
|
||||
26: 6(int) Constant 1
|
||||
27: TypeArray 10(float) 26
|
||||
28: TypePointer Output 27
|
||||
29(OutputStream.clip0): 28(ptr) Variable Output
|
||||
30: 11(int) Constant 1
|
||||
34(OutputStream.cull0): 28(ptr) Variable Output
|
||||
35: 11(int) Constant 2
|
||||
39: TypePointer Output 6(int)
|
||||
40(OutputStream.vpai): 39(ptr) Variable Output
|
||||
41: 11(int) Constant 3
|
||||
42: TypePointer Function 6(int)
|
||||
45(OutputStream.rtai): 39(ptr) Variable Output
|
||||
46: 11(int) Constant 4
|
||||
49: TypePointer Output 11(int)
|
||||
50(OutputStream.ii): 49(ptr) Variable Output
|
||||
51: 11(int) Constant 5
|
||||
52: TypePointer Function 11(int)
|
||||
56: TypePointer Input 8
|
||||
57(VertexID): 56(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
55(VertexID): 9(ptr) Variable Function
|
||||
59(OutputStream): 13(ptr) Variable Function
|
||||
60(param): 9(ptr) Variable Function
|
||||
62(param): 13(ptr) Variable Function
|
||||
58: 8 Load 57(VertexID)
|
||||
Store 55(VertexID) 58
|
||||
61: 8 Load 55(VertexID)
|
||||
Store 60(param) 61
|
||||
63: 2 FunctionCall 17(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;) 60(param) 62(param)
|
||||
64: 12(S) Load 62(param)
|
||||
Store 59(OutputStream) 64
|
||||
Return
|
||||
FunctionEnd
|
||||
17(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;): 2 Function None 14
|
||||
15(VertexID): 9(ptr) FunctionParameter
|
||||
16(OutputStream): 13(ptr) FunctionParameter
|
||||
18: Label
|
||||
21(s): 13(ptr) Variable Function
|
||||
24: 23(ptr) AccessChain 21(s) 22
|
||||
25: 10(float) Load 24
|
||||
Store 20(OutputStream.clip0) 25
|
||||
31: 23(ptr) AccessChain 21(s) 30
|
||||
32: 10(float) Load 31
|
||||
33: 19(ptr) AccessChain 29(OutputStream.clip0) 22
|
||||
Store 33 32
|
||||
36: 23(ptr) AccessChain 21(s) 35
|
||||
37: 10(float) Load 36
|
||||
38: 19(ptr) AccessChain 34(OutputStream.cull0) 22
|
||||
Store 38 37
|
||||
43: 42(ptr) AccessChain 21(s) 41
|
||||
44: 6(int) Load 43
|
||||
Store 40(OutputStream.vpai) 44
|
||||
47: 42(ptr) AccessChain 21(s) 46
|
||||
48: 6(int) Load 47
|
||||
Store 45(OutputStream.rtai) 48
|
||||
53: 52(ptr) AccessChain 21(s) 51
|
||||
54: 11(int) Load 53
|
||||
Store 50(OutputStream.ii) 54
|
||||
EmitVertex
|
||||
Return
|
||||
FunctionEnd
|
||||
|
|
|
@ -48,7 +48,7 @@ Shader version: 500
|
|||
0:? 'ins' ( temp structure{ temp float clip0, temp float clip1, temp float cull0, temp float cull1, temp int ii})
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 2-element array of float ClipDistance)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
|
@ -58,7 +58,7 @@ Shader version: 500
|
|||
0:10 0 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 2-element array of float ClipDistance)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
|
@ -68,7 +68,7 @@ Shader version: 500
|
|||
0:10 1 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float CullDistance)
|
||||
0:? '@entryPointOutput.cull1' ( out 2-element array of float CullDistance)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
|
@ -78,7 +78,7 @@ Shader version: 500
|
|||
0:10 2 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float CullDistance)
|
||||
0:? '@entryPointOutput.cull1' ( out 2-element array of float CullDistance)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
|
@ -155,7 +155,7 @@ Shader version: 500
|
|||
0:? 'ins' ( temp structure{ temp float clip0, temp float clip1, temp float cull0, temp float cull1, temp int ii})
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 2-element array of float ClipDistance)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
|
@ -165,7 +165,7 @@ Shader version: 500
|
|||
0:10 0 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float ClipDistance)
|
||||
0:? '@entryPointOutput.clip1' ( out 2-element array of float ClipDistance)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
|
@ -175,7 +175,7 @@ Shader version: 500
|
|||
0:10 1 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float CullDistance)
|
||||
0:? '@entryPointOutput.cull1' ( out 2-element array of float CullDistance)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
|
@ -185,7 +185,7 @@ Shader version: 500
|
|||
0:10 2 (const int)
|
||||
0:? Sequence
|
||||
0:10 move second child to first child ( temp float)
|
||||
0:10 direct index ( temp float)
|
||||
0:10 direct index ( out float CullDistance)
|
||||
0:? '@entryPointOutput.cull1' ( out 2-element array of float CullDistance)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
spv.looseUniformNoLoc.vert
|
||||
ERROR: spv.looseUniformNoLoc.vert:9: 'uv' : non-opaque uniform variables need a layout(location=L)
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
ERROR: Linking vertex stage: Missing entry point: Each stage requires one entry point
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
|
@ -1,12 +1,12 @@
|
|||
spv.noBuiltInLoc.vert
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 23
|
||||
// Id's are bound by 33
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 11 18
|
||||
EntryPoint Vertex 4 "main" 9 11 18 31 32
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "bar"
|
||||
|
@ -17,6 +17,11 @@ spv.noBuiltInLoc.vert
|
|||
MemberName 16(gl_PerVertex) 2 "gl_ClipDistance"
|
||||
MemberName 16(gl_PerVertex) 3 "gl_CullDistance"
|
||||
Name 18 ""
|
||||
Name 24 "uv1"
|
||||
Name 26 "uv2"
|
||||
Name 29 "uv3"
|
||||
Name 31 "gl_VertexID"
|
||||
Name 32 "gl_InstanceID"
|
||||
Decorate 9(bar) Location 0
|
||||
Decorate 11(foo) Location 0
|
||||
MemberDecorate 16(gl_PerVertex) 0 BuiltIn Position
|
||||
|
@ -24,6 +29,14 @@ spv.noBuiltInLoc.vert
|
|||
MemberDecorate 16(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||
MemberDecorate 16(gl_PerVertex) 3 BuiltIn CullDistance
|
||||
Decorate 16(gl_PerVertex) Block
|
||||
Decorate 24(uv1) Location 0
|
||||
Decorate 24(uv1) DescriptorSet 0
|
||||
Decorate 26(uv2) Location 1
|
||||
Decorate 26(uv2) DescriptorSet 0
|
||||
Decorate 29(uv3) Location 2
|
||||
Decorate 29(uv3) DescriptorSet 0
|
||||
Decorate 31(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 32(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
@ -40,6 +53,16 @@ spv.noBuiltInLoc.vert
|
|||
18: 17(ptr) Variable Output
|
||||
19: TypeInt 32 1
|
||||
20: 19(int) Constant 0
|
||||
23: TypePointer UniformConstant 7(fvec4)
|
||||
24(uv1): 23(ptr) Variable UniformConstant
|
||||
25: TypePointer UniformConstant 6(float)
|
||||
26(uv2): 25(ptr) Variable UniformConstant
|
||||
27: TypeVector 6(float) 3
|
||||
28: TypePointer UniformConstant 27(fvec3)
|
||||
29(uv3): 28(ptr) Variable UniformConstant
|
||||
30: TypePointer Input 19(int)
|
||||
31(gl_VertexID): 30(ptr) Variable Input
|
||||
32(gl_InstanceID): 30(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec4) Load 11(foo)
|
||||
|
|
|
@ -1,21 +1,18 @@
|
|||
struct S {
|
||||
float4 pos : SV_Position;
|
||||
float clip : SV_ClipDistance0;
|
||||
float cull : SV_CullDistance0;
|
||||
float4 pos : SV_Position;
|
||||
float2 clip : SV_ClipDistance0;
|
||||
};
|
||||
|
||||
[maxvertexcount(3)]
|
||||
void main(triangle in float4 pos[3] : SV_Position,
|
||||
triangle in uint VertexID[3] : VertexID,
|
||||
inout LineStream<S> OutputStream,
|
||||
triangle in float clip[3] : SV_ClipDistance, // scalar float
|
||||
triangle in float cull[3] : SV_CullDistance) // scalar float
|
||||
triangle in float4 clip[3] : SV_ClipDistance) // externally: an array 3 of array 4 (not vec4!) of float.
|
||||
{
|
||||
S s;
|
||||
|
||||
s.pos = pos[0];
|
||||
s.clip = clip[0];
|
||||
s.cull = cull[0];
|
||||
s.clip = clip[0].xy;
|
||||
|
||||
OutputStream.Append(s);
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ struct S {
|
|||
void main(triangle in float4 pos[3] : SV_Position,
|
||||
triangle in uint VertexID[3] : VertexID,
|
||||
inout LineStream<S> OutputStream,
|
||||
triangle in float2 clip[3][2] : SV_ClipDistance) // scalar float
|
||||
triangle in float2 clip[3][2] : SV_ClipDistance) // externally: an array 3 of array 4 of float.
|
||||
{
|
||||
S s;
|
||||
|
||||
|
|
|
@ -4,5 +4,3 @@ float4 main(in float4 pos : SV_Position,
|
|||
{
|
||||
return pos + clip[0] + cull[0];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
struct S {
|
||||
float4 pos : SV_Position;
|
||||
float2 clip0 : SV_ClipDistance0; // clip0 and clip1 form an array of float[4] externally.
|
||||
float2 clip1 : SV_ClipDistance1;
|
||||
};
|
||||
|
||||
[maxvertexcount(3)]
|
||||
void main(triangle in float4 pos[3] : SV_Position,
|
||||
triangle in uint VertexID[3] : VertexID,
|
||||
inout LineStream<S> OutputStream,
|
||||
triangle in float4 clip[3] : SV_ClipDistance) // externally: an array 3 of array 4 (not vec4!) of float.
|
||||
{
|
||||
S s;
|
||||
|
||||
s.pos = pos[0];
|
||||
s.clip0 = clip[0].xy;
|
||||
s.clip1 = clip[0].zw;
|
||||
|
||||
OutputStream.Append(s);
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
struct S {
|
||||
float4 pos : SV_Position;
|
||||
float2 clip0 : SV_ClipDistance0; // clip0 and clip1 form an array of float[4] externally.
|
||||
float2 clip1 : SV_ClipDistance1;
|
||||
};
|
||||
|
||||
[maxvertexcount(3)]
|
||||
void main(triangle in float4 pos[3] : SV_Position,
|
||||
triangle in uint VertexID[3] : VertexID,
|
||||
inout LineStream<S> OutputStream,
|
||||
triangle in float2 clip0[3] : SV_ClipDistance0, // test input arrayed semantic vars
|
||||
triangle in float2 clip1[3] : SV_ClipDistance1)
|
||||
{
|
||||
S s;
|
||||
|
||||
s.pos = pos[0];
|
||||
s.clip0 = clip0[0];
|
||||
s.clip1 = clip1[0];
|
||||
|
||||
OutputStream.Append(s);
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
#define DEFINE_TEXTURE(name) Texture2D name; SamplerState name##_ss;
|
||||
#define SAMPLE_TEXTURE(name, uv) name.Sample(name##_ss, (uv).xy)
|
||||
|
||||
#define test_texture2 test_texture
|
||||
|
||||
DEFINE_TEXTURE(test_texture)
|
||||
|
||||
float4 main(float4 input : TEXCOORD0) : SV_TARGET
|
||||
{
|
||||
float4 tex = SAMPLE_TEXTURE(test_texture2, input.xy);
|
||||
return tex;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
#define DLAYER 3
|
||||
|
||||
#define DMACRO1 TEXCOORD1
|
||||
#define DMACRO(num) TEXCOORD##num
|
||||
|
||||
struct S {
|
||||
float4 pos : POSITION;
|
||||
float2 UV0 : TEXCOORD0;
|
||||
float2 UV1 : DMACRO1;
|
||||
float2 UV2 : DMACRO(2);
|
||||
float2 UV3 : DMACRO(DLAYER);
|
||||
};
|
||||
|
||||
|
||||
S main(float4 v : POSITION)
|
||||
{
|
||||
S s;
|
||||
s.pos = v;
|
||||
s.UV0 = float2(v.x,v.x);
|
||||
s.UV1 = float2(v.y,v.y);
|
||||
s.UV2 = float2(v.z,v.z);
|
||||
s.UV3 = float2(v.w,v.w);
|
||||
return s;
|
||||
}
|
|
@ -109,8 +109,10 @@ diff -b $BASEDIR/hlsl.explicitDescriptorSet-2.frag.out $TARGETDIR/hlsl.explicitD
|
|||
echo Testing SPV no location
|
||||
$EXE -V -C spv.noLocation.vert > $TARGETDIR/spv.noLocation.vert.out
|
||||
diff -b $BASEDIR/spv.noLocation.vert.out $TARGETDIR/spv.noLocation.vert.out || HASERROR=1
|
||||
$EXE -H --aml spv.noBuiltInLoc.vert > $TARGETDIR/spv.noBuiltInLoc.vert.out
|
||||
$EXE -G -H --aml spv.noBuiltInLoc.vert > $TARGETDIR/spv.noBuiltInLoc.vert.out
|
||||
diff -b $BASEDIR/spv.noBuiltInLoc.vert.out $TARGETDIR/spv.noBuiltInLoc.vert.out || HASERROR=1
|
||||
$EXE -G spv.looseUniformNoLoc.vert > $TARGETDIR/spv.looseUniformNoLoc.vert.out
|
||||
diff -b $BASEDIR/spv.looseUniformNoLoc.vert.out $TARGETDIR/spv.looseUniformNoLoc.vert.out || HASERROR=1
|
||||
|
||||
#
|
||||
# Testing debug information
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
#version 450 core
|
||||
|
||||
layout(location = 0)
|
||||
in vec4 foo;
|
||||
|
||||
layout(location = 0)
|
||||
out vec4 bar;
|
||||
|
||||
uniform vec4 uv;
|
||||
|
||||
void main()
|
||||
{
|
||||
bar = foo;
|
||||
gl_Position = foo;
|
||||
}
|
|
@ -6,6 +6,10 @@ in vec4 foo;
|
|||
layout(location = 0)
|
||||
out vec4 bar;
|
||||
|
||||
uniform vec4 uv1;
|
||||
uniform float uv2;
|
||||
uniform vec3 uv3;
|
||||
|
||||
void main()
|
||||
{
|
||||
bar = foo;
|
||||
|
|
|
@ -63,7 +63,7 @@ std::string to_string(const T& val) {
|
|||
}
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER < 1700
|
||||
#if defined(_MSC_VER) && _MSC_VER < 1800
|
||||
inline long long int strtoll (const char* str, char** endptr, int base)
|
||||
{
|
||||
return _strtoi64(str, endptr, base);
|
||||
|
|
|
@ -3425,6 +3425,12 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
|||
"in int gl_DrawIDARB;"
|
||||
);
|
||||
}
|
||||
if (version >= 450) {
|
||||
stageBuiltins[EShLangVertex].append(
|
||||
"out int gl_ViewportIndex;"
|
||||
"out int gl_Layer;"
|
||||
);
|
||||
}
|
||||
if (version >= 460) {
|
||||
stageBuiltins[EShLangVertex].append(
|
||||
"in int gl_BaseVertex;"
|
||||
|
@ -3436,8 +3442,6 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
|||
#ifdef NV_EXTENSIONS
|
||||
if (version >= 450)
|
||||
stageBuiltins[EShLangVertex].append(
|
||||
"out int gl_ViewportIndex;"
|
||||
"out int gl_Layer;"
|
||||
"out int gl_ViewportMask[];" // GL_NV_viewport_array2
|
||||
"out int gl_SecondaryViewportMaskNV[];" // GL_NV_stereo_view_rendering
|
||||
"out vec4 gl_SecondaryPositionNV;" // GL_NV_stereo_view_rendering
|
||||
|
@ -3730,11 +3734,15 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
|||
"};"
|
||||
"\n");
|
||||
|
||||
if (version >= 450)
|
||||
stageBuiltins[EShLangTessEvaluation].append(
|
||||
"out int gl_ViewportIndex;"
|
||||
"out int gl_Layer;"
|
||||
);
|
||||
|
||||
#ifdef NV_EXTENSIONS
|
||||
if (version >= 450)
|
||||
stageBuiltins[EShLangTessEvaluation].append(
|
||||
"out int gl_ViewportIndex;"
|
||||
"out int gl_Layer;"
|
||||
"out int gl_ViewportMask[];" // GL_NV_viewport_array2
|
||||
"out vec4 gl_SecondaryPositionNV;" // GL_NV_stereo_view_rendering
|
||||
"out int gl_SecondaryViewportMaskNV[];" // GL_NV_stereo_view_rendering
|
||||
|
@ -5467,6 +5475,14 @@ void TBuiltIns::identifyBuiltIns(int version, EProfile profile, const SpvVersion
|
|||
symbolTable.setVariableExtensions("gl_Layer", Num_viewportEXTs, viewportEXTs);
|
||||
symbolTable.setVariableExtensions("gl_ViewportIndex", Num_viewportEXTs, viewportEXTs);
|
||||
}
|
||||
#else
|
||||
if (language == EShLangVertex || language == EShLangTessEvaluation) {
|
||||
symbolTable.setVariableExtensions("gl_Layer", 1, &E_GL_ARB_shader_viewport_layer_array);
|
||||
symbolTable.setVariableExtensions("gl_ViewportIndex", 1, &E_GL_ARB_shader_viewport_layer_array);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef NV_EXTENSIONS
|
||||
symbolTable.setVariableExtensions("gl_ViewportMask", 1, &E_GL_NV_viewport_array2);
|
||||
symbolTable.setVariableExtensions("gl_SecondaryPositionNV", 1, &E_GL_NV_stereo_view_rendering);
|
||||
symbolTable.setVariableExtensions("gl_SecondaryViewportMaskNV", 1, &E_GL_NV_stereo_view_rendering);
|
||||
|
|
|
@ -2493,8 +2493,8 @@ void TParseContext::transparentOpaqueCheck(const TSourceLoc& loc, const TType& t
|
|||
// Vulkan doesn't allow transparent uniforms outside of blocks
|
||||
if (spvVersion.vulkan > 0)
|
||||
vulkanRemoved(loc, "non-opaque uniforms outside a block");
|
||||
// OpenGL wants locations on these
|
||||
if (spvVersion.openGl > 0 && !type.getQualifier().hasLocation())
|
||||
// OpenGL wants locations on these (unless they are getting automapped)
|
||||
if (spvVersion.openGl > 0 && !type.getQualifier().hasLocation() && !intermediate.getAutoMapLocations())
|
||||
error(loc, "non-opaque uniform variables need a layout(location=L)", identifier.c_str(), "");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -76,6 +76,7 @@ public:
|
|||
EProfile profile, const SpvVersion& spvVersion, EShLanguage language,
|
||||
TInfoSink& infoSink, bool forwardCompatible, EShMessages messages)
|
||||
: TParseVersions(interm, version, profile, spvVersion, language, infoSink, forwardCompatible, messages),
|
||||
scopeMangler("::"),
|
||||
symbolTable(symbolTable),
|
||||
statementNestingLevel(0), loopNestingLevel(0), structNestingLevel(0), controlFlowNestingLevel(0),
|
||||
postEntryPointReturn(false),
|
||||
|
@ -143,7 +144,7 @@ public:
|
|||
virtual bool lValueErrorCheck(const TSourceLoc&, const char* op, TIntermTyped*);
|
||||
virtual void rValueErrorCheck(const TSourceLoc&, const char* op, TIntermTyped*);
|
||||
|
||||
const char* const scopeMangler = "::";
|
||||
const char* const scopeMangler;
|
||||
|
||||
// Basic parsing state, easily accessible to the grammar
|
||||
|
||||
|
|
|
@ -253,10 +253,14 @@ struct TResolverUniformAdaptor
|
|||
ent.newBinding = -1;
|
||||
ent.newSet = -1;
|
||||
ent.newIndex = -1;
|
||||
const bool isValid = resolver.validateBinding(stage, ent.symbol->getName().c_str(), ent.symbol->getType(), ent.live);
|
||||
const bool isValid = resolver.validateBinding(stage, ent.symbol->getName().c_str(), ent.symbol->getType(),
|
||||
ent.live);
|
||||
if (isValid) {
|
||||
ent.newBinding = resolver.resolveBinding(stage, ent.symbol->getName().c_str(), ent.symbol->getType(), ent.live);
|
||||
ent.newBinding = resolver.resolveBinding(stage, ent.symbol->getName().c_str(), ent.symbol->getType(),
|
||||
ent.live);
|
||||
ent.newSet = resolver.resolveSet(stage, ent.symbol->getName().c_str(), ent.symbol->getType(), ent.live);
|
||||
ent.newLocation = resolver.resolveUniformLocation(stage, ent.symbol->getName().c_str(),
|
||||
ent.symbol->getType(), ent.live);
|
||||
|
||||
if (ent.newBinding != -1) {
|
||||
if (ent.newBinding >= int(TQualifier::layoutBindingEnd)) {
|
||||
|
@ -356,6 +360,7 @@ struct TDefaultIoResolverBase : public glslang::TIoMapResolver
|
|||
std::vector<std::string> baseResourceSetBinding;
|
||||
bool doAutoBindingMapping;
|
||||
bool doAutoLocationMapping;
|
||||
int nextUniformLocation;
|
||||
typedef std::vector<int> TSlotSet;
|
||||
typedef std::unordered_map<int, TSlotSet> TSlotSetMap;
|
||||
TSlotSetMap slots;
|
||||
|
@ -411,7 +416,27 @@ struct TDefaultIoResolverBase : public glslang::TIoMapResolver
|
|||
|
||||
return 0;
|
||||
}
|
||||
int resolveUniformLocation(EShLanguage /*stage*/, const char* /*name*/, const glslang::TType& type, bool /*is_live*/) override
|
||||
{
|
||||
// kick out of not doing this
|
||||
if (!doAutoLocationMapping)
|
||||
return -1;
|
||||
|
||||
// no locations added if already present, a built-in variable, a block, or an opaque
|
||||
if (type.getQualifier().hasLocation() || type.isBuiltIn() ||
|
||||
type.getBasicType() == EbtBlock || type.containsOpaque())
|
||||
return -1;
|
||||
|
||||
// no locations on blocks of built-in variables
|
||||
if (type.isStruct()) {
|
||||
if (type.getStruct()->size() < 1)
|
||||
return -1;
|
||||
if ((*type.getStruct())[0].type->isBuiltIn())
|
||||
return -1;
|
||||
}
|
||||
|
||||
return nextUniformLocation++;
|
||||
}
|
||||
bool validateInOut(EShLanguage /*stage*/, const char* /*name*/, const TType& /*type*/, bool /*is_live*/) override
|
||||
{
|
||||
return true;
|
||||
|
@ -700,6 +725,7 @@ bool TIoMapper::addStage(EShLanguage stage, TIntermediate &intermediate, TInfoSi
|
|||
resolverBase->baseResourceSetBinding = intermediate.getResourceSetBinding();
|
||||
resolverBase->doAutoBindingMapping = intermediate.getAutoMapBindings();
|
||||
resolverBase->doAutoLocationMapping = intermediate.getAutoMapLocations();
|
||||
resolverBase->nextUniformLocation = 0;
|
||||
|
||||
resolver = resolverBase;
|
||||
}
|
||||
|
|
|
@ -208,11 +208,14 @@ class TVariable;
|
|||
class TIntermediate {
|
||||
public:
|
||||
explicit TIntermediate(EShLanguage l, int v = 0, EProfile p = ENoProfile) :
|
||||
implicitThisName("@this"),
|
||||
language(l), source(EShSourceNone), profile(p), version(v), treeRoot(0),
|
||||
numEntryPoints(0), numErrors(0), numPushConstants(0), recursive(false),
|
||||
invocations(TQualifier::layoutNotSet), vertices(TQualifier::layoutNotSet), inputPrimitive(ElgNone), outputPrimitive(ElgNone),
|
||||
invocations(TQualifier::layoutNotSet), vertices(TQualifier::layoutNotSet),
|
||||
inputPrimitive(ElgNone), outputPrimitive(ElgNone),
|
||||
pixelCenterInteger(false), originUpperLeft(false),
|
||||
vertexSpacing(EvsNone), vertexOrder(EvoNone), pointMode(false), earlyFragmentTests(false), postDepthCoverage(false), depthLayout(EldNone), depthReplacing(false),
|
||||
vertexSpacing(EvsNone), vertexOrder(EvoNone), pointMode(false), earlyFragmentTests(false),
|
||||
postDepthCoverage(false), depthLayout(EldNone), depthReplacing(false),
|
||||
blendEquations(0), xfbMode(false), multiStream(false),
|
||||
#ifdef NV_EXTENSIONS
|
||||
layoutOverrideCoverage(false),
|
||||
|
@ -607,7 +610,7 @@ public:
|
|||
void addProcessArgument(const std::string& arg) { processes.addArgument(arg); }
|
||||
const std::vector<std::string>& getProcesses() const { return processes.getProcesses(); }
|
||||
|
||||
const char* const implicitThisName = "@this";
|
||||
const char* const implicitThisName;
|
||||
|
||||
protected:
|
||||
TIntermSymbol* addSymbol(int Id, const TString&, const TType&, const TConstUnionArray&, TIntermTyped* subtree, const TSourceLoc&);
|
||||
|
|
|
@ -1068,6 +1068,10 @@ int TPpContext::tMacroInput::scan(TPpToken* ppToken)
|
|||
pasting = true;
|
||||
}
|
||||
|
||||
// HLSL does expand macros before concatenation
|
||||
if (pasting && pp->parseContext.isReadingHLSL())
|
||||
pasting = false;
|
||||
|
||||
// TODO: preprocessor: properly handle whitespace (or lack of it) between tokens when expanding
|
||||
if (token == PpAtomIdentifier) {
|
||||
int i;
|
||||
|
|
|
@ -533,9 +533,10 @@ class TIoMapper;
|
|||
|
||||
// Allows to customize the binding layout after linking.
|
||||
// All used uniform variables will invoke at least validateBinding.
|
||||
// If validateBinding returned true then the other resolveBinding
|
||||
// and resolveSet are invoked to resolve the binding and descriptor
|
||||
// set index respectively.
|
||||
// If validateBinding returned true then the other resolveBinding,
|
||||
// resolveSet, and resolveLocation are invoked to resolve the binding
|
||||
// and descriptor set index respectively.
|
||||
//
|
||||
// Invocations happen in a particular order:
|
||||
// 1) all shader inputs
|
||||
// 2) all shader outputs
|
||||
|
@ -567,6 +568,9 @@ public:
|
|||
// Should return a value >= 0 if the current set should be overridden.
|
||||
// Return -1 if the current set (including no set) should be kept.
|
||||
virtual int resolveSet(EShLanguage stage, const char* name, const TType& type, bool is_live) = 0;
|
||||
// Should return a value >= 0 if the current location should be overridden.
|
||||
// Return -1 if the current location (including no location) should be kept.
|
||||
virtual int resolveUniformLocation(EShLanguage stage, const char* name, const TType& type, bool is_live) = 0;
|
||||
// Should return true if the resulting/current setup would be okay.
|
||||
// Basic idea is to do aliasing checks and reject invalid semantic names.
|
||||
virtual bool validateInOut(EShLanguage stage, const char* name, const TType& type, bool is_live) = 0;
|
||||
|
|
|
@ -104,8 +104,10 @@ INSTANTIATE_TEST_CASE_P(
|
|||
{"hlsl.clipdistance-2.geom", "main"},
|
||||
{"hlsl.clipdistance-2.vert", "main"},
|
||||
{"hlsl.clipdistance-3.frag", "main"},
|
||||
{"hlsl.clipdistance-3.geom", "main"},
|
||||
{"hlsl.clipdistance-3.vert", "main"},
|
||||
{"hlsl.clipdistance-4.frag", "main"},
|
||||
{"hlsl.clipdistance-4.geom", "main"},
|
||||
{"hlsl.clipdistance-4.vert", "main"},
|
||||
{"hlsl.clipdistance-5.frag", "main"},
|
||||
{"hlsl.clipdistance-5.vert", "main"},
|
||||
|
@ -311,11 +313,13 @@ INSTANTIATE_TEST_CASE_P(
|
|||
{"hlsl.matType.bool.frag", "main"},
|
||||
{"hlsl.matType.int.frag", "main"},
|
||||
{"hlsl.max.frag", "PixelShaderFunction"},
|
||||
{"hlsl.preprocessor.frag", "main"},
|
||||
{"hlsl.precedence.frag", "PixelShaderFunction"},
|
||||
{"hlsl.precedence2.frag", "PixelShaderFunction"},
|
||||
{"hlsl.scalar2matrix.frag", "main"},
|
||||
{"hlsl.semantic.geom", "main"},
|
||||
{"hlsl.semantic.vert", "main"},
|
||||
{"hlsl.semantic-1.vert", "main"},
|
||||
{"hlsl.scope.frag", "PixelShaderFunction"},
|
||||
{"hlsl.sin.frag", "PixelShaderFunction"},
|
||||
{"hlsl.struct.frag", "PixelShaderFunction"},
|
||||
|
|
|
@ -66,8 +66,10 @@ HlslParseContext::HlslParseContext(TSymbolTable& symbolTable, TIntermediate& int
|
|||
entryPointFunction(nullptr),
|
||||
entryPointFunctionBody(nullptr),
|
||||
gsStreamOutput(nullptr),
|
||||
clipDistanceVariable(nullptr),
|
||||
cullDistanceVariable(nullptr)
|
||||
clipDistanceInput(nullptr),
|
||||
cullDistanceInput(nullptr),
|
||||
clipDistanceOutput(nullptr),
|
||||
cullDistanceOutput(nullptr)
|
||||
{
|
||||
globalUniformDefaults.clear();
|
||||
globalUniformDefaults.layoutMatrix = ElmRowMajor;
|
||||
|
@ -80,8 +82,10 @@ HlslParseContext::HlslParseContext(TSymbolTable& symbolTable, TIntermediate& int
|
|||
globalInputDefaults.clear();
|
||||
globalOutputDefaults.clear();
|
||||
|
||||
clipSemanticNSize.fill(0);
|
||||
cullSemanticNSize.fill(0);
|
||||
clipSemanticNSizeIn.fill(0);
|
||||
cullSemanticNSizeIn.fill(0);
|
||||
clipSemanticNSizeOut.fill(0);
|
||||
cullSemanticNSizeOut.fill(0);
|
||||
|
||||
// "Shaders in the transform
|
||||
// feedback capturing mode have an initial global default of
|
||||
|
@ -1152,14 +1156,18 @@ void HlslParseContext::splitBuiltIn(const TString& baseName, const TType& member
|
|||
if (arraySizes != nullptr && !memberType.isArray())
|
||||
ioVar->getWritableType().newArraySizes(*arraySizes);
|
||||
|
||||
fixBuiltInIoType(ioVar->getWritableType());
|
||||
|
||||
splitBuiltIns[tInterstageIoData(memberType.getQualifier().builtIn, outerQualifier.storage)] = ioVar;
|
||||
if (!isClipOrCullDistance(ioVar->getType()))
|
||||
trackLinkage(*ioVar);
|
||||
|
||||
// Merge qualifier from the user structure
|
||||
mergeQualifiers(ioVar->getWritableType().getQualifier(), outerQualifier);
|
||||
|
||||
// Fix the builtin type if needed (e.g, some types require fixed array sizes, no matter how the
|
||||
// shader declared them). This is done after mergeQualifiers(), in case fixBuiltInIoType looks
|
||||
// at the qualifier to determine e.g, in or out qualifications.
|
||||
fixBuiltInIoType(ioVar->getWritableType());
|
||||
|
||||
// But, not location, we're losing that
|
||||
ioVar->getWritableType().getQualifier().layoutLocation = TQualifier::layoutLocationEnd;
|
||||
}
|
||||
|
@ -1483,10 +1491,18 @@ void HlslParseContext::fixBuiltInIoType(TType& type)
|
|||
}
|
||||
default:
|
||||
if (isClipOrCullDistance(type)) {
|
||||
const int loc = type.getQualifier().layoutLocation;
|
||||
|
||||
if (type.getQualifier().builtIn == EbvClipDistance) {
|
||||
clipSemanticNSize[type.getQualifier().layoutLocation] = type.getVectorSize();
|
||||
if (type.getQualifier().storage == EvqVaryingIn)
|
||||
clipSemanticNSizeIn[loc] = type.getVectorSize();
|
||||
else
|
||||
clipSemanticNSizeOut[loc] = type.getVectorSize();
|
||||
} else {
|
||||
cullSemanticNSize[type.getQualifier().layoutLocation] = type.getVectorSize();
|
||||
if (type.getQualifier().storage == EvqVaryingIn)
|
||||
cullSemanticNSizeIn[loc] = type.getVectorSize();
|
||||
else
|
||||
cullSemanticNSizeOut[loc] = type.getVectorSize();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2274,6 +2290,7 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
switch (language) {
|
||||
case EShLangFragment:
|
||||
case EShLangVertex:
|
||||
case EShLangGeometry:
|
||||
break;
|
||||
default:
|
||||
error(loc, "unimplemented: clip/cull not currently implemented for this stage", "", "");
|
||||
|
@ -2292,17 +2309,17 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
|
||||
const TBuiltInVariable builtInType = clipCullNode->getQualifier().builtIn;
|
||||
|
||||
decltype(clipSemanticNSize)* semanticNSize = nullptr;
|
||||
decltype(clipSemanticNSizeIn)* semanticNSize = nullptr;
|
||||
|
||||
// Refer to either the clip or the cull distance, depending on semantic.
|
||||
switch (builtInType) {
|
||||
case EbvClipDistance:
|
||||
clipCullVar = &clipDistanceVariable;
|
||||
semanticNSize = &clipSemanticNSize;
|
||||
clipCullVar = isOutput ? &clipDistanceOutput : &clipDistanceInput;
|
||||
semanticNSize = isOutput ? &clipSemanticNSizeOut : &clipSemanticNSizeIn;
|
||||
break;
|
||||
case EbvCullDistance:
|
||||
clipCullVar = &cullDistanceVariable;
|
||||
semanticNSize = &cullSemanticNSize;
|
||||
clipCullVar = isOutput ? &cullDistanceOutput : &cullDistanceInput;
|
||||
semanticNSize = isOutput ? &cullSemanticNSizeOut : &cullSemanticNSizeIn;
|
||||
break;
|
||||
|
||||
// called invalidly: we expected a clip or a cull distance.
|
||||
|
@ -2328,28 +2345,48 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
vecItems += (*semanticNSize)[x];
|
||||
arrayLoc += (*semanticNSize)[x];
|
||||
}
|
||||
|
||||
// array sizes, or 1 if it's not an array:
|
||||
const int internalNodeArraySize = (internalNode->getType().isArray() ? internalNode->getType().getOuterArraySize() : 1);
|
||||
|
||||
|
||||
// It can have up to 2 array dimensions (in the case of geometry shader inputs)
|
||||
const TArraySizes* const internalArraySizes = internalNode->getType().getArraySizes();
|
||||
const int internalArrayDims = internalNode->getType().isArray() ? internalArraySizes->getNumDims() : 0;
|
||||
// vector sizes:
|
||||
const int internalNodeVectorSize = internalNode->getType().getVectorSize();
|
||||
const int internalVectorSize = internalNode->getType().getVectorSize();
|
||||
// array sizes, or 1 if it's not an array:
|
||||
const int internalInnerArraySize = (internalArrayDims > 0 ? internalArraySizes->getDimSize(internalArrayDims-1) : 1);
|
||||
const int internalOuterArraySize = (internalArrayDims > 1 ? internalArraySizes->getDimSize(0) : 1);
|
||||
|
||||
// The created type may be an array of arrays, e.g, for geometry shader inputs.
|
||||
const bool isImplicitlyArrayed = (language == EShLangGeometry && !isOutput);
|
||||
|
||||
// If we haven't created the output already, create it now.
|
||||
if (*clipCullVar == nullptr) {
|
||||
// ClipDistance and CullDistance are handled specially in the entry point input/output copy
|
||||
// algorithm, because they may need to be unpacked from components of vectors (or a scalar)
|
||||
// into a float array, or vice versa. Here, we make the array the right size and type,
|
||||
// which depends on the incoming data, which has several potential dimensions: Semantic ID
|
||||
// vector size array size Of those, semantic ID and array size cannot appear
|
||||
// simultaneously.
|
||||
const int requiredArraySize = arrayLoc * internalNodeArraySize;
|
||||
// which depends on the incoming data, which has several potential dimensions:
|
||||
// * Semantic ID
|
||||
// * vector size
|
||||
// * array size
|
||||
// Of those, semantic ID and array size cannot appear simultaneously.
|
||||
//
|
||||
// Also to note: for implicitly arrayed forms (e.g, geometry shader inputs), we need to create two
|
||||
// array dimensions. The shader's declaration may have one or two array dimensions. One is always
|
||||
// the geometry's dimension.
|
||||
|
||||
const bool useInnerSize = internalArrayDims > 1 || !isImplicitlyArrayed;
|
||||
|
||||
const int requiredInnerArraySize = arrayLoc * (useInnerSize ? internalInnerArraySize : 1);
|
||||
const int requiredOuterArraySize = (internalArrayDims > 0) ? internalArraySizes->getDimSize(0) : 1;
|
||||
|
||||
TType clipCullType(EbtFloat, clipCullNode->getType().getQualifier().storage, 1);
|
||||
clipCullType.getQualifier() = clipCullNode->getType().getQualifier();
|
||||
|
||||
// Create required array dimension
|
||||
TArraySizes arraySizes;
|
||||
arraySizes.addInnerSize(requiredArraySize);
|
||||
if (isImplicitlyArrayed)
|
||||
arraySizes.addInnerSize(requiredOuterArraySize);
|
||||
arraySizes.addInnerSize(requiredInnerArraySize);
|
||||
clipCullType.newArraySizes(arraySizes);
|
||||
|
||||
// Obtain symbol name: we'll use that for the symbol we introduce.
|
||||
|
@ -2369,10 +2406,13 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
// Create symbol for the clip or cull variable.
|
||||
TIntermSymbol* clipCullSym = intermediate.addSymbol(**clipCullVar);
|
||||
|
||||
// array sizes, or 1 if it's not an array:
|
||||
const int clipCullSymArraySize = (clipCullSym->getType().isArray() ? clipCullSym->getType().getOuterArraySize() : 1);
|
||||
// vector sizes:
|
||||
const int clipCullSymVectorSize = clipCullSym->getType().getVectorSize();
|
||||
const int clipCullVectorSize = clipCullSym->getType().getVectorSize();
|
||||
|
||||
// array sizes, or 1 if it's not an array:
|
||||
const TArraySizes* const clipCullArraySizes = clipCullSym->getType().getArraySizes();
|
||||
const int clipCullOuterArraySize = isImplicitlyArrayed ? clipCullArraySizes->getDimSize(0) : 1;
|
||||
const int clipCullInnerArraySize = clipCullArraySizes->getDimSize(isImplicitlyArrayed ? 1 : 0);
|
||||
|
||||
// clipCullSym has got to be an array of scalar floats, per SPIR-V semantics.
|
||||
// fixBuiltInIoType() should have handled that upstream.
|
||||
|
@ -2390,8 +2430,9 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
// If the types are homomorphic, use a simple assign. No need to mess about with
|
||||
// individual components.
|
||||
if (clipCullSym->getType().isArray() == internalNode->getType().isArray() &&
|
||||
clipCullSymArraySize == internalNodeArraySize &&
|
||||
clipCullSymVectorSize == internalNodeVectorSize) {
|
||||
clipCullInnerArraySize == internalInnerArraySize &&
|
||||
clipCullOuterArraySize == internalOuterArraySize &&
|
||||
clipCullVectorSize == internalVectorSize) {
|
||||
|
||||
if (isOutput)
|
||||
clipCullAssign = intermediate.addAssign(op, clipCullSym, internalNode, loc);
|
||||
|
@ -2407,41 +2448,61 @@ TIntermAggregate* HlslParseContext::assignClipCullDistance(const TSourceLoc& loc
|
|||
// We are going to copy each component of the internal (per array element if indicated) to sequential
|
||||
// array elements of the clipCullSym. This tracks the lhs element we're writing to as we go along.
|
||||
// We may be starting in the middle - e.g, for a non-zero semantic ID calculated above.
|
||||
int clipCullArrayPos = semanticOffset[semanticId];
|
||||
int clipCullInnerArrayPos = semanticOffset[semanticId];
|
||||
int clipCullOuterArrayPos = 0;
|
||||
|
||||
// Lambda to add an index to a node, set the type of the result, and return the new node.
|
||||
const auto addIndex = [this, &loc](TIntermTyped* node, int pos) -> TIntermTyped* {
|
||||
const TType derefType(node->getType(), 0);
|
||||
node = intermediate.addIndex(EOpIndexDirect, node, intermediate.addConstantUnion(pos, loc), loc);
|
||||
node->setType(derefType);
|
||||
return node;
|
||||
};
|
||||
|
||||
// Loop through every component of every element of the internal, and copy to or from the matching external.
|
||||
for (int internalArrayPos = 0; internalArrayPos < internalNodeArraySize; ++internalArrayPos) {
|
||||
for (int internalComponent = 0; internalComponent < internalNodeVectorSize; ++internalComponent) {
|
||||
// array member to read from / write to:
|
||||
TIntermTyped* clipCullMember = intermediate.addIndex(EOpIndexDirect, clipCullSym,
|
||||
intermediate.addConstantUnion(clipCullArrayPos++, loc), loc);
|
||||
for (int internalOuterArrayPos = 0; internalOuterArrayPos < internalOuterArraySize; ++internalOuterArrayPos) {
|
||||
for (int internalInnerArrayPos = 0; internalInnerArrayPos < internalInnerArraySize; ++internalInnerArrayPos) {
|
||||
for (int internalComponent = 0; internalComponent < internalVectorSize; ++internalComponent) {
|
||||
// clip/cull array member to read from / write to:
|
||||
TIntermTyped* clipCullMember = clipCullSym;
|
||||
|
||||
TIntermTyped* internalMember = internalNode;
|
||||
// If implicitly arrayed, there is an outer array dimension involved
|
||||
if (isImplicitlyArrayed)
|
||||
clipCullMember = addIndex(clipCullMember, clipCullOuterArrayPos);
|
||||
|
||||
// If internal node is an array, extract the element of interest
|
||||
if (internalNode->getType().isArray()) {
|
||||
const TType derefType(internalMember->getType(), 0);
|
||||
internalMember = intermediate.addIndex(EOpIndexDirect, internalMember,
|
||||
intermediate.addConstantUnion(internalArrayPos, loc), loc);
|
||||
internalMember->setType(derefType);
|
||||
// Index into proper array position for clip cull member
|
||||
clipCullMember = addIndex(clipCullMember, clipCullInnerArrayPos++);
|
||||
|
||||
// if needed, start over with next outer array slice.
|
||||
if (isImplicitlyArrayed && clipCullInnerArrayPos >= clipCullInnerArraySize) {
|
||||
clipCullInnerArrayPos = semanticOffset[semanticId];
|
||||
++clipCullOuterArrayPos;
|
||||
}
|
||||
|
||||
// internal member to read from / write to:
|
||||
TIntermTyped* internalMember = internalNode;
|
||||
|
||||
// If internal node has outer array dimension, index appropriately.
|
||||
if (internalArrayDims > 1)
|
||||
internalMember = addIndex(internalMember, internalOuterArrayPos);
|
||||
|
||||
// If internal node has inner array dimension, index appropriately.
|
||||
if (internalArrayDims > 0)
|
||||
internalMember = addIndex(internalMember, internalInnerArrayPos);
|
||||
|
||||
// If internal node is a vector, extract the component of interest.
|
||||
if (internalNode->getType().isVector())
|
||||
internalMember = addIndex(internalMember, internalComponent);
|
||||
|
||||
// Create an assignment: output from internal to clip cull, or input from clip cull to internal.
|
||||
if (isOutput)
|
||||
clipCullAssign = intermediate.addAssign(op, clipCullMember, internalMember, loc);
|
||||
else
|
||||
clipCullAssign = intermediate.addAssign(op, internalMember, clipCullMember, loc);
|
||||
|
||||
// Track assignment in the sequence.
|
||||
assignList = intermediate.growAggregate(assignList, clipCullAssign);
|
||||
}
|
||||
|
||||
// If internal node is a vector, extract the component of interest.
|
||||
if (internalNode->getType().isVector()) {
|
||||
const TType derefType(internalMember->getType(), 0);
|
||||
internalMember = intermediate.addIndex(EOpIndexDirect, internalMember,
|
||||
intermediate.addConstantUnion(internalComponent, loc), loc);
|
||||
internalMember->setType(derefType);
|
||||
}
|
||||
|
||||
// Create an assignment: output from internal to clip cull, or input from clip cull to internal.
|
||||
if (isOutput)
|
||||
clipCullAssign = intermediate.addAssign(op, clipCullMember, internalMember, loc);
|
||||
else
|
||||
clipCullAssign = intermediate.addAssign(op, internalMember, clipCullMember, loc);
|
||||
|
||||
// Track assignment in the sequence.
|
||||
assignList = intermediate.growAggregate(assignList, clipCullAssign);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5089,7 +5150,7 @@ void HlslParseContext::expandArguments(const TSourceLoc& loc, const TFunction& f
|
|||
const auto setArgList = [&](int paramNum, const TVector<TIntermTyped*>& args) {
|
||||
if (args.size() == 1)
|
||||
setArg(paramNum, args.front());
|
||||
else {
|
||||
else if (args.size() > 1) {
|
||||
if (function.getParamCount() + functionParamNumberOffset == 1) {
|
||||
arguments = intermediate.makeAggregate(args.front());
|
||||
std::for_each(args.begin() + 1, args.end(),
|
||||
|
@ -5100,8 +5161,8 @@ void HlslParseContext::expandArguments(const TSourceLoc& loc, const TFunction& f
|
|||
auto it = aggregate->getSequence().erase(aggregate->getSequence().begin() + paramNum);
|
||||
aggregate->getSequence().insert(it, args.begin(), args.end());
|
||||
}
|
||||
functionParamNumberOffset += (int)(args.size() - 1);
|
||||
}
|
||||
functionParamNumberOffset += (args.size() - 1);
|
||||
};
|
||||
|
||||
// Process each argument's conversion
|
||||
|
|
|
@ -435,12 +435,16 @@ protected:
|
|||
|
||||
TVariable* gsStreamOutput; // geometry shader stream outputs, for emit (Append method)
|
||||
|
||||
TVariable* clipDistanceVariable; // synthesized clip distance variable (shader might have >1)
|
||||
TVariable* cullDistanceVariable; // synthesized cull distance variable (shader might have >1)
|
||||
TVariable* clipDistanceOutput; // synthesized clip distance out variable (shader might have >1)
|
||||
TVariable* cullDistanceOutput; // synthesized cull distance out variable (shader might have >1)
|
||||
TVariable* clipDistanceInput; // synthesized clip distance in variable (shader might have >1)
|
||||
TVariable* cullDistanceInput; // synthesized cull distance in variable (shader might have >1)
|
||||
|
||||
static const int maxClipCullRegs = 2;
|
||||
std::array<int, maxClipCullRegs> clipSemanticNSize; // vector, indexed by clip semantic ID
|
||||
std::array<int, maxClipCullRegs> cullSemanticNSize; // vector, indexed by cull semantic ID
|
||||
std::array<int, maxClipCullRegs> clipSemanticNSizeIn; // vector, indexed by clip semantic ID
|
||||
std::array<int, maxClipCullRegs> cullSemanticNSizeIn; // vector, indexed by cull semantic ID
|
||||
std::array<int, maxClipCullRegs> clipSemanticNSizeOut; // vector, indexed by clip semantic ID
|
||||
std::array<int, maxClipCullRegs> cullSemanticNSizeOut; // vector, indexed by cull semantic ID
|
||||
|
||||
// This tracks the first (mip level) argument to the .mips[][] operator. Since this can be nested as
|
||||
// in tx.mips[tx.mips[0][1].x][2], we need a stack. We also track the TSourceLoc for error reporting
|
||||
|
|
Loading…
Reference in New Issue