Earlier this week on January 21, 2024, CitraVR was uploaded to SideQuest – an alternative app store for Meta Quest headsets. This 3DS emulator for the Oculus Quest 2, Meta Quest Pro, and Meta Quest 3 may only be in beta but it’s already impressed everyone who’s given it a whirl (us included), and it might bring about a VR software renaissance.

CitraVR is a virtual reality version of Citra – a 3DS emulator that allows you to play 3DS ROMs on your PC. The most significant upgrade for this VR version is that you can get the same stereoscopic 3D effect you would have experienced on the original Nintendo hardware rather than being stuck with the basic 2D versions – which is what you have to contend with on the non-VR version of Citra.

As is the case for all beta software, the app isn’t perfect. Some games run very well. Others much less so. But the two large floating screens, complete with 3D effect, and the fact you can use just your Meta Quest headset’s controllers – you don’t need a third-party handset like you do for the Xbox Game Pass VR app – make it an experience we’d recommend people try; especially because it’s free.

Super Mario Bros 2 3DS running on CitraVR. Mario is stomping a Koopa

This what a 3DS game looks like on CitraVR with passthrough turned off (Image credit: Nintendo / Future)

But CitraVR is a bigger deal than people may realize at first. That’s because it runs on Quest hardware but is “100% independent of the Meta SDK” (software development kit) per the GitHub page (and highlighted on Reddit).

If you want to develop an app for a platform you usually need to use its SDK. We’ve talked about this recently in an article on how Apple may try to minimize the impact of new EU-enforced changes to its App Store by altering its developer kit license agreement. If people want to make apps for iPhone they’ll need to agree to the terms of this license whether their app is made available through the App Store or not.

CitraVR doesn’t need to agree to any of Meta’s SDK license terms because it isn’t made using the SDK. What’s more, the source code for CitraVR is publicly available so developers who don’t want to license the official SDK can follow CitraVR’s independent approach.

Speaking to UploadVR, Amanda Watson – the creator of the Citra VR port who also created Air Link while working for Meta (which allows you to wirelessly connect your Quest to a PC) – explained that her goal is for CitraVR to be “an educational resource for VR developers.” A “statement” to players and developers alike of what’s possible for independent VR app development.

Hamish Hector wearing the Meta Quest Pro with the controllers raised up in their hands

Lookout for inventive new VR software if you sideload (Image credit: Future)

This newfound freedom could lead to some impressively creative VR experiences from all sorts of developers who haven’t wanted or haven’t been able to agree to the terms of Meta’s SDK license. So in the coming months and years, VR could enter a new era – with us users benefiting from a suite of exciting experiences if we’re willing to sideload.

That said there is one downside to this freedom.

Without any oversight from Meta, it may now be easier for bad actors to create malware for Quest hardware. If you never plan to sideload apps then you should be safe, but if you’re a frequent Quest sideloader you might want to start taking a little extra care with what you download.

How to install CitraVR

If you want to give CitraVR a try on your own Quest headset the process is fairly simple, there are just quite a few steps.

To begin go to the Meta Quest app on your phone, make sure your headset is connected, and go to your Headset Settings. From here tap on Developer Mode. If you don’t have a developer account you’ll be asked to make one – it’s really easy just tap on the button, log in and Meta will take you through the steps.

Once you have a developer account, return to your Headset Settings and you should see a toggle to switch on Debug Mode.

The Meta Ques menu with arrows showing you how to turn on developer mode on your Quest headset

(Image credit: Future)

With that done, head over to SideQuest. Here you’ll need to make an account and download the Easy Installer so you can access the SideQuest Store on your Quest headset.

Once the download has completed you’ll need to open the SideQuest app on your PC and connect your Quest headset using a USB-C cable. Quickly put your headset on and click ‘Allow’ on the popups about USB debugging and file transfer between your PC and Quest headset.

If you’ve done everything correctly SideQuest should turn green and let you install the app on your VR headset. If you see “No headset detected” try unplugging your headset and then plugging it back in, and make sure you hit “Allow” on the popups. If you see “Developer Mode is Disabled,” go back to the Quest mobile app and make sure you did set up a developer account and turned on Debug Mode for the correct headset.

The SideQuet installer showing that no headset has been connected

Done everything right? The red light should go green and you can install SideQuest (Image credit: SideQuest)

Once the SideQuest install is complete on your headset unplug it from your PC and put your Quest on. Go to your Library and at the top where it says “All” click on it to see a drop-down menu, at the bottom of this menu you’ll find “Unknown Sources”.

Here you’ll see the SideQuest app, boot it up, allow the app to install software to your Quest device, and finally you’ll be ready to install CitraVR. Using the SideQuest search bar look for CitraVR and Sideload the app to your Meta Quest headset.

Return to the Unknown Sources section of your Quest Library and now open Citra. On your first boot up you’ll be asked to select or create files to store Citra’s data and your ROMs. We created new files to keep things organized.

That’s CitraVR all set up, though to use the app to its fullest you’ll need to provide your own 3DS ROMs.