Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

3dSen VR - 3D NES Emulator For Virtual Reality

Breathing new life into classic NES games by magically converting it into 3D and letting you play in VR · By geod

thoughts, tips & tricks

A topic by pixelczar created Jun 30, 2016 Views: 506 Replies: 7
Viewing posts 1 to 2
(11 edits)

first of all, this program is amazing. i've always wanted to "redo" the nes library to at least a 16 bit version. this is a huge step, if not even a better one. the programmer has blown my mind. i can't wait until a year from now when there's a library of fully customized games available.

how to use it (i think)

when you open a rom and click on a sprite you are presented with customizations for said sprite.

  • layer: the two major/most important options of the program are for "front" and "back" layer. think of an invisible wall in the direct middle of the 3d. would you like the sprite in front of or behind that invisible wall?
  • depth: how thick the sprite is.
  • zscale: how far the sprite is pushed on the on the z axis. think of it as how far the sprite is pushed towards you, the viewer. doesn't seem to be any value unless separating background layers.
  • as: removal of shadows for certain pattern types.
  • pattern: this is where it gets tricky. though the programming is super awesome, and it does a great job with the cylinders, i think 90% of sprites don't look good/benefit from cylinders. too many cylinders on the screen make it hard for my brain to process what's going on in the game. i stick with unknown (flat 2d) most of the time.


tips & tricks

save/back-up constantly. when you hit the save button it takes the program a little time to save. if you immediately close the program after hitting the save button without it finishing it will erase your 3dn file. the only way to know for sure is to wait a good ten seconds or what i do: (i have two monitors) i leave the folder open in another window and watch to see the 3dn file size change.

flickering: when you load a rom and play you'll probably notice most of the background objects flickering, or jumping around a lot. this is due to it's layer not being set to front or back. easy fix.

won't save/change edits: if you make edits that won't save when you re-check, make sure you press on all the drop-down menus and select the exact same thing, and hit adjust a few times. you should see the sprite change. if you don't then you probably have the pattern set on a cylinder instead of unknown. cylinders automatically set their depth to the closest you want it to be. sometimes it can't do what you want. (example: you keep making the depth 10, but upon re-opening it's always 5. that's the highest it can go for that sprite/cylinder.)

plan for the whole game. nes roms didn't have a whole lot of room for data, so images are recycled a lot. before you spend 4 hours making the best 3d eye-popping level the world has ever known, do a little bit of it and then play the whole level to see how it's effecting the rest of it. most notably this goes for any and all text.

only edit games you're good at. this doesn't have a typical emulator arsenal. no savestates, no cheats, no help. it's old school. you're on your own. in order to design levels you need to be able to get to the levels. we all know some of the best games are the hardest, but what's the point in investing hours of your time only to have 20% of a completed game?

sometimes sprites need double edits: when you finish a side scrolling game level, re-play finished levels and slowly walk forward (by tapping the d-pad right over and over) looking for background sprites to jump out for one frame. sometimes they're hard to notice unless you're looking for them, but once corrected the game will seem smoother than before.

did i mention to back-up your work?


thoughts

i wish there was:

  • a bit more room in terms of the z axis (front and back).
  • zoffset. this would make anything possible from a design point of view.


(5 edits)

Hello this is really a valuable sharing! Thank you.

There are some clarifications from me:

- Depth : the thickness of the sprite in almost cases. In case of cylinder, it's just the maximal allowed thickness

- As : Anti 2D shadow. Only apply for cylinder, please check the first tutorial clip, #3:48

- ZScale: is floating point, not just integer. It's very important if you want to create various depths in games. See the Tutorial 4 with power poles and plant pots

- Layer distance configurable will be implemented

- You mean Offset Z? But you can use ZScale with the similar effect?

Do you mind if i include your writing with some adjustment in the manual?

(1 edit)

i don't mind my thoughts in the manual. i will be adding more to this post as i think of it.

zscale does not give space behind a sprite. it only elongates it as depth would.

(1 edit)

Agreeded. But at first can you show me some examples that need this parameter?

i need it on everything. as it is now, everything in the background must be touching something else in a long chain in order to hide the different long depths. i have to hack things to try and get them to appear as if they don't have these long backs. if you want 3d separation (z-scale difference), you have to make these long depths on the back of sprites. not very attraction most of the time. it would allow free floating things in the background/foreground.

(2 edits)

Well said. Noted. I will focus on the productivity improvement first then it will come later.

you are the man, sir!