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

Теперь посмотрим, как производится выстрел из дробовика- (да и не только из него). При нажатии на спусковой крючок из ствола вылетают с огромной скоростью около 8 дробинок (запускается фаза ofShot для первой структуры weapon). Одновременно из ствола вырывается пламя, которое на короткое время освещает все вокруг (запускается фаза oflFire для второй структуры weapon). Фаза освещения быстро проходит (всего два кадра). А фаза выстрела продолжается еще некоторое время, т.к. после выстрела создается имитация перезарядки игроком дробовика. После перезарядки оружие возвращается в нормальное состояние (фаза ofNormal). "Но перед этим (конец фазы перезарядки) вызывается функция CheckToNextFire, которая проверяет, нажат ли до сих пор спусковой крючок. Зачем она нужна? Как говаривал Шерлок Холмс, элементарно. Представьте себе, что вы несколько раз подряд, практически не отпуская спусковой крючок, стреляете из пистолета. Вероятность того, что при очередном выстреле вы попадете точно в десятку, как и в предыдущий раз, очень мала (конечно, если вы не чемпион по стрельбе из пистолета). Однако, если вы после очередного выстрела сделали паузу, чтобы как следует прицелиться, то очень вероятно, что вы опять попадете в десятку.

Объяснение настолько простое, что я не знаю, стоит ли его приводить. Но так и быть. После отдачи, которая следует после выстрела из огнестрельного оружия (и от которой рука дергается), очень сложно в кратчайший срок точно прицелиться.

Именно это хотели показать разработчики игры DOOM. Если после перезарядки спусковой крючок все еще нажат, то производится очередной выстрел, но направление (угол) прицеливания немного изменяется случайным образом. В этом и заключается назначение функции CheckToNextFire.

Функция ShotFromShotgun.

Эта функция вызывается в начале фазы ofShot. Собственно, здесь и производится выстрел из дробовика. При этом воспроизводится зву к выстрела. Запу скается анимация игрока в момент выстрела, уменьшается на 1 количество патронов, осу ществляется прицеливание и выпускается 7 дробинок.

Исходный текст функции ShotFromShotgun:

Новости
Авторы проекта «1917» выпустили онлайн-игру об истории СССР
Разработчики рассказали о том, что пользователи их игры смогут принять участие в главных исторических событиях советского периода.
В God of War не будет сезонного пропуска
Креативный директор студии SIE Santa Monica Studio Кори Барлог заявил, что в новой части God of War не будет сезонного пропуска.