AR code to disable clipping in Metroid Prime developed, functioning VR mode w/Dolphin

Krejlooc

Banned
So it's relatively easy to get gamecube and Wii games going in VR using dolphin - there exists both a native build of dolphin with VR support (both DK1 and DK2), and you can use an injection driver like Tridef 3D to enable VR headtracking in normal builds of dolphin (DK1) - but the main problem with doing so is games behaving incorrectly or inappropriately for VR because they were never meant to accommodate such a VR perspective. A good example is Mario Galaxy, which works fine in most segments, but in segments meant to have a fixed camera, it bugs out because a lot of special effects were hand tuned to appear correctly only from that specific perspective.

Earlier this year, I played through a few GCN games in VR and posted some videos of the ones which worked well. F-Zero GX ran incredibly with virtually no major visual bugs that impeded gameplay, and the VR mode immensely improved the game:

https://www.youtube.com/watch?v=YXZTTaosYmY

I also tried Legend of Zelda: Wind Waker. Now Wind Waker is normally played in a 3rd person perspective, and you can play 3rd person games in VR just fine (they look like toys running in front of you), but someone developed an AR code that put the game in first person perspective, and even gave correct controls. Using this code, I played through the game in VR:

https://www.youtube.com/watch?v=_vXhvacz7bY&feature=youtu.be

Again, a very cool experience.

That said, the most requested game to try in VR is without a doubt Metroid Prime. It makes sense because, for a lot of people, when they think of gaming VR, they think of that fake Nintendo On trailer posted before the unveiling of the Wii:

https://www.youtube.com/watch?v=zX2smM87r14

Well, unfortunately, Metroid Prime and its sequels are the type of games which bug out from the ability to move the camera in unintended ways. Namely, to get the games running on the GCN/WIi's low amounts of memory, the game uses aggressive clipping to unload geometry just past the HUD, which occupies most of the screen. Since you can look around beyond the HUD in VR, you see the entire world deconstructing constantly that ruins the experience. See this example I recorded:

https://www.youtube.com/watch?v=ctRn9FG0D1c

The annoying part is that, at times, it still comes together and forms an incredible experience. Because, for all the times the world is blowing up around your eyes, sometimes you'll enter small areas without clipping and it just works. In the above video, I actually played with the Wii version of Metroid prime, not the GCN version, which let me use a Wiimote to positionally track my hand independent of where I was looking.

And, like I said, sometimes everything would click at the same time, and the gun would look like it was exactly where your arm was IRL, and the clipping wouldn't be noticable, and you'd be looking at an enemy and it was life sized and right in front of you, and suddenly you were Samus. Unfortunately, said moments were fleeting as the clipping problem was just too much to deal with.

Well, a user on the Oculus Rift forum named Fugazi has developed an AR code for Metroid Prime that disables clipping, letting the entire world reside persistently and beyond the HUD. This fixes the problem and lets you experience the transformative moments I described above consistently throughout Metroid Prime.

AR CODE: 043451D0 38600001 043451D4 4E800020

You can follow the topic on the Oculus Forum about VR work with dolphin here: https://forums.oculus.com/viewtopic.php?f=42&t=11241&start=620

When playing in VR mode in Metroid Prime, it is apparently a good idea to toggle the rarely-discussed option to turn off Samus' helmet from the option's menu. While the physical helmet is cool on a TV, it looks weird in VR. The hud still works floating in space, but you don't get this weird, flat looking helmet texture in front of your face.
Excellent day.
 
That's really specific, but that sounds awesome. I'm assuming you can just turn on a bunch of cheats and fly around and look at stuff, or is this for playing through the actual game?
 
That's really specific, but that sounds awesome. I'm assuming you can just turn on a bunch of cheats and fly around and look at stuff, or is this for playing through the actual game?

This isn't clipping as in fly through walls. This is clipping as in disable the engine from unloading geometry beyond the hud. This makes the game actually playable in VR.

This is just an AR code for now, but it can be built natively into the VR fork of Dolphin. That version lets you play in VR at higher-than-normal resolutions (so like 1080p Metroid Prime) at higher-than-normal refresh rates (i.e. 75 hz) with not only pitch, yaw, and rotation headtracking, but full positional headtracking as well.
 
