Matter.js 是一个用于网页的JavaScript 2D刚体物理引擎
演示 ・ 作品展示 ・ 特性 ・ 插件 ・ 安装 ・ 使用 ・ 示例 ・ 文档 ・ Wiki ・ 参考资料 ・ 许可证
演示
|
作品展示
看看其他人如何使用matter.js物理引擎
- Patrick Heng 由 Patrick Heng 制作
- USELESS 由 Nice and Serious 制作
- Secret 7 由 Goodness 制作
- New Company 由 New Company 制作
- 年度游戏 由 Google 制作
- Pablo 火烈鸟 由 Nathan Gordon 制作
- Kalia先生的变形记 由 Lab212 制作
- Phaser 由 Photon Storm 制作
- 对不起我没有过滤器 由 Jessica Walsh 制作
- Fuse 由 Fuse 制作
- Glyphfinder 由 überdosis 制作
- 隔离 由 sabato studio 制作
- 更多...
特性
- 刚体
- 复合体
- 组合体
- 凹凸外壳
- 物理属性(质量、面积、密度等)
- 恢复系数(弹性和非弹性碰撞)
- 碰撞检测(广义阶段、中间阶段和狭义阶段)
- 稳定堆叠和静止
- 动量守恒
- 摩擦力和阻力
- 事件
- 约束
- 重力
- 休眠和静态物体
- 插件
- 圆角(倒角)
- 视图(平移、缩放)
- 碰撞查询(光线投射、区域测试)
- 时间缩放(慢动作、加速)
- Canvas 渲染器(支持矢量和纹理)
- MatterTools 用于创建、测试和调试世界
- 世界状态序列化(需要 resurrect.js)
- 跨浏览器和 Node.js 支持(Chrome、Firefox、Safari、IE8+)
- 移动设备兼容(触摸、响应式)
- 原创 JavaScript 物理实现(非移植版本)
安装
npm install matter-js
或者你可以下载稳定版本或尝试最新的实验性alpha 版本(master 分支),并在网页中引入脚本:
<script src="matter.js" type="text/javascript"></script>
与其他工具(如 Webpack、Vue 等)一起使用时的性能
打包工具和框架在使用默认配置时可能会降低实时性能,尤其是在开发模式下。
使用 Webpack 时,默认的 sourcemap 配置可能会产生较大影响,解决方案请参见问题。
使用 Vue.js 时,观察者可能会产生较大影响,解决方案请参见问题。
使用方法
访问 入门指南 wiki 页面,查看适用于浏览器和 Node.js 的最小使用示例。 另外,请查看 运行 和 渲染 wiki 页面,了解如何使用你自己的游戏和渲染循环。
教程
查看 教程 列表。
示例
查看 examples 目录,其中包含所有 演示 的源代码。 在 codepen 上还有更多示例。
插件
引擎可以通过插件进行扩展,请参考以下资源:
文档
构建和贡献
要构建项目,首先需要安装 node.js,然后运行
npm install
这将安装所需的构建依赖项,然后运行
npm run dev
以启动开发服务器。有关贡献的信息,请参阅 CONTRIBUTING.md。
更新日志
要查看最新版本的新增或更改内容,请查看 更新日志。
参考资料
请查看 wiki 页面上的 参考资料。
许可证
Matter.js 使用 MIT 许可证 授权 版权所有 (c) 2014 Liam Brummitt
此许可证随发行版和源代码一同提供。 如许可证所述,绝对不提供任何担保。