1.将键盘信号转换为游戏抽象信号

将键盘输入转换成Dup和Dright两个抽象信号,这两个信号的值在-1到1之间

    public string keyUp = "w";public string keyDown = "s";public string keyLeft = "a";public string keyRight = "d";public float Dup;//将虚拟按键转换成信号public float Dright;void Update(){Dup = (Input.GetKey(keyUp) ? 1.0f : 0) - (Input.GetKey(keyDown) ? 1.0f : 0);Dright = (Input.GetKey(keyRight) ? 1.0f : 0) - (Input.GetKey(keyLeft) ? 1.0f : 0);}

输入衰减和旗标(Flag)

使用Mathf中的SmoothDamp来平滑我们的两个信号值
引入新的变量

  public bool inputEnabled = true;private float targetDup;private float targetDright;private float velocityDup;private float velocityDright;

在信号值赋值的时候,我们采用平滑的结果

        targetDup = (Input.GetKey(keyUp) ? 1.0f : 0) - (Input.GetKey(keyDown) ? 1.0f : 0);targetDright = (Input.GetKey(keyRight) ? 1.0f : 0) - (Input.GetKey(keyLeft) ? 1.0f : 0);if(inputEnabled == false){targetDup = 0;targetDright = 0;}Dup = Mathf.SmoothDamp(Dup, targetDup, ref velocityDup, 0.1f);Dright = Mathf.SmoothDamp(Dright, targetDright, ref velocityDright, 0.1f);

通过旗标(flag)我们来控制内部一些功能的启用,方便我们的控制。

Unity-黑暗之魂复刻-玩家输入输出相关推荐

  1. unity简单复刻无敌破坏王

    使用unity简单复刻无敌破坏王总结 国庆突发奇想想简单复刻一下无敌破坏王,这里写一些总结,希望也能对大家有帮助 游戏截图: 基本思路: 时间有限,也只是简单复刻,所以只实现破坏方块的功能,画面算是广 ...

  2. 傅老师黑暗之魂复刻笔记(第一季第一部分)

    1. 在Unity中通过一维混合树实现人物静止与跑动之间的动态切换,可以通过一维的参数混合两个动画,forward值为0时静止,1时完全走动: 2. GetComponent函数全部在Awake和St ...

  3. [技美CG]Unity3D复刻UnityShader 之 ShaderToy - Bubbles

    Unity3D复刻UnityShader 之 ShaderToy - Bubbles 背景: 官方地址/参考资料: ShaderToy-Bubbles原始代码: Unity复刻开始 核心显示类: 核心 ...

  4. Unity复刻骑砍中的帝国象棋(一)

    Unity复刻骑砍中的帝国象棋(一) 起因和简介 这两天从一款游戏中发现了这么个棋类小游戏,觉得挺有意思,没错,就是下面这个: 作为程序员的我,一下就想到复刻它一下.这个棋类小游戏,我并不知道它确切的 ...

  5. Unity3D-黑魂复刻学习-(1)玩家输入模块

    前言:一直都没养成写博客的习惯,导致学了的知识老是会忘记,最近决定重心放在Unity上,于是回顾下Unity的黑魂教程,顺便强迫自己写博客.此系列参照傅老师的黑魂复刻教程学习,bilibili-av2 ...

  6. 【Mib自看】黑魂复刻Unity脚本

    [课程地址]B站傅老师Unity课程学习记录,仅代表个人理解. [自看]黑魂复刻Unity脚本 1.移动脚本 设计思路 2.动画 动画脚本:ActorController + 输入脚本:PlayerI ...

  7. 复刻 Unity编辑器 移动的方式

    复刻 Unity编辑器 移动的方式 第一人称移动 自定义键值补充 代码搭载 老规矩,直接上代码: 第一人称移动 using System.Collections; using System.Colle ...

  8. Unity黑魂复刻经典教程心得(三)-CameraController

    CameraController 1.根据角色的位置来计算camera的位置 targetLookAt = new GameObject("targetLookAt").trans ...

  9. Unity黑魂复刻经典教程心得(一)

    b站上傅老师的黑魂复刻教程,是比较好的,傅老师风情幽默,值得种草 https://www.bilibili.com/video/BV1gW411T7yb?p=55

最新文章

  1. 3大主流前端框架对比
  2. 组词组合 php,PHP组词算法实现详解
  3. caffe 中的一些参数介绍
  4. python中数据用折线图表示_用python处理文本数据
  5. python-基础回顾
  6. 通过apicloud实现的混合开发App的Demo
  7. 拖动无边框窗体(VB6代码)
  8. android webview 字体被放大,Android WebView文字大小调整及页面缩放调整
  9. 使用 CocoStudio 创建 Cocos2d-x 序列帧和骨骼动画
  10. html5浏览器最小化,javascript – 在浏览器最小化时引起用户的注意(跨浏览器桌面通知?)...
  11. 最经典的大数据案例解析(附代码)
  12. matlab安装自行下载的工具箱
  13. 阿里云和AWS对比研究三——存储产品对比
  14. 术语-MOSS-微软协作工具:MOSS(微软协作工具)
  15. word常用宏方法介绍
  16. 运行npm install时会一直加载转圈
  17. 股票数据API接口文档说明
  18. antd 阿里图标库扩展a-icon 图标
  19. java ocr引擎_java 实现 OCR 图片文字识别
  20. Unity代码调用网络摄像头WebCamTexture

热门文章

  1. 一个网站的pv代表什么?
  2. 光交删zone注意事项
  3. 汽车加油问题 贪心算法 Java(详细注释)
  4. 1997-2020年31省进出口总额
  5. 两家“国网”合建5G,三大运营商“好日子到头”?
  6. pytorch框架--简单模型预测
  7. EndNote导入文献出现带有大括号{}乱码的解决办法
  8. golang 域名 转 ip
  9. 那些你可能不知道的微信奇技淫巧
  10. Python的堆与优先队列