Sign in to follow this  

Need advice on not making colors seem "flat"

Recommended Posts

I'm not a KSP add-on dev; I'm more of an Orbiter simulator add-on dev, but if I were ever to become one, I would like some advice on doing textures like this, in which the white and grey don't look like they were just flatly shaded materials.


This was my attempt at not making colors seem flat, it used (GIMP's) Noise generation and motion blur to produce the white you see here. The seams are also "flat"-looking compared to the image above.


So, what's a good method for doing something like the Mk 3 cockpit?

Edited by Pipcard

Share this post

Link to post
Share on other sites

The quick and dirty way is to bake out an ambient occlusion map and multiply that ontop of your color layer. But just doing that wont give you the result you see on for example the mk3 cockpit there. That result is made with a more hand painted approach. i would think it was made by segementing/paneling in ps/gimp then manually "bleeding" the colors. I think i saw some tutorials by cpcipard somewhere here on that process.

Share this post

Link to post
Share on other sites

Firstly, noise and blur is a good idea, and can be especially helpful with lossy formats like .dds in 'dithering' the compression artifacts to make em less apparent.

For Mk3 cockpit I basically handpainted it all. I'm still experimenting to find the quickest workflow and have recently used more and more filter combinations instead of handpainting, but basicly I use these steps to create spaceplane textures:

1. First, with a fairly hard low opacity brush draw black along the panel lines to 'soften' them, dont paint too cleanly here, we want it too look dirty. Then lower opacity of the layer till its just a subtle effect. Another easier way to do this would be to copy the panel lines into one layer and apply a blur filter, but that gives IMO too uniform results, I prefer the slight dirtiness of a hard brush and sloppy hand-painting.

2. Then on a new layer paint in white, similar brush, slightly higher opacity (cos of bright grey background). With this paint more in the center of the panels, still somewhat following along the outlines tho, fairly sloppy and randomly because uniformity is the enemy :). Adjust this layers opacity till its just a subtle effect. The combination of this white and the black layer is supposed to give a cheap and simplified impression of manufacturing marks and some material wear. Dirt and erosion usually manipulate the look of a material based on convexity of surface features like small grooves between panels, protruding bits and so on. By painting fairly randomly along the panels like I described it, a very basic impression of that can be 'faked' quick and easy without going into any detail about material properties and different kinds of wear.

3. Now its time to add some detail on another layer. With a small bruish, fairly low opacity paint the intersections of the panel lines, imagine the panels arent sharp rectangles, but have very subtle radius on their corners, when joining them together it leaves a tiny dark gap on the corners of the panels. Try to very subtly 'round' the corners of the panels with the brush. It adds some depths to the panels and we're used to seeing this from seams between panel sheets on cars and other machines.

4. Take a fine brush, 1-3px medium or high opacity, white, new layer. This will be the scratch layer. Paint bright scratches on panel edges, fairly randomly. You can experiment with how uniformly you paint those, it can be non-uniform lines along the entire edges or seperate bright specs randomly distributed along the seams. Paint them especially obviously at the corners of each panel, corners usually wear out quickly.


- paint thin scratches randomly over entire panels, concentrate them especially in areas that are convex on your model.

- give underlaying color, underneeth the outline layer randomly different brightness for different panels. E.G. make some panels darker or brighter than others, to imply some have been on the vehicle longer than others, that some have been recently replaced and are less dirty. If you look closely at the spaceshuttles white panels and tiles, its actually a really messy patchwork.

Note that its not a very realistic approach tho, it's only supposed to add a basic and toyish material authenticity to the textures.

If you want more realism I recommend look closely at some photos of the space shuttle, what color and texture the different materials have, how they wear out, and how worn dirty pieces differ from newly replaced panels and ceramic tiles, what kind of material is exposed if upper layers are damaged and so on, and try to replicate that.

Loving that Spaceplane by the way, awesome job so far! If I may nitpick one thing tho, never use true black on large areas of game textures. Leave some room for shadows. So, use a dark grey for the black tiles instead of actual black, something around 10% - 20% brightness.

Hope this was of any help, have a good time texturing!

edit: landeTLS mentioned it already; your model may benefit from some shadowing along concave areas, e.g. where the fins join the main body, can be a baked ambient occlusion multiplied on top or you can try to hand paint it.

Edited by Porkjet

Share this post

Link to post
Share on other sites

Thank you so much for your thorough response and letting me know that it's all handpainted, but you seem to have double posted before the edit.

Also, the parts in the Orbiter screenshot that look too black are that way because I adjusted the contrast to make it look more vivid, and it is actually more of a dark grey.

Edited by Pipcard

Share this post

Link to post
Share on other sites

Some of this is definitely made easier with layers.

This example isn't a spaceship, but I think shows the point. It was the collar of a jacket...

Bottom layer: the basic jacket fabric

Middle Layer: shadowing

Top Layer: the collar


The shadowing was made by showing the top and middle layers while editing the middle layer, using the airbrush tool, darkest along the collar edge. widening slightly where it needed to look to have a larger gap between collar and base. What's under the collar in the middle layer doesn't matter.

The middle layer was then used as a modifier on the bottom layer.

There's a couple of other things that make the illusion more effective. The Camo pattern of the different pieces of fabric doesn't match along the seams. You could also use very slightly different tones for each piece. This would be good for multiple panels on a model for KSP. Something like a maintenance or access panel could be very slightly different. A lot of this can be derived from a more-detailed mesh model. However it's done, the shadows in the texture will not always match the lighting.

There could be more detail but, for a game environment, you soon hit resolution limits. I made this at a large size, and scaled it down. Some specific detail was lost, but it's a sort of anti-aliasing effect.

(In the gaming environment I made this for, some people started complaining that camouflage was cheating: they couldn't see my avatar at a distance. I just kept on shooting them.)

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this