| spv.debuginfo.glsl.comp |
| // Module Version 10000 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 1025 |
| |
| Capability Shader |
| Extension "SPV_KHR_non_semantic_info" |
| 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" |
| 3: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint GLCompute 14 "main" 210 |
| ExecutionMode 14 LocalSize 10 10 1 |
| 2: String "spv.debuginfo.glsl.comp" |
| 8: String "uint" |
| 17: String "float" |
| 33: String "springForce" |
| 36: String "/* |
| The MIT License (MIT) |
| |
| Copyright (c) 2022 Sascha Willems |
| |
| Permission is hereby granted, free of charge, to any person obtaining a copy |
| of this software and associated documentation files (the "Software"), to deal |
| in the Software without restriction, including without limitation the rights |
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
| copies of the Software, and to permit persons to whom the Software is |
| furnished to do so, subject to the following conditions: |
| |
| The above copyright notice and this permission notice shall be included in all |
| copies or substantial portions of the Software. |
| |
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
| SOFTWARE. |
| */ |
| |
| #version 450 |
| |
| struct Particle { |
| vec4 pos; |
| vec4 vel; |
| vec4 uv; |
| vec4 normal; |
| float pinned; |
| }; |
| |
| layout(std430, binding = 0) buffer ParticleIn { |
| Particle particleIn[ ]; |
| }; |
| |
| layout(std430, binding = 1) buffer ParticleOut { |
| Particle particleOut[ ]; |
| }; |
| |
| // todo: use shared memory to speed up calculation |
| |
| layout (local_size_x = 10, local_size_y = 10) in; |
| |
| layout (binding = 2) uniform UBO |
| { |
| float deltaT; |
| float particleMass; |
| float springStiffness; |
| float damping; |
| float restDistH; |
| float restDistV; |
| float restDistD; |
| float sphereRadius; |
| vec4 spherePos; |
| vec4 gravity; |
| ivec2 particleCount; |
| } params; |
| |
| layout (push_constant) uniform PushConsts { |
| uint calculateNormals; |
| } pushConsts; |
| |
| vec3 springForce(vec3 p0, vec3 p1, float restDist) |
| { |
| vec3 dist = p0 - p1; |
| return normalize(dist) * params.springStiffness * (length(dist) - restDist); |
| } |
| |
| void main() |
| { |
| uvec3 id = gl_GlobalInvocationID; |
| |
| uint index = id.y * params.particleCount.x + id.x; |
| if (index > params.particleCount.x * params.particleCount.y) |
| return; |
| |
| // Pinned? |
| if (particleIn[index].pinned == 1.0) { |
| particleOut[index].pos = particleOut[index].pos; |
| particleOut[index].vel = vec4(0.0); |
| return; |
| } |
| |
| // Initial force from gravity |
| vec3 force = params.gravity.xyz * params.particleMass; |
| |
| vec3 pos = particleIn[index].pos.xyz; |
| vec3 vel = particleIn[index].vel.xyz; |
| |
| // Spring forces from neighboring particles |
| // left |
| if (id.x > 0) { |
| force += springForce(particleIn[index-1].pos.xyz, pos, params.restDistH); |
| } |
| // right |
| if (id.x < params.particleCount.x - 1) { |
| force += springForce(particleIn[index + 1].pos.xyz, pos, params.restDistH); |
| } |
| // upper |
| if (id.y < params.particleCount.y - 1) { |
| force += springForce(particleIn[index + params.particleCount.x].pos.xyz, pos, params.restDistV); |
| } |
| // lower |
| if (id.y > 0) { |
| force += springForce(particleIn[index - params.particleCount.x].pos.xyz, pos, params.restDistV); |
| } |
| // upper-left |
| if ((id.x > 0) && (id.y < params.particleCount.y - 1)) { |
| force += springForce(particleIn[index + params.particleCount.x - 1].pos.xyz, pos, params.restDistD); |
| } |
| // lower-left |
| if ((id.x > 0) && (id.y > 0)) { |
| force += springForce(particleIn[index - params.particleCount.x - 1].pos.xyz, pos, params.restDistD); |
| } |
| // upper-right |
| if ((id.x < params.particleCount.x - 1) && (id.y < params.particleCount.y - 1)) { |
| force += springForce(particleIn[index + params.particleCount.x + 1].pos.xyz, pos, params.restDistD); |
| } |
| // lower-right |
| if ((id.x < params.particleCount.x - 1) && (id.y > 0)) { |
| force += springForce(particleIn[index - params.particleCount.x + 1].pos.xyz, pos, params.restDistD); |
| } |
| |
| force += (-params.damping * vel); |
| |
| // Integrate |
| vec3 f = force * (1.0 / params.particleMass); |
| particleOut[index].pos = vec4(pos + vel * params.deltaT + 0.5 * f * params.deltaT * params.deltaT, 1.0); |
| particleOut[index].vel = vec4(vel + f * params.deltaT, 0.0); |
| |
| // Sphere collision |
| vec3 sphereDist = particleOut[index].pos.xyz - params.spherePos.xyz; |
| if (length(sphereDist) < params.sphereRadius + 0.01) { |
| // If the particle is inside the sphere, push it to the outer radius |
| particleOut[index].pos.xyz = params.spherePos.xyz + normalize(sphereDist) * (params.sphereRadius + 0.01); |
| // Cancel out velocity |
| particleOut[index].vel = vec4(0.0); |
| } |
| |
| // Normals |
| if (pushConsts.calculateNormals == 1) { |
| vec3 normal = vec3(0.0); |
| vec3 a, b, c; |
| if (id.y > 0) { |
| if (id.x > 0) { |
| a = particleIn[index - 1].pos.xyz - pos; |
| b = particleIn[index - params.particleCount.x - 1].pos.xyz - pos; |
| c = particleIn[index - params.particleCount.x].pos.xyz - pos; |
| normal += cross(a,b) + cross(b,c); |
| } |
| if (id.x < params.particleCount.x - 1) { |
| a = particleIn[index - params.particleCount.x].pos.xyz - pos; |
| b = particleIn[index - params.particleCount.x + 1].pos.xyz - pos; |
| c = particleIn[index + 1].pos.xyz - pos; |
| normal += cross(a,b) + cross(b,c); |
| } |
| } |
| if (id.y < params.particleCount.y - 1) { |
| if (id.x > 0) { |
| a = particleIn[index + params.particleCount.x].pos.xyz - pos; |
| b = particleIn[index + params.particleCount.x - 1].pos.xyz - pos; |
| c = particleIn[index - 1].pos.xyz - pos; |
| normal += cross(a,b) + cross(b,c); |
| } |
| if (id.x < params.particleCount.x - 1) { |
| a = particleIn[index + 1].pos.xyz - pos; |
| b = particleIn[index + params.particleCount.x + 1].pos.xyz - pos; |
| c = particleIn[index + params.particleCount.x].pos.xyz - pos; |
| normal += cross(a,b) + cross(b,c); |
| } |
| } |
| particleOut[index].normal = vec4(normalize(normal), 0.0f); |
| } |
| } |
| " |
| 43: String "p0" |
| 49: String "p1" |
| 52: String "restDist" |
| 54: String "main" |
| 61: String "pos" |
| 64: String "vel" |
| 67: String "uv" |
| 70: String "normal" |
| 73: String "pinned" |
| 76: String "Particle" |
| 82: String "particleIn" |
| 86: String "ParticleIn" |
| 91: String "" |
| 96: String "particleOut" |
| 99: String "ParticleOut" |
| 106: String "int" |
| 112: String "deltaT" |
| 115: String "particleMass" |
| 118: String "springStiffness" |
| 121: String "damping" |
| 124: String "restDistH" |
| 127: String "restDistV" |
| 130: String "restDistD" |
| 133: String "sphereRadius" |
| 136: String "spherePos" |
| 139: String "gravity" |
| 142: String "particleCount" |
| 145: String "UBO" |
| 151: String "params" |
| 154: String "calculateNormals" |
| 157: String "PushConsts" |
| 164: String "pushConsts" |
| 168: String "dist" |
| 204: String "id" |
| 212: String "gl_GlobalInvocationID" |
| 218: String "index" |
| 244: String "bool" |
| 289: String "force" |
| 627: String "f" |
| 676: String "sphereDist" |
| 746: String "a" |
| 752: String "b" |
| 756: String "c" |
| 1024: String "gl_WorkGroupSize" |
| Name 14 "main" |
| Name 31 "springForce(vf3;vf3;f1;" |
| Name 28 "p0" |
| Name 29 "p1" |
| Name 30 "restDist" |
| Name 59 "Particle" |
| MemberName 59(Particle) 0 "pos" |
| MemberName 59(Particle) 1 "vel" |
| MemberName 59(Particle) 2 "uv" |
| MemberName 59(Particle) 3 "normal" |
| MemberName 59(Particle) 4 "pinned" |
| Name 80 "ParticleIn" |
| MemberName 80(ParticleIn) 0 "particleIn" |
| Name 89 "" |
| Name 94 "ParticleOut" |
| MemberName 94(ParticleOut) 0 "particleOut" |
| Name 103 "" |
| Name 110 "UBO" |
| MemberName 110(UBO) 0 "deltaT" |
| MemberName 110(UBO) 1 "particleMass" |
| MemberName 110(UBO) 2 "springStiffness" |
| MemberName 110(UBO) 3 "damping" |
| MemberName 110(UBO) 4 "restDistH" |
| MemberName 110(UBO) 5 "restDistV" |
| MemberName 110(UBO) 6 "restDistD" |
| MemberName 110(UBO) 7 "sphereRadius" |
| MemberName 110(UBO) 8 "spherePos" |
| MemberName 110(UBO) 9 "gravity" |
| MemberName 110(UBO) 10 "particleCount" |
| Name 149 "params" |
| Name 152 "PushConsts" |
| MemberName 152(PushConsts) 0 "calculateNormals" |
| Name 162 "pushConsts" |
| Name 166 "dist" |
| Name 202 "id" |
| Name 210 "gl_GlobalInvocationID" |
| Name 216 "index" |
| Name 287 "force" |
| Name 301 "pos" |
| Name 310 "vel" |
| Name 332 "param" |
| Name 336 "param" |
| Name 338 "param" |
| Name 362 "param" |
| Name 366 "param" |
| Name 368 "param" |
| Name 396 "param" |
| Name 400 "param" |
| Name 402 "param" |
| Name 425 "param" |
| Name 429 "param" |
| Name 431 "param" |
| Name 470 "param" |
| Name 474 "param" |
| Name 476 "param" |
| Name 510 "param" |
| Name 514 "param" |
| Name 516 "param" |
| Name 558 "param" |
| Name 562 "param" |
| Name 564 "param" |
| Name 602 "param" |
| Name 606 "param" |
| Name 608 "param" |
| Name 625 "f" |
| Name 674 "sphereDist" |
| Name 738 "normal" |
| Name 744 "a" |
| Name 750 "b" |
| Name 754 "c" |
| MemberDecorate 59(Particle) 0 Offset 0 |
| MemberDecorate 59(Particle) 1 Offset 16 |
| MemberDecorate 59(Particle) 2 Offset 32 |
| MemberDecorate 59(Particle) 3 Offset 48 |
| MemberDecorate 59(Particle) 4 Offset 64 |
| Decorate 78 ArrayStride 80 |
| Decorate 80(ParticleIn) BufferBlock |
| MemberDecorate 80(ParticleIn) 0 Offset 0 |
| Decorate 89 Binding 0 |
| Decorate 89 DescriptorSet 0 |
| Decorate 92 ArrayStride 80 |
| Decorate 94(ParticleOut) BufferBlock |
| MemberDecorate 94(ParticleOut) 0 Offset 0 |
| Decorate 103 Binding 1 |
| Decorate 103 DescriptorSet 0 |
| Decorate 110(UBO) Block |
| MemberDecorate 110(UBO) 0 Offset 0 |
| MemberDecorate 110(UBO) 1 Offset 4 |
| MemberDecorate 110(UBO) 2 Offset 8 |
| MemberDecorate 110(UBO) 3 Offset 12 |
| MemberDecorate 110(UBO) 4 Offset 16 |
| MemberDecorate 110(UBO) 5 Offset 20 |
| MemberDecorate 110(UBO) 6 Offset 24 |
| MemberDecorate 110(UBO) 7 Offset 28 |
| MemberDecorate 110(UBO) 8 Offset 32 |
| MemberDecorate 110(UBO) 9 Offset 48 |
| MemberDecorate 110(UBO) 10 Offset 64 |
| Decorate 149(params) Binding 2 |
| Decorate 149(params) DescriptorSet 0 |
| Decorate 152(PushConsts) Block |
| MemberDecorate 152(PushConsts) 0 Offset 0 |
| Decorate 210(gl_GlobalInvocationID) BuiltIn GlobalInvocationId |
| Decorate 1022 BuiltIn WorkgroupSize |
| 4: TypeVoid |
| 5: TypeFunction 4 |
| 7: TypeInt 32 0 |
| 10: 7(int) Constant 32 |
| 11: 7(int) Constant 6 |
| 12: 7(int) Constant 0 |
| 9: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 10 11 12 |
| 13: 7(int) Constant 3 |
| 6: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4 |
| 16: TypeFloat 32 |
| 18: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 17 10 13 12 |
| 19: TypeVector 16(float) 3 |
| 20: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 13 |
| 21: TypePointer Function 19(fvec3) |
| 22: 7(int) Constant 7 |
| 23: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 22 12 |
| 24: TypePointer Function 16(float) |
| 25: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 22 12 |
| 26: TypeFunction 19(fvec3) 21(ptr) 21(ptr) 24(ptr) |
| 27: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 20 20 20 18 |
| 35: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 36 |
| 37: 7(int) Constant 66 |
| 39: 7(int) Constant 1 |
| 40: 7(int) Constant 4 |
| 41: 7(int) Constant 2 |
| 38: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 39 40 35 41 |
| 34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 33 27 35 37 12 38 33 13 37 |
| 42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 43 20 35 37 12 34 40 39 |
| 45: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) |
| 48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 49 20 35 37 12 34 40 41 |
| 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 52 18 35 37 12 34 40 13 |
| 56: 7(int) Constant 72 |
| 55: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 54 6 35 56 12 38 54 13 56 |
| 57: TypeVector 16(float) 4 |
| 58: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 40 |
| 59(Particle): TypeStruct 57(fvec4) 57(fvec4) 57(fvec4) 57(fvec4) 16(float) |
| 62: 7(int) Constant 28 |
| 60: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 61 58 35 62 22 12 12 13 |
| 65: 7(int) Constant 29 |
| 63: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 64 58 35 65 22 12 12 13 |
| 68: 7(int) Constant 30 |
| 66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 58 35 68 22 12 12 13 |
| 71: 7(int) Constant 31 |
| 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 70 58 35 71 22 12 12 13 |
| 74: 7(int) Constant 8 |
| 72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 73 18 35 10 74 12 12 13 |
| 77: 7(int) Constant 35 |
| 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 76 39 35 77 12 38 76 12 13 60 63 66 69 72 |
| 78: TypeRuntimeArray 59(Particle) |
| 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 75 12 |
| 80(ParticleIn): TypeStruct 78 |
| 83: 7(int) Constant 36 |
| 84: 7(int) Constant 11 |
| 81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 82 79 35 83 84 12 12 13 |
| 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 86 39 35 77 12 38 86 12 13 81 |
| 87: TypePointer Uniform 80(ParticleIn) |
| 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 85 41 12 |
| 89: 87(ptr) Variable Uniform |
| 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 91 85 35 77 12 38 91 89 74 |
| 92: TypeRuntimeArray 59(Particle) |
| 93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 75 12 |
| 94(ParticleOut): TypeStruct 92 |
| 97: 7(int) Constant 40 |
| 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 93 35 97 84 12 12 13 |
| 100: 7(int) Constant 39 |
| 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 99 39 35 100 12 38 99 12 13 95 |
| 101: TypePointer Uniform 94(ParticleOut) |
| 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 41 12 |
| 103: 101(ptr) Variable Uniform |
| 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 91 98 35 100 12 38 91 103 74 |
| 105: TypeInt 32 1 |
| 107: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 106 10 40 12 |
| 108: TypeVector 105(int) 2 |
| 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 107 41 |
| 110(UBO): TypeStruct 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 16(float) 57(fvec4) 57(fvec4) 108(ivec2) |
| 113: 7(int) Constant 49 |
| 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 112 18 35 113 74 12 12 13 |
| 116: 7(int) Constant 50 |
| 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 115 18 35 116 74 12 12 13 |
| 119: 7(int) Constant 51 |
| 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 118 18 35 119 74 12 12 13 |
| 122: 7(int) Constant 52 |
| 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 121 18 35 122 74 12 12 13 |
| 125: 7(int) Constant 53 |
| 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 124 18 35 125 74 12 12 13 |
| 128: 7(int) Constant 54 |
| 126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 127 18 35 128 74 12 12 13 |
| 131: 7(int) Constant 55 |
| 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 130 18 35 131 74 12 12 13 |
| 134: 7(int) Constant 56 |
| 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 133 18 35 134 74 12 12 13 |
| 137: 7(int) Constant 57 |
| 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 136 58 35 137 22 12 12 13 |
| 140: 7(int) Constant 58 |
| 138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 139 58 35 140 22 12 12 13 |
| 143: 7(int) Constant 59 |
| 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 142 109 35 143 74 12 12 13 |
| 146: 7(int) Constant 47 |
| 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 145 39 35 146 12 38 145 12 13 111 114 117 120 123 126 129 132 135 138 141 |
| 147: TypePointer Uniform 110(UBO) |
| 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 144 41 12 |
| 149(params): 147(ptr) Variable Uniform |
| 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 151 144 35 146 12 38 151 149(params) 74 |
| 152(PushConsts): TypeStruct 7(int) |
| 155: 7(int) Constant 63 |
| 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 154 9 35 155 22 12 12 13 |
| 158: 7(int) Constant 62 |
| 156: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 157 39 35 158 12 38 157 12 13 153 |
| 159: TypePointer PushConstant 152(PushConsts) |
| 160: 7(int) Constant 9 |
| 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 156 160 12 |
| 162(pushConsts): 159(ptr) Variable PushConstant |
| 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 164 156 35 158 12 38 164 162(pushConsts) 74 |
| 169: 7(int) Constant 68 |
| 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 168 20 35 169 12 34 40 |
| 177: 7(int) Constant 69 |
| 179: 105(int) Constant 2 |
| 180: TypePointer Uniform 16(float) |
| 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 41 12 |
| 194: 7(int) Constant 70 |
| 198: TypeVector 7(int) 3 |
| 199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 9 13 |
| 200: TypePointer Function 198(ivec3) |
| 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 199 22 12 |
| 205: 7(int) Constant 74 |
| 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 204 199 35 205 12 55 40 |
| 208: TypePointer Input 198(ivec3) |
| 209: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 199 39 12 |
| 210(gl_GlobalInvocationID): 208(ptr) Variable Input |
| 211: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 212 199 35 205 12 38 212 210(gl_GlobalInvocationID) 74 |
| 214: TypePointer Function 7(int) |
| 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 22 12 |
| 219: 7(int) Constant 76 |
| 217: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 218 9 35 219 12 55 40 |
| 224: 105(int) Constant 10 |
| 225: TypePointer Uniform 105(int) |
| 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 107 41 12 |
| 236: 7(int) Constant 77 |
| 243: TypeBool |
| 245: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 244 10 41 12 |
| 251: 7(int) Constant 78 |
| 253: 105(int) Constant 0 |
| 257: 7(int) Constant 81 |
| 258: 105(int) Constant 4 |
| 261: 16(float) Constant 1065353216 |
| 266: 7(int) Constant 82 |
| 267: 7(int) Constant 26 |
| 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 266 267 55 |
| 272: TypePointer Uniform 57(fvec4) |
| 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 58 41 12 |
| 279: 7(int) Constant 83 |
| 280: 105(int) Constant 1 |
| 281: 16(float) Constant 0 |
| 282: 57(fvec4) ConstantComposite 281 281 281 281 |
| 285: 7(int) Constant 84 |
| 290: 7(int) Constant 88 |
| 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 289 20 35 290 12 55 40 |
| 294: 105(int) Constant 9 |
| 303: 7(int) Constant 90 |
| 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 61 20 35 303 12 55 40 |
| 312: 7(int) Constant 91 |
| 311: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 64 20 35 312 12 55 40 |
| 321: 7(int) Constant 95 |
| 327: 7(int) Constant 96 |
| 326: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 327 160 55 |
| 347: 7(int) Constant 99 |
| 357: 7(int) Constant 100 |
| 356: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 357 160 55 |
| 377: 7(int) Constant 103 |
| 387: 7(int) Constant 104 |
| 386: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 387 160 55 |
| 395: 105(int) Constant 5 |
| 411: 7(int) Constant 107 |
| 417: 7(int) Constant 108 |
| 416: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 417 160 55 |
| 440: 7(int) Constant 111 |
| 460: 7(int) Constant 112 |
| 459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 460 160 55 |
| 469: 105(int) Constant 6 |
| 485: 7(int) Constant 115 |
| 501: 7(int) Constant 116 |
| 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 501 160 55 |
| 525: 7(int) Constant 119 |
| 549: 7(int) Constant 120 |
| 548: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 549 160 55 |
| 573: 7(int) Constant 123 |
| 593: 7(int) Constant 124 |
| 592: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 593 160 55 |
| 614: 105(int) Constant 3 |
| 618: 7(int) Constant 127 |
| 628: 7(int) Constant 130 |
| 626: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 627 20 35 628 12 55 40 |
| 638: 7(int) Constant 131 |
| 645: 16(float) Constant 1056964608 |
| 662: 7(int) Constant 132 |
| 677: 7(int) Constant 135 |
| 675: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 676 20 35 677 12 55 40 |
| 684: 105(int) Constant 8 |
| 691: 7(int) Constant 136 |
| 693: 105(int) Constant 7 |
| 696: 16(float) Constant 1008981770 |
| 702: 7(int) Constant 138 |
| 701: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 702 68 55 |
| 724: 7(int) Constant 140 |
| 726: TypePointer PushConstant 7(int) |
| 727: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 160 12 |
| 731: 7(int) Constant 144 |
| 737: 7(int) Constant 145 |
| 736: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 737 74 55 |
| 739: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 70 20 35 737 12 736 40 |
| 743: 19(fvec3) ConstantComposite 281 281 281 |
| 747: 7(int) Constant 146 |
| 745: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 746 20 35 747 12 736 40 |
| 751: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 752 20 35 747 12 736 40 |
| 755: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 756 20 35 747 12 736 40 |
| 760: 7(int) Constant 147 |
| 766: 7(int) Constant 148 |
| 765: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 766 40 736 |
| 775: 7(int) Constant 149 |
| 774: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 775 22 765 |
| 787: 7(int) Constant 150 |
| 800: 7(int) Constant 151 |
| 812: 7(int) Constant 152 |
| 824: 7(int) Constant 154 |
| 834: 7(int) Constant 155 |
| 833: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 834 22 765 |
| 849: 7(int) Constant 156 |
| 862: 7(int) Constant 157 |
| 871: 7(int) Constant 158 |
| 883: 7(int) Constant 161 |
| 893: 7(int) Constant 162 |
| 892: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 893 40 736 |
| 902: 7(int) Constant 163 |
| 901: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 902 22 892 |
| 917: 7(int) Constant 164 |
| 930: 7(int) Constant 165 |
| 939: 7(int) Constant 166 |
| 951: 7(int) Constant 168 |
| 961: 7(int) Constant 169 |
| 960: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 961 22 892 |
| 973: 7(int) Constant 170 |
| 986: 7(int) Constant 171 |
| 998: 7(int) Constant 172 |
| 1010: 7(int) Constant 175 |
| 1020: 7(int) Constant 177 |
| 1021: 7(int) Constant 10 |
| 1022: 198(ivec3) ConstantComposite 1021 1021 39 |
| 1023: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 1024 199 35 1020 12 38 1024 1022 74 |
| 14(main): 4 Function None 5 |
| 15: Label |
| 202(id): 200(ptr) Variable Function |
| 216(index): 214(ptr) Variable Function |
| 287(force): 21(ptr) Variable Function |
| 301(pos): 21(ptr) Variable Function |
| 310(vel): 21(ptr) Variable Function |
| 332(param): 21(ptr) Variable Function |
| 336(param): 21(ptr) Variable Function |
| 338(param): 24(ptr) Variable Function |
| 362(param): 21(ptr) Variable Function |
| 366(param): 21(ptr) Variable Function |
| 368(param): 24(ptr) Variable Function |
| 396(param): 21(ptr) Variable Function |
| 400(param): 21(ptr) Variable Function |
| 402(param): 24(ptr) Variable Function |
| 425(param): 21(ptr) Variable Function |
| 429(param): 21(ptr) Variable Function |
| 431(param): 24(ptr) Variable Function |
| 470(param): 21(ptr) Variable Function |
| 474(param): 21(ptr) Variable Function |
| 476(param): 24(ptr) Variable Function |
| 510(param): 21(ptr) Variable Function |
| 514(param): 21(ptr) Variable Function |
| 516(param): 24(ptr) Variable Function |
| 558(param): 21(ptr) Variable Function |
| 562(param): 21(ptr) Variable Function |
| 564(param): 24(ptr) Variable Function |
| 602(param): 21(ptr) Variable Function |
| 606(param): 21(ptr) Variable Function |
| 608(param): 24(ptr) Variable Function |
| 625(f): 21(ptr) Variable Function |
| 674(sphereDist): 21(ptr) Variable Function |
| 738(normal): 21(ptr) Variable Function |
| 744(a): 21(ptr) Variable Function |
| 750(b): 21(ptr) Variable Function |
| 754(c): 21(ptr) Variable Function |
| 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 56 56 12 12 |
| 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 55 14(main) |
| 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 205 205 12 12 |
| 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 203 202(id) 45 |
| 213: 198(ivec3) Load 210(gl_GlobalInvocationID) |
| Store 202(id) 213 |
| 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 219 219 12 12 |
| 220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 217 216(index) 45 |
| 222: 214(ptr) AccessChain 202(id) 39 |
| 223: 7(int) Load 222 |
| 227: 225(ptr) AccessChain 149(params) 224 12 |
| 228: 105(int) Load 227 |
| 229: 7(int) Bitcast 228 |
| 230: 7(int) IMul 223 229 |
| 231: 214(ptr) AccessChain 202(id) 12 |
| 232: 7(int) Load 231 |
| 233: 7(int) IAdd 230 232 |
| Store 216(index) 233 |
| 235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 236 236 12 12 |
| 234: 7(int) Load 216(index) |
| 237: 225(ptr) AccessChain 149(params) 224 12 |
| 238: 105(int) Load 237 |
| 239: 225(ptr) AccessChain 149(params) 224 39 |
| 240: 105(int) Load 239 |
| 241: 105(int) IMul 238 240 |
| 242: 7(int) Bitcast 241 |
| 246: 243(bool) UGreaterThan 234 242 |
| SelectionMerge 248 None |
| BranchConditional 246 247 248 |
| 247: Label |
| 249: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 251 251 12 12 |
| Return |
| 248: Label |
| 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 256: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 257 257 12 12 |
| 254: 7(int) Load 216(index) |
| 259: 180(ptr) AccessChain 89 253 254 258 |
| 260: 16(float) Load 259 |
| 262: 243(bool) FOrdEqual 260 261 |
| SelectionMerge 264 None |
| BranchConditional 262 263 264 |
| 263: Label |
| 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 265 |
| 270: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 266 266 12 12 |
| 268: 7(int) Load 216(index) |
| 271: 7(int) Load 216(index) |
| 274: 272(ptr) AccessChain 103 253 271 253 |
| 275: 57(fvec4) Load 274 |
| 276: 272(ptr) AccessChain 103 253 268 253 |
| Store 276 275 |
| 278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 279 279 12 12 |
| 277: 7(int) Load 216(index) |
| 283: 272(ptr) AccessChain 103 253 277 280 |
| Store 283 282 |
| 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 285 285 12 12 |
| Return |
| 264: Label |
| 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 290 290 12 12 |
| 291: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 288 287(force) 45 |
| 295: 272(ptr) AccessChain 149(params) 294 |
| 296: 57(fvec4) Load 295 |
| 297: 19(fvec3) VectorShuffle 296 296 0 1 2 |
| 298: 180(ptr) AccessChain 149(params) 280 |
| 299: 16(float) Load 298 |
| 300: 19(fvec3) VectorTimesScalar 297 299 |
| Store 287(force) 300 |
| 305: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 303 303 12 12 |
| 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 302 301(pos) 45 |
| 306: 7(int) Load 216(index) |
| 307: 272(ptr) AccessChain 89 253 306 253 |
| 308: 57(fvec4) Load 307 |
| 309: 19(fvec3) VectorShuffle 308 308 0 1 2 |
| Store 301(pos) 309 |
| 314: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 312 312 12 12 |
| 313: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 311 310(vel) 45 |
| 315: 7(int) Load 216(index) |
| 316: 272(ptr) AccessChain 89 253 315 280 |
| 317: 57(fvec4) Load 316 |
| 318: 19(fvec3) VectorShuffle 317 317 0 1 2 |
| Store 310(vel) 318 |
| 320: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 321 321 12 12 |
| 319: 214(ptr) AccessChain 202(id) 12 |
| 322: 7(int) Load 319 |
| 323: 243(bool) UGreaterThan 322 12 |
| SelectionMerge 325 None |
| BranchConditional 323 324 325 |
| 324: Label |
| 329: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 326 |
| 330: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 327 327 12 12 |
| 328: 7(int) Load 216(index) |
| 331: 7(int) ISub 328 39 |
| 333: 272(ptr) AccessChain 89 253 331 253 |
| 334: 57(fvec4) Load 333 |
| 335: 19(fvec3) VectorShuffle 334 334 0 1 2 |
| Store 332(param) 335 |
| 337: 19(fvec3) Load 301(pos) |
| Store 336(param) 337 |
| 339: 180(ptr) AccessChain 149(params) 258 |
| 340: 16(float) Load 339 |
| Store 338(param) 340 |
| 341: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 332(param) 336(param) 338(param) |
| 342: 19(fvec3) Load 287(force) |
| 343: 19(fvec3) FAdd 342 341 |
| Store 287(force) 343 |
| Branch 325 |
| 325: Label |
| 345: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 346: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 347 347 12 12 |
| 344: 214(ptr) AccessChain 202(id) 12 |
| 348: 7(int) Load 344 |
| 349: 225(ptr) AccessChain 149(params) 224 12 |
| 350: 105(int) Load 349 |
| 351: 105(int) ISub 350 280 |
| 352: 7(int) Bitcast 351 |
| 353: 243(bool) ULessThan 348 352 |
| SelectionMerge 355 None |
| BranchConditional 353 354 355 |
| 354: Label |
| 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 356 |
| 360: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 357 357 12 12 |
| 358: 7(int) Load 216(index) |
| 361: 7(int) IAdd 358 39 |
| 363: 272(ptr) AccessChain 89 253 361 253 |
| 364: 57(fvec4) Load 363 |
| 365: 19(fvec3) VectorShuffle 364 364 0 1 2 |
| Store 362(param) 365 |
| 367: 19(fvec3) Load 301(pos) |
| Store 366(param) 367 |
| 369: 180(ptr) AccessChain 149(params) 258 |
| 370: 16(float) Load 369 |
| Store 368(param) 370 |
| 371: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 362(param) 366(param) 368(param) |
| 372: 19(fvec3) Load 287(force) |
| 373: 19(fvec3) FAdd 372 371 |
| Store 287(force) 373 |
| Branch 355 |
| 355: Label |
| 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 376: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 377 377 12 12 |
| 374: 214(ptr) AccessChain 202(id) 39 |
| 378: 7(int) Load 374 |
| 379: 225(ptr) AccessChain 149(params) 224 39 |
| 380: 105(int) Load 379 |
| 381: 105(int) ISub 380 280 |
| 382: 7(int) Bitcast 381 |
| 383: 243(bool) ULessThan 378 382 |
| SelectionMerge 385 None |
| BranchConditional 383 384 385 |
| 384: Label |
| 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 386 |
| 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 387 387 12 12 |
| 388: 7(int) Load 216(index) |
| 391: 225(ptr) AccessChain 149(params) 224 12 |
| 392: 105(int) Load 391 |
| 393: 7(int) Bitcast 392 |
| 394: 7(int) IAdd 388 393 |
| 397: 272(ptr) AccessChain 89 253 394 253 |
| 398: 57(fvec4) Load 397 |
| 399: 19(fvec3) VectorShuffle 398 398 0 1 2 |
| Store 396(param) 399 |
| 401: 19(fvec3) Load 301(pos) |
| Store 400(param) 401 |
| 403: 180(ptr) AccessChain 149(params) 395 |
| 404: 16(float) Load 403 |
| Store 402(param) 404 |
| 405: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 396(param) 400(param) 402(param) |
| 406: 19(fvec3) Load 287(force) |
| 407: 19(fvec3) FAdd 406 405 |
| Store 287(force) 407 |
| Branch 385 |
| 385: Label |
| 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 411 411 12 12 |
| 408: 214(ptr) AccessChain 202(id) 39 |
| 412: 7(int) Load 408 |
| 413: 243(bool) UGreaterThan 412 12 |
| SelectionMerge 415 None |
| BranchConditional 413 414 415 |
| 414: Label |
| 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 416 |
| 420: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 417 417 12 12 |
| 418: 7(int) Load 216(index) |
| 421: 225(ptr) AccessChain 149(params) 224 12 |
| 422: 105(int) Load 421 |
| 423: 7(int) Bitcast 422 |
| 424: 7(int) ISub 418 423 |
| 426: 272(ptr) AccessChain 89 253 424 253 |
| 427: 57(fvec4) Load 426 |
| 428: 19(fvec3) VectorShuffle 427 427 0 1 2 |
| Store 425(param) 428 |
| 430: 19(fvec3) Load 301(pos) |
| Store 429(param) 430 |
| 432: 180(ptr) AccessChain 149(params) 395 |
| 433: 16(float) Load 432 |
| Store 431(param) 433 |
| 434: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 425(param) 429(param) 431(param) |
| 435: 19(fvec3) Load 287(force) |
| 436: 19(fvec3) FAdd 435 434 |
| Store 287(force) 436 |
| Branch 415 |
| 415: Label |
| 438: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 440 440 12 12 |
| 437: 214(ptr) AccessChain 202(id) 12 |
| 441: 7(int) Load 437 |
| 442: 243(bool) UGreaterThan 441 12 |
| SelectionMerge 444 None |
| BranchConditional 442 443 444 |
| 443: Label |
| 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 447: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 440 440 12 12 |
| 445: 214(ptr) AccessChain 202(id) 39 |
| 448: 7(int) Load 445 |
| 449: 225(ptr) AccessChain 149(params) 224 39 |
| 450: 105(int) Load 449 |
| 451: 105(int) ISub 450 280 |
| 452: 7(int) Bitcast 451 |
| 453: 243(bool) ULessThan 448 452 |
| Branch 444 |
| 444: Label |
| 454: 243(bool) Phi 442 415 453 443 |
| 457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 440 440 12 12 |
| SelectionMerge 456 None |
| BranchConditional 454 455 456 |
| 455: Label |
| 462: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 459 |
| 463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 460 460 12 12 |
| 461: 7(int) Load 216(index) |
| 464: 225(ptr) AccessChain 149(params) 224 12 |
| 465: 105(int) Load 464 |
| 466: 7(int) Bitcast 465 |
| 467: 7(int) IAdd 461 466 |
| 468: 7(int) ISub 467 39 |
| 471: 272(ptr) AccessChain 89 253 468 253 |
| 472: 57(fvec4) Load 471 |
| 473: 19(fvec3) VectorShuffle 472 472 0 1 2 |
| Store 470(param) 473 |
| 475: 19(fvec3) Load 301(pos) |
| Store 474(param) 475 |
| 477: 180(ptr) AccessChain 149(params) 469 |
| 478: 16(float) Load 477 |
| Store 476(param) 478 |
| 479: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 470(param) 474(param) 476(param) |
| 480: 19(fvec3) Load 287(force) |
| 481: 19(fvec3) FAdd 480 479 |
| Store 287(force) 481 |
| Branch 456 |
| 456: Label |
| 483: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 485 485 12 12 |
| 482: 214(ptr) AccessChain 202(id) 12 |
| 486: 7(int) Load 482 |
| 487: 243(bool) UGreaterThan 486 12 |
| SelectionMerge 489 None |
| BranchConditional 487 488 489 |
| 488: Label |
| 491: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 485 485 12 12 |
| 490: 214(ptr) AccessChain 202(id) 39 |
| 493: 7(int) Load 490 |
| 494: 243(bool) UGreaterThan 493 12 |
| Branch 489 |
| 489: Label |
| 495: 243(bool) Phi 487 456 494 488 |
| 498: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 499: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 485 485 12 12 |
| SelectionMerge 497 None |
| BranchConditional 495 496 497 |
| 496: Label |
| 503: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 500 |
| 504: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 501 501 12 12 |
| 502: 7(int) Load 216(index) |
| 505: 225(ptr) AccessChain 149(params) 224 12 |
| 506: 105(int) Load 505 |
| 507: 7(int) Bitcast 506 |
| 508: 7(int) ISub 502 507 |
| 509: 7(int) ISub 508 39 |
| 511: 272(ptr) AccessChain 89 253 509 253 |
| 512: 57(fvec4) Load 511 |
| 513: 19(fvec3) VectorShuffle 512 512 0 1 2 |
| Store 510(param) 513 |
| 515: 19(fvec3) Load 301(pos) |
| Store 514(param) 515 |
| 517: 180(ptr) AccessChain 149(params) 469 |
| 518: 16(float) Load 517 |
| Store 516(param) 518 |
| 519: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 510(param) 514(param) 516(param) |
| 520: 19(fvec3) Load 287(force) |
| 521: 19(fvec3) FAdd 520 519 |
| Store 287(force) 521 |
| Branch 497 |
| 497: Label |
| 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 524: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 525 525 12 12 |
| 522: 214(ptr) AccessChain 202(id) 12 |
| 526: 7(int) Load 522 |
| 527: 225(ptr) AccessChain 149(params) 224 12 |
| 528: 105(int) Load 527 |
| 529: 105(int) ISub 528 280 |
| 530: 7(int) Bitcast 529 |
| 531: 243(bool) ULessThan 526 530 |
| SelectionMerge 533 None |
| BranchConditional 531 532 533 |
| 532: Label |
| 535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 536: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 525 525 12 12 |
| 534: 214(ptr) AccessChain 202(id) 39 |
| 537: 7(int) Load 534 |
| 538: 225(ptr) AccessChain 149(params) 224 39 |
| 539: 105(int) Load 538 |
| 540: 105(int) ISub 539 280 |
| 541: 7(int) Bitcast 540 |
| 542: 243(bool) ULessThan 537 541 |
| Branch 533 |
| 533: Label |
| 543: 243(bool) Phi 531 497 542 532 |
| 546: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 525 525 12 12 |
| SelectionMerge 545 None |
| BranchConditional 543 544 545 |
| 544: Label |
| 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 548 |
| 552: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 549 549 12 12 |
| 550: 7(int) Load 216(index) |
| 553: 225(ptr) AccessChain 149(params) 224 12 |
| 554: 105(int) Load 553 |
| 555: 7(int) Bitcast 554 |
| 556: 7(int) IAdd 550 555 |
| 557: 7(int) IAdd 556 39 |
| 559: 272(ptr) AccessChain 89 253 557 253 |
| 560: 57(fvec4) Load 559 |
| 561: 19(fvec3) VectorShuffle 560 560 0 1 2 |
| Store 558(param) 561 |
| 563: 19(fvec3) Load 301(pos) |
| Store 562(param) 563 |
| 565: 180(ptr) AccessChain 149(params) 469 |
| 566: 16(float) Load 565 |
| Store 564(param) 566 |
| 567: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 558(param) 562(param) 564(param) |
| 568: 19(fvec3) Load 287(force) |
| 569: 19(fvec3) FAdd 568 567 |
| Store 287(force) 569 |
| Branch 545 |
| 545: Label |
| 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 572: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 573 573 12 12 |
| 570: 214(ptr) AccessChain 202(id) 12 |
| 574: 7(int) Load 570 |
| 575: 225(ptr) AccessChain 149(params) 224 12 |
| 576: 105(int) Load 575 |
| 577: 105(int) ISub 576 280 |
| 578: 7(int) Bitcast 577 |
| 579: 243(bool) ULessThan 574 578 |
| SelectionMerge 581 None |
| BranchConditional 579 580 581 |
| 580: Label |
| 583: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 573 573 12 12 |
| 582: 214(ptr) AccessChain 202(id) 39 |
| 585: 7(int) Load 582 |
| 586: 243(bool) UGreaterThan 585 12 |
| Branch 581 |
| 581: Label |
| 587: 243(bool) Phi 579 545 586 580 |
| 590: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 591: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 573 573 12 12 |
| SelectionMerge 589 None |
| BranchConditional 587 588 589 |
| 588: Label |
| 595: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 592 |
| 596: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 593 593 12 12 |
| 594: 7(int) Load 216(index) |
| 597: 225(ptr) AccessChain 149(params) 224 12 |
| 598: 105(int) Load 597 |
| 599: 7(int) Bitcast 598 |
| 600: 7(int) ISub 594 599 |
| 601: 7(int) IAdd 600 39 |
| 603: 272(ptr) AccessChain 89 253 601 253 |
| 604: 57(fvec4) Load 603 |
| 605: 19(fvec3) VectorShuffle 604 604 0 1 2 |
| Store 602(param) 605 |
| 607: 19(fvec3) Load 301(pos) |
| Store 606(param) 607 |
| 609: 180(ptr) AccessChain 149(params) 469 |
| 610: 16(float) Load 609 |
| Store 608(param) 610 |
| 611: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 602(param) 606(param) 608(param) |
| 612: 19(fvec3) Load 287(force) |
| 613: 19(fvec3) FAdd 612 611 |
| Store 287(force) 613 |
| Branch 589 |
| 589: Label |
| 616: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 617: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 618 618 12 12 |
| 615: 180(ptr) AccessChain 149(params) 614 |
| 619: 16(float) Load 615 |
| 620: 16(float) FNegate 619 |
| 621: 19(fvec3) Load 310(vel) |
| 622: 19(fvec3) VectorTimesScalar 621 620 |
| 623: 19(fvec3) Load 287(force) |
| 624: 19(fvec3) FAdd 623 622 |
| Store 287(force) 624 |
| 630: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 628 628 12 12 |
| 629: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 626 625(f) 45 |
| 631: 19(fvec3) Load 287(force) |
| 632: 180(ptr) AccessChain 149(params) 280 |
| 633: 16(float) Load 632 |
| 634: 16(float) FDiv 261 633 |
| 635: 19(fvec3) VectorTimesScalar 631 634 |
| Store 625(f) 635 |
| 637: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 638 638 12 12 |
| 636: 7(int) Load 216(index) |
| 639: 19(fvec3) Load 301(pos) |
| 640: 19(fvec3) Load 310(vel) |
| 641: 180(ptr) AccessChain 149(params) 253 |
| 642: 16(float) Load 641 |
| 643: 19(fvec3) VectorTimesScalar 640 642 |
| 644: 19(fvec3) FAdd 639 643 |
| 646: 19(fvec3) Load 625(f) |
| 647: 19(fvec3) VectorTimesScalar 646 645 |
| 648: 180(ptr) AccessChain 149(params) 253 |
| 649: 16(float) Load 648 |
| 650: 19(fvec3) VectorTimesScalar 647 649 |
| 651: 180(ptr) AccessChain 149(params) 253 |
| 652: 16(float) Load 651 |
| 653: 19(fvec3) VectorTimesScalar 650 652 |
| 654: 19(fvec3) FAdd 644 653 |
| 655: 16(float) CompositeExtract 654 0 |
| 656: 16(float) CompositeExtract 654 1 |
| 657: 16(float) CompositeExtract 654 2 |
| 658: 57(fvec4) CompositeConstruct 655 656 657 261 |
| 659: 272(ptr) AccessChain 103 253 636 253 |
| Store 659 658 |
| 661: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 662 662 12 12 |
| 660: 7(int) Load 216(index) |
| 663: 19(fvec3) Load 310(vel) |
| 664: 19(fvec3) Load 625(f) |
| 665: 180(ptr) AccessChain 149(params) 253 |
| 666: 16(float) Load 665 |
| 667: 19(fvec3) VectorTimesScalar 664 666 |
| 668: 19(fvec3) FAdd 663 667 |
| 669: 16(float) CompositeExtract 668 0 |
| 670: 16(float) CompositeExtract 668 1 |
| 671: 16(float) CompositeExtract 668 2 |
| 672: 57(fvec4) CompositeConstruct 669 670 671 281 |
| 673: 272(ptr) AccessChain 103 253 660 280 |
| Store 673 672 |
| 679: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 677 677 12 12 |
| 678: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 675 674(sphereDist) 45 |
| 680: 7(int) Load 216(index) |
| 681: 272(ptr) AccessChain 103 253 680 253 |
| 682: 57(fvec4) Load 681 |
| 683: 19(fvec3) VectorShuffle 682 682 0 1 2 |
| 685: 272(ptr) AccessChain 149(params) 684 |
| 686: 57(fvec4) Load 685 |
| 687: 19(fvec3) VectorShuffle 686 686 0 1 2 |
| 688: 19(fvec3) FSub 683 687 |
| Store 674(sphereDist) 688 |
| 690: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 691 691 12 12 |
| 689: 19(fvec3) Load 674(sphereDist) |
| 692: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 689 |
| 694: 180(ptr) AccessChain 149(params) 693 |
| 695: 16(float) Load 694 |
| 697: 16(float) FAdd 695 696 |
| 698: 243(bool) FOrdLessThan 692 697 |
| SelectionMerge 700 None |
| BranchConditional 698 699 700 |
| 699: Label |
| 704: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701 |
| 705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 702 702 12 12 |
| 703: 7(int) Load 216(index) |
| 706: 272(ptr) AccessChain 149(params) 684 |
| 707: 57(fvec4) Load 706 |
| 708: 19(fvec3) VectorShuffle 707 707 0 1 2 |
| 709: 19(fvec3) Load 674(sphereDist) |
| 710: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 709 |
| 711: 180(ptr) AccessChain 149(params) 693 |
| 712: 16(float) Load 711 |
| 713: 16(float) FAdd 712 696 |
| 714: 19(fvec3) VectorTimesScalar 710 713 |
| 715: 19(fvec3) FAdd 708 714 |
| 716: 180(ptr) AccessChain 103 253 703 253 12 |
| 717: 16(float) CompositeExtract 715 0 |
| Store 716 717 |
| 718: 180(ptr) AccessChain 103 253 703 253 39 |
| 719: 16(float) CompositeExtract 715 1 |
| Store 718 719 |
| 720: 180(ptr) AccessChain 103 253 703 253 41 |
| 721: 16(float) CompositeExtract 715 2 |
| Store 720 721 |
| 723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 724 724 12 12 |
| 722: 7(int) Load 216(index) |
| 725: 272(ptr) AccessChain 103 253 722 280 |
| Store 725 282 |
| Branch 700 |
| 700: Label |
| 729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 730: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 731 731 12 12 |
| 728: 726(ptr) AccessChain 162(pushConsts) 253 |
| 732: 7(int) Load 728 |
| 733: 243(bool) IEqual 732 39 |
| SelectionMerge 735 None |
| BranchConditional 733 734 735 |
| 734: Label |
| 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 736 |
| 742: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 737 737 12 12 |
| 740: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 739 738(normal) 45 |
| Store 738(normal) 743 |
| 749: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 747 747 12 12 |
| 748: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 745 744(a) 45 |
| 753: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 751 750(b) 45 |
| 757: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 755 754(c) 45 |
| 759: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 760 760 12 12 |
| 758: 214(ptr) AccessChain 202(id) 39 |
| 761: 7(int) Load 758 |
| 762: 243(bool) UGreaterThan 761 12 |
| SelectionMerge 764 None |
| BranchConditional 762 763 764 |
| 763: Label |
| 768: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 765 |
| 769: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 766 766 12 12 |
| 767: 214(ptr) AccessChain 202(id) 12 |
| 770: 7(int) Load 767 |
| 771: 243(bool) UGreaterThan 770 12 |
| SelectionMerge 773 None |
| BranchConditional 771 772 773 |
| 772: Label |
| 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 774 |
| 778: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 775 775 12 12 |
| 776: 7(int) Load 216(index) |
| 779: 7(int) ISub 776 39 |
| 780: 272(ptr) AccessChain 89 253 779 253 |
| 781: 57(fvec4) Load 780 |
| 782: 19(fvec3) VectorShuffle 781 781 0 1 2 |
| 783: 19(fvec3) Load 301(pos) |
| 784: 19(fvec3) FSub 782 783 |
| Store 744(a) 784 |
| 786: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 787 787 12 12 |
| 785: 7(int) Load 216(index) |
| 788: 225(ptr) AccessChain 149(params) 224 12 |
| 789: 105(int) Load 788 |
| 790: 7(int) Bitcast 789 |
| 791: 7(int) ISub 785 790 |
| 792: 7(int) ISub 791 39 |
| 793: 272(ptr) AccessChain 89 253 792 253 |
| 794: 57(fvec4) Load 793 |
| 795: 19(fvec3) VectorShuffle 794 794 0 1 2 |
| 796: 19(fvec3) Load 301(pos) |
| 797: 19(fvec3) FSub 795 796 |
| Store 750(b) 797 |
| 799: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 800 800 12 12 |
| 798: 7(int) Load 216(index) |
| 801: 225(ptr) AccessChain 149(params) 224 12 |
| 802: 105(int) Load 801 |
| 803: 7(int) Bitcast 802 |
| 804: 7(int) ISub 798 803 |
| 805: 272(ptr) AccessChain 89 253 804 253 |
| 806: 57(fvec4) Load 805 |
| 807: 19(fvec3) VectorShuffle 806 806 0 1 2 |
| 808: 19(fvec3) Load 301(pos) |
| 809: 19(fvec3) FSub 807 808 |
| Store 754(c) 809 |
| 811: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 812 812 12 12 |
| 810: 19(fvec3) Load 744(a) |
| 813: 19(fvec3) Load 750(b) |
| 814: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 810 813 |
| 815: 19(fvec3) Load 750(b) |
| 816: 19(fvec3) Load 754(c) |
| 817: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 815 816 |
| 818: 19(fvec3) FAdd 814 817 |
| 819: 19(fvec3) Load 738(normal) |
| 820: 19(fvec3) FAdd 819 818 |
| Store 738(normal) 820 |
| Branch 773 |
| 773: Label |
| 822: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 765 |
| 823: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 824 824 12 12 |
| 821: 214(ptr) AccessChain 202(id) 12 |
| 825: 7(int) Load 821 |
| 826: 225(ptr) AccessChain 149(params) 224 12 |
| 827: 105(int) Load 826 |
| 828: 105(int) ISub 827 280 |
| 829: 7(int) Bitcast 828 |
| 830: 243(bool) ULessThan 825 829 |
| SelectionMerge 832 None |
| BranchConditional 830 831 832 |
| 831: Label |
| 836: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 833 |
| 837: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 834 834 12 12 |
| 835: 7(int) Load 216(index) |
| 838: 225(ptr) AccessChain 149(params) 224 12 |
| 839: 105(int) Load 838 |
| 840: 7(int) Bitcast 839 |
| 841: 7(int) ISub 835 840 |
| 842: 272(ptr) AccessChain 89 253 841 253 |
| 843: 57(fvec4) Load 842 |
| 844: 19(fvec3) VectorShuffle 843 843 0 1 2 |
| 845: 19(fvec3) Load 301(pos) |
| 846: 19(fvec3) FSub 844 845 |
| Store 744(a) 846 |
| 848: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 849 849 12 12 |
| 847: 7(int) Load 216(index) |
| 850: 225(ptr) AccessChain 149(params) 224 12 |
| 851: 105(int) Load 850 |
| 852: 7(int) Bitcast 851 |
| 853: 7(int) ISub 847 852 |
| 854: 7(int) IAdd 853 39 |
| 855: 272(ptr) AccessChain 89 253 854 253 |
| 856: 57(fvec4) Load 855 |
| 857: 19(fvec3) VectorShuffle 856 856 0 1 2 |
| 858: 19(fvec3) Load 301(pos) |
| 859: 19(fvec3) FSub 857 858 |
| Store 750(b) 859 |
| 861: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 862 862 12 12 |
| 860: 7(int) Load 216(index) |
| 863: 7(int) IAdd 860 39 |
| 864: 272(ptr) AccessChain 89 253 863 253 |
| 865: 57(fvec4) Load 864 |
| 866: 19(fvec3) VectorShuffle 865 865 0 1 2 |
| 867: 19(fvec3) Load 301(pos) |
| 868: 19(fvec3) FSub 866 867 |
| Store 754(c) 868 |
| 870: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 871 871 12 12 |
| 869: 19(fvec3) Load 744(a) |
| 872: 19(fvec3) Load 750(b) |
| 873: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 869 872 |
| 874: 19(fvec3) Load 750(b) |
| 875: 19(fvec3) Load 754(c) |
| 876: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 874 875 |
| 877: 19(fvec3) FAdd 873 876 |
| 878: 19(fvec3) Load 738(normal) |
| 879: 19(fvec3) FAdd 878 877 |
| Store 738(normal) 879 |
| Branch 832 |
| 832: Label |
| Branch 764 |
| 764: Label |
| 881: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 736 |
| 882: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 883 883 12 12 |
| 880: 214(ptr) AccessChain 202(id) 39 |
| 884: 7(int) Load 880 |
| 885: 225(ptr) AccessChain 149(params) 224 39 |
| 886: 105(int) Load 885 |
| 887: 105(int) ISub 886 280 |
| 888: 7(int) Bitcast 887 |
| 889: 243(bool) ULessThan 884 888 |
| SelectionMerge 891 None |
| BranchConditional 889 890 891 |
| 890: Label |
| 895: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 892 |
| 896: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 893 893 12 12 |
| 894: 214(ptr) AccessChain 202(id) 12 |
| 897: 7(int) Load 894 |
| 898: 243(bool) UGreaterThan 897 12 |
| SelectionMerge 900 None |
| BranchConditional 898 899 900 |
| 899: Label |
| 904: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 901 |
| 905: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 902 902 12 12 |
| 903: 7(int) Load 216(index) |
| 906: 225(ptr) AccessChain 149(params) 224 12 |
| 907: 105(int) Load 906 |
| 908: 7(int) Bitcast 907 |
| 909: 7(int) IAdd 903 908 |
| 910: 272(ptr) AccessChain 89 253 909 253 |
| 911: 57(fvec4) Load 910 |
| 912: 19(fvec3) VectorShuffle 911 911 0 1 2 |
| 913: 19(fvec3) Load 301(pos) |
| 914: 19(fvec3) FSub 912 913 |
| Store 744(a) 914 |
| 916: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 917 917 12 12 |
| 915: 7(int) Load 216(index) |
| 918: 225(ptr) AccessChain 149(params) 224 12 |
| 919: 105(int) Load 918 |
| 920: 7(int) Bitcast 919 |
| 921: 7(int) IAdd 915 920 |
| 922: 7(int) ISub 921 39 |
| 923: 272(ptr) AccessChain 89 253 922 253 |
| 924: 57(fvec4) Load 923 |
| 925: 19(fvec3) VectorShuffle 924 924 0 1 2 |
| 926: 19(fvec3) Load 301(pos) |
| 927: 19(fvec3) FSub 925 926 |
| Store 750(b) 927 |
| 929: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 930 930 12 12 |
| 928: 7(int) Load 216(index) |
| 931: 7(int) ISub 928 39 |
| 932: 272(ptr) AccessChain 89 253 931 253 |
| 933: 57(fvec4) Load 932 |
| 934: 19(fvec3) VectorShuffle 933 933 0 1 2 |
| 935: 19(fvec3) Load 301(pos) |
| 936: 19(fvec3) FSub 934 935 |
| Store 754(c) 936 |
| 938: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 939 939 12 12 |
| 937: 19(fvec3) Load 744(a) |
| 940: 19(fvec3) Load 750(b) |
| 941: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 937 940 |
| 942: 19(fvec3) Load 750(b) |
| 943: 19(fvec3) Load 754(c) |
| 944: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 942 943 |
| 945: 19(fvec3) FAdd 941 944 |
| 946: 19(fvec3) Load 738(normal) |
| 947: 19(fvec3) FAdd 946 945 |
| Store 738(normal) 947 |
| Branch 900 |
| 900: Label |
| 949: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 892 |
| 950: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 951 951 12 12 |
| 948: 214(ptr) AccessChain 202(id) 12 |
| 952: 7(int) Load 948 |
| 953: 225(ptr) AccessChain 149(params) 224 12 |
| 954: 105(int) Load 953 |
| 955: 105(int) ISub 954 280 |
| 956: 7(int) Bitcast 955 |
| 957: 243(bool) ULessThan 952 956 |
| SelectionMerge 959 None |
| BranchConditional 957 958 959 |
| 958: Label |
| 963: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 960 |
| 964: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 961 961 12 12 |
| 962: 7(int) Load 216(index) |
| 965: 7(int) IAdd 962 39 |
| 966: 272(ptr) AccessChain 89 253 965 253 |
| 967: 57(fvec4) Load 966 |
| 968: 19(fvec3) VectorShuffle 967 967 0 1 2 |
| 969: 19(fvec3) Load 301(pos) |
| 970: 19(fvec3) FSub 968 969 |
| Store 744(a) 970 |
| 972: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 973 973 12 12 |
| 971: 7(int) Load 216(index) |
| 974: 225(ptr) AccessChain 149(params) 224 12 |
| 975: 105(int) Load 974 |
| 976: 7(int) Bitcast 975 |
| 977: 7(int) IAdd 971 976 |
| 978: 7(int) IAdd 977 39 |
| 979: 272(ptr) AccessChain 89 253 978 253 |
| 980: 57(fvec4) Load 979 |
| 981: 19(fvec3) VectorShuffle 980 980 0 1 2 |
| 982: 19(fvec3) Load 301(pos) |
| 983: 19(fvec3) FSub 981 982 |
| Store 750(b) 983 |
| 985: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 986 986 12 12 |
| 984: 7(int) Load 216(index) |
| 987: 225(ptr) AccessChain 149(params) 224 12 |
| 988: 105(int) Load 987 |
| 989: 7(int) Bitcast 988 |
| 990: 7(int) IAdd 984 989 |
| 991: 272(ptr) AccessChain 89 253 990 253 |
| 992: 57(fvec4) Load 991 |
| 993: 19(fvec3) VectorShuffle 992 992 0 1 2 |
| 994: 19(fvec3) Load 301(pos) |
| 995: 19(fvec3) FSub 993 994 |
| Store 754(c) 995 |
| 997: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 998 998 12 12 |
| 996: 19(fvec3) Load 744(a) |
| 999: 19(fvec3) Load 750(b) |
| 1000: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 996 999 |
| 1001: 19(fvec3) Load 750(b) |
| 1002: 19(fvec3) Load 754(c) |
| 1003: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 1001 1002 |
| 1004: 19(fvec3) FAdd 1000 1003 |
| 1005: 19(fvec3) Load 738(normal) |
| 1006: 19(fvec3) FAdd 1005 1004 |
| Store 738(normal) 1006 |
| Branch 959 |
| 959: Label |
| Branch 891 |
| 891: Label |
| 1008: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 736 |
| 1009: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 1010 1010 12 12 |
| 1007: 7(int) Load 216(index) |
| 1011: 19(fvec3) Load 738(normal) |
| 1012: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 1011 |
| 1013: 16(float) CompositeExtract 1012 0 |
| 1014: 16(float) CompositeExtract 1012 1 |
| 1015: 16(float) CompositeExtract 1012 2 |
| 1016: 57(fvec4) CompositeConstruct 1013 1014 1015 281 |
| 1017: 272(ptr) AccessChain 103 253 1007 614 |
| Store 1017 1016 |
| Branch 735 |
| 735: Label |
| 1018: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 |
| 1019: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 1020 1020 12 12 |
| Return |
| FunctionEnd |
| 31(springForce(vf3;vf3;f1;): 19(fvec3) Function None 26 |
| 28(p0): 21(ptr) FunctionParameter |
| 29(p1): 21(ptr) FunctionParameter |
| 30(restDist): 24(ptr) FunctionParameter |
| 32: Label |
| 166(dist): 21(ptr) Variable Function |
| 46: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 |
| 47: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 37 37 12 12 |
| 44: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 42 28(p0) 45 |
| 50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 48 29(p1) 45 |
| 53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 51 30(restDist) 45 |
| 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 31(springForce(vf3;vf3;f1;) |
| 171: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 169 169 12 12 |
| 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 167 166(dist) 45 |
| 172: 19(fvec3) Load 28(p0) |
| 173: 19(fvec3) Load 29(p1) |
| 174: 19(fvec3) FSub 172 173 |
| Store 166(dist) 174 |
| 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 177 177 12 12 |
| 175: 19(fvec3) Load 166(dist) |
| 178: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 175 |
| 182: 180(ptr) AccessChain 149(params) 179 |
| 183: 16(float) Load 182 |
| 184: 19(fvec3) VectorTimesScalar 178 183 |
| 185: 19(fvec3) Load 166(dist) |
| 186: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 185 |
| 187: 16(float) Load 30(restDist) |
| 188: 16(float) FSub 186 187 |
| 189: 19(fvec3) VectorTimesScalar 184 188 |
| ReturnValue 189 |
| FunctionEnd |