#type vertex #version 410 uniform mat4 u_projection; uniform mat4 u_view; layout(location = 0) in vec3 input_position; layout(location = 0) out vec3 _v0; mat4 spvWorkaroundRowMajor(mat4 wrap) { return wrap; } void main() { gl_Position = (vec4(input_position, 1.0) * spvWorkaroundRowMajor(u_view)) * spvWorkaroundRowMajor(u_projection); _v0 = input_position; } #type fragment #version 410 uniform sampler2D u_EquirectangularMap; layout(location = 0) in vec3 _v0; layout(location = 0) out vec4 entryPointParam_fragmentMain; void main() { vec3 _10 = normalize(_v0); entryPointParam_fragmentMain = vec4(texture(u_EquirectangularMap, (vec2(atan(_10.z, _10.x), asin(_10.y)) * vec2(0.159099996089935302734375, 0.3183000087738037109375)) + vec2(0.5)).xyz, 1.0); }