问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Unity6游戏开发之InputSystem:通过事件和接口方式监听输入配置文件

创作时间:
作者:
@小白创作中心

Unity6游戏开发之InputSystem:通过事件和接口方式监听输入配置文件

引用
CSDN
1.
https://blog.csdn.net/qq_36303853/article/details/145312783

在Unity6中使用InputSystem进行游戏开发时,如何通过事件和接口方式对输入配置文件(Input Actions)生成的C#代码进行输入监听?本文将详细介绍这一过程,包括启用输入检测、操作监听相关、关键参数CallbackContext等内容。

知识回顾

前面介绍了输入配置文件(Input Actions),但是具体如何配合它进行输入监听呢?
这里需要先回顾一下前面InputAction里的事件started 、performed 、canceled 知识。
参考:【unity游戏开发之InputSystem——02】InputAction的使用介绍(基于unity6开发介绍)

1、启用输入检测

一定不要忘记了要先启用输入

move.Enable();  

2、操作监听相关

开始操作

move.started += StartedTestFun;
private void StartedTestFun(InputAction.CallbackContext context)
{
   
    print("开始事件调用");
}
  

真正触发

move.performed += (context) =>
{
   
    print("触发事件调用");
};
  

结束操作

move.canceled += (context) =>
{
   
    print("结束事件调用");
};
  

3、关键参数 CallbackContext

//真正触发
move.performed += (context) =>
{
   
    print("触发事件调用");
    //当前状态
    //没有启用 Disabled
    //等待 Waiting
    //开始 Started
    //触发 Performed
    //结束 Canceled
    
    print("当前状态" + context.phase);
    //动作行为信息 
    print("动作行为信息" + context.action.name);
    //控件(设备)信息
    print("控件(设备)信息" + context.control.name);
    //获取值
    //context.ReadValue<float>
    //context.ReadValue<Vector2>
    //持续时间
    print("持续时间"+context.duration);
    //开始时间
    print("开始时间"+context.startTime);
};
  

一、输入配置文件(Input Actions)生成C#代码

创建配置文件,配置文件中创建两套行为
选择InputActions文件,勾选
Generate C# Class
,在Inspector窗口设置生成路径,类名,命名空间。点击应用。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号