要说编程和哪个学科联系紧密,你可能会说数学。确实在编程中,数学可以用来运算、用来绘图、算法也牵涉到数学等等。你想过编程和物理的关系吗?在编程中,角色的动画效果一旦加入一些物理现象,那样看起来更接近现实,更加真实、生动、自然。*
用Scratch模拟物理效果,那是不是很难?
这个问题,我用一个指令模块来回答
“碰到边缘就反弹”,它是如何反弹的,往哪个方向反弹?用到了物理知识:入射角等于反射角。
我来们看看效果吧
碰到边缘就反弹
上面的物理现象是否简单的让你抿着嘴笑,不凡先试试,到时让我们笑得更大声点,来吧模仿上面效果小练一下,热热身。 ↑ ↑ ↑
现在开始正式进入我们今天的挑战:
如下图所示效果:
小球反弹效果
观察到的现象应该是:挡板跟随鼠标左右移动,小球碰到上、左、右边缘和挡板时会反弹,掉落下方时会消失,然后重新回到原始状态进入第二轮的准备。
还愣着吗,该你动手来实操一下了。 ↑ ↑ ↑
如果碰到的档板是斜的呢,当然也要遵循入射角等于反射角
如果你已经到达这一步了,那么允许你笑得再大声点,更物理点吧。
斜放镜面反射
如果你还意犹未尽,那么来实践下面的效果,我期待你的作品:
游戏:消方块
如果你完成了这个效果,请笑得物理一些,再物理一些,不要控制自己!
在设计上面的动画过程中,我突然想到一个问题:能不能让小球朝鼠标点击的方向移动(不是移到鼠标位置就停止):
朝鼠标方向移动
这个功能在撒网捕鱼或发射子弹的游戏中是非常常见的