当前位置: 首页 > news >正文

Unity Input System自动生成配置

参考视频

创建及配置新输入系统 New Input System|Unity2022.2 最新教程《勇士传说》入门到进阶|4K_哔哩哔哩_bilibili

ProjectSettings设置

Unity编辑器菜单栏选择Edit->Project Settings->Player->Other Settings,将Api Compatibility Level 下拉列表选项改为.Net Framework,再将Active Input Handling 下拉列表选项改为BothActive Input Handling下拉列表选项可能有时候会没有,不懂是bug还是啥,此时可打开资源目录,将Library文件夹删除并重新打开项目使Active Input Handling出现。注:有Active Input Handling下拉列表时跳过删除Library文件夹步骤)。

导入Input System

Unity编辑器菜单栏选择Window->Package Manager->Unity Registry,搜索Input System 并Install

自动生成配置文件

选择场景中任意一个物体,在Inspect面板中选择Add Component->Player Input,然后单击Player Input组件的Create Actions,选择保存路径(我的选择是放在Settings文件夹下,文件命名PlayerInputControl)并设置配置文件名称即可生成一个包含游戏控制和UI控制的输入系统配置文件,生成的配置文件可自定义修改(修改完成记得点击Save Asset保存或开启Auto Save

配置可通过代码调用的Player Input Action

选中生成的配置文件PlayerInputControl,在Inspect面板中勾选Generate C# Class并点击Apply即可生成一个配置类。

通过代码使用Input System

创建一个输入系统管理类CharacterInputSystem,在类中实例化一个PlayerInputControl对象,使用该对象获取其成员属性(代码参考如下,可依据实际情况做修改)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class CharacterInputSystem : MonoBehaviour
{private PlayerInputControl inputActions;#region Bulit In Functionvoid Awake(){if (inputActions == null){inputActions = new PlayerInputControl();}}void OnEnable(){inputActions.Enable();}void OnDisable(){inputActions.Disable();}#endregion#region Key Settingpublic Vector2 PlayerMovement{get => inputActions.GamePlayer.Move.ReadValue<Vector2>();}public Vector2 CameraLook{get => inputActions.GamePlayer.Look.ReadValue<Vector2>();}#endregion
}

代码示例中的PlayerMovement属性获取的值对应上图,同理CameraLook属性对应Action Maps 为GamePlayLook的值。


http://www.mrgr.cn/news/40919.html

相关文章:

  • AccessoriesqueryController
  • Difference of Convex Relaxation (DC)
  • 基于深度学习的任务序列中的快速适应
  • Hive数仓操作(十)
  • 课设实验-数据结构-线性表-手机销售
  • 2024多模态大模型发展调研
  • buuctf--->Youngter-drive
  • 复习HTML(基础)
  • 重置linux后vscode无法再次使用ssh连接
  • 【ShuQiHere】深入理解 LC-3 指令集架构(LC-3 ISA):硬件与软件的桥梁 ️
  • 华为OD机试真题---数大雁
  • 在Ubuntu 14.04上安装带SSL的Webmin的方法
  • profile-spec-ref元素
  • 【计算机毕业设计】springboot企业客户信息反馈平台
  • Linux基础命令parted详解
  • 【简介Sentinel-1】
  • 【1】野火STM32F103VET6开发板入门笔记之点亮RGB
  • express,MySQL 实现登录接口,如果用户未注册直接注册
  • 黑马linux笔记(转载)
  • 信息安全工程师(28)机房安全分析与防护