31 lines
1.5 KiB
C#
31 lines
1.5 KiB
C#
|
namespace UnityEngine.InputSystem.Haptics
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// A simple haptics interface that allows to control two motors individually.
|
||
|
/// </summary>
|
||
|
/// <remarks>
|
||
|
/// Dual-motor control is most common on gamepads (see <see cref="Gamepad"/>) such as
|
||
|
/// Xbox and PlayStation controllers.
|
||
|
/// </remarks>
|
||
|
public interface IDualMotorRumble : IHaptics
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// Set the motor speeds of the low-frequency (usually on the left) and high-frequency
|
||
|
/// (usually on the right) motors.
|
||
|
/// </summary>
|
||
|
/// <param name="lowFrequency">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.</param>
|
||
|
/// <param name="highFrequency">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.</param>
|
||
|
/// <remarks>
|
||
|
/// 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.
|
||
|
/// </remarks>
|
||
|
void SetMotorSpeeds(float lowFrequency, float highFrequency);
|
||
|
}
|
||
|
}
|