Dev Log #6 - Cloudship Ahoy!

Keeping organised has allowed me to make best use of the limited time I get at my computer. An hour here, an hour there. I can look at videos during lunch break to fill gaps in my understanding so that I can get started more quickly.

I find that if there is a problem with a personal project, then I find it harder to go back to because it's the path of considerable resistance compared to playing Minecraft etc. The Puffy Little Clouds problem I detail below was one of those; I just forced myself to get on with it.

Puffy Little Clouds

Early in testing, my clouds looked lovely. Angular, puffy bastards that drifted and floated in a pleasing sort of way. I liked them. But then I changed something in a mass of changes and the clouds stopped being puffy and turned into these horrid brown things:

The cloudship test disc floating in front of puffy dark brown nasties

No matter what settings I changed in the UI, the yucky brown remained. I could change the size, shape, speed, growth of the clouds but not the colour. That led me to think it was the shader. The shader is the bit of code that decides what colour each pixel should be. There's a bunch of built in ones. At some point in the past, I had selected the "Mesh default" shader.

I changed it to the "particle default" shader and PING! Instantly I had pink test-colour clouds that I had set it to when fiddling. Instead of using the particle system's parameters, it was using the parameters on the mesh. The mesh had been imported from Lightwave and was grey (default), turning brown with lighting from the orange Skybox. Now I could control the style of its rendering, set the clouds to white and have them appear and disappear pleasantly.

Cloudship disc floating in front of some new puffy whiteys!


One of the most important parts of the game is the Wind Engine. Part of the fun is making good use of the prevailing wind to outsmart the enemy. As such the wind engine needs to feel like it's being sensible. I wrote about how I was using the Perlin Noise value to give me the magnitude of the wind. That worked OK, it did something sensible but it would be more fun if you had strong streams of wind. Where the colour gradient of the Perlin Noise is high, that meant the pressure gradient is high and that should mean that the arrows are bigger.

The upshot is that it's more fun to spot the fast moving clouds and then join in with those. You can see this below; where there are lots of arrows of the same colour, they are bigger (more force) and where there is a change in direction then they are smaller.

Big arrows mean more force and similar direction arrows (similar colour) mean bigger arrows

With puffy clouds and Windgine changes done, I did a quick release (v0.8) and moved onto something I've been looking forward to...



My plan here is to just get something Clouship like working for now because I want to do "cloudship building" later. Knowing that I'll be chucking this model away, meant I could go a bit faster. Here it is in Lightwave, where I am pretty quick! It took me about 15 minutes...

Lots of ballons with a platform on top, a couple of chimneys and buildings like a floating castle.

The flag on top points in the direction of the wind; which is odd. I'm not sure if it should be backwards or not; need some testing.

Importing it into the game (by eporting to FBX from Lightwave) meant I needed to understand scale a little but with that sorted out:

Unity with the Cloudship proudly floating about Terra!

I was impressed at how quick it was to replace the disc with the model, especially given that I had to rebind the flag. The scripts were attached to the new objects and it just worked. I'm going to keep it like this (no particles for the chimneys or anything yet) until I do the Cloudship Builder.

Next Up

The camera is currently fixed and I'm desperate to move it. Here it is in-game running as an executable (version 0.9 from the releases).

You're fixed at an angle above and behind the Cloudship, not very interesting

So, moving the camera is next. After that, I am going to adjust the controls. Currently, you have to hold down W to move forward. I'd rather have it like a ship where you have a Engine Order Telegraph (see below) and set your velocity and a wheel that spins when you turn.

I like how Astroneer has these pop-out control panels that are in the game world. They're 3D object that you can prod and push. I'm going to try and do it like that. The next Dev Log will be about that entirely, I think!


Just wanted to add a quick update on here. I got the camera moving pretty well (hold right mouse button and move mouse). Rather than attaching it to the Cloudship, it's now it's own free-floating unit. This has the benefit of having a very slightly elastic presence with the Cloudship. It's more noticeable when you go back to the way it was before, where it is rigidly stuck. This is going to be more important when I start giving the Cloudship some sway under its own power.

Also found a way to make the shadows less mental. I tried loads of "environmental lighting options" to no avail, only to discover that distant lights have a mental "shadow strength" by default - a strength that absolutely no-one would recommend. Well, cheers for that.

brainwipe's picture