HMI components

only available in Professional

Please install CINEMACHINE via the package manager. Cinemachine is needed for controlling the camera position for HMI messages. Please also make sure that "CINEMACHINE" is added as Scripting Define Symbols (Project Setting > Player > Scripting Define Symbols)

HMI components are prefabricated UI components used to create 3D interfaces for automation systems. They can be connected to signals and integrated with various PLC interfaces such as S7TCP, TwinCAT, TwinCAT HMI, EthernetIP, OPCUA and more.


HMI components are organized into "Tabs" which are overlays on the 3D scene and can be opened and closed by buttons or certain events. All HMI components can be connected with Signals and by this the can control or display scene or machine data. Certain HMI components can utilize Unity's Cinemachine to manage multiple cameras and camera positions. To enable this functionality, ensure that you have the required compile definition in place

The following components can be used for building individual HMI interfaces:

Supported Use Cases

HMI components offer various use cases when combined with real machine controls. These include:

  1. Displaying custom texts, such as IDs of machine components at 3D positions

  2. Changing data on the industrial control by pushbuttons, sliders and pulldowns and switches

  3. Representing sensor states as colored elements (booleans) at 3D positions

  4. Showing values like axis positions and temperatures as 2D overlays or within the 3D scene

  5. Presenting messages (normal, warning, and failure) that are connected to PLC outputs and inputs, allowing for acknowledgments. These messages can trigger specific 3D views and initiate custom animation sequences based on logical steps.

Demo scene

The HMI demo scene contains most of the HMI functions. You find the demo scene realvirutal/professional/HMI/Demo/DemoHMI. Within the Demo folder you find also a scene with an example how to set up your own HMI. The scene "emptyHMIscene" is an example which can be used as a HMI prefab. The basic elements of this scene are available as prefabs.

Common properties

The following attributes are available at all interactive HMI components.

  • Color: standard of the element when no user interaction

  • Color Mouse Over: color when the mouse pointer is on the element

  • Alpha Visibility: determine the occupancy of the element

  • EventOnValueChanged: Unity event when the value of the connected signal is changing

HMI Controller

The HMI controller must be added as a component to the topmost GameObject in the HMI area. It manages camera position changes and can also restrict mouse navigation for the user.

Last updated