Oat the Goat #4: 3D Scenes
26 May 2018
Cross-posted from Assembly Dev Notes
With the brief for this project being for a very illustrative style (as you’d expect of a children’s storybook), we didn’t have to worry too much about 3D realism, or lighting and shadows.
We’re using mostly unlit materials with nothing but a color texture applied to them; sometimes those textures are tinted down slightly dark, and in a couple of places we’re using Lambert materials (simple diffuse lighting evaluated per-vertex) to give us some subtle lighting. It was important to keep any lighting very soft and ambient, or we very quickly veered into looking like an alternate-reality Grim Fandango.
The down-side of unlit scenes and an illustrative style is that everything needs to be individually textured – some of our scenes got relatively texture heavy. We also ended up with a lot of transparent layering to give us fake atmospherics, or blurry near-foreground objects. In most cases that worked fine with a bit of careful scene setup, but in a few scenes we had to do a lot of fiddling with depthWrite
, depthTest
, and manually setting renderOrder
.
In the future, I’ll think we’ll definitely lean more heavily on geometry, and I’d like to explore using vertex colours as an approximation for baked lighting, to allow more sharing of textures.