Очередь событий (event queue)
Очередь, через которую части игры оставляют друг другу сообщения, так что отправителю не приходится ждать, пока получатель до них доберётся.
Если наблюдатель разрывает связь между тем, кто говорит и кто слушает, то очередь разрывает ещё и связь по времени. Классический пример — звук: игровой код кладёт в очередь «проиграть взрыв» и идёт дальше, а аудиосистема разбирает сообщения в своём темпе, часто в отдельном потоке. Обычно это кольцевой буфер фиксированного размера, а дубликаты — десять взрывов за один кадр — можно слить до того, как что-то зазвучит.
Роберт Нистром посвятил паттерну отдельную главу в Game Programming Patterns (2014) и честно назвал цену. Получатель видит мир таким, каков он в момент чтения сообщения, а не отправки, а система, отвечающая на события новыми событиями, способна создать петлю обратной связи, в которой очередь никогда не опустеет. Цикл сообщений Windows — та же идея в масштабе операционной системы.