Параллакс камеры Phaser 3 с положением спрайта x

#parallax #phaser-framework

Вопрос:

У меня есть анимация параллакса в моей игре Phaser 3, и она отлично работает, когда я это делаю

 update() {  const cam = this.cameras.main;  cam.scrollX  = 1; }  

Я пытаюсь добавить спрайт в положение (0, это.масштаб.высота) и начало координат (0,0), т. е. нижний левый угол. Это просто длинный шест высотой около 400 метров и шириной около 50 метров.

Итак, идея в том, что когда я удерживаю клавишу «Вниз» в течение X секунд, а затем нажимаю клавишу «вверх», анимация параллакса перемещается на пару X позиций, и полюс исчезает.

Проблема в том, что когда я добавляю новый длинный полюс, полюс иногда обрезается ниже 0 и становится тоньше, чем постоянная ширина 50 (почти как вырезанный с экрана). Я пытаюсь установить это на (0, это.масштаб.высота) и начало координат равно (0,0), но оно просто не будет двигаться.

Я не знаю, проблема ли это с камерой или что-то еще. Независимо от того, движется ли параллакс, а затем останавливается, мне нужно, чтобы полюс всегда был на (0, это.масштаб.высота) и начало координат (0,0) с шириной 50.

Есть какие-нибудь идеи?

Комментарии:

1. Можете ли вы добавить в свой вопрос немного больше кода, с которого мы можем начать? (Можете ли вы также удалить phaser тег, когда сделаете это. phaser-framework это правильный тег, другой-что-то на Java.)