“我六年级,做个侦探系列动画里面要有个扔东西的动作,为了讲究质量和快速,麻烦讲的易懂些。”

在scratch中这种操作也比较多,如果单讲抛物线,那最起码要用到高中的抛物线知识,我们很多创作者都是小学生,所以建议大家简单的模拟出这个效果即可,效果如图:

scratch投掷物品线路模拟[模拟抛物线]

我们就以仍物品,类似愤怒的小鸟效果为例:

1、在扔东西的时候会有一个初速度,比如愤怒的小鸟,蓄力越久初速度越大,飞的越快,反正越慢,

2、物品抛出会有一个角度,也就是初始方向

模拟思路就是让物品沿着初始方向移动,每次移动的距离就是上面提到的初速度(简单模拟不考虑外界阻力),由于受到重力的影响,物品最终还是会掉下来,所以每次移动改变一下物品的方向,下面我们根据程序来简单解释一下:

scratch投掷物品线路模拟[模拟抛物线]

上图中我放置了一个小球,还有一个箭头,当按下鼠标,用鼠标改变箭头方向,设置初始的角度(变量“方向”),代码在箭头中,如下:

scratch投掷物品线路模拟[模拟抛物线]

小球的代码如下:

scratch投掷物品线路模拟[模拟抛物线]

按下鼠标,设置初速度,因为只是简单的演示,后期在这里可以根据自己的需要,动态的改变变量“速度”值的大小(比如鼠标按下的时间长短设置不同的值,后期可以关注我发布的作品demo)

当鼠标松开,让小球面向箭头所指的方向,移动“速度”步,然后改变方向,相当于让小球向右旋转了5°,重复这个操作直到小球落地(用小球的y坐标判断,如果y坐标<11表示小球落地)

这个简单方法会有一些bug,比如你垂直向上抛,它不会垂直落下,如果你向左抛,他还是会拐弯落回右边(笑哭),因此后期还是要进一步改进,但这个不影响我们实现一个抛物线的效果。模拟抛物线的方法比较多,欢迎大家一起分享。


文章内容属作者个人观点,不代表本站立场,如有侵权立删。