Unity Aesthetic Debugging
or, how I’ve learned to approach visual aesthetic design in Unity as a designer.
As a UX Designer by day, I’ve sometimes found it difficult to understand exactly why a pixel is the color it is with all the layered textures, lighting, shaders, etc. Its fine if those things are already set in stone, never to be changed again, but I’ve run into quite a few “aesthetic debugging” problems with Unity while trying to get the desired final output of my visual imagination with a lot of shit going on.
Remarkably, its not much different from Photoshop, nor any other image editing software with layers. Isolate the fundamentals, one at a time.
Fundamental #1: Lighting
From a real world perspective, and to some extent in Unity, lights are the source of everything reflected back to the camera. Take critical time with lighting (especially real-time light sources). Depending on your scene, the lighting color, range and intensity can have an enormous impact on the overall color palette at runtime. Get this right on flat %50 gray textures before doing anything else. As you tweak other elements of the visual aesthetic of your scene, be wary of adjusting light too often. Only adjust if it’s the ONE thing you know you need to adjust.
Fundamental #2: Textures
Make sure your texture resolution is as high as your optimization can support. Fine tune the texture tiles until the texture image itself is clear and crisp at moderately close distances to your camera. Close viewing texture fidelity becomes even more important with the Oculus Rift, since players will be much more closely inspecting the environment around them. This will undoubtedly create texture tiling issues for anything beyond 10m or so (in Unity’s 1 = 1m default space). Shaders can help.
Fundamental #3: Shaders
Unity’s default terrain shader is pretty meh. While shooting for real world fidelity, I’ve found it necessary to use custom terrain shaders to get the best results. Lately, Ats Terrain Shaders and have been happy with the results. I’ve had to adjust the texture color in ATS due to it creating very very bright textures by default, but it may just be our real-time lighting. The shader hole goes deep, and I’m looking forward into diving into shaders more deeply soon.
Fundamental #4 Terrain
Much like Super Meat Boy, Nathaniel Doldersum’s Terrain Composer can be a bit brutal to get your head around. And its all your fault. The underlying design of the system is simply beautiful and incredibly powerful. Doldersum recently released an early beta of World Composer. Haven’t tried it yet, but with being able to import real-world map data via Bing, I can’t wait. Hands down the best investment in the Unity Asset Store so far. UFPS Camera being a close second, for player/camera controls and 3d object inventory.
Fundamental #5 Fog & Post Processing
Fog, Unity indie or pro, neither are prefect. They do, however, add an intangibly massive impact to the scene. Both are accessible via script at runtime. You want to do that. While powerful, either can quickly mask many other issues you may be having with the above mentioned. Fog is a broad brush, use it smartly.
For post processing effects, very lightly is the order unless for specific stylistic results. They can quickly overpower all the work you’ve done above. It should be noted that everything mentioned has a performance cost that must be evaluated for best results.
Fundamental #6: Use Reference
Save images you are inspired by. Edit down to what you really want. When you find some aspect of one you want to re-create, reference it OFTEN.
I hope to get more detailed in future posts.
Written byChristopher M McGarry
August 4, 2013 - 12:27 am