A 3D framework for mobile
A startup studio 3D Top-Down Mobile Action RTS framework
This was a framework I developed from scratch for a startup studio. I was able to get the basics down in about 2 weeks. The framework would consist of the player controlling an army of various characters in a Top down RTS way, like Dota or League of Legends. It was developed for mobile and used 3D models from an asset pack the studio bought, and animations I threw together myself. One of the hardest things I experienced was getting over 80 characters to render on a mobile platform. Sadly I was only able to get 60fps @ 50-60 NPCs in the cameras viewport at once while having all of them function like in normal gameplay. The gameplay mechanics were simple enough, click to move or click and hold to move players party of mobs. Groups of enemy characters would wander around the map and the players objective would be to guild controlled mobes to defeatable enemy groups. Once an enemy group was defeated you would then activate a mechanic that would ressurect them to your party, that would eventlly grow to the size of a small army and larger. There would be different type of characters that did element styled ranged attacks and weapon based melee attacks. If the player would try and take on a group too big for thier group to handle they might be left without any NPCs to control which would result in a gameover. The gameplay was designed to be dynamic and fluid, meaning that yoou can drag your controlled NPCs to an enemy group, watch your mobs fight a few seconds, then quickly realize they were too strong and click away from the enemy group to run away, once far enough the enemy group would resumes thier patrols. In this project I implemented other mechanics like: Lightmap baking. Navmeshes and Agents self coded with my own way point system in C#. Cross platform Input like Keyboard and mouse to any console controller, and even mobile 10 finger multi-touch. Scaled procedural generated particle systems and attacks that worked well dynamically with later to be added code. e.g. spawn a fireball, make it a scale of 5, apply this color, use a curved/linear path type, with a speed based on distance and or damage, including option knock back, optional trail systems and OnHit effects via transform parenting and saving the prefab. Automatically adjust animations for multiple weapon types and weapon sizes, each with thier own optional effects or physics/effectors. Placed spawning prefabs for level designers that would spawn a mob in the air behind the camera and set them on a path towards their initial spawn point that caused a explosion effects and screen shake on touchdown. LoDs and Occlusion culling. And the last thing I stopped working on was Networking, before I could finish I got a full time job working as a monkey for google :( I ended up taking too long to come out with updates and the studio decided to recruit another programmer that ended up wiping all of my framework. In the end though it was my first 3D mobile game and was still a very good experience I experimented a lot with the profiles and stress testing to the best of my abilities at the time so that I could gauge how much I needed to hold back in order to meet resource needs.
Unity 3D Developer - Programmer