Завдання 3
Спробуйте ці завдання-підказки, щоб змінити код, який ми написали раніше:
-
Лазери!
Чи можете ви створити просту гру, де гравець використовує курсор для переміщення повз ряди рухомих або
статичних лазерів, щоб дістатися іншої сторони умовної кімнати? Намалюйте свого персонажа у вигляді простого круга
чи прямокутника або замініть їх зображенням. Якщо використовуєте зображення, то для спрощення обрахунку
колізії перевіряйте зіткнення за допомогою обмежувального кола чи рамки про які розповідалося у темах про
круги та
прямокутники.
-
Використовуючи зіткнення лінії з кругом, ми можемо
імітувати кульку, яка відскакує від поверхонь під певним кутом. Чи можете ви додати силу тяжіння, а також
змусити кульку відскакувати в напрямку, який залежить від кута лінії? Підказка: щоб отримати напрямок відскоку,
знайдіть кут між кулькою і найближчою точкою на лінії. Для цього можна скористатися функцією з p5js
під назвою
angleBetween().
Про імітацію різних сил і зокрема гравітацію можна також почитати у розділі
сили
з книги Природа Коду.
У разі чого в розділі про
вектори
також розглядається і приклад з кулькою, що відплигує від стінок полотна.
Далі: Прямокутник і Точка