Skip to content

components.DSprite

Megabyte edited this page Dec 1, 2019 · 16 revisions

Наследуется от Sprite, и включает в себя все его свойства.

DSprite - динамический спрайт. В добавок к свойствам обычного спрайта, DSprite имеет свойства скорости xSpeed, ySpeed, rSpeed, которые часто бывают полезны при разработке игр. Эти свойства отвечают за линейное перемещение спрайта по экрану, и его непрерывное вращение. По большому счету, разработка игры сводится к управлению положением (x, y) спрайтов на экране по особому алгоритму, а управление скоростью (xSpeed, ySpeed), открывает больше возможностей. Имея информацию о текущей скорости объекта, вы можете влиять на его положение, сохраняя текущую инерцию, что очень важно для красивой анимации.

Дополнительное отличие DSprite от Sprite - это положение его опорной точки. У DSprite она расположена по центру, в то время как у Sprite - в левом верхнем углу.

Редактируемые свойства:

xSpeed

Тип: Number

Значение этого свойства прибавляется к x свойству спрайта каждый кадр. Таким образом, если установить значение xSpeed = 1, и запустить игру, то спрайт будет двигаться вправо со скоростью 1 пиксель в кадр (60 пикселей в секунду). Меняя значение xSpeed мы управляем скоростью и направлением его движения. 0 - остановит спрайт.


ySpeed

Тип: Number

Значение этого свойства прибавляется к y свойству спрайта каждый кадр. Таким образом, если установить значение ySpeed = 1, и запустить игру, то спрайт будет двигаться вверх со скоростью 1 пиксель в кадр (60 пикселей в секунду). Меняя значение ySpeed мы управляем скоростью и направлением его движения. 0 - остановит спрайт.

Очень часто ySpeed используется для эффекта гравитации. Если каждый кадр увеличивать ySpeed на единицу (ySpeed = 1), то спрайт начнет двигаться вниз с ускорением. Пример такого эффекта можно посмотреть в компоненте 'Bunny', который наследуется от DSprite, и расширяет его метод update. Строка javascript

this.ySpeed  = this.gravity;

отвечает за гравитацию. Редактируемое свойство gravity, имеющееся у Bunny позволяет задать ему силу тяжести, которая будет ускорять его вниз. Остальной код метода update отвечает за отскок от пола (скорость по оси y в момент отскока меняется на противоположную *ySpeed = -1;), потолка и движение влево/вправо.


rSpeed

Тип: Number

Значение этого свойства прибавляется к rotation свойству спрайта каждый кадр. Таким образом, если установить значение rSpeed = 0.01, и запустить игру, то спрайт будет вращаться по часовой стрелке со скоростью 0.01 радиан за кадр (0.6 радиан в секунду). Меняя значение rSpeed мы управляем скоростью и направлением вращения спрайта. 0 - остановит вращение.

<- Предыдущая страница Следующая страница ->

Связанные темы:

Свойства, унаследованные от Sprite

Компоненты

Редактируемые поля

Clone this wiki locally