unity2022.1.8之后版本的新的输入行为控制对象变化

2023-10-29

unity2022.1.8之后版本的新的输入行为控制对象变化

我们先了解大概的逻辑。我们要设置触发行为的方式并且让他和对象的行为绑定,再将行为和对象绑定,最后再绑定对应对象的行为函数里的函数方法,实现我们要的通过触发来控制对象变化。

请添加图片描述

在那之前,我们要先导入对应的包。

怎么导入?

先在系统设置里去启动新的输入方式。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o4PuoTEI-1676079644524)(C:/Users/86188/AppData/Roaming/Typora/typora-user-images/image-20230210093710374.png)]

然后会有提醒,让我们重启。

去仓库里把对应新版本的包下载下来。
在这里插入图片描述

然后就可以使用了。

如何使用?

  • 创建行为和对应触发方式

在任意文件夹下右键 >create>Input Actions 创建对应的绑定文件。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MH4iT0Zm-1676079644527)(C:/Users/86188/AppData/Roaming/Typora/typora-user-images/image-20230210101815002.png)]

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这样frog对象的行为我们就设置好了,接下来就只需要让他和我们的图中对象进行绑定就好了。

  • 将刚才行为的触发方式和对象绑定。
    在这里插入图片描述

  • 创建对应的反应函数:
    在这里插入图片描述

  • 把做出的变化绑定到对象上

在这里插入图片描述

我们编辑下具体要做出的动作:在按下跳跃键后输出台会输出 “起跳!!!!!”。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;

public class PlayController : MonoBehaviour
{
   public void jump()
   {
    Debug.Log("起跳!!!!!");
   }
}

我们再把它和行为绑定。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C92xhbAn-1676079644532)(C:/Users/86188/AppData/Roaming/Typora/typora-user-images/image-20230210145516419.png)]

这样,我们就可以看到 "起跳!!!!!"被执行了。恭喜你,已经学会了如何去将触发和人物的变化进行绑定。
在这里插入图片描述

之后是DLC,记录了一个小问题。

DLC : 结果被执行了两次

"起跳!!!!!"被执行了,但被执行了两次。

为什么呢?

我们再加入一个回调参数,帮助我们观察这之中究竟发生了什么。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;

public class PlayController : MonoBehaviour
{
   public void jump(InputAction.CallbackContext context)//这里加入回调参数
   {
    Debug.Log("起跳!!!!!" + context);
   }
}

之后需要重新选择下函数。

在这里插入图片描述

我们看下结果:

在这里插入图片描述

可以发现如果我们不刻意规定,它默认是在 开始阶段达到操作要求阶段 都会执行我们要的操作,这显然是不合理的。

我们加个 if 规范下它。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;

public class PlayController : MonoBehaviour
{
   public void jump(InputAction.CallbackContext context)
   {
      //TODO:这个todo是标记我们要在这个函数里做什么,除此之外没什么蛋用。

      //如果玩家已经达到操作触发要求,那么打印 “起跳!!!!!”
      if(context.phase == InputActionPhase.Performed) Debug.Log("起跳!!!!!" + context);

   }
}

可以发现这样的话,就只打印了一次。

在这里插入图片描述

问题圆满解决!!! 撒花!!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

