Homebrew 800px patching regular games?

battlecatsahead

Well-Known Member
Member
Joined
May 28, 2020
Messages
219
Trophies
0
XP
716
Country
Canada
i think that if it were possible, it would have a huge impact on performance, especially on old 3ds, new 3ds would probably be able to handle it with less of a performance impact, but i dont know if it would even be possible without the title's source code
 

BETA215

Unknown Member
Member
Joined
Dec 30, 2014
Messages
200
Trophies
0
Location
they/them
XP
683
Country
Argentina
And using 800px mode in emulators? Wouldn't that make things nicer-looking?

DaedalusX64 would greatly benefit from that, as well as other emulators.
 

RocketRobz

Coolest of TWL
Developer
Joined
Oct 1, 2010
Messages
14,834
Trophies
2
Age
22
XP
16,931
Country
United States
Is this possible? Has anyone looked into it?

Mario 64 with 800px turned on looks absolutely awesome and it got me wondering why this mode hasn't been used on other titles?
Nintendo likely used it as a debugging feature to test the 3D screen mode without an actual 3D screen, and as a result, you could see both the left and right sides at once on the top screen.
 

Bazooka_Face

Well-Known Member
Member
Joined
Jan 21, 2018
Messages
113
Trophies
0
Age
75
XP
416
Country
United States
Nintendo likely used it as a debugging feature to test the 3D screen mode without an actual 3D screen, and as a result, you could see both the left and right sides at once on the top screen.
How would one enable this mode through cheats on normal 3ds games?
 

PercyRS

New Member
Newbie
Joined
Oct 23, 2020
Messages
2
Trophies
0
Age
24
XP
234
Country
Argentina
I was looking for the same thing a while ago and this is the closest thing I've found

gbatemp (dot) net/threads/adding-stereoscopic-3d-to-games-that-dont-have-it.577194/page-2

haven't tried it myself though
 

ghjfdtg

Well-Known Member
Member
Joined
Jul 13, 2014
Messages
843
Trophies
0
XP
1,954
Country
This is not how it works. The 800 pixel mode is separate from 3D and uses a single frame buffer instead of separate ones for each eye. With a few patches you could make the game render in this new mode but is it worth it? I doubt it, since most games already push the GPU to the limit even without 3D.
 

BETA215

Unknown Member
Member
Joined
Dec 30, 2014
Messages
200
Trophies
0
Location
they/them
XP
683
Country
Argentina
This is not how it works. The 800 pixel mode is separate from 3D and uses a single frame buffer instead of separate ones for each eye. With a few patches you could make the game render in this new mode but is it worth it? I doubt it, since most games already push the GPU to the limit even without 3D.
When enabling 3D, pixels actually look squared rather than the scanline look 3D off gives, with also more detail. That's not 800px mode?
 

Bazooka_Face

Well-Known Member
Member
Joined
Jan 21, 2018
Messages
113
Trophies
0
Age
75
XP
416
Country
United States
This is not how it works. The 800 pixel mode is separate from 3D and uses a single frame buffer instead of separate ones for each eye. With a few patches you could make the game render in this new mode but is it worth it? I doubt it, since most games already push the GPU to the limit even without 3D.
I haven't really seen any games that push the gpu really far. We cant really tell, since there is no gpu usage plugin. Most games render the same image twice in one frame, even with 3d disabled
 

ghjfdtg

Well-Known Member
Member
Joined
Jul 13, 2014
Messages
843
Trophies
0
XP
1,954
Country
When enabling 3D, pixels actually look squared rather than the scanline look 3D off gives, with also more detail. That's not 800px mode?
That's the parallax barrier changing the appearance of the display.

I haven't really seen any games that push the gpu really far. We cant really tell, since there is no gpu usage plugin. Most games render the same image twice in one frame, even with 3d disabled
Are you sure about that? It makes no sense whatsoever to render for both eyes in 2D mode.
 

Bazooka_Face

Well-Known Member
Member
Joined
Jan 21, 2018
Messages
113
Trophies
0
Age
75
XP
416
Country
United States
That's the parallax barrier changing the appearance of the display.


Are you sure about that? It makes no sense whatsoever to render for both eyes in 2D mode.
Yes, I checked the framebuffer in citra with 3d disabled, and mario kart 7does this, kirby doesnt, smash doesnt, castlevania does it, do country returns 3d does it, etc.
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
21,339
Trophies
3
Location
Space
XP
10,227
Country
Norway
When enabling 3D, pixels actually look squared rather than the scanline look 3D off gives, with also more detail. That's not 800px mode?
I think the scanline look would still happen in 800px because there are more horizontal pixels than vertical ones, so the gap between the horizontal pixels is smaller. 3D off just doubles every pixel horizontally to turn 400px into 800px but even with 800px natively it doesn't change the physical makeup of the screen.
 

ghjfdtg

Well-Known Member
Member
Joined
Jul 13, 2014
Messages
843
Trophies
0
XP
1,954
Country
Yes, I checked the framebuffer in citra with 3d disabled, and mario kart 7does this, kirby doesnt, smash doesnt, castlevania does it, do country returns 3d does it, etc.
Not sure the frame buffers are a good indicator. Normally the display controller is in a double buffer configuration meaning there are 2 buffers for each screen in 2D mode and it alternates between them each frame. In 3D mode there should be 4 for the topscreen and 2 for bottom. What really matters however is how many GPU render buffers the game uses each frame. That's the buffer the GPU renders to as the name implies. It could allocate 2 render buffers but only render to one. If Citra has any way to see how many GPU command lists the game sends to the GPU or even better display transfers that would tell you how often it actually renders per frame.
 

Bazooka_Face

Well-Known Member
Member
Joined
Jan 21, 2018
Messages
113
Trophies
0
Age
75
XP
416
Country
United States
Not sure the frame buffers are a good indicator. Normally the display controller is in a double buffer configuration meaning there are 2 buffers for each screen in 2D mode and it alternates between them each frame. In 3D mode there should be 4 for the topscreen and 2 for bottom. What really matters however is how many GPU render buffers the game uses each frame. That's the buffer the GPU renders to as the name implies. It could allocate 2 render buffers but only render to one. If Citra has any way to see how many GPU command lists the game sends to the GPU or even better display transfers that would tell you how often it actually renders per frame.
It most definitely renders the image twice in those games. It clears the image after rendering one, then starts to render the same exact frame again then the bottom screen, then the screen updates with the newly rendered frame. I used pica surface viewer and pica breakpoint for this btw. It's in citra debug options.
 

ghjfdtg

Well-Known Member
Member
Joined
Jul 13, 2014
Messages
843
Trophies
0
XP
1,954
Country
Also, what patches can fix this? I doubt anyone will write exclusive patches for all of these games, including Dk country returns 3d and metroid return of samus.
It's per game and requires some reverse engineering effort. Probably a dozen different implementations depending on developer studio and game engine. Only the SDK code is (mostly) the same in all of them.
 
General chit-chat
Help Users
    KennieDaMeanie @ KennieDaMeanie: Eh I have too many Sony consoles I can already emulate Ps2 on