sample this.objects[id].setVelocityX (-speed);< /p>
чтобы предотвратить остановку игрока, я делаю:
Код: Выделить всё
self.matter.world.engine.world.collisions = {
'default': {
restitution: 0, // Отскок
friction: 0, // Трение
frictionStatic: 0, // Статическое трение
frictionAir: 0, // Воздушное трение
angularFriction: 0, // Угловое трение
isSensor: false
}
};
Код: Выделить всё
var vertices = [
{ x: 0, y: 0 },
{ x: 100, y: 0 },
{ x: 100, y: 100 },
//{ x: 0, y: 100 }
];
// создание многоугольного коллайдера из точек
this.matter.add.fromVertices (400, 300, vertices, {
isStatic: true,
restitution: 0,
friction: 0,
frictionAir: 0,
frictionStatic: 0,
angularFriction: 0
});
Код: Выделить всё
// отключаем отскок (коэффициент упругости)
this.objects [id].body.restitution = 0;
// физические свойства объекта
this.objects [id].setBounce (0); // отскок
this.objects [id].setFriction (0, 0, 0); // трение
// отключаем трение для объекта
this.objects [id].body.friction = 0;
this.objects [id].body.frictionAir = 0;
this.objects [id].body.frictionStatic = 0;
this.objects [id].body.angularFriction = 0;
// отключаем сенсор
this.objects [id].body.isSensor = false;
При отскоке движение бесконечно.
Как отключить отскок?
Подробнее здесь: https://stackoverflow.com/questions/793 ... ble-bounce
Мобильная версия