您的位置:首页 > Web前端 > JavaScript

Box2d的javascript版本Box2dWeb-2.1a.3学习笔记(一)

2012-12-06 23:44 260 查看
Box2d是一个物理引擎框架可以制作2D动画模拟真实物理环境,可以在HTML5的canvas中实现动画效果(但更好的完成这点需要借助别的技术,后面会说到,但其内置的debugDraw可以生成简单的视图,方便我们开发预览)。这是官方的demo地址:http://code.google.com/p/box2dweb/。看完Demo是不是立刻激动人心了呢。另外提一个,关于box2d的版本js有两个,一个是box2djs_0.1.0,另一个是Box2dWeb-2.1.a.3。这里我学习的是Box2dWeb-2.1.a.3。原因是因为这个版本开发更方便,另一个加载的js库太多而且比较旧,很久没更新。

下面先来点准备资料:

Box2dWeb-2.1.a.3下载地址:http://code.google.com/p/box2dweb/downloads/list;

或者我上传在CSDN的:http://download.csdn.net/detail/notcharming/4855675

还有就是API资料,可以使用box2dflash版本的API。因为JS版本是从这个版本改编来的。

box2dflash API地址是:http://www.box2dflash.org/docs/2.1a/reference/

说到html5当然少不了chrome,有了这几样的准备就可以开始学习了。至于在什么软件编写js,我就不说了,每个人有每个人的喜好。本人用的是Notepad++。

关于我对box2d的理解和官方文档的核心概念

1、box2d建立了一个模拟真实的物理环境的一个世界,包含模拟真实世界中的各种物理量(速度,摩擦力,阻尼,质量。。。。)。PS:这时想到了我大学挂的第一科——大学物理。


2、rigid body刚性物体:两者的距离完全是常数,固定不变。(另一点要强调的是box2d里的碰撞不会让物体产生形变)

3、shape 形状拥有的属性有摩擦,弹力等等。

4、constraint 约束力

5、joint联合体或者说关节 (比如一个人体骨架就是个相对复杂点的联合体)

6、joint limit 关节的一些限制(比如关节只能在一个角度内转动)

7、fixture 我理解为模具,就是创建真实的物体时需要的类。

8、一个建立的物理世界可以包含上面的这些元素。

官方的教程在:http://www.box2dflash.org/docs/2.0.2/manual(可惜只有2.0.2的和2.1.a有出入,但可以结合之前的API文档和版本变更学习,当然都是英文的)。

下面章节将学习激动人心的 HelloWorld。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: