CORPORATE PROJECT
Mulcol: VR Firestop Assembly Simulation
Room-scale VR assembly simulation with Unreal Engine and SteamVR; physics-based interaction, haptic feedback and performance optimization.
ENGINEERING IMPACT
Measured scope and outcomes
- Experience scale
- Room-scale VR
- interaction model
- Physics + haptic feedback
- Intended use
- Safe training scenarios
Simulation that simulates field scenarios in physical space.
Rehearse assembly steps safely and tactfully.
Process trial without real field risk.
Quick Summary
- Role: Lead Developer (feliXart studios)
- Company/Client: Mulcol
- Duration: September 2016 - September 2017
- Platform/Headset: HTC Vive, room-scale VR
- Engine: Unreal Engine 4.x (C++)
- Highlight: Production-ready VR simulation experience for trade show demo
Timeline (2016-2017-2017)
- 2016-09: Project start, simulation scenarios and VR prototype.
- 2017-09: Completion of delivery and internal simulation scenarios.
- 2017: Vakbeurs Gorinchem (Netherlands) fair demo.
- 2017-09-30: Page publication date (pubDate).
Problems and Constraints
- The need for safe simulation for risky assembly processes in the field.
- Site preparation costs and risk of equipment damage.
- High performance and low latency imperative for Room-scale VR.
- Requirement for long-term stable operation in the fair environment.
Solution Summary
I brought the firestop assembly to the VR environment with physics-based interaction and guided workflow on Unreal Engine and SteamVR. The simulation scenarios were governed by a progression system that verified the sequential assembly of real parts.
Architecture Overview
- SteamVR tracking pipeline: Low latency input stream for HMD + controller data.
- Thread separation: Input thread -> game thread data transfer and update.
- Input mapping: Action map and gesture control for trigger/grip/touchpad.
- Locomotion: Teleport + room-scale walking combination.
Interaction Design
- FSM: idle -> hover -> grab -> snap -> lock flow.
- Snapping tolerances: automatic alignment based on position and rotation thresholds.
- Haptics: different vibration patterns at grab, snap and success moments.
Performance Engineering (90 FPS / 11 ms)
- Draw call optimization with forward rendering and instanced stereo.- Reduced GPU load with LOD, visibility and texture streaming.
- Frame budget target: 11 ms, measurement: Unreal Insights + SteamVR frame timing.
Production Preparation for the Fair
- Stress testing and crash recovery flows.
- Thermal management and quality reduction strategies.
- Short onboarding flow for first users (teleport + grab practices).
Impact/Results
- Stable performance - 90 FPS / 11 ms frame budget - measurement: Unreal Insights + SteamVR frame timing.
- Demo density - ~60 sessions per day - period: Vakbeurs 2017 - source: fair logs (client-reported).
- Likes rate - 95% "very impressive" - period: Vakbeurs 2017 - source: event survey (client-reported).
- Onboarding time - shortened by 3 weeks - period: [X], baseline: traditional onboarding - source: internal onboarding KPI (client-reported).
- Equipment damage - zero - period: [X] - source: maintenance/incident logs (client-reported).
Basic Tradeoffs
- Teleport vs smooth locomotion: teleport-oriented design for comfort.
- Baked lighting vs real-time: baked lighting preferences for stable FPS.
- Realism vs performance: balance with LOD while maintaining PBR quality.
FAQ
Why were SteamVR and HTC Vive chosen?
Due to room-scale tracking and controller ecosystem.
How was 90 FPS maintained?
With forward rendering, instanced stereo, LOD and visibility optimizations.
How was the interaction flow designed?
With the FSM structure, snap and lock stages are controlled.
How was haptic feedback used?
With different vibration patterns at moments of contact, alignment and success.
How was CAD data integrated?
CAD models were optimized and imported into VR with LOD and material simplifications.
How was stability ensured in the fair environment?
With stress testing, thermal monitoring and automatic recovery flows.
Project Imprint
- Client: Mulcol Fire Suppression Technologies
- Developer Company: feliXart studios
- Role: Lead Developer
- Project Duration: September 2016 - September 2017
- Page Date: 2017-09-30
- Event: Vakbeurs Gorinchem 2017, Netherlands
- Platform: HTC Vive (room-scale VR)
- Engine: Unreal Engine 4.x -Core Language: C++
- VR Framework: SteamVR