文章有点长但是对于想学习html5 canvas的人来说看完这篇文章是非常值得的。
在线演示地址:为了让百度快些收录,地址放在评论1楼 
在这边我们将用到物理学上的速度,加速度,物理边界,碰撞定理,弹性碰撞(非弹性碰撞),动量守恒。
看到这么多是不是很有压力,下面就一一介绍并且最终结果我们将用这些技术制作一个简单的类似行星碰撞的画面(学了这些可以发挥自己的想象创作更有趣的东西比如台球游戏等等)。
1.形状的模拟:
各个物体形状我们用小球来实现定义为Shape类并具有属性原点(x,y)和小球的半径radius;
var Shape = function(x,y,radius)
{
this.x=x;
this.y=y;
this.radius=radius;
}
2.速度的模拟:
物理上的速度包括速率和方向,所以1中的Shape属性不够用我们要新增两个属性x轴和y轴方向速率(vX,vY),为了方便将Shape类命名为Asteroid类此时具有5个属性。
var Asteroid = function(x,y,radius,)
{

该博客详细介绍了如何利用HTML5 Canvas结合物理学原理,如速度、加速度、碰撞和动量守恒,创建弹性碰撞动画。通过定义Shape和Asteroid类,模拟物体的运动状态,并处理边界及碰撞效果。最终,博主通过示例展示了如何实现类似行星碰撞的动画,鼓励读者根据这些知识创作更多有趣的互动场景,如台球游戏。
最低0.47元/天 解锁文章
803

被折叠的 条评论
为什么被折叠?



