3D Support?

Found a bug? Please report it, but remember to follow the bug reporting guidelines.
Missing a sane feature? Let us know!
But please do NOT request ports to other systems.

Moderator: ZSNES Mods

Post Reply
evilpaul
New Member
Posts: 1
Joined: Wed Sep 29, 2010 2:55 am

3D Support?

Post by evilpaul »

Hello Guys,

I was curious if there's any plans to add Stereoscopic 3D support in the future to ZSNES? I'm not sure how the renderer works, but with the way the emulator can toggle on and off layers I would think it's probably possible? Seeing A Link to the Past or FFIII in 3D would be really damn cool. Again, I have no idea how viable or even possible it would be, so please don't crucify me. ;)

Cheers,
evilpaul
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Re: 3D Support?

Post by grinvader »

whats
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
badinsults
"Your thread will be crushed."
Posts: 1236
Joined: Wed Jul 28, 2004 1:49 am
Location: Not in Winnipeg
Contact:

Re: 3D Support?

Post by badinsults »

The SNES is a primarily 2D system. Though there are a few layers for it, I don't see how you would make a 3D image out of it.
<pagefault> i'd break up with my wife if she said FF8 was awesome
Johan_H
Starzinger Addict
Posts: 998
Joined: Tue Aug 17, 2004 1:14 pm
Location: Sweden
Contact:

Re: 3D Support?

Post by Johan_H »

Well, it could conceivably be done (I guess with game specific hackery and major changes to the emulator), but it would just look odd most of the time, I imagine.
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Re: 3D Support?

Post by Nightcrawler »

Most BG modes could technically lend themselves to background to foreground rendering in their screen layering. However, there are many different possibilities when the background and sprite priority bits come into play. There are also a number of ways games construct the screen with the backgrounds that would not follow a logical scenario for background to foreground viewing. It would probably end up just looking weird in most cases. However, there's probably a handful of games out there that it might look OK for. I believe I have seen some that do simple rendering with background, then sprites, then foreground.

This is one of the less crazy ideas presented over the years, but still it probably doesn't hold much practical application.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
Johan_H
Starzinger Addict
Posts: 998
Joined: Tue Aug 17, 2004 1:14 pm
Location: Sweden
Contact:

Re: 3D Support?

Post by Johan_H »

Image quickie mockup (cross-eyed)

Actually, I think that if you could set the depth of the layers manually, it would work really well with most simple sidescrollers and such.

EDIT: Someone just mentioned that maybe they'll do this for 3DS ports. You can always hope for that, OP.
Gil_Hamilton
Buzzkill Gil
Posts: 4294
Joined: Wed Jan 12, 2005 7:14 pm

Re: 3D Support?

Post by Gil_Hamilton »

Nightcrawler wrote: This is one of the less crazy ideas presented over the years, but still it probably doesn't hold much practical application.
I think I've brought it up more than once myself.
Never too seriously, since, well, the games weren't designed for it and I can think of a lot of situations offhand where it'd break. But it'd be a neat "toy" feature, even if it IS of very little actual use.
Squall_Leonhart wrote:
You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
DirectInput represents all bits, not just powers of 2 in an axis.
KHDownloads
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Re: 3D Support?

Post by franpa »

Can't you just set Nvidia 3D view to anaglyph mode and add ZSNES as a supported title or somehow force it on for ZSNES?
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
kode54
Zealot
Posts: 1140
Joined: Wed Jul 28, 2004 3:31 am
Contact:

Re: 3D Support?

Post by kode54 »

Useless since ZSNES does not render using any 3D API. The entire image is composed in software and drawn to a flat buffer. No way to derive 3D information from that.
I_am_dumb
Hazed
Posts: 70
Joined: Wed Jan 28, 2009 6:25 am

Re: 3D Support?

Post by I_am_dumb »

Are you talking about that feature in Rad Racer and World Runner where you press the select and it goes into red/blue 3d mode?
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Re: 3D Support?

Post by franpa »

I_am_dumb wrote:Are you talking about that feature in Rad Racer and World Runner where you press the select and it goes into red/blue 3d mode?
Yeah that's what "I'm" talking about.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
I_am_dumb
Hazed
Posts: 70
Joined: Wed Jan 28, 2009 6:25 am

Re: 3D Support?

Post by I_am_dumb »

