Citra as you all well know is a 3DS emulator for your computer. They released a blog post about their progress since their forum reboot in January. They mention how grateful they are for the people who have donated, volunteered, or just plain cheered them on as well over the last 3 years of development. But the juiciest part of all is the newer additions that Citra has been receiving or will be receiving soon. Read more below!
Perhaps the most requested feature we’ve had on both the forums and Discord server has been gamepad support, and wwylelehas delivered! Using SDL as the input backend, Citra now supports a huge variety of gamepads, including Xbox One, PS3, and PS4 controllers. In order to do this, they have completely rewritten the input handling architecture, replacing it with a much cleaner interface that will allow adding different input methods much more easily in the future.
For now, you can only configure your gamepad by manually editing a config file, but JayFoxRox has written a little tool to help edit the config file while we integrate it better into Citra’s UI. You can find the tool in the Citra forums here.
Citra’s video code has grown organically from the start; not much was known about the PICA200 (i.e., the 3DS GPU), so a lot of the backend for it was based on pure guesswork and the team’s past experience with working with emulation. It made a lot of assumptions on how it worked internally, which worked okay some of the time, but it was amazing at the time to even have a 3DS game load, let alone render a scene. So it was left alone.
The entire architecture of the 3DS was largely unknown, so development was done in small separate bits at a time, and then trying to piece it all together into one cohesive piece of software. But, over time, as new pieces of information were found, the assumptions that were made previously broke. Some assumptions were very large, obvious, and easy to overcome, but a more subtle error that these assumptions created were not even in the design of the GPU, but rather the architecture and organization of the code itself.
There aren’t many changes visible on the surface here, but internally this rewrite of the video code that yuriks has been working on for the past few months has laid the foundation that Citra needs to be able to grow and mature in a clean and maintainable way. With these, things like geometry shaders (which many games heavily depend upon), more support for hardware renderers, and more accurate software renderers, could all be added with little to no effort besides the actual implementation.’
I know, I know, you’re stoked! So get the download going right now!
Download page for Citra (MacOSx, Linux, PC).
Stay tuned here on Hackinformer.com for all things Citra and follow us on Twitter @Hackinformer !