Skip to Content
DocumentationFeaturesSee-Through

See-Through

See-Through draws a second pass only when the material is occluded by other geometry — ideal for keeping your hero visible when they walk behind a wall. Genesis exposes it as a stencil-driven extra pass with optional dither, scan lines, or a solid silhouette.

Video

A character walking behind a wall, vanishing from the normal view but showing a cyan dithered silhouette drawn through the wall the moment they become occluded, then returning to normal when they step clear.

features/see-through/see-through-walk.mp4

A behind-wall silhouette appearing only while the character is occluded.

When to use it

  • Top-down and third-person games where the player can be occluded.
  • Tactical visibility — show key units even when blocked.
  • Stealth gameplay — silhouette enemies through cover.
  • Tutorial highlights — make a quest target visible behind doors.

How it works

Genesis adds a second SubShader pass with ZTest Greater and ZWrite Off. It writes only pixels that fail the depth test against the opaque scene — that is, those behind walls. The pass samples the same albedo, then tints, dithers, or solid-fills it based on the chosen mode.

Modes

  • Solid silhouette — a flat tinted silhouette behind walls. Best for gameplay-critical reads.
  • Dither stipple — a stippled silhouette for a subtler readout.
  • Scan-line — scrolling scan lines for the sci-fi targeting look.
Screenshot

The same occluded character shown three times behind a wall, one per mode — a flat Solid silhouette, a Dither stipple silhouette, and a Scan-line silhouette — each labelled with its mode name.

features/see-through/see-through-modes.png

The character vanishes behind a pillar, and you lose track of position.

A cyan dithered silhouette draws through the pillar; position stays readable.

Blocked, no see-through
Blocked + see-through · cyan dither

A blocked character with and without See-Through. Drag to compare.

Properties

Inspector labelShader propertyTypeDefaultDescription
Enable See-Through_SeeThroughEnabledToggleOffMaster toggle. Adds the behind-wall pass.
Silhouette Color_SeeThroughColorColor (HDR)RGB(0.3, 0.9, 1.0)Silhouette tint; HDR for bloom.
Intensity_SeeThroughIntensityFloat (0–8)1.0Overall brightness of the silhouette.
Mode_SeeThroughModeEnumSolidSolid, Dither, or ScanLine.
Pattern Scale_SeeThroughPatternScaleFloat (0.1–8)1.0Pattern tiling for Dither and ScanLine.
Edge Fresnel_SeeThroughFresnelFloat (0–4)1.0Edge fresnel — bright at the silhouette, fading inward.

Usage

  1. Enable See-Through on the hero’s material; the second pass is added automatically.
  2. Pick a Mode — Solid for gameplay-critical reads, Dither or ScanLine for cinematics.
  3. Tint it HDR cyan or warm orange for visibility through dark walls.
  4. If you have many see-through materials, use a Stencil Ref in Rendering Options to mask the pass against UI.
material.SetFloat("_SeeThroughEnabled", 1f); material.SetColor("_SeeThroughColor", new Color(0.3f, 1.0f, 0.9f) * 2.0f); material.SetFloat("_SeeThroughMode", 1f); // Dither

Tips & gotchas

  • Disable shadow casting on the see-through pass. Genesis does this internally, but it matters if you author custom variants.
  • The pass uses ZTest Greater, so it writes only where occluded. If your hero is never occluded, you will never see it.
  • Stencil-mask it from UI so character silhouettes do not punch through HUD elements.
  • It is one extra full draw, so reserve it for hero characters rather than every NPC.
Last updated on