p2.js物理引擎学习

Posted 枫之戊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了p2.js物理引擎学习相关的知识,希望对你有一定的参考价值。

P2简介

P2是一款基于javascript编写的html5 2D物理引擎,和Box2D、Nape等2D物理引擎一样,P2集成了各种复杂的物理公式和算法,可以帮助我们轻松的实现碰撞、反弹等物理现象的模拟。

学习资料

P2 API
认识HTML5物理引擎P2

元素介绍

World(世界),这就是一个模拟的物理世界,所有的刚体和约束创建后都要放进来。

Body(刚体),它是一块无限坚硬的物体。因此,在这块物体上任何两点之间的距离都被认为是固定的。Body(刚体)有自己的参数用来规定位置、质量和速度等,刚体的形状是由Shape创建的形状确定的。

Shape(形状),一个几何形状,可以是矩形、圆形等等。

Constraint(约束),constraint 是一个物理连接件,用来控制刚体的自由度。在3d世界,物体有6个自由度(3个平移坐标和3个旋转坐标)。在2d世界,物体只有3个自由度(2个平移坐标和1个旋转坐标)。众所周知,人类世界是3d的,因此我们家里的门本来应该是有6个自由度的,但是由于门的一侧被门铰链固定在墙上,它失去了另外5个自由度,只能照着门铰链这个轴旋转了。门铰链就相当于一个constraint(约束)。

Contact constraint(接触约束),这是一个特别的约束,作用在于防止刚体之间的渗透重叠,并且它可以模拟摩擦和弹性。你无须创建这个约束,系统会自动创建它的。

Solver(求解器),物理世界的solver(求解器)专门用于处理约束情况。

(未完待续...)

以上是关于p2.js物理引擎学习的主要内容,如果未能解决你的问题,请参考以下文章

Unity 3D学习笔记三十六:物理引擎——刚体

egret p2 物理引擎 小球坠落 demo

物理引擎Havok教程

使用新的物理模拟引擎加速强化学习

Cocos2d-x 3.1.1 学习日志13--物理引擎登峰造极之路

目前哪个游戏物理引擎最先进