Back to Blog
Monster hunter tri dolphin hd6/20/2023 r6996 (2.0-1612) removed the plugin interface, and r7041(2.0-1657) renamed video plugins to video backends. In the 2.0 era, the video plugins had become so tightly integrated into Dolphin that they could barely be called plugins anymore, and a decision was made to accept it. Naturally, Dolphin's ties to the plugin model quickly evaporated as developers cheated it by sharing common code between video plugins in a folder known as "VideoCommon." Once Dolphin was rereleased as an open source project, more and more code was moved from the plugins into VideoCommon, further distancing Dolphin from the plugin model. The plugin system gave Dolphin nothing but redundant, harder to maintain code. The GameCube would never have a plugin scene. Only a handful of GameCube emulators ever appeared, with only Dolphin reaching maturity. With tremendously high complexity for even rudimentary emulation, the 6th generation required tight collaboration among dozens of people in a scope that the awkward plugin system was just not good enough to handle. The 6th generation of consoles quickly broke that idea. Given its success in Nintendo 64 and Playstation emulators, it was almost a given that they would be the answer for GameCube emulation. There are literally hundreds of plugins from that era with their own strengths, weakness, and goals.īy the time Dolphin turned up in 2003, closed source with plugins was the de facto standard. With plugin developers only having to worry about their part of the puzzle, the emulation scene thrived. Each plugin could contain full emulation logic for a device or piece of hardware and would communicate back and forth with the emulator core as needed. The plugin system allowed a single person (or tight core of trusted people) to write a closed source core of an emulator, then allow outsiders to access the emulator core through an API. And so, the plugin system quickly took hold among the emulators of 3D consoles. But without the protection open source licensing provides, sharing code was dangerous since it exposed them to theft. Due to their increased complexity that required a much wider range of knowledge to emulate, collaboration suddenly became essential. The 5th generation of consoles would change the game for emulation. Outside of a few exceptions, everyone happily worked on their own proprietary closed source projects. One person could create a basic (inaccurate) 3rd or 4th gen console emulator fairly quickly, and with the complexity of accurate emulation out of their reach due to hardware limitations of the time, they had little reason to work together. Even though open source licenses had existed for some time, good infrastructure wasn't available yet, open source hadn't been legally tested, and it just wasn't necessary. In the early days of emulation, emulators were mostly hobby projects developed by single developers. This massive rewrite, dubbed The Great VideoCommon Unification Project, unites most of the graphics emulation logic in shared part of Dolphin, greatly reducing the size and complexity of each video backend! Along with the rewrite, stenzek has brought with it a slew of small improvements, optimizations, and a big surprise. After dealing with these limitations and issues as much as anyone, stenzek finally took the leap and renovated Dolphin's video core. While these plugins were eventually brought into Dolphin as video backends, their initial existence as plugins meant they were designed and laid out in certain ways that were extremely inefficient for something integrated with the emulator. Those that have followed Dolphin from the very beginning may remember that its video backends were once video plugins. 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. 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. It's not common for a rewrite to be something that warrants an article, but, this is one of the exceptions.
0 Comments
Read More
Leave a Reply. |