Я перемещаю простое CCSprite
по экрану устройства iOS, используя этот код:
[self schedule:@selector(update:) interval:0.0167];
- (void) update:(ccTime) delta {
CGPoint currPos = self.position;
currPos.x += xVelocity;
currPos.y += yVelocity;
self.position = currPos;
}
Это работает, однако анимация не плавная. Как улучшить плавность анимации?
Моя сцена чрезвычайно проста (только один полноэкранный CCSprite
с фоновым изображением и относительно небольшим CCSprite
, который перемещается медленно).
Я зарегистрировал дельту ccTime, и она не соответствует (она почти всегда превышает мой указанный интервал 0,0167 ... иногда до 4 раз).
Я рассмотрел адаптацию движения в методе обновления к дельта-времени (большее дельта => большее движение и т. Д.). Однако, учитывая простоту моей сцены, кажется, есть лучший способ (и кое-что базовое, что я, вероятно, упускаю).