gpt4 book ai didi

javascript - 在 Matter.js 中禁用特定对象的重力

转载 作者:行者123 更新时间:2023-12-01 07:24:52 27 4
gpt4 key购买 nike

我正在使用 Matter.js 开发一个项目,我希望一般启用重力,但我希望能够在特定时间为单个对象禁用和重新启用它。我不想将该对象设置为静态,因为我希望物理引擎以其他方式处理它,我只是不希望重力影响它。

我找到了this question这通常涉及禁用重力,但正如我所说,我希望重力适用于大多数物体。有没有一种简单的方法可以做到这一点?

最佳答案

这是一个简单的代码片段,您可以打开/关闭它来完成您的要求(其中 body 是应该忽略重力的对象,noGravity 是一个 bool 值,可以切换以打开它并离开):

Events.on(engine, 'beforeUpdate', function() {
var gravity = engine.world.gravity;

if (noGravity) {
Body.applyForce(body, body.position, {
x: -gravity.x * gravity.scale * body.mass,
y: -gravity.y * gravity.scale * body.mass
});
}
});

关于javascript - 在 Matter.js 中禁用特定对象的重力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36463991/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com