В процессе создания 2D-игры обычно требуется, чтобы центр обзора был сосредоточен на том, что представляет игрока. На данный момент я не знаю, как это сделать, кроме ручного смещения всех координат всех спрайтов.
Как правильно перемещать сцену, чтобы игрок всегда находился в центре изображения холста?
Я использую стандартную комбинацию позиции / масштаба / поворота.
//(0,0) for us is center of the screen
stage.position.x = renderer.width/2;
stage.position.y = renderer.height/2;
//scale it
stage.scale.x = 2.0;
stage.scale.y = 2.0;
//now specify which point INSIDE stage must be (0,0)
stage.pivot.x = character.position.x;
stage.pivot.y = character.position.y;
В моей разрабатываемой версии есть секретный объект Camera, и его можно заставить следовать за любым объектом, даже если он находится внутри некоторых контейнеров.
Спасибо большое, работает отлично! :)
Он также ответил на другой вопрос, который мне был нужен, но даже не задавал - как увеличить сцену.
Этот поток был автоматически заблокирован, поскольку после его закрытия в последнее время не было никаких действий. Пожалуйста, откройте новую проблему для связанных ошибок.
Самый полезный комментарий
Я использую стандартную комбинацию позиции / масштаба / поворота.
В моей разрабатываемой версии есть секретный объект Camera, и его можно заставить следовать за любым объектом, даже если он находится внутри некоторых контейнеров.