-->
3 min read
This short project dives into the now-defunct Homeworld Mobile game and the background assets crafted for it. Given the constraints of mobile platforms, I worked on several tools and assets that helped bring its environments to life. Here’s a look at what we built.
Homeworld is a classic in the space RTS genre, renowned for its serene and evocative environments. In the original 1998 release, the backgrounds weren’t simply images but meticulously crafted vertex-colored geometry, designed to avoid color compression issues in the gradients. These meshes were created and hand-painted by artists to achieve the desired aesthetic.
For this version, the art team chose to maintain a similar approach, but with a modern twist: the initial background images were generated using a volumetric shader in Blender.
To streamline the creation process and ensure consistency across locations, I developed a Python addon. This tool allowed artists to control the shader without needing to navigate the complexities of volumetric shading. Additionally, the addon managed the star system locations and facilitated reading and writing of CSV/JSON files, ensuring a smooth and cohesive workflow.
The next elements generated using volumetrics were the nebulas. This process was automated, combining various VDBs and light configurations to produce a contact sheet. From this sheet, the most visually appealing combinations were selected and rendered at a higher resolution.
The next challenge was developing a planet generation system capable of creating three distinct types of planets: dwarf planets, which are predominantly cratered; terrestrial planets, featuring water and clouds; and Jovian planets, characterized by visible gas flows. Additionally, the system needed to support the generation of atmospheres for all planet types.
For dwarf and terrestrial planets, the system employed a height map mixer designed to handle distortion at the poles caused by the planet’s spherical projection. For Jovian planets, the system facilitated the mixing of flow maps at various frequencies. All of this had to be accomplished using minimal textures, due to GPU memory constraints on mobile devices.
All these features were created by me but additional support was given by a graphics engineer to bake the atmosphere into a single quad to avoid the costly full screen shader calculations. Other design consideration was the size of the planets in the screen, this aspect restricts the size of the source maps used by the shaders, in this case the planets had an upper cap of one third of target screen resolution size.
The following preview is scaled beyond this restriction.
For the Blender background generator the addon served as a “rig” to the shader, abstracting the complexity of the internal shader graph.
For the planet system, I teamed up with an intern graphics engineer and the lead artist to keep the frame time budget and texture storage limits. Their expertise was invaluable; without their support, delivering a performant background environment wouldn’t have been possible.
Homeworld Mobile was an MMO developed by Stratosphere Games and published by Gearbox Publishing.
-- Juan