About 2 months for the game
Dec 18 2012 02:51 AM
here are a couple of screenshots from a hobby project of mine. It's basically a runner type game, where you try to collect as many items as you can on race track type levels. You can boost speed and jump to make cool tricks, and there's also obstacles such as blocks in your path and enemy turrets that try to shoot you. It's in it's very eary stages right now, but it's playable.
The engine is also 100% homegrown, and is something that I've tinkered with in different versions for a couple of years. The screens are from a Windows/DX9 version, but a Android/GL version is also in the works (specifically for Tegra 3 devices and Ouya). I've also backed the Oculus Rift, so if all goes well, I'll add support for that also. No release date is set, since this is a hobby project it's done when it's done.
The rendering is a forward renderer, supporting gamma correct HDR image based lighting, implemented by using PRT for diffuse direct/indirect/subsurface scattering and HDR cubemaps for specular/reflections. No screen-space lighting effects such as SSAO are used. The water is standard normal map distorted planar reflection/refraction with fresnel falloff.
The rendering is post-processed (in HDR) with real vector field motion blur and bokeh depth-of-field, a streak bloom filter, automatic exposure adjustment, a channel separation filter, filmic tonemapping, vignetting, 3D-lut color grading, and FXAA.
The shading for the objects is very simple, for the objects basically vertex lighting with a cube map lookup and some math in the pixel shader. The water shader is also pretty simple but more texture heavy.
Since the shading is light, the rendering is very fast (the post processing is the heavy part). It runs even on SM2.0 hardware, and it runs at 60 fps @ 720p on a mobile radeon X1600, even with hundreds of objects on-screen (not shown in screenshots). With most of the post processing disabled, it's even playable on an Intel Atom 270 Netbook which is a good sign for the Tegra 3 version.