Skip to content

Instantly share code, notes, and snippets.

@shaderjp
Created January 6, 2018 13:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shaderjp/3019bd6a1ec0973d681a4dc087e23e45 to your computer and use it in GitHub Desktop.
Save shaderjp/3019bd6a1ec0973d681a4dc087e23e45 to your computer and use it in GitHub Desktop.
testVS.spv
// Module Version 10000
// Generated by (magic number): 80003
// Id's are bound by 132
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 85 89 92 95 98 106 110 114 117 120 123 126 129
Source HLSL 500
Name 4 "main"
Name 9 "VSInput"
MemberName 9(VSInput) 0 "position"
MemberName 9(VSInput) 1 "texcoord0"
MemberName 9(VSInput) 2 "normal"
MemberName 9(VSInput) 3 "tangent"
MemberName 9(VSInput) 4 "bitangent"
Name 12 "VSOutput"
MemberName 12(VSOutput) 0 "position"
MemberName 12(VSOutput) 1 "worldPos"
MemberName 12(VSOutput) 2 "texCoord"
MemberName 12(VSOutput) 3 "viewDir"
MemberName 12(VSOutput) 4 "shadowCoord"
MemberName 12(VSOutput) 5 "normal"
MemberName 12(VSOutput) 6 "tangent"
MemberName 12(VSOutput) 7 "bitangent"
Name 15 "@main(struct-VSInput-vf3-vf2-vf3-vf3-vf31;"
Name 14 "vsInput"
Name 18 "vsOutput"
Name 30 "VSConstants"
MemberName 30(VSConstants) 0 "modelToProjection"
MemberName 30(VSConstants) 1 "modelToShadow"
MemberName 30(VSConstants) 2 "ViewerPos"
Name 32 ""
Name 83 "vsInput"
Name 85 "vsInput.position"
Name 89 "vsInput.texcoord0"
Name 92 "vsInput.normal"
Name 95 "vsInput.tangent"
Name 98 "vsInput.bitangent"
Name 101 "flattenTemp"
Name 102 "param"
Name 106 "@entryPointOutput.position"
Name 110 "@entryPointOutput.worldPos"
Name 114 "@entryPointOutput.texCoord"
Name 117 "@entryPointOutput.viewDir"
Name 120 "@entryPointOutput.shadowCoord"
Name 123 "@entryPointOutput.normal"
Name 126 "@entryPointOutput.tangent"
Name 129 "@entryPointOutput.bitangent"
MemberDecorate 30(VSConstants) 0 RowMajor
MemberDecorate 30(VSConstants) 0 Offset 0
MemberDecorate 30(VSConstants) 0 MatrixStride 16
MemberDecorate 30(VSConstants) 1 RowMajor
MemberDecorate 30(VSConstants) 1 Offset 64
MemberDecorate 30(VSConstants) 1 MatrixStride 16
MemberDecorate 30(VSConstants) 2 Offset 128
Decorate 30(VSConstants) Block
Decorate 32 DescriptorSet 0
Decorate 32 Binding 0
Decorate 85(vsInput.position) Location 0
Decorate 89(vsInput.texcoord0) Location 1
Decorate 92(vsInput.normal) Location 2
Decorate 95(vsInput.tangent) Location 3
Decorate 98(vsInput.bitangent) Location 4
Decorate 106(@entryPointOutput.position) BuiltIn Position
Decorate 110(@entryPointOutput.worldPos) Location 0
Decorate 114(@entryPointOutput.texCoord) Location 1
Decorate 117(@entryPointOutput.viewDir) Location 2
Decorate 120(@entryPointOutput.shadowCoord) Location 3
Decorate 123(@entryPointOutput.normal) Location 4
Decorate 126(@entryPointOutput.tangent) Location 5
Decorate 129(@entryPointOutput.bitangent) Location 6
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 3
8: TypeVector 6(float) 2
9(VSInput): TypeStruct 7(fvec3) 8(fvec2) 7(fvec3) 7(fvec3) 7(fvec3)
10: TypePointer Function 9(VSInput)
11: TypeVector 6(float) 4
12(VSOutput): TypeStruct 11(fvec4) 7(fvec3) 8(fvec2) 7(fvec3) 7(fvec3) 7(fvec3) 7(fvec3) 7(fvec3)
13: TypeFunction 12(VSOutput) 10(ptr)
17: TypePointer Function 12(VSOutput)
19: TypeInt 32 1
20: 19(int) Constant 0
21: TypePointer Function 7(fvec3)
24: 6(float) Constant 1065353216
29: TypeMatrix 11(fvec4) 4
30(VSConstants): TypeStruct 29 29 7(fvec3)
31: TypePointer Uniform 30(VSConstants)
32: 31(ptr) Variable Uniform
33: TypePointer Uniform 29
37: TypePointer Function 11(fvec4)
39: 19(int) Constant 1
43: 19(int) Constant 2
44: TypePointer Function 8(fvec2)
48: 19(int) Constant 3
51: TypePointer Uniform 7(fvec3)
56: 19(int) Constant 4
68: 19(int) Constant 5
72: 19(int) Constant 6
76: 19(int) Constant 7
84: TypePointer Input 7(fvec3)
85(vsInput.position): 84(ptr) Variable Input
88: TypePointer Input 8(fvec2)
89(vsInput.texcoord0): 88(ptr) Variable Input
92(vsInput.normal): 84(ptr) Variable Input
95(vsInput.tangent): 84(ptr) Variable Input
98(vsInput.bitangent): 84(ptr) Variable Input
105: TypePointer Output 11(fvec4)
106(@entryPointOutput.position): 105(ptr) Variable Output
109: TypePointer Output 7(fvec3)
110(@entryPointOutput.worldPos): 109(ptr) Variable Output
113: TypePointer Output 8(fvec2)
114(@entryPointOutput.texCoord): 113(ptr) Variable Output
117(@entryPointOutput.viewDir): 109(ptr) Variable Output
120(@entryPointOutput.shadowCoord): 109(ptr) Variable Output
123(@entryPointOutput.normal): 109(ptr) Variable Output
126(@entryPointOutput.tangent): 109(ptr) Variable Output
129(@entryPointOutput.bitangent): 109(ptr) Variable Output
4(main): 2 Function None 3
5: Label
83(vsInput): 10(ptr) Variable Function
101(flattenTemp): 17(ptr) Variable Function
102(param): 10(ptr) Variable Function
86: 7(fvec3) Load 85(vsInput.position)
87: 21(ptr) AccessChain 83(vsInput) 20
Store 87 86
90: 8(fvec2) Load 89(vsInput.texcoord0)
91: 44(ptr) AccessChain 83(vsInput) 39
Store 91 90
93: 7(fvec3) Load 92(vsInput.normal)
94: 21(ptr) AccessChain 83(vsInput) 43
Store 94 93
96: 7(fvec3) Load 95(vsInput.tangent)
97: 21(ptr) AccessChain 83(vsInput) 48
Store 97 96
99: 7(fvec3) Load 98(vsInput.bitangent)
100: 21(ptr) AccessChain 83(vsInput) 56
Store 100 99
103: 9(VSInput) Load 83(vsInput)
Store 102(param) 103
104:12(VSOutput) FunctionCall 15(@main(struct-VSInput-vf3-vf2-vf3-vf3-vf31;) 102(param)
Store 101(flattenTemp) 104
107: 37(ptr) AccessChain 101(flattenTemp) 20
108: 11(fvec4) Load 107
Store 106(@entryPointOutput.position) 108
111: 21(ptr) AccessChain 101(flattenTemp) 39
112: 7(fvec3) Load 111
Store 110(@entryPointOutput.worldPos) 112
115: 44(ptr) AccessChain 101(flattenTemp) 43
116: 8(fvec2) Load 115
Store 114(@entryPointOutput.texCoord) 116
118: 21(ptr) AccessChain 101(flattenTemp) 48
119: 7(fvec3) Load 118
Store 117(@entryPointOutput.viewDir) 119
121: 21(ptr) AccessChain 101(flattenTemp) 56
122: 7(fvec3) Load 121
Store 120(@entryPointOutput.shadowCoord) 122
124: 21(ptr) AccessChain 101(flattenTemp) 68
125: 7(fvec3) Load 124
Store 123(@entryPointOutput.normal) 125
127: 21(ptr) AccessChain 101(flattenTemp) 72
128: 7(fvec3) Load 127
Store 126(@entryPointOutput.tangent) 128
130: 21(ptr) AccessChain 101(flattenTemp) 76
131: 7(fvec3) Load 130
Store 129(@entryPointOutput.bitangent) 131
Return
FunctionEnd
15(@main(struct-VSInput-vf3-vf2-vf3-vf3-vf31;):12(VSOutput) Function None 13
14(vsInput): 10(ptr) FunctionParameter
16: Label
18(vsOutput): 17(ptr) Variable Function
22: 21(ptr) AccessChain 14(vsInput) 20
23: 7(fvec3) Load 22
25: 6(float) CompositeExtract 23 0
26: 6(float) CompositeExtract 23 1
27: 6(float) CompositeExtract 23 2
28: 11(fvec4) CompositeConstruct 25 26 27 24
34: 33(ptr) AccessChain 32 20
35: 29 Load 34
36: 11(fvec4) VectorTimesMatrix 28 35
38: 37(ptr) AccessChain 18(vsOutput) 20
Store 38 36
40: 21(ptr) AccessChain 14(vsInput) 20
41: 7(fvec3) Load 40
42: 21(ptr) AccessChain 18(vsOutput) 39
Store 42 41
45: 44(ptr) AccessChain 14(vsInput) 39
46: 8(fvec2) Load 45
47: 44(ptr) AccessChain 18(vsOutput) 43
Store 47 46
49: 21(ptr) AccessChain 14(vsInput) 20
50: 7(fvec3) Load 49
52: 51(ptr) AccessChain 32 43
53: 7(fvec3) Load 52
54: 7(fvec3) FSub 50 53
55: 21(ptr) AccessChain 18(vsOutput) 48
Store 55 54
57: 21(ptr) AccessChain 14(vsInput) 20
58: 7(fvec3) Load 57
59: 6(float) CompositeExtract 58 0
60: 6(float) CompositeExtract 58 1
61: 6(float) CompositeExtract 58 2
62: 11(fvec4) CompositeConstruct 59 60 61 24
63: 33(ptr) AccessChain 32 39
64: 29 Load 63
65: 11(fvec4) VectorTimesMatrix 62 64
66: 7(fvec3) VectorShuffle 65 65 0 1 2
67: 21(ptr) AccessChain 18(vsOutput) 56
Store 67 66
69: 21(ptr) AccessChain 14(vsInput) 43
70: 7(fvec3) Load 69
71: 21(ptr) AccessChain 18(vsOutput) 68
Store 71 70
73: 21(ptr) AccessChain 14(vsInput) 48
74: 7(fvec3) Load 73
75: 21(ptr) AccessChain 18(vsOutput) 72
Store 75 74
77: 21(ptr) AccessChain 14(vsInput) 56
78: 7(fvec3) Load 77
79: 21(ptr) AccessChain 18(vsOutput) 76
Store 79 78
80:12(VSOutput) Load 18(vsOutput)
ReturnValue 80
FunctionEnd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment