Fun with Blender
Recently I have finally started using Blender (& Substance Painter) in earnest. I am starting to get a pipeline in place and have been doing all of the 3D art for the most recent RUST project. I wanted share a couple of insights that I picked up through this process.
Learning through osmosis works (to a degree)
As I have picked up these tools and had concrete goals in mind. (i.e. “make this specific model”) I have been getting better at it much faster than I thought I would. I actually credit this to having spent many, many, hours watching Anton model, and talking to him about the process. I wouldn’t say that I “learned” how to model through that process but I think it supplied me with a ton of information that is just recently getting connected with actual practice.
“Give a small boy a hammer, and he will find that everything he encounters needs pounding.”
Looking back to earlier points in my career, the above quote by Abraham Kaplan seems comically relevant. I spent many years working on 3d games before I had any significant facility with a 3d modeling package. Not to toot my own horn but I am really good at getting shit working in unity. But looking back, some of the shit I spent hours getting working was just to avoid spending ten minutes modeling anything. For example; recently I needed to build a pointer for use in the game. because everything is stereoscopic 3D the way you do this is with a very thin piece of geo, like a cylinder. Unity has a primitive shape that is a cylinder but the origin point of it is the center. So, to use this you need to find the center point half way between the start and end of your pointer. Then do a bit of the angular math to get everything lined up and then scale up the object on the correct axis to the distance between your two end points. Or is it half the length… I can never remember.
Now that I can fire up Blender and put together a cylinder with the origin at one end, rather than the middle, everything gets easier. Just place it on the object doing the pointing, pull the distance to the target from your selection raycast, and set the scale of the object to match. As a bonus, since you are drawing this thing half a centimeter wide you can specify a much lighter cylinder mesh than the built in one for unity.
The point here is that by expanding my toolbox I opened up my options for solving a given dev problem. The pointer “problem” has many solutions, but 10 minutes in Blender is better than the tedious programming solution.
Very few projects of any scale can be accomplished solo. Nothing kills the inertia of a project more than having to put everything on hold while you wait on something from a team mate. The broader your skills are, the less likely you are to get bottlenecked. On the prototype I am currently working on, there are various points of the programming/dev process where I need feedback from my co-designer. The thing is, he is 9 time zones away. Being able to switch gears to get some modeling done while I wait for him to get to the office means that I can stay productive.
It is also really important for what I would call the “Emotional inertia” of a project. It is much easier to stay emotionally positive about a project when you are seeing regular progress. Often on the programming/development side of things one might spend hours doing necessary, but ultimately not-very-flashy bug fixes and improvements. “…well now it does exactly the same thing but won’t break in this eventual edge case” Being able to switch over bang out some art lets you rest your exhausted programming brain muscles and produces some more visible changes in the project. For me at least this helps me keep excited about it.