mirror of
https://github.com/PCSX2/pcsx2.git
synced 2025-04-02 10:52:54 -04:00
All games use mailbox/triple buffering. Except when you enable sync to host refresh, in which case FIFO/double buffering is used. This means vsync enabled will ever tear, but at the same time, never drop to 30fps on a missed frame due to frame rate differences. To have the "best of both worlds", you should enable vsync and sync to host refresh. Previously, this resulted in additional input lag, since the host vsync would drive the EE frame timing. Now, this behaviour is disabled by default, unless you enable "Use Host VSync Timing".
32 lines
754 B
C++
32 lines
754 B
C++
// SPDX-FileCopyrightText: 2002-2023 PCSX2 Dev Team
|
|
// SPDX-License-Identifier: LGPL-3.0+
|
|
|
|
#pragma once
|
|
|
|
#include <QtWidgets/QWidget>
|
|
|
|
#include "ui_EmulationSettingsWidget.h"
|
|
|
|
class SettingsWindow;
|
|
|
|
class EmulationSettingsWidget : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
EmulationSettingsWidget(SettingsWindow* dialog, QWidget* parent);
|
|
~EmulationSettingsWidget();
|
|
|
|
private Q_SLOTS:
|
|
void onOptimalFramePacingChanged();
|
|
|
|
private:
|
|
void initializeSpeedCombo(QComboBox* cb, const char* section, const char* key, float default_value);
|
|
void handleSpeedComboChange(QComboBox* cb, const char* section, const char* key);
|
|
void updateOptimalFramePacing();
|
|
void updateUseVSyncForTimingEnabled();
|
|
|
|
SettingsWindow* m_dialog;
|
|
|
|
Ui::EmulationSettingsWidget m_ui;
|
|
};
|