欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

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

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

verlet-js的一些特性如下:

  • Simulation(模拟):包含复合实体的根对象,用于在一个场景中驱动实体的所有物理特性和动画效果
  • Composites(复合实体):用于场景内的高层次的对象(比如球、连接物、布料等等)
  • Particles(粒子系统):空间中的粒子点,用于响应各种操作(重力、拖拽等)
  • 约束:将粒子连接在一起,使它们能够互相交流,包括固定(将一个粒子固定到空间中的某个位置)、距离约束(通过一定的直线距离绑定2个粒子)、角度约束(通过一定角度绑定3个粒子)
你可以通过以下链接查看相关示例:

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


谷歌之前上线了一个Google Gravity项目,你会发现所有的页面元素纷纷落下,你还可以随意拖动窗口,窗口中的元素也会做出相应的动作,效果相当惊艳,这利用了Box2D物理引擎(类似于verlet-js)。现在通过verlet-js,你也可以做出类似的效果。

verlet-js源码托管在GitHub上,采用MIT许可证。

项目地址:https://github.com/subprotocol/verlet-js
国内镜像地址:https://code.csdn.net/OS_Mirror/verlet-js

附:另一个类似的可拖拽的布料物理效果:http://codepen.io/stuffit/pen/KrAwx(大幅拖拽或点击右键可有布料撕烂的效果) 或者 http://lonely-pixel.com/