The idea struck me a while ago, I am a big fan of the film "How to Train Your Dragon" and those 3D infinite runner games, so I think you know where I'm going with this :)
Started on the project yesterday eve, and managed to make a prototype infinite terrain as well as a vertex shader that makes the curvature in the terrain based on the distance from the camera. Seems to be running ok so far on my phone.
Something that I noticed in a lot of the infinite runner genre is that they use curved terrain instead of the usual distance fog, that way when the forward terrain is spawned it is hidden from the camera but also it gives a more interesting look. Building assets however won't be a pain in the butt if using this shader trick, the models are straight, and thus easier to model and make seamless.
With the Curvature Shader
Without the Curvature Shader
And as I like to mix my work I also worked on some character concepts today to get me started on creating the models:
Decided to jar the little red dragon game for now, reason being: while I was fiddling with the gameplay for that game I realized that I still had a month's work ahead of me to make that game and I still wasn't comfortable with the gameplay.
The next thing I planned was to spend 7 days to make a game from head to toes and publish it, I really needed to know how the whole process goes, and so Cuboid Arcade was born.
It's a simple colour match arcade game where you get assaulted by invading colours and you need to destroy them, with the added bonus of powerups.
Can Play the game for free if you have an android device right here: https://play.google.com/store/apps/details?id=com.ZeeGames.CuboidArcadeFree
The concept was simple enough, and I got to toy around with 2D Sprites for the first time, and also learned a few bits about mip mapping and shader optimization for mobile phones, it's still only 30 FPS on my cheap phone, while on my quad core tablet it's 60 capped, but happy with the result.
An interesting problem that I ran into that not many people talk about was when Unity instantiated prefabs for the first time. On the PC that process was unnoticeable, while on the phone the game hicked up, a few times even at the start of the game when they were instantiated on demand. Turn out that it wasn't the instantiating prefabs that was causing the hickup, but rather drawing the shader for the first time. The solution was very simple, at the start of the game scene, just run the command Shader.WarmupAllShaders(); "Calling this function will perform dummy one-invisible-triangle rendering with all variants of all currently loaded shaders. This can take some time but helps to avoid hiccups in the future." That's my update for now, I'll be posting some concept art next I believe.