我自己的模型在 matter.js

My own model in matter.js

我正在使用 Matter.js 编写一个简单的游戏。我无法弄清楚如何最好地将我的模型连接到 Matter.js。

我的游戏以细菌为特色,我想要一个 class Bacterium 以便我可以管理这些家伙。在我当前的实现中,此 class 创建并存储它自己的 Matter.Body,我将其传递给引擎。这就是我 运行 遇到麻烦的地方。当细菌相互碰撞以及与墙壁发生碰撞时,我想更新模型的某些方面,但我找不到一种有效的方法来定位我的模型中哪些细菌在我的物质碰撞处理程序中发生碰撞。

我应该扩展 Matter.Body 的原型来做到这一点吗?我应该查看网络上的任何建议或更大的项目吗?

看看 Render.js class 中的 Render.collisions 函数。此函数渲染正在渲染的帧中发生的所有碰撞。我认为通过了解他们如何在那里呈现它,您可以确定在您的情况下需要什么。

请记住,matterjs 使用的游戏循环与网页通常使用的基于事件的设置完全不同。查看 Render.js class 以更好地了解如何使用 matterjs 提供的引擎。