I recently came across a neat little software called iz3D, I saw a video on youtube where someone was using it with PJ64 and thought maybe it might work on other emulators as well. It does, but only the ones that run modern polygon based games (got it working nicely with Dolphin while playing Burnout 2: Point of Impact, but it doesn't even acknowledge NNNester J or Zsnes). Anyway, one would think that it would be possible to add a setting into Zsnes that would activate a slight red/cyan split image with an adjustable "separation" or "convergence" like in iz3d, but it would only affect the background layers and leave the main sprite layers untouched... sort of like this:

Image
(anaglyph red/cyan glasses needed to see affect)

This is just a mock image that I made by taking a screencap with sprite layer turned off in Zsnes, then using a freeware program called "Stereo Photo Maker" to give the cap of the background a slight left/right red/cyan 3D effect, then taking another cap with sprites turned back on and pasting that into Photoshop and using the lasso tool to carve out the sprite of Flammie and then placing it as a separate layer over the 3D-ified background.
kode54
Zealot
Posts: 1140
Joined: Wed Jul 28, 2004 3:31 am
Contact:

Re: 3D Support?

Post by kode54 »

Applying actual 3D separation to mode 7 layers like that would need to be designed per game and per situation, as mode 7 isn't actually 3D. In fact, it isn't even perspective.

Mode 7 supports straight scaling and rotation. Any effects involving perspective are implemented by the games using HDMA to adjust the scaling and scrolling position per scanline.
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Re: 3D Support?

Post by grinvader »

There's also the problem of "high priority" layers displaying stuff that's for the back (since the sprites will be on top), which makes it impossible to set which red/blue delta to use for which layer.

And sprites have their own issues regarding which are on top.
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
I_am_dumb
Hazed
Posts: 70
Joined: Wed Jan 28, 2009 6:25 am

Re: 3D Support?

Post by I_am_dumb »

Sorry guys, I was just curious about what Evilpaul and Franpa were talking about, and thought maybe it could be done as a filter effect, like the 2xSai filter and how it can exclude certain layers (like how in Seiken Densetsu 3, it doesn't filter the layer for the character sprites in the menu and certain text, perhaps on purpose or by accident, guessing on purpose since the really tiny text in certain parts would be nearly unreadable if it did). But as you say, it would still have problems defining what layer to do what to...
Gil_Hamilton
Buzzkill Gil
Posts: 4294
Joined: Wed Jan 12, 2005 7:14 pm

Re: 3D Support?

Post by Gil_Hamilton »

I_am_dumb wrote:Sorry guys, I was just curious about what Evilpaul and Franpa were talking about, and thought maybe it could be done as a filter effect, like the 2xSai filter and how it can exclude certain layers (like how in Seiken Densetsu 3, it doesn't filter the layer for the character sprites in the menu and certain text, perhaps on purpose or by accident, guessing on purpose since the really tiny text in certain parts would be nearly unreadable if it did). But as you say, it would still have problems defining what layer to do what to...
That's an unintended quirk, actually. As I recall, ZSNES renders the image in a 512*448 buffer area. Most games, which run at 256*224, and the extra space is used for the filters. SD3's menu text is in high-res mode, and the extra space is used by the game, so there's nowhere left to draw the upscaling filters.
Squall_Leonhart wrote:
You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
DirectInput represents all bits, not just powers of 2 in an axis.
KHDownloads
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Re: 3D Support?

Post by Nightcrawler »

It would be interesting to see the results of general rudimentary 3D based on the background layers in an SNES emulator. While it obviously will be highly flawed, there are a number of games which I believe it would work very well for. Platformers with parallax scrolling come to mind. In many cases each background is intended to be progressively farther away in perspective, with one foreground layer. Sprites can be treated all on equal plane in games like this.

As others have stated, with Mode 7, it's a very different ballgame due to the design. I know this sounds unintuitive to the uninformed as Mode 7 appears to be the closest thing to 3D the SNES displays. In actuality, it's probably the most difficult to get 3D out of for the reasons mentioned here. To do it, you'd need have a per game configuration that was manually given the depth information for each scanline. Even then, it would be per Mode 7 scene. So, I don't know how you'd be able to differentiate more than one scene per game. I suppose it might also be possible to develop a general algorithm in the emulator for HDMA heuristics of popular Square games or something, but that's a long shot. However you slice it, it's a flawed and difficult task.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Re: 3D Support?

Post by grinvader »

Nightcrawler wrote:Sprites can be treated all on equal plane in games like this.
Except sprites can go behind bg layers, or in front of them. Whenever that happens, the effect will go bonkers. :/
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Re: 3D Support?

Post by Nightcrawler »

grinvader wrote:
Nightcrawler wrote:Sprites can be treated all on equal plane in games like this.
Except sprites can go behind bg layers, or in front of them. Whenever that happens, the effect will go bonkers. :/
The idea would be the sprite plane would be set to be behind one specific background layer (acting as the foreground) for the game. If the game so chooses to change which background layer is being used for foreground throughout the game, you're screwed. However, at least a few basic (we're not talking Contra III or Super Star Wars here) platformers I recall generally used the same background/foreground layer order throughout most or all levels of the game.

Menus and cut scenes would probably be broken as I'm sure they would not use the same layering as the rest of the game (Even then, you have have no mechanism to tell what menu tiles belong at what depth). This is more of a experimental feature that might apply to a handful of games, and even then guaranteed to be partially broken. It's certainly not a very practical or useful feature by any means, but could be a fun one to play if the day ever came where you had nothing better to do. :)

New business:
Does anybody here have a 3D TV with a 2D to 3D conversion feature? What does it do if you try to play an SNES (or any console) on it in 3D? I would image the results are pretty poor, but I have no idea. I'm curious what it attempts to make 3D.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Re: 3D Support?

Post by grinvader »

A post-process filter like what a TV would do has better chances to result in acceptable depth reproduction, assuming there's some sort of "depth buffer" used alongside differential scrolling detection for depth computation when the picture stops moving.
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
JoshuaJSlone
New Member
Posts: 1
Joined: Mon Apr 30, 2012 8:05 pm

Re: 3D Support?

Post by JoshuaJSlone »

This is something I've wanted to see in emulators for a long time, too. Thought I'd point out that I made a handful of SNES mockups. I just shifted layers, so everything I did should be perfectly reproduceable--though that sometimes means some awkward depths.
Post Reply