mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-02-06 18:40:36 +00:00
vk/gl: add amber-blue anaglyph (ColorCode 3D)
This commit is contained in:
parent
7d9460a560
commit
6f2e843193
@ -21,6 +21,7 @@ layout(location=0) out vec4 ocol;
|
|||||||
#define STEREO_MODE_ANAGLYPH_RED_CYAN 6
|
#define STEREO_MODE_ANAGLYPH_RED_CYAN 6
|
||||||
#define STEREO_MODE_ANAGLYPH_MAGENTA_CYAN 7
|
#define STEREO_MODE_ANAGLYPH_MAGENTA_CYAN 7
|
||||||
#define STEREO_MODE_ANAGLYPH_TRIOSCOPIC 8
|
#define STEREO_MODE_ANAGLYPH_TRIOSCOPIC 8
|
||||||
|
#define STEREO_MODE_ANAGLYPH_AMBER_BLUE 9
|
||||||
|
|
||||||
vec2 left_single_matrix = vec2(1.f, 0.4898f);
|
vec2 left_single_matrix = vec2(1.f, 0.4898f);
|
||||||
vec2 right_single_matrix = vec2(0.f, 0.510204f);
|
vec2 right_single_matrix = vec2(0.f, 0.510204f);
|
||||||
@ -75,6 +76,10 @@ vec4 read_source()
|
|||||||
left = texture(fs0, tc0 * left_single_matrix);
|
left = texture(fs0, tc0 * left_single_matrix);
|
||||||
right = texture(fs0, (tc0 * left_single_matrix) + right_single_matrix);
|
right = texture(fs0, (tc0 * left_single_matrix) + right_single_matrix);
|
||||||
return vec4(right.r, left.g, right.b, 1.f);
|
return vec4(right.r, left.g, right.b, 1.f);
|
||||||
|
case STEREO_MODE_ANAGLYPH_AMBER_BLUE:
|
||||||
|
left = texture(fs0, tc0 * left_single_matrix);
|
||||||
|
right = texture(fs0, (tc0 * left_single_matrix) + right_single_matrix);
|
||||||
|
return vec4(left.r, left.g, (right.r + right.g + right.b) / 3.f, 1.f);
|
||||||
case STEREO_MODE_SIDE_BY_SIDE:
|
case STEREO_MODE_SIDE_BY_SIDE:
|
||||||
return (tc0.x < 0.5)
|
return (tc0.x < 0.5)
|
||||||
? texture(fs0, tc0 * sbs_single_matrix)
|
? texture(fs0, tc0 * sbs_single_matrix)
|
||||||
@ -115,6 +120,10 @@ vec4 read_source()
|
|||||||
left = texture(fs0, tc0);
|
left = texture(fs0, tc0);
|
||||||
right = texture(fs1, tc0);
|
right = texture(fs1, tc0);
|
||||||
return vec4(right.r, left.g, right.b, 1.f);
|
return vec4(right.r, left.g, right.b, 1.f);
|
||||||
|
case STEREO_MODE_ANAGLYPH_AMBER_BLUE:
|
||||||
|
left = texture(fs0, tc0);
|
||||||
|
right = texture(fs1, tc0);
|
||||||
|
return vec4(left.r, left.g, (right.r + right.g + right.b) / 3.f, 1.f);
|
||||||
case STEREO_MODE_SIDE_BY_SIDE:
|
case STEREO_MODE_SIDE_BY_SIDE:
|
||||||
return (tc0.x < 0.5)
|
return (tc0.x < 0.5)
|
||||||
? texture(fs0, (tc0 * sbs_multi_matrix))
|
? texture(fs0, (tc0 * sbs_multi_matrix))
|
||||||
|
@ -648,6 +648,7 @@ void fmt_class_string<stereo_render_mode_options>::format(std::string& out, u64
|
|||||||
case stereo_render_mode_options::anaglyph_red_cyan: return "Anaglyph Red-Cyan";
|
case stereo_render_mode_options::anaglyph_red_cyan: return "Anaglyph Red-Cyan";
|
||||||
case stereo_render_mode_options::anaglyph_magenta_cyan: return "Anaglyph Magenta-Cyan";
|
case stereo_render_mode_options::anaglyph_magenta_cyan: return "Anaglyph Magenta-Cyan";
|
||||||
case stereo_render_mode_options::anaglyph_trioscopic: return "Anaglyph Trioscopic";
|
case stereo_render_mode_options::anaglyph_trioscopic: return "Anaglyph Trioscopic";
|
||||||
|
case stereo_render_mode_options::anaglyph_amber_blue: return "Anaglyph Amber-Blue";
|
||||||
}
|
}
|
||||||
|
|
||||||
return unknown;
|
return unknown;
|
||||||
|
@ -324,6 +324,7 @@ enum class stereo_render_mode_options
|
|||||||
anaglyph_red_cyan,
|
anaglyph_red_cyan,
|
||||||
anaglyph_magenta_cyan,
|
anaglyph_magenta_cyan,
|
||||||
anaglyph_trioscopic,
|
anaglyph_trioscopic,
|
||||||
|
anaglyph_amber_blue,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class xfloat_accuracy
|
enum class xfloat_accuracy
|
||||||
|
@ -1294,6 +1294,7 @@ QString emu_settings::GetLocalizedSetting(const QString& original, emu_settings_
|
|||||||
case stereo_render_mode_options::anaglyph_red_cyan: return tr("Anaglyph Red-Cyan", "3D Display Mode");
|
case stereo_render_mode_options::anaglyph_red_cyan: return tr("Anaglyph Red-Cyan", "3D Display Mode");
|
||||||
case stereo_render_mode_options::anaglyph_magenta_cyan: return tr("Anaglyph Magenta-Cyan", "3D Display Mode");
|
case stereo_render_mode_options::anaglyph_magenta_cyan: return tr("Anaglyph Magenta-Cyan", "3D Display Mode");
|
||||||
case stereo_render_mode_options::anaglyph_trioscopic: return tr("Anaglyph Green-Magenta (Trioscopic)", "3D Display Mode");
|
case stereo_render_mode_options::anaglyph_trioscopic: return tr("Anaglyph Green-Magenta (Trioscopic)", "3D Display Mode");
|
||||||
|
case stereo_render_mode_options::anaglyph_amber_blue: return tr("Anaglyph Amber-Blue (ColorCode 3D)", "3D Display Mode");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case emu_settings_type::MidiDevices:
|
case emu_settings_type::MidiDevices:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user