Published using Google Docs
Motion Platform Linker Documentation
Updated automatically every 5 minutes

Prismatic Studios

Motion Platform Linker Documentation

UE 4.26 - 5.5 | Motion Platform Linker V1.0.1

The Motion Platform Linker plugin is available on the Unreal Engine Marketplace here.

Motion Platform Linker

The Motion Platform Linker is a code plugin that integrates an Unreal Engine application with a locally running SimRacingStudio application. With easy-to-use and exposed to blueprint functions you can quickly send Unreal Engine data to SimRacingStudio as telemetry to power a range of motion platforms.

Get Started

Enable the plugin

First, ensure that the plugin is installed by navigating to the Plugin Window through Edit->Plugins. Then, enable the plugin if it is not already enabled.

Install SimRacingStudio

SimRacingStudio is a plug-and-play application that can power a range of motion platforms and other immersive peripherals. Facilitating the quick and easy transfer of data between Unreal Engine and SimRacingStudio is the purpose of the Motion Platform Linker plugin.

SimRacingStudio can be downloaded for free here. Please note that your Unreal Engine application users will also have to follow the SimRacingStudio related setup if they wish to use their motion platforms with your application.

Configure SimRacingStudio

Once installed, you’re just a couple of clicks away from being able to receive telemetry in SimRacingStudio. When first running the application you will be presented with a screen as shown below. Navigate to the GAMES tab in the top center of the screen.

Once in the GAMES tab, there will be two options on the left-hand side of the screen, Games, and Telemetry. Select Telemetry, and once on the Telemetry screen turn the Capture toggle On. SimRacingStudio is now fully set up to receive and show the telemetry it receives from your Unreal Engine application. SimRacingStudio should look like the following.

Send Data from Unreal Engine

With the plugin enabled and SimRacingStudio installed and configured, you’re ready to send data from your Unreal application. The easiest way to do this is to use the Send Simple Motion Data node, if you need more control over the data you send you can look ahead to the Advanced section of the documentation.

Send Simple Motion Data takes in a Simple Telemetry Packet struct and sends it over UDP to the local SimRacingStudio application. An example of how to use this node can be seen below.

Now, when running your Unreal application SimRacingStudio should be showing your in-game data!


Advanced

Using the Send Motion Data node

You will want to use the Send Motion Data node for more control over all of the data available to send in the SimRacingStudio API. This node takes in a Telemetry Packet struct and similarly sends it over to a local SimRacingStudio application via UDP. An example of how to use this node can be seen below.


The SimRacingStudio API and Telemetry Packet Struct

Please reference how each of the structs fields will be used and what values are expected to best populate the Telemetry Packet.

Field

Type

Description

Expected Value

Game

String

Telemetry origin

E.g. Unreal App

Vehicle Name

String

Vehicle name

E.g. Unreal Vehicle

Location

String

Venue name

E.g. Unreal Level

Speed

Float

Wind speed

0 to 400, in any units

RPM

Float

Engine current RPM

0 to 32000

Max RPM

Float

Engine max RPM for SLI

0 to 32000

Gear

Int

Vehicle gear

-1 = Reverse, 0 = Neutral, 1 to 9 = Gears

Roll

Float

Roll

Degrees -180 to +180

Pitch

Float

Pitch

Degrees -180 to +180

Yaw

Float

Yaw

Degrees -180 to +180

Lateral Velocity

Float

Used for traction loss

-10 to 10

Lateral Acceleration

Float

Lateral G-Force (Sway)

-10 to 10

Vertical Acceleration

Float

Vertical G-Force (Heave)

-10 to 10

Longitudinal Acceleration

Float

Longitudinal G-Force (Surge)

-10 to 10

Suspension Travel Front Left

Float

Suspension Travel FL

-10 to 10

Suspension Travel Front Right

Float

Suspension Travel FR

-10 to 10

Suspension Travel Rear Left

Float

Suspension Travel RL

-10 to 10

Suspension Travel Rear Right

Float

Suspension Travel RR

-10 to 10

Wheel Terrain Front Left

Int

Wheel Terrain Contact Type FL

0 = All Others, 1 = Rumble Strip, 2 = Asphalt

Wheel Terrain Front Right

Int

Wheel Terrain Contact Type FR

0 = All Others, 1 = Rumble Strip, 2 = Asphalt

Wheel Terrain Rear Left

Int

Wheel Terrain Contact Type RL

0 = All Others, 1 = Rumble Strip, 2 = Asphalt

Wheel Terrain Rear Right

Int

Wheel Terrain Contact Type RR

0 = All Others, 1 = Rumble Strip, 2 = Asphalt

Resources

Motion Platform Linker Demo Project

The demo project that can be downloaded here contains a simple actor undergoing motion with an example of using both of the blueprint exposed functions.

To install, extract the content of the zip into an empty folder and open the Unreal Project by double-clicking on the .uproject file.

This project is designed to run with Unreal 4.26.0 and tested on Unreal 4.26.2