Хонич А.
Как самому создать трехмерную игру
стр. 164

соблюдении условий столкновения на заданном пути.

В этом-то и заключается универсальность данного подхода. Функцию CheckWayRun можно использовать при стрельбе на большие расстояния. Только флаг при этом будет равеи трем, ну и, конечно, функция исполнения (6-ой параметр) будет другой.

Для анализа границ стен функция CheckWay Run использует структуру BlockMap, которую мы описали в главе 7.10. В этом случае анализируется каждый блок, через который проходит путь (линия).

Хорошенько запомните такой подход! Он очень может вам пригодиться при написании ваших собственных игр.

Может возникнуть вопрос: зачем данный алгоритм использовать в функции PressUse? Ну при стрельбе - понятно. Там необходимо анализировать большие

нространства. Но при нажатии SPACE эффект достигается лишь при приближении вплотную к стене. Но не тут-то было! Не обязательно приближаться вплотную к стене для того, чтобы нажатие SPACE возымело действие. Имеется определенное максимально допустимое расстояние от стены. И каким бы малым ни было это расстояние, нет гарантии того, что полупившаяся линия (путь) находится в одном блоке. Чаще всего как раз это не так. Другой вопрос - это то, что нз функции PressUse в большинстве случаев функция CheckWay Run работает гораздо быстрее, нежели при стрельбе, т.к. количество анализируемых блоков в первом случае, как правило, меньше.


Итак, приводим исходник функции CheckWay Run:

Новости
Авторы Kingdom Come: «Мы хотели сделать Red Dead Redemption с мечами»
Не причислять себя к традиционным инди-разработчикам, а пытаться создать игру, сравнимую с Red Dead, Far Cry, «Ведьмаком», Assassin’s Creed и The Elder Scrolls V: Skyrim.
VR-игра по мотивам Psychonauts добралась до ПК
На ПК вышла VR-игра от легендарного Тима Шейфера: теперь в Psychonauts in the Rhombus of Ruin могут сыграть не только владельцы PS VR, но и обладатели HTC Vive или Oculus Rift.