![]() |
|
||||||||||
|
|||||
|
Приветствую.
есть контейнер, в нем лежит карта и персонаж. персонаж и контейнер двигаются не зависимо друг от друга. движение контейнера public function Update(e:Event):void { tarX = Math.round((Root.SW - player.width) / 2 - player.x); tarY = Math.round((Root.SH - player.height) / 2 - player.y); if (cont.x != tarX || cont.y != tarY) { cont.x += Math.ceil((tarX - cont.x) / speed); cont.y += Math.ceil((tarY - cont.y) / speed); } } ... if (Math.abs(this.x - tarXY.x)>= speed) { this.x -= (this.x - tarXY.x) / Math.abs(this.x - tarXY.x) * speed; } if (Math.abs(this.y - tarXY.y)>= speed) { this.y -= (this.y - tarXY.y) / Math.abs(this.y - tarXY.y) * speed; } Скорость фиксированная 5px Движение контейнера при фпс 31 идет с заметными скачками, причем чем дольше, тем больше. Уменьшение фпс до 21, практически полностью убирает скачки, но появляется вибрация фона(хорошо заметна на стыках между разными цветами, например между черным и белым) Скорость меняется от 1 до 5, в зависимости от расстояния до цели. Карту в контейнере делал 2-мя способами. 1. из мелких кусочков(битмапы) 2. одна сплошная битмапа. размеры карты 1000х1000 (но вообще будет больше). все числа целые. Хотелось бы как то сгладить скачки и/или убрать вибрацию при низком фпс. |
![]() |
Часовой пояс GMT +4, время: 23:28. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|