This article series will be a tale about a coder in the land of graphics. A tale about modelling; uv-mapping; material mapping; texturing; exporting/importing models and textures between Blender, Substance and Unity; handling LOD levels etc. etc. A tale on how to transform this piece of cubist minimalism into a proper spaceship.
The background and the goals
I’ve been making Avaruustaistelupeli (ATP) for a couple of years now, more or less actively. (Go ahead and try it. The game is free and it helps understanding the things I will be talking about.) In the game, players can battle with ships that are assembled from predefined modules such as energy sources, thrusters, cannons, missile launchers and shields. The game is pretty much feature-ready (though unpolished and unbalanced), but all the visuals are still placeholders. I have very little experience and even less knowhow on graphical design, so making the 3D-models, even the first rough iteration, took me longer than I thought. Since I won’t be getting the next version out for a month or two, I decided to fill the gap by sharing my experiences.
The game mostly uses a distant top-down -view, but detailed models are needed in shipyard and UI-widgets. All modules share the same base model that is extended by module-specific parts; like a hamburger bun with different fillings. See the image below for foretaste; the center model is the base where all the surrounding ones are extended from.
Stylistically, I have a clear concept: nothing too shiny but something heavy, rusty, damaged and dirty instead. Sharp corners, low quality components, world war one. Modules should be practical and fully armored without many exposed mechanics; details include bolts, pipes, seams, hatches and such. Something like this:
I also plan to use my own mistakes as part of storytelling: leave visible design flaws in, apply fast fixes and do as little re-designing as possible.
My skills and lack of them
I have some basic knowledge of modelling in Blender, but I’ve always got scared away by the complexity of texturing. Substance Painter seemed like an easy solution and since it’s the industry standard, I decided to invest a little. Non-destructive workflow makes it possible to create preliminary materials and develop them further in the following iterations. And as the hours tell, I’m not that scared anymore (most of the time Substance is just running in the background, but still).
Lacking graphical knowhow and taste whatsoever, the first versions can get ugly and inconsistent. Fortunately, without deadlines or obligations, I have time to redo things and develop myself. I’m not even trying to get everything right on the first try. Instead, I will first construct the basic form of modules, and enhance details over time. Since there are only hard surfaces without organic materials or mesh animations, this should be a forgiving job for a beginner.
The first chapters are dedicated to the base model. Complete description of my workflow ended up being a long story, so I divided it into three separate posts. After that, I will generally write one post per module type (or other model) explaining my starting points and motives, listing problems, gathering lessons learned and sharing links to beneficial tutorials/resources. I will try to keep a weekly posting rhythm. This is not going to be a tutorial per se (there are tons of them available from real professionals), but more like a diary of a trial and error process. Assuming that many beginners have to cope with the same problems, I hope my mistakes prove to be useful to someone. All comments, ideas and questions are welcome either in the comment section or by email (email@example.com).
PS. During the process, Substance Painter was adopted to Adobe's family and renamed to Substance 3D Painter. This has raised some heated debate, but I’m not going into that discussion.