Оглавление:
Видео: НЕ ПОДДЕРЖИВАЕТСЯ НА ВАШЕМ УСТРОЙСТВЕ! ЧТО ДЕЛАТЬ? 2024
Вы можете использовать векторы силы интересным способом в вашей игре HTML5. Многие гоночные игры включают в себя заносы или дрейфующие механизмы. Правильное выполнение этого поведения требует очень сложной математики, но вы можете сделать разумную аппроксимацию этого поведения без особых усилий.
Этого изображения недостаточно. Вам действительно нужно видеть это как рабочую программу, потому что это действительно здорово. Когда вы двигаете лодку по экрану, лодка дрейфует и садится. С ней очень весело играть.
Как добавить поведение дрифта к объекту вашей игры
Чтобы получить простое дрейфующее поведение, просто добавьте небольшой вектор силы в текущее направление лодки независимо от того, нажимает ли пользователь в данный момент ускоритель.
Этот метод является компромиссом между пространственным движением (где вектор силы добавляется только при нажатии на акселератор) и стандартным поведением автомобиля (где направление движения всегда соответствует носу транспортного средства). Каждый кадр имеет немного каждого поведения.
Вот код:
дрифт. html var game; var boat; function Boat () {tBoat = новый спрайт (игра «лодка. png», 100, 50); tBoat. checkKeys = function () {console. log (это скорость); if (keysDown [K_LEFT]) {this. changeImgAngleBy (-5);} if (keysDown [K_RIGHT]) {this. changeImgAngleBy (5);} if (keysDown [K_UP]) {this. addVector (this. getImgAngle (), 2);} this. addVector (это. getImgAngle (), (это скорость / 20)); } // end checkKeys tBoat. checkDrag = function () {speed = this. getSpeed (); скорость * =. 95; это. setSpeed (скорость);} return tBoat;} function init () {game = new Сцена (); игра. setBG ("# 000066"); boat = new Boat (); игра. start ();} // end init function update () {game. Чисто(); лодка. checkKeys (); лодка. checkDrag (); лодка. update ();}
Как добавить дрифт в спрайты вашей игры
Это очень простая процедура.
-
Постройте стандартную модель автомобиля.
Подумайте о создании лодки, просто для разнообразия.
-
Используйте вектор силы для ускорения.
Опять же, вы вручную контролируете скорость, поэтому механизм addVector () дает вам большую мощность. Вектор силы ускорения (используемый при нажатии клавиши со стрелкой вверх) может быть буквальным значением, но он не должен быть огромным. Поскольку вы на самом деле собираетесь добавлять второй вектор силы, вам может понадобиться уменьшить вектор ускорения.
-
Добавьте небольшой вектор силы в каждый кадр.
Основной вектор силы происходит только тогда, когда вы ускоряетесь, но дополнительный кадр добавляется к каждому кадру. Этот вектор идет в направлении, в котором сейчас находится лодка.Этот маленький вектор движения будет имитировать импульс. Важно, чтобы этот вектор силы был в процентах от скорости, а не буквального значения. Если вы всегда двигаетесь вперед на один пиксель, например, лодка никогда не остановится.