Time Fantasy (Williams 1983)¶
VLM toolkit build of a Williams System 7 EM-era table by mcarter78 with apophis79 and tomate80. Notable for insert baking workflow innovations including the lens-top-as-bake-target technique and practical layer separator positioning guidance.
Build Story¶
A VLM toolkit build of this early-1980s Williams table. The build thread focused heavily on VLM insert workflow, with iterative troubleshooting of layer separators, insert cup normals, and bake target techniques between mcarter78, apophis79, and tomate80.
Table-Specific Details¶
Art & Visuals¶
- Insert bake target technique: Take the top face of the insert lens from the VLM parts library and use it as the bake target (removing the top face creates a cup shape). In VPX, add a clear insert primitive on top. This gives 3D geometry (starburst pattern, lens refraction) baked into the lightmap while maintaining a clean VPX surface.
- Insert cup normals: Must face upward (blue side up in Blender). Reversed normals cause inserts to bake too dark. Deep cups look weird in VR -- keep shallow. Remove top faces so light renders on bottom face only.
- Layer separator positioning: Must be positioned just barely below the playfield surface. If it intersects insert geometry, rendering artifacts appear. Hierarchy: playfield at ~0, layer separator just below, inserts below that. Also decrease the GI lightmap depth bias to match. See insert lighting guide.
- Playfield mask vs layer separator: Two valid approaches: (1) Cut real holes in PF mesh with PF mask (tomate80). (2) Keep PF intact with transparent material, add layer separator below (apophis79 -- necessary when using wood mask for procedural grain).
- Scratches and imperfection overlays: Use PBR imperfection maps from ambientCG (free, Public Domain) as overlay layers. Small objects like rubbers won't show tiling. Wave texture with noise grime overlay produces realistic rubber wear.
Physics & Gameplay¶
- Standup target physics: Balls losing all momentum on target hits indicates outdated physics material. Fix: set STMass=0.1 with updated elasticity and falloff values. Add missing block walls behind standup targets.
Known Issues¶
- VR playfield reflections: For intentionally scratched/worn playfield aesthetics, set BM_Playfield reflection strength very low (0.01). Reduce ball PF reflection to 0.5 or lower.
Techniques Developed Here¶
- Insert lens-top-as-bake-target technique for VLM was developed here
- Layer separator positioning guidance was refined during this build
See Also¶
- Insert Lighting -- toolkit insert workflow, layer separators
- 3D Art Pipeline -- texture imperfection overlays