When 3D models presented in the Looking Glass have great materials on them, it almost feels like you can reach out and touch them. Of course, there can be significant time saved in art pipelines with non-photorealistic styling, like flat (or β€œtoon”) shading, voxels, and lo-fi aesthetics in general, but to get things to feel physically present, tricks usually reserved for working towards photorealism tend to work best.


While adding your own custom will always give you more customizability, we've found that the standard Unity shaders work quite well for Looking Glass content.


Use a Good UV Map

UVs are coordinates assigned to vertices, which tell each face using that vertex what part of your texture should be stretched across said face. If your model is completely missing UV's, it won't get any texture at all. If your model has questionable or auto-generated UV's, you might see some jagged irregularities in textures or ugly, distracting seams.

Use a Good Normal Map

Good normals will hugely improve your model’s illusion of presence in the Looking glass, and make interaction with your light sources much more interesting. Normal textures are 2D representations of vectors (XYZ encoded as RGB), which will help determine how each face receives light from the scene. There's a few tools for creating these for your models if they’re not already there:
Another way to generate a Normal map if all you have is an Albedo is with Photoshop. Convert it to grayscale, then Filter > 3D > Generate Bump Map.
If you are looking for a quick way to add texture, you can add a generic looping texture to your normals. Simply search for β€œtiling water normal map” on an internet image search engine, and import them onto your model’s normals.

Other Maps

UV and Normal maps help set a sense of texture, but don’t overlook other types of maps as well, including:
  • Metallic / specular for specular shininess
  • Height / bump for occlusion
  • Occlusion / obscurance for realistic crevices

Avoiding Texture Compression

By default, Unity compresses any texture over 2k. Resolution increases can be achieved through the texture import settings.

Smoothness and Metallic Values

These values, while not necessarily important in other 3D applications, may serve to enhance the appearance of depthiness of LKG content by producing subtle highlights. Experiment with these for the greatest effect in conjunction with the texture's normal map intensity value.

Note about Lighting

The final appearance of any material will depend greatly on the lights in the scene as well as the scene-wide lighting settings, which can be access through Window > Rendering > Lighting Settings