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

Глава 6 Контроль со стороны играющего

Этот раздел, как мы видели выше, состоит из трех функций:

1 Control - обработка клавиатуры и других устройств ввода (мышь, джойстик) и заполнение специальных структур управления.

2.    ProcessingControl - обработка структур управления, т.е. выполнение соответствующих действий в зависимости от внешних воздействий и в зависимости от текущих режимов работы программы.

3.    GameControl - эта функция принимает активное участие в самом процессе игры и отвечает за перемещение игрока в трехмерном пространстве и другие его действия, которые приводят в трепет его врагов.

Прежде чем присту пить к описанию работы вышеперечисленных функций, необходимо пояснить, что такое структуры управления, и почему мы говорим о них во множественном числе. Поясню сначала второй пункт на примере обработки клавиатуры. Допу стим, что в тот момент, когда вы усердно нажимаете на клавиши, надеясь уничтожить очередного обнаглевшего монстра, программа занята не менее важными делами, например, формированием изображения лабиринта на экране (точнее, в невидимой его части). За то время, пока она формирует изображение, теоретически возникает несколько прерываний- от клавиатуры, и их количество напрямую связано с быстродействием вашего компьютера и, конечно же, с параметрами настройки клавиатуры. Казалось бы, волноваться не о чем. У любой клавиатуры есть очередь размером в 15 знаков. Однако есть два “но”. Во-первых, нельзя иметь доступ к любому символу в стандартной очереди команд клавиатуры: они считываются последовательно. А во-вторых, в некоторых случаях имеется вероятность переполнения внутреннего буфера клавиатуры. В связи с этим в функции обработки прерываний от клавиатуры мы заполняем свой буфер клавиату ры (своя очередь) размером в 32 знака:

Исходный текст обработчика клавиатуры newkeyb:

Но это еще не все Известно, что в АТ клавиатуре нередко одно нажатие (или отжат ие) клавиши сопровождается серией кодов. Например, при нажатии

Новости
Авторы Hellblade: Senua’s Sacrifice удивлены количеству игроков на ПК
В октябре прошлого года студия Ninja Theory рассказала, что продажи Hellblade: Senua's Sacrifice оказались выше, чем ожидали сами разработчики, а уже через месяц они достигли полумиллиона копий.
Хождение по Аду в Agony отнимет у игроков 12 часов
Напомним, что Agony поступит в продажу на PC, PS4 и Xbox One 29 мая. После релиза игры авторы намерены заняться VR-режимом.