app: force-show the renderer indicator while the native renderer is off
This commit is contained in:
parent
404cec3378
commit
177b7c1eb1
3 changed files with 14 additions and 4 deletions
|
|
@ -16,7 +16,9 @@
|
||||||
REXCVAR_DEFINE_BOOL(skate3_native_render_mode_indicator, false, "Skate 3",
|
REXCVAR_DEFINE_BOOL(skate3_native_render_mode_indicator, false, "Skate 3",
|
||||||
"Small top-right corner readout of which renderer produced the "
|
"Small top-right corner readout of which renderer produced the "
|
||||||
"last presented frame: NATIVE (native scene renderer) or "
|
"last presented frame: NATIVE (native scene renderer) or "
|
||||||
"EMULATED (Xenos GPU emulation: menus/loading yields, F5 off).")
|
"EMULATED (Xenos GPU emulation; menus/loading yields, F5 off). "
|
||||||
|
"Shows automatically while the native scene renderer is "
|
||||||
|
"switched off, regardless of this setting.")
|
||||||
.lifecycle(rex::cvar::Lifecycle::kHotReload);
|
.lifecycle(rex::cvar::Lifecycle::kHotReload);
|
||||||
|
|
||||||
// Hook-layer master (boot-time), shown read-only.
|
// Hook-layer master (boot-time), shown read-only.
|
||||||
|
|
@ -945,7 +947,14 @@ void NativeDebugDialog::OnDraw(ImGuiIO& io) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void RenderModeIndicator::OnDraw(ImGuiIO& io) {
|
void RenderModeIndicator::OnDraw(ImGuiIO& io) {
|
||||||
if (!REXCVAR_GET(skate3_native_render_mode_indicator)) {
|
// Force-show while the native scene renderer is switched off (F5, the
|
||||||
|
// settings Renderer row, or the boot-time hook-layer master): running
|
||||||
|
// emulated is a degraded state the player should be able to see even with
|
||||||
|
// the indicator cvar off. Natural per-frame yields while the scene
|
||||||
|
// renderer is enabled (menus/loading) do not trigger this.
|
||||||
|
const bool scene_off = !REXCVAR_GET(skate3_native_render) ||
|
||||||
|
!REXCVAR_GET(skate3_native_render_scene);
|
||||||
|
if (!REXCVAR_GET(skate3_native_render_mode_indicator) && !scene_off) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Pre-runtime (installer wizards) no guest frame exists yet - there is no
|
// Pre-runtime (installer wizards) no guest frame exists yet - there is no
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,8 @@ class NativeDebugDialog final : public rex::ui::ImGuiDialog {
|
||||||
// presented frame: NATIVE (native scene renderer) or EMULATED (Xenos
|
// presented frame: NATIVE (native scene renderer) or EMULATED (Xenos
|
||||||
// GPU emulation; menus/loading yields, F5 off). Input-transparent, no
|
// GPU emulation; menus/loading yields, F5 off). Input-transparent, no
|
||||||
// continuous repaint (updates ride the guest frame paints); off by
|
// continuous repaint (updates ride the guest frame paints); off by
|
||||||
// default, shown via skate3_native_render_mode_indicator (hot).
|
// default, shown via skate3_native_render_mode_indicator (hot), and
|
||||||
|
// force-shown while the native scene renderer is switched off.
|
||||||
class RenderModeIndicator final : public rex::ui::ImGuiDialog {
|
class RenderModeIndicator final : public rex::ui::ImGuiDialog {
|
||||||
public:
|
public:
|
||||||
explicit RenderModeIndicator(rex::ui::ImGuiDrawer* drawer) : ImGuiDialog(drawer) {}
|
explicit RenderModeIndicator(rex::ui::ImGuiDrawer* drawer) : ImGuiDialog(drawer) {}
|
||||||
|
|
|
||||||
2
third_party/rexglue-sdk
vendored
2
third_party/rexglue-sdk
vendored
|
|
@ -1 +1 @@
|
||||||
Subproject commit 2365c9784eb7a529ec7f44f74f51836519c6ab4b
|
Subproject commit 09e6b666850fd27d3d1ff78d5761567a5ba6049e
|
||||||
Loading…
Add table
Reference in a new issue