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

не городить для этого отдельный класс объектов, а обрабатывать световые эффекты где-нибудь в другом месте, в другой функции. Но это было бы просчетом. С объектами очень просто работать: их можно добавлять, можно уничтожать, их обработка проста и осуществляется централизованно. Что может быть еще лучше? На мой взгляд, все, что в игре имеет непостоянный характер (изменяется, уничтожается, добавляется), должно быть реализовано, как класс объектов. В DOOM’e так и сделано. Итак, данный класс определен структу рой light:

Данная структура очень проста.

Поле DelayBlink определяет время, через которое с момента инициалн:$ации должен включиться световой эффект. Зачем это нужно? Представьте себе, допустим, 5 смежных одинаковых секторов. Дтя каждого из этих секторов инициализируется в начале игры класс LIGHT (смотрите раздел 7.11), но у каждого соседнего сектора значение DelayBlink будет отличаться на 1. В резу льтате мы полу чим эффект световой волны, распространяющейся по этим пяти секторам (бегущий свет).

Значения FrLight и ToLight определяют, соответственно, максимальный и минимальный свет дтя заданного сектора Обратите внимание, что свет не плавно меняется от минимального до максимального, а переключается мгновенно (синдром включения/выключения).

Поля TimeOfT и TimeOn, соответственно, определяют время минимального света и время максимального света. Обычно время минимального света всегда равно одной секунде, а время максимального света - величина переменная и зависит от инициализации.

Функция обработки класса: RandLightBlinks.

7. Случайно мигающий свет. Этот класс очень похож на предыдущий, за одним исключением. Свет мигает не периодически, а случайно. При этом создается иллюзия неисправной лампы дневного света (когда барахлит стартер). Этот класс представлен той же структурой light, поэтому' повторяться не



Новости
В 2018 году выйдет игра о затонувшей подлодке «Курск»
Польская студия Jujubee после двух лет работы над компьютерной игрой о гибели подводной лодки «Курск», затонувшей в 2000 году, объявила, что завершит проект в 2018 году.
Подтвердились слухи о разработке Resident Evil 2 Remake
Сотрудники компании Capcom тоже активно подливали масла в огонь, заявляя о том, что ремастеринг уже находится в разработке и скоро увидит свет.