I’m attempting, in this series, to program the computer to make space ships. So far, I’ve manually generated some blocky ships, and some roundish ships, and done a little exploration of hull plates and a few sub-systems. There hasn’t been any procedural generation yetunless you count the starfield in the background but I’m not too worried. I want to be comfortable making all of this manually before setting out to tell the computer how to make things. I could start doing the programming already, but I’m enjoying this whole manual exploration thing, so let’s keep going with that.
Last time I mentioned, near the end, that the morphological metaphor for space-ships is shaping up to be more along the lines of bugs than bears, but on reflection, the broader categories of invertebrates instead of vertebrates seems more apt. However, as much as I’d like to careen off on an Anthozoa-inspired tangent, let’s stay on the path I indicated last week and start by talking about:
The Lonely Expanse of Space
No, ahh, that was what we started with last week, but what I meant to talk about this week which I indicated last week was:
There’s nothing quite like an antenna to indicate delicate sensors and communication. We can make them in a variety of sizes and shapes.
The main place I would expect to see antenna on a space ship is the crew quarters, especially the command center, so the antennas can act as a secondary identifier (after windows) of the crew-focused section of the ship.
While we’re on crew quarters, I’m going to bring up something that you see a lot in sci-fi visuals, which is these angled windows. This is a really powerful visual shorthand for “this is a structure where weight and strength are more important than square windows” because it mimics windowsor indeed entire rooms built into a girder structure. The windows built around the diagonal bracing in the girders form this characteristic parallelogram shape. Or, no, not a parallelogram? A rhombus? No! I’m going the wrong way! Uh… help me Wikipedia. Trapezoid!
The characteristic trapezoid shape that you see so often in Cool Looking space ships. It’s so Cool Looking that I’m using it in the hull panels as well, and it seems to be pretty effective! The trapezoid offsets in the seams, or even single 45 degree jogs, add that feeling of technology. In addition to the nod to underlying structural members, I think another reason these 45 degree angles say “spaceship” so effectively is that circuit boards are “future science” things, and are also commonly composed of square angles and 45 degree paths and stuff.
Anyway, windows and antennas denote crew. And of course, crew need to get on and off the ship as well, so we’ll also need some:
These connection points can be docking ports, or refueling ports, or coolant transfer points, or munitions sockets, or hanger doors, or whatever else one might imagine entering or exiting a space-ship. I’d like to have an exhaustive design for each of the vessels created in this way, but even if we never get there, scattering a few of these around the vessel should lend a bit of believable detail. The “circuit board” insight yields some good fruit here as well, as round ports and round solder pads work well with the hull-plate-seam to circuit-board-trace metaphor.
Because storage is generally where things end up immediately after transfer, I’d expect the cargo section of the ship to have the highest concentration of ports. By now you’ve probably seen the pattern, so it will come as no surprise that I next bring up:
Delicate Sheer Wings of Darkest Night
Now, you may be wiping your monitor after the spit-take there because you, as an educated and fully literate individual, are well aware that space-ships don’t need wings. They don’t do anything in space! It’s space! There’s nothing there! At all! That’s why it’s so easy to take out the garbage. You just kick it out the airlock, and it doesn’t pile up, because there’s nothing to pile up on.
Well my, erudite friends, allow me to remind you of another property of space, which is that it’s a fantastic insulator. And the corollary, that this makes it very difficult to take out the energy garbage, also known as heat. Because, unlike physical garbage, you can’t throw heat. Well, there is one way actually. That’s why these wings aren’t really wings at all.
And what is the most likely source of waste heat that we need to get rid of? Why the engine room of course! How tidy! The three primary sections of the ship that we identified in the very first article have returned except there were four sections because we forgot the limbs section which was called “guns” earlier but this time is:
I’m kind of torn on these actually, because they are one of the features that exist on real spacecraft, but look best when they are completely hidden behind body panels except when landed.
So, I don’t know, maybe I’m going to put them in the proc-gen engine,the proc-gengine? maybe not. Either way, here are some legs on that ship we keep seeing.I call it the Tramp Destroyer
So, there we go! We now have both primary and secondary identifying characteristics for all four primary vessel sections. Next week I’m going to do some studies based on the concept art that you link in the comments.so, be sure to comment with spaceship designs that have features I haven’t examined yet Or, failing that, I’ll talk about the Tramp Destroyer, why I made it, and what its deal is. You can download the source file for this week here:
 unless you count the starfield in the background
 or indeed entire rooms
 the proc-gengine?
 I call it the Tramp Destroyer
 so, be sure to comment with spaceship designs that have features I haven’t examined yet
What Does a Robot Want?
No, self-aware robots aren't going to turn on us, Skynet-style. Not unless we designed them to.
Steam Summer Blues
This mess of dross, confusion, and terrible UI design is the storefront the big publishers couldn't beat? Amazing.
The Best of 2013
My picks for what was important, awesome, or worth talking about in 2013.
Programming Language for Games
Game developer Jon Blow is making a programming language just for games. Why is he doing this, and what will it mean for game development?
The Best of 2012
My picks for what was important, awesome, or worth talking about in 2012.