3DNes

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
geod
Posts: 134
Joined: Thu Nov 26, 2015 12:02 am

3DNes

Post by geod »

Update 11/08/2019

Steam release
VR build: https://store.steampowered.com/app/954280
PC build: https://store.steampowered.com/app/1147940

----------------------
Update 25/06/2016

3DNes is released at : https://geod.itch.io/3dnes
---------------------------
Update 08/03/2016

Finally the beta is ready:
http://tructv.bitbucket.org/3dnes/
It only runs on Firefox for now.
Have fun!

-------------------------------------------
Update 19/02/2016

The beta release candidature trailler is here
https://youtu.be/Ti2fwroyP2A
with many new features : better shape segmentation, transparency, z layers etc ...

------------------------------------------------------
Update 12/31/2015
Hello Everyone!
Longtime no see :D.
Lately i'm working to improve the vision and sound.
Lighting and shadows are added.
And now it's time for showcases.
Next step, i will work on z layers problem.

https://youtu.be/wzBjHEdh14k
https://youtu.be/_Sl_Ou3Wrbc
https://youtu.be/576mERxRnj4
https://youtu.be/oPsWI5htHNw
https://youtu.be/bKHYgiLuiNUw
https://youtu.be/oPsWI5htHNw

----------------------------------------------
I'm currently working on a 3D Nes Emulator. My work has achieved an initial result. Below are several clips to showcase my program.

https://www.youtube.com/watch?v=cUXYgxE ... OssOeiAx8y

I would like to receive any remarks or suggestion.
Please share your thought. Thank you.
Last edited by geod on Fri Nov 08, 2019 8:54 am, edited 8 times in total.
3dSen - Play NES games in 3D & VR
http://www.geodstudio.net/
User avatar
Gilbert
Posts: 564
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: 3D Nes Emulator

Post by Gilbert »

I am impressed. :shock:

At first I thought everything is beveled into a block with repeated texture wrapped around, until I realised that different tiles/sprites can have different breadths, and that pipes are properly cylindrical.

I think every single game has to be setup independently to achieve this result, right?
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: 3D Nes Emulator

Post by rainwarrior »

I never realized that piranha plants always rendered, even in the pipes.
geod
Posts: 134
Joined: Thu Nov 26, 2015 12:02 am

Re: 3D Nes Emulator

Post by geod »

Gilbert wrote:I am impressed. :shock:

At first I thought everything is beveled into a block with repeated texture wrapped around, until I realised that different tiles/sprites can have different breadths, and that pipes are properly cylindrical.

I think every single game has to be setup independently to achieve this result, right?
No, every game is automatically rendered with the same engine, the same code.
3dSen - Play NES games in 3D & VR
http://www.geodstudio.net/
User avatar
Gilbert
Posts: 564
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: 3D Nes Emulator

Post by Gilbert »

I know that it's the same engine(same emulator), but different games has to use different data files, right?

