Game Programming Patterns / Паттерны программирования в играх: 4.2 Event Queue
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Цель kabanov 30.04.14 в 20:06 |
|
|
Отделить процесс отправки события или сообщения от процесса его обработки. Deo 24.08.14 в 20:02 |
||
|
Мотивация kabanov 30.04.14 в 13:39 |
||
|
Чтобы обновить вашу память, давайте рассмотрим пару общих проявлений шаблона. p_zombie 02.12.17 в 18:25 |
||
|
Событийный цикл графического интерфейса kabanov 30.04.14 в 13:38 |
+1 | |
|
Если Вы когда-либо программировали пользовательский интерфейс, то уже хорошо знакомы с событиями. adm244 11.03.15 в 01:47 |
||
|
Каждый раз, когда пользователь взаимодействует с Вашей программой — нажимает кнопку, вытягивает меню или нажимает клавишу — операционная система генерирует событие. adm244 11.03.15 в 01:52 |
||
|
Она вбрасывает его как объект в Вашу программу и Ваша задача его подхватить и реализовать какое-то интересное поведение. adm244 11.03.15 в 01:59 |
||
|
Этот подход настолько распространён, что считается парадигмой: событийно-ориентированное программирование. adm244 11.03.15 в 02:03 |
+1 | |
|
Приблизительно это выглядит как: kabanov 30.04.14 в 13:38 |
||
|
while (running) kabanov 24.06.14 в 12:51 |
||
|
{ kabanov 24.06.14 в 12:51 |
||
|
Event event = getNextEvent(); kabanov 24.06.14 в 12:51 |
||
|
// Ловим событие... kabanov 24.06.14 в 12:51 |
||
|
} kabanov 24.06.14 в 12:51 |
||
|
Кроме того, любая игровая система может получать события из очереди. kabanov 30.04.14 в 13:41 |
||
|
Вместо этого давайте добавим звук в нашу игру. kabanov 24.06.14 в 12:52 |
