- Mar 30, 2020
-
-
James Rowe authored
-
- Mar 26, 2020
-
-
James Rowe authored
-
- Mar 25, 2020
-
-
James Rowe authored
Changes the GraphicsContext to be managed by the GPU core. This eliminates the need for the frontends to fool around with tricky MakeCurrent/DoneCurrent calls that are dependent on the settings (such as async gpu option). This also refactors out the need to use QWidget::fromWindowContainer as that caused issues with focus and input handling. Now we use a regular QWidget and just access the native windowHandle() directly. Another change is removing the debug tool setting in FrameMailbox. Instead of trying to block the frontend until a new frame is ready, the core will now take over presentation and draw directly to the window if the renderer detects that its hooked by NSight or RenderDoc Lastly, since it was in the way, I removed ScopeAcquireWindowContext and replaced it with a simple subclass in GraphicsContext that achieves the same result
-
- Feb 26, 2020
- Jan 29, 2020
-
-
ReinUsesLisp authored
-
ReinUsesLisp authored
Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing bits on Vulkan initialization.
-
- Jan 06, 2020
-
-
ReinUsesLisp authored
MakeCurrent is a costly (according to Nsight's profiler it takes a tenth of a millisecond to complete), and we don't have a reason to call it because: - Qt no longer signals a warning if it's not called - yuzu no longer supports macOS
-
- Jun 03, 2019
-
-
Lioncash authored
We can make this message more meaningful by indicating the location the screenshot has been saved to. We can also log out whenever a screenshot could not be saved (e.g. due to filesystem permissions or some other reason).
-
Lioncash authored
Treating it as a u16 can result in a sign-conversion warning when performing arithmetic with it, as u16 promotes to an int when aritmetic is performed on it, not unsigned int. This also makes the interface more uniform, as the layout interface now operates on u32 across the board.
-
Lioncash authored
This class contains non-trivial members, so we should default the destructor's definition within the cpp file.
-
Lioncash authored
Same thing (for platforms we support), less reading.
-
Lioncash authored
This function is defined as taking an int, not a bool.
-
Lioncash authored
We can just pass a pointer to GMainWindow directly and make it a requirement of the interface. This makes the interface a little safer, since this would technically otherwise allow any random QWidget to be the parent of a render window, downcasting it to GMainWindow (which is undefined behavior).
-
Lioncash authored
We can just invoke these functions by qualifying the object name before the function.
-
- May 30, 2019
-
-
ReinUsesLisp authored
-
- May 26, 2019
-
-
ReinUsesLisp authored
There's no performance improvement in passing an unsigned pair by reference.
-
- May 21, 2019
-
-
ReinUsesLisp authored
-
- May 20, 2019
-
-
Lioncash authored
Allows the bootmanager code to compile with implicit string conversions disabled.
-
- May 17, 2019
-
-
ReinUsesLisp authored
Nvidia's proprietary driver creates a real OpenGL compatibility profile without this option, meanwhile Intel (and probably AMD, I haven't tested it) require that QSurfaceFormat::FormatOption::DeprecatedFunctions is explicitly enabled.
-
- Apr 20, 2019
-
-
Fernando Sahmkow authored
This option allows picking the compatibility profile since a lot of bugs are fixed in it. We devs will use this option to easierly debug current problems in our Core implementation.:wq
-
- Apr 17, 2019
-
-
Lioncash authored
The default constructor will always run, even when not specified, so this is redundant. However, the context member can indeed be initialized in the constructor initializer list.
-
Lioncash authored
Resolves -Wreorder warnings. These will automatically be initialized to nullptr anyways, so these were redundant.
-
- Apr 01, 2019
-
-
Lioncash authored
Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
-
- Mar 25, 2019
-
-
ReinUsesLisp authored
-
ReinUsesLisp authored
-
ReinUsesLisp authored
While we are at it, remove nullptr checks for deletion, since the C++ standard defines that delete does it by its own
-
- Mar 15, 2019
-
-
liushuyu authored
-
- Mar 07, 2019
-
-
bunnei authored
-
- Mar 02, 2019
-
-
James Rowe authored
Changes the interface as well to remove any unique methods that frontends needed to call such as StartJoystickEventHandler by conditionally starting the polling thread only if the frontend hasn't started it already. Additionally, moves all global state into a single SDLState class in order to guarantee that the destructors are called in the proper order
-
- Feb 07, 2019
-
-
ReinUsesLisp authored
-
- Jan 21, 2019
-
-
James Rowe authored
With the loading screen merged, we don't want to actually show at this point, but it still needs to be shown to actually create the context. Turns out you can just show and hide it immediately and it'll work.
-
James Rowe authored
-
- Jan 20, 2019
-
-
James Rowe authored
With shader caches on the horizon, one requirement is to provide visible feedback for the progress. The shader cache reportedly takes several minutes to load for large caches that were invalidated, and as such we should provide a loading screen with progress. Adds a loading screen widget that will be shown until the first frame of the game is swapped. This was chosen in case shader caches are not being used, several games still take more than a few seconds to launch and could benefit from a loading screen.
-
- Dec 18, 2018
-
-
zhupengfei authored
Allows capturing screenshot at the current internal resolution (native for software renderer), but a setting is available to capture it in other resolutions. The screenshot is saved to a single PNG in the current layout.
-
- Nov 21, 2018
-
-
FernandoS27 authored
-
- Oct 24, 2018
-
-
Lioncash authored
This gets rid of an unnecessary type conversion. We can just use the regular QStringLiteral to already format the string as the type setWindowTitle accepts instead of converting from a std::string instance.
-
- Oct 09, 2018
-
-
NeatNit authored
change TouchToPixelPos to return std::pair<int, int> static_cast (SDL) various minor style and code improvements style - PascalCase for function names made touch events private const pointer arg in touch events make TouchToPixelPos a const member function did I do this right? braces on barely-multiline if remove question comment (confirmed in Discord) fixed consts remove unused parameter from TouchEndEvent DRY - High-DPI scaled touch put in separate function also fixes a bug where if you start touching (with either mouse or touchscreen) and drag the mouse to the LEFT of the emulator window, the touch point jumps to the RIGHT side of the touchscreen; draggin to above the window would make it jump to the bottom. implicit conversion from QPoint to QPointF, apparently I have no idea what const even means but I'll put it here anyway remove unused or used-once variables make touch scaling functions const, and put their implementations together removed unused FingerID parameters QTouchEvent forward declaration; add comment to TouchBegin that was lost in an edit better DRY in SDL To do -> TODO(NeatNit) remove unused include
-