Arxiu de la etiqueta: performance

Dolphin Progress Report: August 2021

Many gaming communities over the years have reached out to thank emulator developers for their efforts. Emulators are an important part of many classic game communities and give players access to features like netplay multiplayer, modding, and savestates, while also opening up the doors to enhancements not possible on console. Sometimes it's simply more convenient to use an emulator that runs on your desktop, tablet, or phone rather than to dig out and hook up the original console every time you want to play one of your favorite games. However, it's important to state that our relationship with gaming communities is mutual, and without the help of players and fans, there's no way we could handle maintaining a library of thousands of games.

In this Progress Report, the gaming communities were the direct catalyst to many of the changes. They went on difficult debugging adventures, caught small issues that would be invisible to anyone who wasn't extremely familiar with the game, and even came up with patches to make games friendlier to emulator enhancements. All of these contributions, even if it's not code, are appreciated and help make Dolphin what it is today.

So, without further delay, let's get started with the August Progress Report! Enjoy.

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Dolphin MEGA Progress Report: April and May 2021

After finishing up the macOS M1 article the blog staff took a little break. Then they saw the date.

Oh shi-

Upon looking at the actual changelog, however, something became readily apparent: this wasn't going to be just a Progress Report; this was going to be a MEGA Progress Report. The long rumored time era of developers merging everything at once had finally come to pass. We have graphical fixes for Super Mario Galaxy and Luigi's Mansion, crash fixes for Star Wars: Rogue Squadron III, Xenoblade Chronicles, Ultimate Spider-Man, The Legend of Zelda: Skyward Sword (AArch64), and new features that make playing games more pleasant! And about AArch64, there are a litany of optimizations and fixes that will change things across most of the library.

And we could go on: Bounding Box, Interpreter, GBA to GCN connectivity, GPU Syncing, Mouse Locking, and still more! There's even a lengthy dev diary at the end for good measure explaining how the great mystery of Pokemon Box's was finally solved. The only way to do it justice is to do it right. So buckle up and get ready for the April and May MEGA Progress Report.

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Temptation of the Apple: Dolphin on macOS M1

From the announcement made on November 10th, 2020, users have had high hopes for the new Apple M1 devices. With its powerful Apple Silicon processor smashing benchmarks all over the place, users and developers were both asking if a native Dolphin build would be possible. Now we have the answer.

Apple's M1 hardware is incredibly powerful and excels at running Dolphin. This announcement has been in the works for some time, eagle eyed users may have noticed that earlier this month macOS builds were now being designated as "Intel". That's because …

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Dolphin Progress Report: December 2019 and January 2020

The Progress Report has come and with it some major changes and decisions. However, before we get into new things, we need to go over an ongoing change as we've seen some users struggling. In the last progress report, we updated our project solutions to Microsoft Visual Studio C++ 2019. We thought there would be no issues at the time, after all, Microsoft says that VS2019 runtimes are forward and back compatible with VS2015 and VS2017, however, it turns out that is not always the case, and we definitely encountered one of the incompatible scenarios. Over the past two months, we've seen many reports of users encountering "VCRUNTIME140_1.dll was not found" errors and not knowing what to do. So just as a reminder, if you encounter MSVC or VCRUNTIME errors, install the latest x64 Microsoft Visual Studio runtimes from Microsoft's website (direct link). Even on updated versions of Windows, you may be missing the latest runtime as these runtimes are not distributed through Windows update for whatever reason. We hope this clears up any problems users were having regarding these issues.

With that, we've got a lot to get through from the past two months. From unintentionally stumbling into an Achilles's Heel of the Zen CPU architecture and tanking performance to supporting a brand new environment with Windows on ARM support, we're going to run the gamut of big features, decisions, and fixes. So without further ado, let's get to it.

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Dolphin Progress Report: February and March and April 2019

The last few months have been absolutely hectic, with several long-awaited features hitting the emulator all at once. In order to keep users up to date with these major changes, the blog staff has been busy with feature article after feature article. It has been exciting, but also pretty exhausting! With us burning the candle at both ends to keep up with development, the Progress Reports have fallen a bit behind.

So here were are, bleary eyed and with three months worth of changes to go through. So without further delay, let's go through February, March, and April's Notable Changes! Please enjoy while we go collapse in the corner.

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

The New Era of Video Backends: The Unification of VideoCommon

It's not common for a rewrite to be something that warrants an article, but, this is one of the exceptions. Over the past few years, parts of Dolphin's video core have seen renovations to make way for new features, but a fundamental problem remained. Dolphin's video backends suffered from both having too many unique features while also duplicating tons of code from the other backends, making it difficult to add new features and maintain old ones.

