A simple haptics interface that allows to control two motors individually.
public interface IDualMotorRumble : IHaptics
Dual-motor control is most common on gamepads (see Gamepad) such as Xbox and PlayStation controllers.
Set the motor speeds of the low-frequency (usually on the left) and high-frequency (usually on the right) motors.
void SetMotorSpeeds(float lowFrequency, float highFrequency)
Speed of the low-frequency (left) motor. Normalized [0..1] value with 1 indicating maximum speed and 0 indicating the motor is turned off. Will automatically be clamped into range.
Speed of the high-frequency (right) motor. Normalized [0..1] value with 1 indicating maximum speed and 0 indicating the motor is turned off. Will automatically be clamped into range.
Note that hardware will put limits on the level of control you have over the motors. Rumbling the motors at maximum speed for an extended period of time may cause them to turn off for some time to prevent overheating. Also, how quickly the motors react and how often the speed can be updated will depend on the hardware and drivers.