unity2022.1.8之后版本的新的输入行为控制对象变化 的相关文章

  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • Java EE:如何获取我的应用程序的 URL?

    在 Java EE 中 如何动态检索应用程序的完整 URL 例如 如果 URL 是 localhost 8080 myapplication 我想要一个可以简单地将其作为字符串或其他形式返回给我的方法 我正在运行 GlassFish 作为应
  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • JAXb、Hibernate 和 beans

    目前我正在开发一个使用 Spring Web 服务 hibernate 和 JAXb 的项目 1 我已经使用IDE hibernate代码生成 生成了hibernate bean 2 另外 我已经使用maven编译器生成了jaxb bean
  • 反射找不到对象子类型

    我试图通过使用反射来获取包中的所有类 当我使用具体类的代码 本例中为 A 时 它可以工作并打印子类信息 B 扩展 A 因此它打印 B 信息 但是当我将它与对象类一起使用时 它不起作用 我该如何修复它 这段代码的工作原理 Reflection
  • 斯坦福 NLP - 处理文件列表时 OpenIE 内存不足

    我正在尝试使用斯坦福 CoreNLP 中的 OpenIE 工具从多个文件中提取信息 当多个文件 而不是一个 传递到输入时 它会给出内存不足错误 All files have been queued awaiting termination
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • JRE 系统库 [WebSphere v6.1 JRE](未绑定)

    将项目导入 Eclipse 后 我的构建路径中出现以下错误 JRE System Library WebSphere v6 1 JRE unbound 谁知道怎么修它 右键单击项目 特性 gt Java 构建路径 gt 图书馆 gt JRE
  • 总是使用 Final?

    我读过 将某些东西做成最终的 然后在循环中使用它会带来更好的性能 但这对一切都有好处吗 我有很多地方没有循环 但我将 Final 添加到局部变量中 它会使速度变慢还是仍然很好 还有一些地方我有一个全局变量final 例如android Pa
  • 如何在 javadoc 中使用“<”和“>”而不进行格式化?

    如果我写
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 声明的包“”与预期的包不匹配

    我可以编译并运行我的代码 但 VSCode 中始终显示错误 早些时候有一个弹出窗口 我不记得是什么了 我点击了 全局应用 从那以后一直是这样 Output is there but so is the error The declared
  • 编译器抱怨“缺少返回语句”,即使不可能达到缺少返回语句的条件

    在下面的方法中 编译器抱怨缺少退货声明即使该方法只有一条路径 并且它包含一个return陈述 抑制错误需要另一个return陈述 public int foo if true return 5 鉴于Java编译器可以识别无限循环 https
  • 捕获的图像分辨率太大

    我在做什么 我允许用户捕获图像 将其存储到 SD 卡中并上传到服务器 但捕获图像的分辨率为宽度 4608 像素和高度 2592 像素 现在我想要什么 如何在不影响质量的情况下获得小分辨率图像 例如我可以获取或设置捕获的图像分辨率为原始图像分
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • java.lang.IllegalStateException:驱动程序可执行文件的路径必须由 webdriver.chrome.driver 系统属性设置 - Similiar 不回答

    尝试学习 Selenium 我打开了类似的问题 但似乎没有任何帮助 我的代码 package seleniumPractice import org openqa selenium WebDriver import org openqa s
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j

