; SPIR-V ; Version: 1.0 ; Generator: Google Shaderc over Glslang; 6 ; Bound: 70 ; Schema: 0 OpCapability Shader %1 = OpExtInstImport "GLSL.std.450" OpMemoryModel Logical GLSL450 OpEntryPoint Vertex %entry_vert_ "entry_vert" %_ %iUV %oUV %pos OpEntryPoint Fragment %entry_frag_ "entry_frag" %iUV %colour OpSource GLSL 450 OpSourceExtension "GL_GOOGLE_cpp_style_line_directive" OpSourceExtension "GL_GOOGLE_include_directive" OpName %getData_ "getData(" OpName %entry_vert_ "entry_vert(" OpName %entry_frag_ "entry_frag(" OpName %Ubo "Ubo" OpMemberName %Ubo 0 "data" OpName %ubo "ubo" OpName %oUV "oUV" OpName %iUV "iUV" OpName %gl_PerVertex "gl_PerVertex" OpMemberName %gl_PerVertex 0 "gl_Position" OpName %_ "" OpName %pos "pos" OpName %PushConstantVert "PushConstantVert" OpMemberName %PushConstantVert 0 "val" OpName %push_constant_vert "push_constant_vert" OpName %PushConstantFrag "PushConstantFrag" OpMemberName %PushConstantFrag 0 "val" OpName %push_constant_frag "push_constant_frag" OpName %colour "colour" OpName %tex "tex" OpMemberDecorate %Ubo 0 Offset 0 OpDecorate %Ubo Block OpDecorate %ubo DescriptorSet 0 OpDecorate %ubo Binding 1 OpDecorate %oUV Location 0 OpDecorate %iUV Location 0 OpMemberDecorate %gl_PerVertex 0 BuiltIn Position OpDecorate %gl_PerVertex Block OpDecorate %pos Location 1 OpMemberDecorate %PushConstantVert 0 Offset 0 OpDecorate %PushConstantVert Block OpDecorate %colour Location 0 OpDecorate %tex DescriptorSet 0 OpDecorate %tex Binding 0 %void = OpTypeVoid %3 = OpTypeFunction %void %float = OpTypeFloat 32 %v4float = OpTypeVector %float 4 %8 = OpTypeFunction %v4float %Ubo = OpTypeStruct %v4float %_ptr_Uniform_Ubo = OpTypePointer Uniform %Ubo %ubo = OpVariable %_ptr_Uniform_Ubo Uniform %int = OpTypeInt 32 1 %int_0 = OpConstant %int 0 %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float %v2float = OpTypeVector %float 2 %_ptr_Output_v2float = OpTypePointer Output %v2float %oUV = OpVariable %_ptr_Output_v2float Output %_ptr_Input_v2float = OpTypePointer Input %v2float %iUV = OpVariable %_ptr_Input_v2float Input %gl_PerVertex = OpTypeStruct %v4float %_ptr_Output_gl_PerVertex = OpTypePointer Output %gl_PerVertex %_ = OpVariable %_ptr_Output_gl_PerVertex Output %v3float = OpTypeVector %float 3 %_ptr_Input_v3float = OpTypePointer Input %v3float %pos = OpVariable %_ptr_Input_v3float Input %float_1 = OpConstant %float 1 %PushConstantVert = OpTypeStruct %float %_ptr_PushConstant_PushConstantVert = OpTypePointer PushConstant %PushConstantVert %push_constant_vert = OpVariable %_ptr_PushConstant_PushConstantVert PushConstant %PushConstantFrag = OpTypeStruct %float %_ptr_PushConstant_PushConstantFrag = OpTypePointer PushConstant %PushConstantFrag %push_constant_frag = OpVariable %_ptr_PushConstant_PushConstantFrag PushConstant %_ptr_PushConstant_float = OpTypePointer PushConstant %float %_ptr_Output_v4float = OpTypePointer Output %v4float %colour = OpVariable %_ptr_Output_v4float Output %55 = OpTypeImage %float 2D 0 0 0 1 Unknown %56 = OpTypeSampledImage %55 %_ptr_UniformConstant_56 = OpTypePointer UniformConstant %56 %tex = OpVariable %_ptr_UniformConstant_56 UniformConstant %float_0 = OpConstant %float 0 %getData_ = OpFunction %v4float None %8 %10 = OpLabel %21 = OpAccessChain %_ptr_Uniform_v4float %ubo %int_0 %22 = OpLoad %v4float %21 OpReturnValue %22 OpFunctionEnd %entry_vert_ = OpFunction %void None %3 %12 = OpLabel %30 = OpLoad %v2float %iUV OpStore %oUV %30 %37 = OpLoad %v3float %pos %39 = OpCompositeExtract %float %37 0 %40 = OpCompositeExtract %float %37 1 %41 = OpCompositeExtract %float %37 2 %42 = OpCompositeConstruct %v4float %39 %40 %41 %float_1 %47 = OpAccessChain %_ptr_PushConstant_float %push_constant_vert %int_0 %48 = OpLoad %float %47 %49 = OpVectorTimesScalar %v4float %42 %48 %50 = OpFunctionCall %v4float %getData_ %51 = OpFMul %v4float %49 %50 %53 = OpAccessChain %_ptr_Output_v4float %_ %int_0 OpStore %53 %51 OpReturn OpFunctionEnd %entry_frag_ = OpFunction %void None %3 %14 = OpLabel %59 = OpLoad %56 %tex %60 = OpLoad %v2float %iUV %62 = OpImageSampleExplicitLod %v4float %59 %60 Lod %float_0 %63 = OpAccessChain %_ptr_PushConstant_float %push_constant_frag %int_0 %64 = OpLoad %float %63 %65 = OpVectorTimesScalar %v4float %62 %64 %66 = OpFunctionCall %v4float %getData_ %67 = OpFMul %v4float %65 %66 OpStore %colour %67 OpReturn OpFunctionEnd