New In-Game Vector Editor
Starship Colony now has a built-in 3D vector graphics editor! 😲
It's not quite Blender, but it is a ridiculously large feature to add to any game, let alone a solo indie project. I finally had enough of Affinity Designer's laggy editor and crashing that forced me to reboot every time. So I decided to write my own..! 😎
2D vs 3DUp to now all the game's objects have been made using 2D vector shapes, with simple gradients, outlines, and 2D bevel fills that fake 3D shapes and lighting. It's more direct and often faster than 3D modelling, and there's more direct control over the colour & lighting which is part of the style. But it's also frustrating trying to use 2D tools to make 3D looking objects.
Take the Captain's Chair for instance:
This was the very first object I made for the game, and I felt it needed some improvement. I wanted to tilt it so you're looking at it from a higher angle, particularly the back piece in the first frame. But this is impossible because it's just a 2D shape with a 2D image bevel. Foreshortening it will just reduce the height. There's no way to make the 2D bevel appear tilted, it's fixed in the centre. We've reached limit of what we can do with 2D effects.
The obvious solution is to extrude the outline curve into 3D, bevel it, then rotate and light it in 3D. So that's what I did:
Until now every object in the game had to be made 4 times over, one for each 90 degree view angle. Now I can just rotate the object in 3D and save out frames from any angle. This is a huge time saver!
This is what it looks like from the 'correct' view angle. But I'd probably like to try a lower angle to see if it works better with the characters. I can easily change it now.
Here's a view of the Bézier curve editor working on a tilted plane in 3D. You can just drag points around and it updates at a butter smooth 60 FPS. :)
I've also made some new GUI controls for editing colour and gradients. You can drag sliders around and see results in real time.
Primitives in the object scene hierarchy tree view can be dragged around and reordered. The Extrude primitives operate on the Curve primitives added to them, and they in turn use the Points added to them.
I'm sure you could do something similar in Blender but this workflow is tailor-made for the game engine with bespoke settings for custom shaders and object properties. There are no intermediate export / import steps.
I've designed the architecture with future expansion in mind. Currently there's a more advanced Loft primitive which bridges between any number of Curves, great for pipes and cables. Plus a dedicated Shadow primitive which generates blurred shadow images directly from the shape Curves. This makes it extremely easy to made efficient good looking shadows.
There's also a Sprite primitive which lets you to put 2D sprites in any 3D orientation, including all the existing game object sprites. This lets me reuse all the existing artwork and just make incremental upgrades. It's also great for decals.
I have so many ideas for additions to the editor, but they can be added over time as I need them.
Future PotentialThe potential for player-made content is huge, and although I made the editor for myself, having it built right into the game should give things a nice boost! 🚀
Speaking of which, Starship Colony just got promoted to the Popular Upcoming chart on Steam. Traffic is up, and wishlists are climbing steadily despite having no trailer or publicity yet. It'll interesting to see what happens when we do! :)
If you haven't wishlisted already, please do - it helps our visibility with the algorithm. You can also follow the developer page to get notified when we start play tests. The Discord forum is also usually first to hear of any news. Thanks!





A deep starship colony sim. Build your starship, manage air, water, food, fuel, energy, temperature and psychology to keep your crew alive across vast distances. Closed-loop system in space. Mining, wiring, plumbing, in-ship factory, (alien?) radio signals & translation, diplomacy, combat, and more.