Open turbotum opened 4 years ago
I'm not entirely sure how to implement it such that it renders twice with a different camera actually. I'm also not able to test it myself as I only have a n2dsxl.
Count me in for testing, I've got a n3ds and we're already in a number of discord servers together so communication and such is fairly easy
I don't know much about the Mario 64 codebase, but I do have a pretty solid working knowledge of stereoscopy. The double camera method is probably the easiest to understand and is the most effective since it's more or less replicating how human vision works.
Basically the two cameras share the same rotation and have parallel lines of sight, just offset from a center point. You can increase/decrease depth by messing around with the offset, which is what the 3D slider usually does from what I understand. When you increase the offset the disparity of the objects on screen increases as well, eventually this gets to a point where it's just too hard to look at. Obviously, this can be a huge resource drain because you're rendering the game twice.
I've been trying to get 3D working on this branch of my fork. Current issue is that obviously not everything should be 3D'd (e.g. anything that is meant to be 2D, like the HUD, sign posts), so I'm trying to get an effective way to limit the effect.
The second thing that has been mentioned on the discord, is that it would look better if the 3D effect went into the screen, rather than out of it.. but I havent started on that.
The crux of my changes are in this file... but I have a few more local changes I've not yet pushed.
The 3rd party alternative build from youtube "3ds borb" is a worse build due to sound and performance issues, and it's using opengl instead of citro3d, but it does have fully functional 3D using the slider on the 3ds. Any plans to implement that in this build? It looks beautiful, I encourage you to try it!
To be fair, the borb build's stereoscopy was seriously flawed. Not sure what it was but it hurt my eyes. I think it was the v-sync tears not not lining up or something? It's gotta be tricky, though I would love to see it done right...
I'm not entirely sure how to implement it such that it renders twice with a different camera actually. I'm also not able to test it myself as I only have a n2dsxl.
This person made an emulation of m64 on 3ds and said they want to contact you to collaborate https://gbatemp.net/threads/super-mario-64-port.564431/page-5#post-9150714
@ryotoko Any updates on 3D?
@BopItFreak mkst's port has very functional 3D now, especially if you have a "New" model: https://github.com/mkst/sm64-port/
The 3rd party alternative build from youtube "3ds borb" is a worse build due to sound and performance issues, and it's using opengl instead of citro3d, but it does have fully functional 3D using the slider on the 3ds. Any plans to implement that in this build? It looks beautiful, I encourage you to try it!