Latest Updates from
Have you ever wished to burn your fingers on your smartphone? Are you tired of your smartphone always charging, when plugged to its power cable, instead of uncharging for once?
Then this is the right project for you: TMII's multithreading monster Upon the Stars - A Technical Proof-of-Concept
Game: In the middle of development, this game currently consists of the ship editor seen in the video above and may never be finished as a game, but as a proof of concept for the multithreading technology it was built together with/upon.
This game is a real time and turn-based strategy mix, where the players command their ships in realtime but steer them over a turn based map at the same time during combat.
Multithreading: 8 cores, one GPU. Driven by the Active Context-based Threading (ACT), this project is the first very first to be built upon this in-house developed framework.
Bottom left in the video you can see the computations per seconds per core on an Samsung Galaxy S5 Neo, 8 core. Rendering happens on a dedicated thread at 60 FPS capped.
It's remarkable how ACT makes heavy and noticable calculations - like raytracing, matrix calculations and the in-house AI - nearly disappear in the profiler on a weak device like the Galaxy S5, by splitting a workload over all available cores. The multithreading overhead is even negated to the additional caches made available.
Artificial Intelligence: An artificial hive mind is used for decision making and navigation for all crew members on board each ship.This library is developed in-house, as well, and based on the work of Dr. Alexander Repenning's "Collaborative diffusion: programming antiobjects" - it has matured a lot, since though.
It scales very good with number of agents and complexity of surroundings, with little to no overhead. It is an excellent alternative technology for A*.
Rendering: OpenGL ES 3.1
Rendering is a big problem on such small devices. Every little draw call has an impact and needs to be avoided! This is often a major problem for 2D games, especially when they are based on tile-rendered terrains. Upon the Stars uses a buffered rendering technique to render nearly unlimited* tiled worlds in high complexity without impacting the overall FPS.
Rendering is done on one dedicated thread and runs between 30 and 60 (capped) FPS so far. Besides communicating with GPU, no additional calculations are done on this thread.
*very very very large