Aurora Heir is a single player RTS / simulation / tower defense game which rests on Finnish folklore and mythology. Game is based on harvesting various resources and building up from handful of workers into a functional network of villages in which every resident has it's own role. Player may choose to micromanage everything or let workers do the decisions by assigning professions to villagers which will guide their actions and focus on higher level decisions.

Post news Report RSS Dev Blog #1: Aurora Heir

Some information related to current progress in terms of optimization.

Posted by on

Greetings friends,

I've been busy with optimization related to both GPU and CPU. The most important update related to CPU is optimization of A* navigation algorithm.. Basically this one has been in my TO-DO list for a while, but I haven't yet had enough time to get my hands dirty. Now then, I've re-implemented navigation algorithm with optimized data structures and here is how I did it:

I have a PathFinder pool and limited number of threads, which may be acquired by agents and utilized for navigation. After PathFinder has completed it's job, it will be returned to pool for reuse. I implemented both, open set and close set as a boolean arrays, which leads to the fact that I can check for existence of node within them relatively fast by acquiring boolean value from array by node index instead of executing costly contains methods or loops.

Another performance gain related to navigation is to replace open list (yes I have open list and open set as a separate structures) with binary heap data structure. Previously I just had simple list, which obviously is not the most effective in terms of performance. Binary heap eliminates the need of excess iteration while figuring out node with lowest "fCost" value within path finding loop.

In GPU side, I've optimized all humanoid models and environmental details. Currently vertices count per humanoid model is around 1600, which might still be a little too much. In the end, all depends on how many characters there will be in the screen simultaneously. Let's see if I will do some more optimization related to humanoids in the future. I've also done some repainting with the models (meaning that they now have updated skins and some parts of armor). Here are some close up screen shots of current models:

Female Ranger

Female Ranger


Male Scoundrel

Male Scoundrel


Female Shaman

Female Shaman


Female Warrior

Female Warrior


Female Worker (taking a nap in the turnips bush?!)

Female Worker


Male Worker

Male Worker


Sounds and background ambient are currently work in progress. Planning to do some more composing in the near future and yes, need to do some more vocal acting so that character will have varying responses to payers commands : ) Will they crank? let me know!

My apologies if this update was too technical. Do post a comment if so, after all I'm writing this for you.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Icon
Aurora Heir
Platforms
Windows
Developer
Pihkura
Engine
Unity
Contact
Send Message
Release date
Game watch
Follow
News
Tags
Dev Diary
Browse
News
New
Post news
Report
Report
Share
Related Games
Aurora Heir
Aurora Heir Real Time Strategy
Related Engines
Unity
Unity Commercial
Related Groups
Indie Gamers
Indie Gamers Hobbies & Interests with 1,503 members
PC Gamers
PC Gamers Hardware & Tech with 742 members
Pihkura
Pihkura Developer
Unity Games
Unity Games Hobbies & Interests with 1,802 members