Those that have followed Dolphin from the very beginning may remember that its video backends …

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

The Current State of Dolphin on Android

Dolphin on Android has had a bit of a checkered history since its inception. Users loved the idea of being able to take their favorite GameCube and Wii games on the go, but expectations and reality have never quite aligned. When Dolphin was first uploaded to the Play Store, developers tried to make it absolutely clear games wouldn't be playable, even going as far as calling it "Dolphin Emulator Alpha". Unfortunately, despite many warnings, many people got their hopes up the moment they saw Dolphin was on the appstore and were ready to play their favorite games, even if their device wasn't. While not everyone had false pretenses as to what should be possible, a lot of users blamed Dolphin for being poorly optimized rather than understanding that it wasn't even meant to run full speed yet.

The endless stream of poor ratings and angry comments eventually reached a breaking point and Dolphin was removed from the Play store mid 2016. That didn't mean development on Dolphin on Android had ceased, though. Instead, builds were provided on our download page, safely tucked away from the majority of users who may not understand the current state of the app.

Suddenly, earlier this month, the Official Dolphin Android app returned to the Google Play Store* complete with all the latest and greatest improvements featured in the Progress Reports!

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Dolphin Progress Report: July 2018

On July 13th, 2008, Dolphin went open source, now just over ten years ago. While it could be easy to drift off into how much things have changed... there's one particular feature that has never quite lived up to the hype despite debuting that very same year - netplay.

As surprising as it may sound Dolphin Netplay has been around since the emulator went open source. For roughly a decade, users have tried their hand at taming the beast of synchronizing multiple instances of a GameCube and Wii despite their relative complexities. Netplay allows users to run the same instance of game on multiple computers by having two or more emulators in the exact same state, only transferring inputs between one another. By staying in lockstep like this, theoretically the emulators' states will never diverge assuming perfect determinism. This would allow people across the world to play a game together, even if it only featured local multiplayer on the console.

The problem has always been attaining that determinism. Back in the early days of netplay, it didn't especially matter what settings were used; Dolphin wasn't deterministic enough to stay in lockstep for very long. Then in the early days of the 3.0 era, it was finally possible to stay synced - if you were willing to sacrifice audio and performance. Early netplayers would hack up Dolphin to reduce requirements with 30 FPS hacks to Super Smash Bros. Melee, hacks to LLE audio to make it slow down less during attacks, and much more.

Despite the stutters and desyncs, some serious Melee players saw the potential and kept with the project. It wasn't until New-AX-HLE Audio (part 2) hit Dolphin that audio was both performant and deterministic enough to use in netplay. By the time Dolphin 4.0 rolled around, netplay had become a staple for Melee users and could be used by advanced users willing to suffer through some annoying quirks.

In the last few years, a focus has gone toward adding highly requested features to make netplay easier to use. Dolphin's STUN service allows some users who cannot port-forward play on netplay without issues, saves can be disabled to make synchronizing party games easier. But the one constant is that despite all these advances, simply getting netplay to work was a chore and crashes were common even if you did everything right.

Getting netplay into a more user-friendly state has been quite the process. In July, we saw some of the most drastic changes to netplay that we've seen in the past couple of years! Emulated Wii Remotes also saw huge usability improvements and some non-NVIDIA Android devices will finally be able to use Dolphin's Vulkan backend. If that wasn't enough, spycrab0 delivered some very big improvements to the DolphinQt GUI to give a new way to display your favorite games in the gamelist. Let's not delay any longer, please enjoy this month's Dolphin Progress Report.

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.

Myth Debugging: Is the Wii More Demanding to Emulate than the GameCube?

On the Dolphin Forums, one of the more common questions that come up is "How come I can emulate this Wii game just fine but this GameCube game is slow?" While those more knowledgeable about the intricacies of emulation may roll their eyes, it does warrant some explanation. Usually when stepping down from a newer console emulator to an older console emulator, the minimum requirements for emulation drop significantly. While there are some exceptions when dealing with exceptionally obtuse hardware, that concern doesn't hold up here: The GameCube and Wii, …

Continuar llegint

To the Screen with Hybrid XFB

Dolphin has been around for over 14 long years at this point. Goals, expectations and standards have shifted quite a bit since the beginning. At one point, just booting a game at all was good enough, regardless of what you would see or hear! Compatibility has gone from a few select titles to almost every game released across two consoles. Considering all of that, it should be no surprise that some solutions that worked in the past slowly came to be a burden going forward. In this case, we're talking about …

Continuar llegint

Pots continuar la discussió al fil del fòrum d'aquest article.