随机推荐

  • DVWA-BruteFoce高级安全

    DVWA security high GET包结构 比起来之前low medium等级 可以看到这里多了一个参数 user token 为了防止重放攻击 但是明显能看出来user token就是用户输入密码的md5形式 直接用burpsut
  • 用ChatGPT生成openAI全景报告

    云孚科技基于业内领先的自然语言处理 知识图谱 语义匹配 智能写作等技术 打造了云孚开源情报系统YFINT 并结合ChatGPT模型成果 重磅推出OpenAI调研报告 ChatGPT简介 2022年11月30日 总部位于旧金山的OpenAI推
  • 【13届蓝桥杯复盘】九进制转十进制 顺子日期

    问题描述 九进制正整数 2022 下标9 转换成十进制等于多少 方法 权值展开 2 93 2 9 2 9 0 1478 如果 一定要用代码来实现 C 代码如下所示 include
  • python+selenium实现cookie登录,并抓取指定类class下的html内容

    个人研究学习研究用 1 首先通过链接手动登录 https www educity cn 获取cookie信息 2 再使用站点cookie登录 跳转到https uc educity cn tiku testReport html id 80
  • Hadoop组件的一些总结

    前言 Hadoop是一个由Apache基金会所开发的分布式系统基础架构 用户可以在不了解分布式底层细节的情况下 开发分布式程序 充分利用集群的威力进行高速运算和存储 提示 以下是本篇文章正文内容 下面案例可供参考 一 Hadoop的组成 H
  • [转]为什么未来不需要我们?

    为什么未来不需要我们 在21世纪 我们威力无比的三种科技 机器人 基因工程和纳米技术正在使人类成为濒危物种 作者 比尔 乔伊 自从我从事科技创造的那一刻起 我就关注其在伦理上的问题 但直到1998年秋天我才认识到我们在21世纪面临着多大的危
  • python3+flask 开发web(一)

    1 环境准备 1 安装Python https www python org 2 安装python ide pycharm https www jetbrains com pycharm 3 安装flask 安装好了python 电脑就自动
  • 如何使用gdb调试java虚拟机_GDB入门教程之如何使用GDB启动调试

    GDB The GNU Project Debugger 是 Linux 系统下调试 C 和 C 程序的主要神兵 Vim教程网 https vimjc com 介绍多种方式下使用 GDB 启动进程调试的方法和命令 要使得 C 和 C 程序能
  • varchar和char的区别

    1 char n 和varchar n 中括号中n代表字符的个数 并不代表字节个数 所以当使用了中文的时候 UTF8 意味着可以插入m个中文 但是实际会占用m 3个字节 即 n限制了存储多长的值 但是所占用的空间大小不一致 例如varcha
  • 使用 Amazon Rekognition API 进行文本检测和 OCR

    使用 Amazon Rekognition API 进行文本检测和 OCR 这篇博客将介绍如何 使用Amazon Rekognition API 进行文本检测和 OCR 包括如何创建 Amazon Rekognition密钥 安装boto3
  • Java 中的集合框架有哪些?(十四)

    Java 中的集合框架包含了各种不同类型的集合和数据结构 用于存储和处理数据 这些集合和数据结构可以提高程序的性能和可读性 并且可以方便的进行数据操作和算法实现 本文将介绍 Java 中的集合框架 以及各种不同类型的集合和数据结构 Java
  • Vue父子组件传值---- $listeners子传父的父

    最近在写vue子组件给父组件传值时 一不小心写了五个组件 这个时候用到了子组件给父组件传值 其中不乏子组件跨过它的父组件 给它的父组件的父组件传值 也就是给它的爷爷传值 听到这里是不是快晕了 来 上干货 这是demo1 也是最底层的子组件
  • JavaSE - 集合类-单列集合框架

    JavaSE 集合类 单列集合框架 本节学习目标 了解Java单列集合框架结构 了解并掌握Collection接口及其方法 了解并掌握List集合 接口 及其方法 了解并掌握Set集合 接口 及其方法 了解并掌握Queue集合 接口 及其方
  • 【Hexo github】进行SSH认证时报错git操作提示git@github.com: Permission denied (publickey)(已解决)

    进入git bash界面然后 SSH keys 1 git config global list 2 git config global user name yourname git config global user email ema
  • Vue3+swiper5 异步请求数据后轮播图出现无分页器小圆点和无法滑动的问题,如果有默认图片则从最后一张切换到第一张时会展示默认图片

    一 场景描述 异步请求获取到11张图片 页面播图无分页器小圆点和无法正常滑动 package json devDependencies vue cli plugin babel 4 5 13 vue cli plugin router 4
  • 30,31-添加类功能视图

    这节分两部分 一 如何将代码从关卡蓝图转到类蓝图中 二 如何在类蓝图中切换灯光 1 通过判断和灯的距离切换灯光 2 通过文本提示切换灯光 先看第一个问题 如何将代码从关卡蓝图转到类蓝图中 其实这个很好理解 关卡蓝图相当于main 函数 关卡
  • Springboot + MySQL+ JPA Ⅳ find自带方法详解

    find是CRUD中的R 是使用得最多的方法 此篇先整理下自带的find方法 不需要在dao层写对应接口 后续会整理下拓展方法 一 getById 通过id进行单个查询 跟findById差不多 返回值类型不一样 service层 Tran
  • sqli-labs: Less 21-65 通关教程

    第二十一关 cookie注入 YOUR COOKIE uname RHVtYg and expires Sat 16 Jul 2016 08 32 26 注 RHVtYg 是 Dumb 经Base64加密后的值 和上关又是差不多 base6
  • python匹配ip地址

    ip地址是用3个 号作为分隔符 分割4个数字 每个数字的取值在 0 255 一般日志文件中的ip地址都是有效的ip地址 不需要我们再去验证 因此 若从日志文件中提取ip 那么可以简单写成这样 gt gt gt import re gt gt
  • unity2022.1.8之后版本的新的输入行为控制对象变化

    文章目录 unity2022 1 8之后版本的新的输入行为控制对象变化 怎么导入 如何使用 unity2022 1 8之后版本的新的输入行为控制对象变化 我们先了解大概的逻辑 我们要设置触发行为的方式并且让他和对象的行为绑定 再将行为和对象