are you still able to get F-Zero to work well using the recent builds?

No, the VR fork of Dolphin runs F-Zero poorly. I run F-zero in normal dolphin with freelook enabled, then use tridef 3D to map my headtracking to mouselook, then use x-padder to map clicking the right stick on my xbox 360 controller to enable freelook. This lets me play F-Zero GX in VR on the normal build of Dolphin, where it runs much better.
 
No, the VR fork of Dolphin runs F-Zero poorly. I run F-zero in normal dolphin with freelook enabled, then use tridef 3D to map my headtracking to mouselook, then use x-padder to map clicking the right stick on my xbox 360 controller to enable freelook. This lets me play F-Zero GX in VR on the normal build of Dolphin, where it runs much better.

Thank you!
 
Is this common in 60fps games to maintain frame rate?

F-Zero GX maintains its framerate well enough IMO. I have a rock-solid stomach, however. I am incredibly lucky, in that I am essentially completely immune to VR sickness. Have been since day one. No idea why, I'm just lucky like that. I can play very low frame rates in VR and not get sick at all. I played Sonic Colors at 30 FPS, for example, in VR -- which is fucking WILD -- and that would probably make most people vomit.
 
The only real bummer about it is the lack of stereo rendering in this version. Head tracking is great, but it's otherworldly when combined with stereo rendering.
 
The only real bummer about it is the lack of stereo rendering in this version. Head tracking is great, but it's otherworldly when combined with stereo rendering.

I played metroid prime with stereo rendering. Adjust your convergence and you can get the "broken" effects, like the offset arm cannon, working correctly.
 
The HUD honestly bothers me almost as much as the world not rendering right. It's probably impossible to "stick" the HUD to the camera due to the way it's designed. I'd love to be proven wrong though.
 
The HUD honestly bothers me almost as much as the world not rendering right. It's probably impossible to "stick" the HUD to the camera due to the way it's designed. I'd love to be proven wrong though.

as I said in my post, disable Samus' helmet in the options menu.
 
It renders more around you, but does the UI still awkwardly float in front of you and not follow the angle of your camera? Because that seems like the most off putting thing. It's a shame because that UI would be really great in VR, if it worked.
 
as I said in my post, disable Samus' helmet in the options menu.

It's not just the helmet textures, the whole HUD supposed to be part of the visor. The HUD staying in place while you turn your head seems like it would break the immersion pretty severely.
 
It's not just the helmet textures, the whole HUD supposed to be part of the visor. The HUD staying in place while you turn your head seems like it would break the immersion pretty severely.

It really doesn't. It just appears as a floating window, similar to the floating HUDs in Elite Dangerous. In fact, this is actually how HUDs should work in VR. Plastering a HUD to your vision feels awkward and unnatural. They should always be floating elements in the world.
 
There is a god!

Apparently he goes by the name Fugazi. Can't wait to try this out. Question. Does the lack of clipping have a noticeable affect on frame rate?
 
Is it possible to use VR with Metroid Prime Trilogy? I imagine that game handles clipping a bit differently due to the dramatically higher turn speed, and combining pointer aiming and head tracking would also be pretty amazing.
 
This is great. It bugged me when I last played MP on Dolphin using a widescreen hack. I don't have a Rift, but this is worth another playthrough with widescreen and no rendering clipping :>
 
This isn't clipping as in fly through walls. This is clipping as in disable the engine from unloading geometry beyond the hud. This makes the game actually playable in VR.

This is just an AR code for now, but it can be built natively into the VR fork of Dolphin. That version lets you play in VR at higher-than-normal resolutions (so like 1080p Metroid Prime) at higher-than-normal refresh rates (i.e. 75 hz) with not only pitch, yaw, and rotation headtracking, but full positional headtracking as well.

I think another term used for this is culling, which comes in many flavours, but you seem to be describing a type of frustum culling. It's probably less about memory and more about reducing the amount of geometry rendered.
 
Is this common in 60fps games to maintain frame rate?

