Скриптинг И.И.: Цели
Материал из CryWiki Russia
|
Цели (Goals)
Краткий обзор
ИИ Объекты в CryAISystem способны выполнять конкретные действия для достижения целей. Цели могут быть очень простыми - например, приблизиться на 2 метра к определенному объекту, или довольно сложным - например, спрятаться в крайнем левом препятствии на путик вашей текущей цели. Низкоуровневая ИИ система отвечает за выполнение и управление этими целями, и она также контролирует что случается если цели удачно выполнены или не выполнены. Другие функции включают определение того, какие функции выполняются параллельно, а какие – последовательно. Цели могут быть atomic (монолитные или «атомарные») и derived (производные). Атомарная цель - простая цель, которая не может быть далее разделена на под-цели, и является одной логической единицей. Производная цель, это цель, которая представляет собой сочетание нескольких атомных или производные цели, которые могут выполняться параллельно или последовательно. В то время, как атомарная цели определяется системой и внедрение новых атомарных целей потребует работы на низком уровне ИИ, пользователь может определять производные цели сам. Определение новых производных целей - отныне я буду называть производные цели просто цели - может быть сделано в C + + или в LUA (обе системы содержат набор функций, которые работают с целями). Обычно цели определяются исключительно в LUA скрипте. Так как производные цели создаются путем объединения атомарных и других производных целей, должен быть способ организации нескольких целей в логическое объединение - это программа, - что имеет начальную точку, тело для выполнения и условия для окончания. Это логическое объединение существует в CryAISystem и называется GOAL PIPE.