快速上手
以下内容旨在快速在您的项目中使用 winS.Unity.Modules.Input。
创建输入模块
想要在项目中使用输入模块,您必须定义一个 winS.Unity.Modules.Input.InputModuleBase 的子类。
InputModule.cs
using winS.Unity.Modules.Input;
public class InputModule : InputModuleBase
{
}
添加输入动作
现在我们已经拥有了一个输入模块,想要使用输入,我们需要在模块中定义输入动作。 我们对上文的 InputModule 进行更新:
InputModule.cs
using winS.Unity.Modules.Input;
public class InputModule : InputModuleBase
{
public InputActionClick click { get; private set; } = new InputActionClick();
public override void Enable()
{
base.Enable();
click.Enable();
}
public override void Disable()
{
base.Disable();
click.Disable();
}
}
在上述代码中,我们在 InputModule 中定义了一个模块内置输入动作 InputActionClick,它可以用于点击的输入检测。
我们它设为静态属性以便可以从 InputModule 直接访问,同时通过覆写 Enable 和 Disable 方法,使模块可以正确控制该输入动作的启用/禁用。
使用输入
现在我们已经拥有了一个带点击的输入模块,我们可以用如下方式监听点击输入:
using UnityEngine;
using winS.Unity.Modules.Input;
public class UseInputExample : MonoBehaviour
{
private void Start()
{
InputModule.click.onClick += OnClick;
}
private void OnDestroy()
{
InputModule.click.onClick -= OnClick;
}
private void OnClick(ScreenPoint screenPoint)
{
Debug.Log($"Click! {screenPoint}");
}
}