Brief Update on Rox 3D
I have a very limited amount of free time these days, so the total time to date working on this project has been less than 25 hours. However, I'm very happy with the results so far, and I'm very excited to get all of the new game mechanics implemented.
First, the nature of the game has changed dramatically. I’ve always been peripherally aware of a Japanese folk ritual that involved floating paper lamps down a body of water. Thanks to Wikipedia as being the no-research gateway to instant information, I was quickly able to figure out the proper name for such a thing:
I’m a retired anime fanatic, and I remember always loving the commonly used imagery of paper lamps over water in nonrealistic lighting situations. I also like the concept of the Hitodama, which in some cases has been represented as a sphere of light. All of these things are basic geometries that will allow me to procedurally generate the majority of my resources.
So the new design puts the player in the position of a river spirit who is responsible for blowing out the lamps at the end of a Toro Nagashi ritual. I’m planning to have two pallets of lamps representing “good” and “malevolent” Hitodama that will spawn when their lamp is extinguished. For now, the player has one kind of “attack” which is a breath of wind. You can use this to blow out lamps or blow around ghosts.
The key component to this design is that the challenge of the game is obvious the player. If you don’t blow out any lamps, there’s nothing that can hurt you. In fact, I want to detect when a player goes idle long enough, and go into a screen-saver/attract mode by pleasantly moving the player’s avatar with some AI routines. If you want more challenge, you can blow out 200 random lamps and try to face hundreds of angry ghosts at once. There is no Dues Ex Machina in the difficulty of the game – it is laid bare to the player without any meddling by unseen mechanics.
So I’ve covered graphics and gameplay, but what about audio? Well for me, this is one of the most important points. I’m working out a small score right now of ambient, atmospheric music. It’ll be tough to wrangle the IP for audio without involving experts, so I’ll probably record the sound effects myself. I’m not a great musician, but I have some great gadgets and about 5 years of electronic music production experience.
Finally, I’m almost to a point that the tech issues I’m hitting are genuinely interesting. The big thing lately has been precesion issues in shader code giving me red herrings that end up requiring a ton of instrumentation to track down. Now one thing I was (somewhat stupidly) avoiding was PIX for Windows. Seems it’s ok to dump 12 hours of a weekend into coding, but it’s to much work for me to install the DirectX SDK. Well, lesson learned, and I’m now resolving issues quickly thanks to the fantastic SDK tools.
And now that I’ve done my ramble, I’ll put up a screenshot of where I am as of this writing. There’s a lot of scene elements, game elements, and visual effects to add, but the perspective and scale are near final. Also, I need to come up with a decent name for this game.
Also, the little PIP in the upper left corner is part of my debugging code. Any time I work with rendertargets, I hand their textures to a robust debug library I've been building up for years with managed apps. The rendertarget functionality allows me to bind keys to a PIP view of rendertargets in my scene. In the upper-left corner, you're seeing the reflected geometry for the water layer.