Back to Projects
Simulation January 29, 2017

Resato Waterjet Virtual Training

Overview

Resato Waterjet Virtual Training was a full 3D simulation of one of Resato's watercutting machines.

The project goal was to create a simulation in which trainees could learn to work with the machines without actually being on-site. Most importantly, the simulation would allow trainees to safely work with the machine without getting themselves or others in danger.

Architecture & Technical Details

StrangeIOC Framework

The Resato project was an opportunity for us to work with the relatively unknown StrangeIOC framework — an inversion of control framework for Unity that uses events or signals and contexts to define game behaviour.

Reusable Component System

This application had to be designed so we could re-use components for a new line of machines. My job was to create a system in which we could easily define behaviour by adding components to machines.

We ended up designing a system that used:

  1. Events to change a data model
  2. Data changed events to let the world respond to those changes

Backend Communication

I also created the communication between the app and the back-end using my own fork of the RestSharp library, due to incompatibility issues between Unity and the original library.