在绝地求生里,人物在基本移动是,wasd慢跑,按shift加速跑,按ctrl是慢速行走状态,不过重要的一点是,现实中人物在往后跑的时候不可能和向前跑一样快,吃鸡里面加速跑只有向前,左前,和右前是加速状态,其余按shift与不按动画和速度是一样的。也就是加速跑的时候只有纵向速度为正才有效。

混合空间如下

我们用Speed和Direction参数来调控动画会简单一些,易于实现。Idle:speed=0;walk:speed=150;jog:speed=300;run:speed=600;普通状态下,不输入移动键人物Idle状态,输入wasd就jog,按着shift加速跑,按ctrl就walk,在加速状态下向后移动和不加速状态一致。接下来我们设置run和walk状态Running和Walking。

接下来我们根据状态调整最大WalkSpeed

讲一下函数实现逻辑,默认加速跑状态会覆改慢走状态。先判断是否处于加速状态,是的话判断纵向速度是否为正,为正则最大速度600,为负说明向后移动,最大速度设为300,这就保证了加速跑状态下,往后移动不会跟向前一样快,而是跟jog下往后慢跑动画速度一样。然后判断是否是walking状态,是就调整为walk的150速度,不是就是正常jog状态300。

然后用tick事件每帧执行函数即可

虚幻4FPS吃鸡类游戏开发学习笔记——人物移动及状态切换(Idle,Walk, Jog, Run)相关推荐

  1. 现象级吃鸡类游戏软件调研

    序 吃鸡类游戏是一种战术竞技型射击类沙盒游戏,每一局游戏将有最多100名玩家参与,他们将被投放在绝地岛上,在游戏的开始时所有人都一无所有.玩家需要在岛上收集各种资源,在不断缩小的安全区域内对抗其他玩家 ...

  2. uSurvival 1.41多人在线生存逃杀吃鸡类游戏源码

    uSurvival 1.41多人在线生存逃杀吃鸡类游戏源码 uSurvival - the new Multiplayer Survival Asset from the creator of uMM ...

  3. 【Unity3D游戏开发学习笔记】(六)上帝之手—GameObject的操作

    在Unity中,所有实体都属于游戏对象(GameObject),比如外部导入到场景中的模型,Unity自带的立方体等等,而要将这些GameOject进行管理,交互等操作,则需要用到脚本来实现,上一节我 ...

  4. golang游戏开发学习笔记-开发一个简单的2D游戏(基础篇)

    此文写在golang游戏开发学习笔记-创建一个能自由探索的3D世界之后,感兴趣可以先去那篇文章了解一些基础知识,在这篇文章里我们要创建一个简单的2D游戏场景以及配套的人物,并实现人物运动和碰撞检测功能 ...

  5. golang游戏开发学习笔记-创建一个能自由探索的3D世界

    此文写在golang游戏开发学习笔记-用golang画一个随时间变化颜色的正方形之后,感兴趣可以先去那篇文章了解一些基础知识,在这篇文章里,我们将创建一个非常简单(只有三个方块)但能自由探索的的3D世 ...

  6. 游戏开发学习笔记——lua脚本语言——安装、汉化与小测试(解决lua运行代码乱码问题)

    游戏开发学习笔记--lua脚本语言--安装.汉化与小测试 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: Lua 是一种轻量小巧的脚本语言,用 ...

  7. 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十一课:Cocos2D-X网格特效1-3

    [麦可网]Cocos2d-X跨平台游戏开发---学习笔记 第二十一课:Cocos2D-X网格特效1-3 ================================================ ...

  8. 小狐狸横版游戏开发学习笔记(上)

    小狐狸横版游戏开发学习笔记(上) 目录 小狐狸横版游戏开发学习笔记(上) 1.关于如何创建Tilemap 2.关于地图格子之间出现间隙的问题 3.如何设置自己想要的控制按键 4.如何解决玩家移动过程中 ...

  9. 桌面破坏王游戏开发学习笔记总结

    桌面破坏王开发学习笔记总结 目录 桌面破坏王开发学习笔记总结 1.GetSystemMetrics() 2.MoveWindow() 3.TextOutW() 4.C++11->Function ...

最新文章

  1. Python翻转字典,以及解决IndentationError: expected an indented block报错!
  2. [SDOI2008]沙拉公主的困惑 线性筛 素数+欧拉
  3. UltraEdit如何删除指定字符后的内容
  4. python 命令模式 设计模式_Python 设计模式——命令模式
  5. python资源管理器选择文件_Python:在资源管理器中获取选定文件的列表(windows7)...
  6. UI设计实用素材|网页陆地页面的业务和发展概念插图
  7. Python DES
  8. MATLAB LFCM雷达调频法测距
  9. 小甲鱼python课后题简书_Python 练习题汇总
  10. C/C++语言开发环境,【5款免费编程器】请查收!
  11. Excel怎么快速完成多条件查询
  12. failed to obtain in-memory shard lock
  13. 2019上半年软件设计师考试体会
  14. echarts实现各省市地图、中国地图
  15. 牛客网第九场多校联赛 E Music Game
  16. fabric.js学习
  17. 和菜头的独立 Blog 三十万点击量值得祝贺
  18. CentOS(Linux)安装Chrome浏览器
  19. python语音处理_python处理语音
  20. 清理SONY D-NE10 的线控器

热门文章

  1. vs,vs code,Dev
  2. Android 精华 - 收藏全集 -
  3. md5加密以及可逆的加密解密算法
  4. SQL server 常见面试题
  5. CTF 每日一题 Day18 传统知识+古典密码
  6. 宝塔面板可以建立静态网站吗?如何部署一个静态页面?
  7. java future 源码,读FutureTask源码
  8. muduo源码剖析——Singleton单例模式之懒汉模式与DCL双重检查
  9. Java之原子性-乐观锁与悲观锁
  10. shui0418笔记