跳跃键效果设置(自然跳跃)
本帖最后由 6Sflse93NRe0 于 2023-1-14 11:04 编辑在一些游戏里,我们经常会见到自然跳跃效果,令人耳目一新。
那么
问题来了,Mind+是否能像现实和这些游戏一样,做出这样的效果呢?{:7_223:}
先别急,让我们先来看看scratch的效果tutieshi_640x373_7s.gif
https://mc.dfrobot.com.cn/forum.php?mod=image&aid=153486&size=300x300&key=90839da50332a46d&nocache=yes&type=fixnone
看,非常地合情合理(呸,当我没说)
那么,我们来看看模块
不过,在这之前,我先问你们一个问题,重复执行模块有什么作用?
没错,就是将一个或一段脚本重复运行。由于我们都知道Mind+和scratch都有三种基本的重复执行,所以我们可以先看看重复执行在这里的作用。
FriJanuary-202301137812.. ...
https://mc.dfrobot.com.cn/forum.php?mod=image&aid=153487&size=300x300&key=cb903e0a296eb1b4&nocache=yes&type=fixnone
看到这里的重复执行没有,这里两个重复执行分别有什么作用呢?
我们来分析一下
第一个重复执行是往上跳的作用,而第二个则是降下来的作用
那为什么是重复执行而不是直接执行呢?
我们来看看去掉重复执行会怎样吧
tutieshi_640x373_12s.gif
https://mc.dfrobot.com.cn/forum.php?mod=image&aid=153489&size=300x300&key=cec98f3ab9466225&nocache=yes&type=fixnone
虽然我按下了空格,但因为程序运行太快了,角色并无反应
所以,使用重复执行,可以减低运行速度
有人会问了,那如果我用等待模块,把两个y坐标分别设为60和-60呢?
等等,因为等待1秒太慢了,所以这里要改为等待0.1秒
tutieshi_640x373_8s.gif
https://mc.dfrobot.com.cn/forum.php?mod=image&aid=153490&size=300x300&key=8fb4e49226c8fb0c&nocache=yes&type=fixnone
虽然可以运行,但过于机械
因此,重复执行是最明智的选择{:7_216:}
其实之前已经有人提出这个问题,我在这里统一解答,同时也反驳有个叫“Clicker”的坛友。他说需要使用变量,这办法是不太现实的。
好了,今天就先到这,我先溜了,拜拜{:7_220:}
(TIPS:本文为第二次修正)
提醒一下,帖子缺了一个图片,我给你们补上
对了,使用Mind+也是OK的 其实用变量编一下还是可以实现非线性动画效果的 嘶,这跳跃效果不应该用加速度做吗?
这个效果好像也还行吧
奇奇怪怪的知识又增加了 本帖最后由 SBI y 于 2023-1-15 22:42 编辑
可以试试这么做,模拟真实的跳跃情况
Jump_f是跳跃力度,越大跳跃幅度越大,滑杆控制大小,程序运行前调好;
Jump_v是程序运行中的跳跃速度,以y轴正方向为正方向;
Drop_v是掉落加速度,越大掉的越快,滑杆控制大小,程序运行前调好;
可以自己调试Jump_f和Drop_v的值,知道调出想要的效果
这才是真正的自然跳跃,和现实物理是一个原理,我们不能辜负先辈们(这part主要是牛顿和伽利略)的期望啊
这效果..... 还行吧。 不错。。 如果有非线性效果更好。 6666666666 666666666666 学到了,谢谢 这是基础效果,如果像“SBI y”坛友说的也没问题 不错不错 厉害厉害 厉害厉害 本帖最后由 Clicker 于 2023-2-12 12:30 编辑
“同时也反驳有个叫“Clicker”的坛友。他说需要使用变量,这办法是不太现实的。”我上程序了好吧,最精简的版本。变量方便控制调试,同时更流畅。
厉害厉害{:6_215:}
页:
[1]