// Copyright 2022 Citra Emulator Project // Licensed under GPLv2 or any later version // Refer to the license.txt file included. #version 450 core #extension GL_ARB_separate_shader_objects : enable layout (location = 0) in vec2 frag_tex_coord; layout (location = 0) out vec4 color; layout (push_constant, std140) uniform DrawInfo { mat4 modelview_matrix; vec4 i_resolution; vec4 o_resolution; int screen_id_l; int screen_id_r; int layer; int reverse_interlaced; }; layout (set = 0, binding = 0) uniform sampler2D screen_textures[3]; void main() { float screen_row = o_resolution.x * frag_tex_coord.x; if (int(screen_row) % 2 == reverse_interlaced) color = texture(screen_textures[screen_id_l], frag_tex_coord); else color = texture(screen_textures[screen_id_r], frag_tex_coord); }