View frustrum culling (in combination with the modern occlusion culling) is pretty much a standard - since why waste processing time or videocard time with stuff the player can't see. Culling what's outside the point of view is one of many techniques to optimize a game in both framerate and "game tick".

When you think about it, it's really no different than say, Super Mario Bros on the NES - it's obviously not drawing the *entire* level all the time, just the tiles needed to fill the screen. Some NES game are a little overzealous too, and you can often see the tiles pop into existence or vanish at the edges.
 
View frustrum culling is pretty much a standard - since why waste processing time or videocard time with stuff the player can't see. Culling what's outside the point of view is one of many techniques to optimize a game in both framerate and "game tick".

When you think about it, it's really no different than say, Super Mario Bros on the NES - it's obviously not drawing the *entire* level all the time, just the tiles needed to fill the screen. Some NES game are a little overzealous too, and you can often see the tiles pop into existence or vanish at the edges.

For a great example of this play SMB3 on the WiiU VC.
 
Well, a user on the Oculus Rift forum named Fugazi has developed an AR code for Metroid Prime that disables clipping, letting the entire world reside persistently and beyond the HUD. This fixes the problem and lets you experience the transformative moments I described above consistently throughout Metroid Prime.

AR CODE: 043451D0 38600001 043451D4 4E800020

A lot of Gamecube games do this actually.

Playing through The Thousand Year Door is actually difficult as the game world is rendered in 4:3, with the 16:9 edges forced in widescreen mode only partially rendered.

I wonder if a similar AR code exists to disable clipping in other games.

Last time I tried Dolphin in VR the image was zoomed in, upside down and black and white.

Dolphin is really hit and miss.

Certain settings and build numbers can wildly change performance of a particular game. You have to put in the research as well as trail and error, but the results are generally worth it.

Plus, as I have been able to gather, you're not the most technically proficient guy ;)
 
But framerate gets worse?!

Or does Dolphin use more CPU/GPU, so that Metroid Prime can still be 60 fps?

It depends on how Dolphin is set up: but in theory, the emulation layer *could* be told to work harder to compensate for the increased load of turning off a pretty important optimization technique - but obviously the processing power needed goes up rather exponentially when you turn culling off. More likely - Dolphin is already doing everything it can to give you the best framerate possible, so if turning off culling makes the framerate drop hard, there's not much to be done other than more optimization to how Dolphin works, or getting better hardware to run Dolphin on.

If your PC could barely hit 60fps with culling on, it's unlikely you'd manage 60fps with culling off. Emulation is, after all, already an intensive "hack" to get the game working on its non-native hardware via abstraction. When you start making the game less efficient and less optimized, the emulation has to work harder, compounding the situation.
 
There are numerous parts of this post I don't believe, beginning with the first 7 words.

You don't have to believe. I have a DK2 since august.

Dolphin is really hit and miss.

Certain settings and build numbers can wildly change performance of a particular game. You have to put in the research as well as trail and error, but the results are generally worth it.

Plus, as I have been able to gather, you're not the most technically proficient guy ;)

The games I tried out were MP and F-Zero, neither worked sadly. This was on my previous DK2. Oculus shipped me a new unit recently so will try out with that.

In bold: How so? :p Is that cuz you helped me out fixing my old games not displaying correctly problem, thanks for Riddick btw ;)
 
This also makes it vastly more presentable in widescreen, great! The framerate takes a serious hit in large environments, but that's probably a very difficult problem to solve. Thanks for the heads up.
 
Got this up and going last night, it's pretty spectacular. It only works with the GCN version currently, but the author of the code said he's working on the Wii version. As I said in the OP, I played the wii version originally and the ability to decouple gaze from aim is pretty amazing, positional tracking of your hand improves the feel of these types of first person VR games considerably. When Wii support is eventually released, this will be killer.
 
So heads up, this is still being developed. Both the NTSC and PAL versions of Metroid Prime are now working, as are the PAL and NTSC versions of Echos. The beta versions of metroid prime and metroid prime 3 also work. The metroid prime trilogy (wii) versions are still being worked on. All this is going to be rolled into the next version of Dolphin VR, the main coder says he already can get the games running at 75 hz.
 
Top Bottom