verlet-js:超酷的开源JavaScript物理引擎

verlet-js是一个使用JavaScript编写的物理引擎,支持粒子系统、距离约束、角度约束等,通过verlet-js,你可以在应用中实现一些非常酷的、具备物理特性的效果,比如碰撞、滚动、滑动或弹跳。
verlet-js的一些特性如下:

· Simulation(模拟):包含复合实体的根对象,用于在一个场景中驱动实体的所有物理特性和动画效果

· Composites(复合实体):用于场景内的高层次的对象(比如球、连接物、布料等等)

· Particles(粒子系统):空间中的粒子点,用于响应各种操作(重力、拖拽等)

· 约束:将粒子连接在一起,使它们能够互相交流,包括固定(将一个粒子固定到空间中的某个位置)、距离约束(通过一定的直线距离绑定2个粒子)、角度约束(通过一定角度绑定3个粒子)

你可以通过以下链接查看相关示例:

· 一些形状

· 分形树

· 布料

· 蜘蛛网

clip_image001

谷歌之前上线了一个Google Gravity项目,你会发现所有的页面元素纷纷落下,你还可以随意拖动窗口,窗口中的元素也会做出相应的动作,效果相当惊艳,这利用了Box2D物理引擎(类似于verlet-js)。现在通过verlet-js,你也可以做出类似的效果。
verlet-js源码托管在GitHub上,采用MIT许可证。
项目地址:https://github.com/subprotocol/verlet-js
附:另一个类似的可拖拽的布料物理效果:http://codepen.io/stuffit/pen/KrAwx(大幅拖拽或点击右键可有布料撕烂的效果) 或者 http://lonely-pixel.com/

此条目发表在研发分类目录,贴了, 标签。将固定链接加入收藏夹。

发表评论