ForceSeatMI (Motion Interface) is a programming interface that allows to add a motion platform support to basically any application or a game. The ForceSeatMI does not control hardware directly – it sends all data to ForceSeatPM. This approach delegates responsibility of transforming telemetry data to a real motion from the application to ForceSeatPM. It means that application developers do not have to worry about things like platform disconnections, transmission errors, thermal protection warnings or signal filtering.
ForceSeatMI is an easy to use yet powerful interface that allows to add a motion platforms support to any application or game (referred as SIM in next sections). In most applications there is no need to control the hardware directly from the SIM. Because of that ForceSeatMI is used only to send telemetry or positioning request to ForceSeatPM. This approach delegates responsibility of transforming telemetry data to an actual platform motion from the SIM to ForceSeatPM. It also simplifies error handling that the SIM has to implement.
With the latest version of the ForceSeatMI, it is possible to control the hardware with usage of Inverse Kinematics. The SIM sends required top frame position and ForceSeatPM calculates required arms (or actuators) positions. This feature can be used in application where precise positioning is required instead of forces simulation.
- SIM can choose between operation modes: forces simulation (telemetry), fast top frame positioning and precise top frame positioning
- SIM does not have to translate telemetry data to an actual motors position – it is done by ForceSeatPM
- SIM does not depend on specific motion platform hardware, hardware related adjustments are done inside ForceSeatPM
- All diagnostic and processing features of ForceSeatPM are still available and may be used
- Following languages and frameworks are supported out of the box: C, C++, C#, Unity 3D(C#) , Unreal Engine (C++)
- Native API dll is compiled with Visual Studio 2013 – static linking with MSVC is used.
- Unity 3D examples require Unity 5.x, Unity 2018.x.y or Unity 2019.x.y+
- Unreal Engine examples require Unreal Engine 4.14, 4.15, 4.18, 4.20 or 4.21+
- C# examples require at least Visual Studio 2013 Express for Windows Desktop and .NET Framework 4.0.
- C/C++ examples require at least Visual Studio 2013 Express for Windows Desktop.
- It supports only Windows PC