I meant data files that define how to coop with different tiles/sprites, like how 'thick' a wall tile and a ground tile are (from the video it's obvious that a wall tile is not as thick as a ground tile, and the text fonts are even thinner, intentionally) and in case of pipes, etc., what models to use.

Of course when no such data file is provided an emulator may still consider each tile/sprite as a block of the same thickness, just won't look as good.

This is similar to the HD emulators, in which you need to provide new graphics for each game.
geod
Posts: 134
Joined: Thu Nov 26, 2015 12:02 am

Re: 3D Nes Emulator

Post by geod »

No, the 3d scene rendering is based on automatic "on the fly" analysis of 2d scene. I don't follow the approach of HD Nes. This approach requires huge amount of graphic work done to let just a game played. You can see that when an object is rendered for the first time, the game become a little lag due to the analysis computation.
Last edited by geod on Thu Nov 26, 2015 5:19 pm, edited 2 times in total.
3dSen - Play NES games in 3D & VR
http://www.geodstudio.net/
lidnariq
Posts: 11430
Joined: Sun Apr 13, 2008 11:12 am

Re: 3D Nes Emulator

Post by lidnariq »

How do you decide whether a given tile/sprite thing is rotationally symmetric or something else?
geod
Posts: 134
Joined: Thu Nov 26, 2015 12:02 am

Re: 3D Nes Emulator

Post by geod »

lidnariq wrote:How do you decide whether a given tile/sprite thing is rotationally symmetric or something else?
General speaking , the emulator have a fixed set of predefined geometric pattern like cylinder, cube ... vertical or horizontal, when the game played, the 2d scene will be analysed to detect 2d geometry objects on it. Then a set of heuristics rules will be used to assign each object a pattern which will be used later to convert this objects into 3d. That's the mechanism behind it.
3dSen - Play NES games in 3D & VR
http://www.geodstudio.net/
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: 3D Nes Emulator

Post by tepples »

Very impressive for a heuristic method. Super Mario Bros. works OK, except the treetops in 1-3 look like a green log on top of the tree trunk. But it seems to treat the outdoor background in The Legend of Zelda as thick fog.

I wonder what it does with Dr. Mario or any of Shiru's games or any of my games.
User avatar
Gilbert
Posts: 564
Joined: Sun Dec 12, 2010 10:27 pm
Location: Hong Kong
Contact:

Re: 3D Nes Emulator

Post by Gilbert »

geod wrote: Then a set of heuristics rules will be used to assign each object a pattern which will be used later to convert this objects into 3d. That's the mechanism behind it.
Now that's really really impressive! :beer:
Last edited by Gilbert on Thu Nov 26, 2015 7:43 am, edited 1 time in total.
User avatar
Drew Sebastino
Formerly Espozo
Posts: 3496
Joined: Mon Sep 15, 2014 4:35 pm
Location: Richmond, Virginia

Re: 3D Nes Emulator

Post by Drew Sebastino »

So you're saying, for example, it can see that the pipe looks like a cylinder in that it's bright in the center and darker along the edges (and the pattern repeats vertically)? What I really want to know is how well this would work on an NES game with non perfectly front facing floors, (if that makes sense) like Battletoads. In order for this thing to work flawlessly (or even close to it) without hacks, it would practically have to be a human looking at the game. And just thinking, in the case of Battletoads, I guess it would also have to infer what is supposed to be up, and what is supposed to be further in the background for the characters.
User avatar
thefox
Posts: 3134
Joined: Mon Jan 03, 2005 10:36 am
Location: 🇫🇮
Contact:

Re: 3D Nes Emulator

Post by thefox »

It's pretty cool, definitely more interesting to look at than the trivial solutions.

That "first person Mario" video reminded me of many PSX/N64 games with short draw distances, some fog might be funny in that video in attempt to cover it up somewhat. (I'm sure this would lead to somebody making a comment in YouTube about NES's draw distance...)
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: 3D Nes Emulator

Post by tepples »

In fact, that's one of the reasons games went 3D in the first place: in order to be able to draw things both close and far away. It's helpful in many outdoor scenarios and flat-out necessary in a racing game, with few exceptions.
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Re: 3D Nes Emulator

Post by zeroone »

Really impressive, especially given your explanation on how it works.
geod
Posts: 134
Joined: Thu Nov 26, 2015 12:02 am

Re: 3D Nes Emulator

Post by geod »

Espozo wrote:So you're saying, for example, it can see that the pipe looks like a cylinder in that it's bright in the center and darker along the edges (and the pattern repeats vertically)? What I really want to know is how well this would work on an NES game with non perfectly front facing floors, (if that makes sense) like Battletoads. In order for this thing to work flawlessly (or even close to it) without hacks, it would practically have to be a human looking at the game. And just thinking, in the case of Battletoads, I guess it would also have to infer what is supposed to be up, and what is supposed to be further in the background for the characters.
Well we can say that the emulator is still in a very alpha stage. What the emu has succeeded to establish is the infrastructure, the framework. In the future, more semantic info will be collected from 2D scene,more predefined patterns will be added, more rules will be created to make the emu more robust. You say it right there will never be a perfect solution for this kind of problem but better solution is always possible. For the camera mode/direction detection: top down, left right or front back, perspective or orthographic or 2d projection, currently the emu has not detected it yet so the render will not be good for 3d camera or complex background game.

And when the emu becomes mature enough, the optimization for a specific game is as simple as values assigning for a set of coefficient. That's how i see things.
Last edited by geod on Thu Nov 26, 2015 10:41 pm, edited 1 time in total.
3dSen - Play NES games in 3D & VR
http://www.geodstudio.net/
Post Reply