unity新输入系统的简单使用(New InputSystem)

这篇具有很好参考价值的文章主要介绍了unity新输入系统的简单使用(New InputSystem)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、在包管理器 unity注册表中下载安装InputSystem
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
2、给玩家添加组件PlayerInput,点击CreatAction,创建一个InputAct
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
InputAct,这是玩家的输入文件,在里面可以设置玩家输入
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
3、使用
例如玩家控制角色移动
在InputAct中,默认已经设置好了移动的输入
这里是一个二维向量值
W(0,1)A(-1,0)S(0,-1)D(1,0)
当同时按WD时,前进距离(0.71,0.71)
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
判断玩家向前移动
键盘y=1
摇杆:y>0,但玩家会误触摇杆,所以最好设定一个误差值
输入设置阈值变量(Threshold)0.1,若y>0.1,则前进。
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
脚本中
获取玩家输入

private Vector2 playerInputVec;
public void GetPlayerMoveInput(InputAction.CallbackContext context)
{
    playerInputVec = context.ReadValue<Vector2>();
}

玩家移动举例

void FixedUpdate()
{
    MovePlayer();
}
void MovePlayer()
{
    targetSpeed = isRuning ? runSpeed : walkSpeed;
    targetSpeed *= playerInputVec.magnitude;//当玩家没按下或没有推动摇杆,目标速度为0
    currentSpeed = Mathf.Lerp(currentSpeed, targetSpeed, 0.5f);
    //*TiredIndex,目的是主角运动速度与体力消耗相关联,当耗尽则不会在运动,只有体力恢复才能继续运动
    animator.SetFloat("Sports", currentSpeed*TiredIndex);
}

回到unity,点击主角,在右侧打开PlayerInput组件
点击事件——Player,在Move那块点击加号,将挂载在玩家的脚本拖到黑框处(一定要将脚本拖进去,直接拖游戏对象不可以),在右侧选择刚才写好的输入方法GetPlayerMoveInput
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
4、如果默认的输入文件不够,可以自己添加
例如添加一个奔跑输入
点击InputAct
点击加号,就可以新建有个Action,根据自己行为命名
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
在右侧选择类型
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
然后点击Action右侧的加号添加Binding
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎
点击Binding,在右侧可以改名字,选择Path(输入类型,例如KeyBoard键盘等等)
在下面的Use in control scheme中设置具体的按钮即可
unity新输入系统的简单使用(New InputSystem),Unity3D游戏制作基础知识,unity,游戏引擎文章来源地址https://www.toymoban.com/news/detail-642757.html

到了这里,关于unity新输入系统的简单使用(New InputSystem)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity全新的输入系统InputSystem

    在Unity中,默认使用的是旧的输入管理器(InputSystemOld) 在脚本中,利用Input类可以获得用户的输入操作,以及访问移动设备的多点触控或加速感应数据,Input类可以读取输入管理器中设置的按键,在Updata函数中监测用户的输入。 1.虚拟轴 在项目设置中可以看到虚拟轴的相关设

    2024年02月05日
    浏览(54)
  • Unity之新版输入系统InputSystem入门

    最近Unity版本全面升级到Unity2021了,着色器也全面使用URP,接下来毫无疑问,输入系统也要全面升级InputSystem,这也是Unity官方希望我们做的,毕竟现在都2023年了,我们的技术是需要跟上时代的步伐。 老版本的InputSysten系统,其实就一个Input静态类,官方给我们预定了一些常用

    2024年02月16日
    浏览(42)
  • Unity之新版输入系统InputSystem如何自定义InputActions

    上一篇文章,我们介绍了如何使用新版本的InputSystem,我们知道了InputActionsAsset给我们提供了更多的灵活性,扩展性和复用性。那么这篇文章我们就来介绍一下如何创建自定义InputActionAsset Input Action Asset 包含输入 Actions及其关联的Bindings和Control Schemes 的资源。这些资源文件扩展

    2024年02月11日
    浏览(53)
  • Unity3d 制作一个简单的NPC对话系统

    ​ 最近在自己写一个比较小的项目,虽然自己是一个策划,但是程序方面我觉得也是很有必要学一学的。 ​ 经过了接近一年的学习,也终于是可以独自写一些小的系统了。 ​ 这次自己写了一个比较简单的NPC对话系统,供大家参考。 进入对话区域 开始对话 Inspector面板可调

    2023年04月08日
    浏览(47)
  • 【Unity3d】 教会你如何做一个简单的电梯系统(升降平台)

           博主第一次写博客,语言略俗,有不足之处还请指正!        由于自己还处在unity小白阶段,受2d升降平台的影响(后续我也会上传关于2d升降平台的文章),突发奇想如何用3d做一个电梯系统,查阅网上资料后,发现网上对这方面的讲解少之又少,或者说其他博主提

    2024年02月11日
    浏览(121)
  • Unity InputSystem 基础使用之鼠标交互

    官方文档 Package Manager 搜索Input System进行下载 启用该包,会重启Unity Editor InputSystem可以和旧版输入系统一起使用 设置:Project Settings-Player-Other Settings-Configuration-Active Input Handling 参数可选:Input Manager(old),Input System Package(New),Both

    2024年02月08日
    浏览(36)
  • 论Unity_InputSystem如何使用(一)

    在Window——PackageManage中搜索InputSystem,下载导入。如果搜不到,则调整为UnityRegistry。 Edit——ProjectSettings——Player——OtherSettings——Configuration——Active Input Handling,选择旧版或者新版,也可以选择兼容。 三、使用 请使用InputSystem为一个3D对象制作通过键盘移动跳跃,鼠标攻

    2024年02月02日
    浏览(37)
  • unity3D 鼠标键盘输入

    一、鼠标键盘输入 游戏的输入可以来自于鼠标,键盘,触摸屏,游戏手柄 显示一个Vector3类型的xyz的鼠标位置。 Input.GetButtonDown(0):0代表鼠标左键,1代表鼠标右键,如果鼠标左键按下返回true。 Input.GetKeyDown(\\\"space\\\"): 检测空格是否按下。 更多操作可以查看Unity Script API( UnityE

    2024年02月10日
    浏览(81)
  • 【Unity3D】程序纹理简单应用

            本文所有案例的完整资源详见→Unity3D程序纹理简单应用。 1.1 边框          1)边框子图         Border.shadersubgraph         说明:Any 节点用于判断输入向量中是否存在一个分量非零,Branch 节点根据输入的真假走不同的分支,详见→Shader Graph节点。       

    2024年02月12日
    浏览(39)
  • 【unity3D】unity记忆翻牌小游戏教程(简单详细)

    游戏开发的 学习记录 ⑨ (最近在做得游戏里想加一个类似于记忆翻牌小游戏得部分,然后在网上收集了资料学习了一下,学会后写下这份制作记录,希望可以帮到你~) 📜一位大佬的博客,写的很详细:【Unity3D游戏教程】记忆翻牌游戏 (大家可以先看大佬这篇,我写这篇

    2024年02月07日
    浏览(284)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包