Настройка И.И. с более продвинутым поведением

Материал из CryWiki Russia

(Различия между версиями)
Перейти к: навигация, поиск
 
(10 промежуточных версий не показаны.)
Строка 1: Строка 1:
-
{{В процессе перевода|дата=7 Марта 2011|автор=1}}
+
== Настройка И. И. с более продвинутым поведением ==
-
== Как настроить ИИ с более продвинутыми Поведение ==
+
[[Файл:Sandbox SimpleAI image001.jpg]]
-
 
+
-
[[Image:Sandbox SimpleAI image001.jpg]]
+
=== Введение ===
=== Введение ===
 +
Это учебное пособие покажет вам, как разместить врагов на карте и указать им, куда они могут идти или где могут скрываться. По умолчанию они запрограммированы стрелять в игрока, как только он попадёт в зону их видимости.
-
Это учебное пособие покажет Вам, как разместить врагов на кате и указать им, куда они могут идти или где могут скрываться.По умолчанию они запрограммированы стрелять в игрока, как только он попадёт в зону их видимости.
+
Типы характеров искусственного интеллекта, их взаимодействие с оружием, как далеко они могут видеть и слышать, продвинутое поведение, такое как групповая тактика, переговоры между ИИ, использование транспортных средств и взаимодействий с сложными объектами, описано в других обучающих программах и справочной библиотеке.
-
 
+
-
Типы характеров искусственного интеллекта , их взаимодействие с оружием, как далеко они могут видеть и слышать, продвинутые поведения, такие как тактика группы, переговоры между ИИ, использование транспортных средств и взаимодействий с сложными объектами, описан в других обучающих программах и справочной библиотеке.
+
-
 
+
-
===Добавление врага на карту===
+
-
====  Размещение ИИ на вашем уровне====
+
-
 
+
-
Для размещения ИИ в '''[[Панель инструментов Sandbox 2|RollupBar]]''' выберите '''Objects''' затем '''Entity''' в папке '''AI''' выберите '''Grunt''' и перетащите в окно перспективы.
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image003.png]]
+
-
 
+
-
====  Снабжение ИИ оружием ====
+
-
Для снабжения ИИ оружием нажмите кнопку '''...''' в поле '''EquipmentPack''' откроется диалоговое окно Пакетов оборудования.Для получения дополнительной информации о том, как настроить EquipmentPacks прочтите учебное пособие по EquipmentPack.
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image005.png]]
+
-
 
+
-
Важно: Чтобы изменения вступили в силу нажмите кнопку '''Reload Script''' (расположена ниже свойств сущности) чтобы grunt начал использовать выбранный пакет оружия.
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image007.png]]
+
-
 
+
-
====  Enemy Archetypes====
+
-
All AI characters in Crysis are placed as Archetype objects, meaning that the parameters only need to be setup once and than can be used across levels. To see the parameters they are using, simple press the Entity Archetype box (in the following screenshot the CAMPER/CAMP.Light_Rifle text)
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image009.png]]
+
-
 
+
-
====  Generating AI Navigation ====
+
-
Even on a flat terrain, make sure to generate new AI navigation at least once after creating the map and also after any modification to the terrain.
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image011.png]]
+
-
 
+
-
The AI navigation can be generated by clicking on the Generate All Navigation item of the AI menu.
+
-
 
+
-
 
+
-
 
+
-
====  Testing the results====
+
-
Go into game mode ('''CTRL+G''') and approach the AI, if configured correctly the AI will shoot the player when he sees or hears him.
+
-
 
+
-
[[Image:Sandbox_SimpleAI_image013.jpg]]
+
-
===Setting up navigation ===
+
=== Добавление противника на карту ===
-
====  Introduction====
+
-
To make your AI function correctly in your level, you need to set up various types of navigation.
+
-
Typing '''ai_DebugDraw=79''' in the '''Console''' will show you if a triangulation is already setup, this means the AI will be able to find its way from one point to another without bumping into obstacles.
+
==== Размещение ИИ на ваш уровень ====
 +
Для размещения ИИ в '''[[Сворачивающаяся панель Sandbox 2|RollupBar]]''' выберите '''Objects''' затем '''Entity''', в папке '''AI''' выберите '''Grunt''' и перетащите в окно перспективы.
-
[[Image:Sandbox_SimpleAI_image015.png]]
+
[[Файл:Sandbox_SimpleAI_image003.png]]
-
==== Vegetation====
+
==== Снабжение ИИ оружием ====
 +
Для снабжения ИИ оружием нажмите кнопку '''…''' в поле '''EquipmentPack''' откроется диалоговое окно пакетов экипировки. Для получения дополнительной информации о настройке пакетов экипировки, прочтите учебное пособие по '''[[Настройка пакетов экипировки|Equipment Pack]]'''.
-
AI will automatically walk around Vegetation objects if set up correctly.
+
[[Файл:Sandbox_SimpleAI_image005.png]]
-
If you want them to hide behind a tree, you just need to set the '''Hideable''' flag in the '''Vegetation''' properties.
+
Важно: Чтобы изменения вступили в силу нажмите кнопку '''Reload Script''' (расположена ниже свойств сущности) чтобы Grunt начал использовать выбранный пакет оружия.
-
[[Image:Sandbox_SimpleAI_image017.png]]
+
[[Файл:Sandbox_SimpleAI_image007.png]]
-
Next, adjust the '''AIRadius''' of the '''Vegetation''' so the AI knows how big the Vegetation object is.
+
==== Архетипы противников ====
 +
Все ИИ-персонажи Crysis размещены как архетип-объекты, это означает, что настроить параметры нужно всего один раз, чтобы использовать на разных уровнях. Чтобы увидеть параметры, которые они используют, просто нажмите на окно '''Entity Archetype''' (в следующем скриншоте текст CAMPER/CAMP.Light_Rifle).
-
[[Image:Sandbox_SimpleAI_image019.png]]
+
[[Файл:Sandbox_SimpleAI_image009.png]]
-
AI will automatically walk around physicalized entities such as vehicles.
+
==== Генерация навигации ИИ ====
 +
Даже на равнинном ландшафте, убедитесь, что вы генерируете новую навигацию ИИ, хотя бы один раз после создания карты, а также после любых изменений на ландшафте.
-
====  Cliffs and big solid objects====
+
[[Файл:Sandbox_SimpleAI_image011.png]]
-
Typing '''ai_debugdraw 85''' in the '''Console''' will display all areas that are too steep to climb (red) and areas that may cause sliding when you try to walk on them (green).  
+
Навигация ИИ может быть сгенерирована нажатием элемента '''Generate All Navigation''', из меню '''AI'''.
-
Now we need to surround all such areas carefully with ForbiddenAreas (see section below).
+
==== Тестирование результатов ====
 +
Перейдите в режим игры ('''CTRL+G''') и подойдите к ИИ, если вы всё правильно настроили, то ИИ будет стрелять в игрока, когда он его увидит или услышит.
-
[[Image:Sandbox_SimpleAI_image021.png]]
+
[[Файл:Sandbox_SimpleAI_image013.jpg]]
-
====  Forbidden areas====
+
=== Настройка навигации ===
-
You need to surround each internal waypoint region with a [[Sandbox_ForbiddenArea|ForbiddenArea]], this way the AI will not try to walk through walls and other objects.
+
==== Введение ====
 +
Чтобы ваш ИИ работал правильно на вашем уровне, вы должны настроить различные типы навигации.
-
Click on '''AI/[[Sandbox_ForbiddenArea|ForbiddenArea]]''' and create a shape around the area you want to make impassable (for example the external walls of a building). Select '''[[Sandbox_ForbiddenArea|ForbiddenArea]]''' from the menu as shown below.
+
Введение '''ai_DebugDraw=79''' в '''консоль''' покажет вам, настроена ли уже триангуляция, это означает, что ИИ сможет найти свой путь из одной точки в другую не натыкаясь на препятствия.
-
[[Image:Sandbox_SimpleAI_image023.png]]
+
[[Файл:Sandbox_SimpleAI_image015.png]]
-
Once your [[Sandbox_ForbiddenArea|ForbiddenArea]] is created and your level triangulated, it will not be possible for the AI to walk through the walls.
+
==== Растительность ====
 +
ИИ автоматически обходит объекты растительности, если всё настроено правильно.
-
[[Image:Sandbox_SimpleAI_image025.png]]
+
Если Вы хотите, чтобы ИИ скрылись за деревьями установите флаг '''Hideable''' в свойствах '''Vegetation'''.
 +
[[Файл:Sandbox_SimpleAI_image017.png]]
-
====  Setting up waypoint regions in internal areas====
+
Затем, скорректируйте '''AIRadius''' '''Vegetation''', чтобы ИИ понимал, насколько большой объект растительности.
-
To make the AI go through doors and navigate inside the building you need to add a Waypoint Region. You need to extend one section of this Waypoint Region outside of the forbidden area, as an entryway for the AI, as below.
+
[[Файл:Sandbox_SimpleAI_image019.png]]
-
[[Image:Sandbox_SimpleAI_image027.png]]
+
ИИ будет так же автоматически обходить более сложные объекты, такие как транспортные средства.
-
The 3 things you need to setup a Waypoint Region are:
+
==== Утесы и большие твердые объекты ====
 +
Введение '''ai_debugdraw 85''' в '''Консоль''' выведет на экран все области, которые слишком круты, чтобы подняться (показаны красным цветом) и области которые могут вызвать скольжение (зеленый).
-
* AI Navigation Modifier Area
+
Теперь мы должны изолировать все такие области запретными областями '''ForbiddenAreas''' (смотрите раздел ниже).
-
* AIWaypoints (of various types)
+
-
* AIWaypoint Entry/Exit points
+
-
You need to surround each waypoint region with an AI Navigation Modifier "Human Waypoint". (The blue shape).
+
[[Файл:Sandbox_SimpleAI_image021.png]]
-
Click on '''AI/[[Sandbox_AINavigationModifier|AINavigationModifier]]''' and create an area shape of that type.
+
==== Запретные области ====
 +
Вы должны окружить каждую внутреннею область точки пути формой [[ForbiddenArea]], таким образом, ИИ не будет врезаться в стены и другие объекты.
-
[[Image:Sandbox_SimpleAI_image029.png]]
+
Нажмите на '''AI/[[ForbiddenArea]]''' и создайте форму вокруг области, которую вы хотите сделать непроходимой (например, внешние стены здания). Выберите '''[[ForbiddenArea]]''' из меню, как показано ниже.
-
By default the NavType is set to "Human Waypoint" so no need to modify anything.  
+
[[Файл:Sandbox_SimpleAI_image023.png]]
-
Place '''AI/AIpoints''' inside your area. You will see they turn blue once they are in a valid area.
+
Как только ваша [[ForbiddenArea]] будет создана, а уровень будет триангулирован, ИИ не будет врезаться в стены.
-
[[Image:Sandbox_SimpleAI_image031.png]]
+
[[Файл:Sandbox_SimpleAI_image025.png]]
-
At the place where AI should be able to enter and exit the area change the type of the '''AIPoint''' to '''Entry/Exit''' (a door symbol will be displayed instead of the blue ball.
+
==== Настройка точек пути во внутренних областях ====
 +
Чтобы ИИ смог входить в двери и перемещаться внутри здания необходимо добавить Waypoint Region. Вам нужно расширить одну секций этого Waypoint Region вне запретной области, чтобы сделать вход для ИИ, как показано ниже.
-
[[Image:Sandbox_SimpleAI_image033.png]]
+
[[Файл:Sandbox_SimpleAI_image027.png]]
-
One part of the AINavigation modifier area should be outside the forbidden area shape (red line) so the AI can reach the point.
+
3 вещи, которые необходимо настроить в Waypoint Region:
-
[[Image:Sandbox_SimpleAI_image035.png]]
+
* Область AI Navigation Modifier
 +
* AIWaypoint (разных типов)
 +
* Точки входа/выхода (''Entry/Exit'') AIWaypoint
-
To generate the connection between all points select the '''[[Sandbox_AINavigationModifier|AINavigationModifier]]''' shape you placed and set '''Auto-Dynamic''' in the '''Waypoint Connection Parameters'''.
+
Вы должны окружить каждую область точки пути формой AINavigationModifier с типом навигации (''NavType'') «Human Waypoint».
-
[[Image:Sandbox_SimpleAI_image037.png]]
+
Щелкните по '''AI/[[AINavigationModifier]]''' и создайте форму указанного выше типа.
-
And finally click on one of the points and press the '''Regen Links''' Button:
+
[[Файл:Sandbox_SimpleAI_image029.png]]
-
[[Image:Sandbox_SimpleAI_image039.png]]
+
По умолчанию тип навигации «Human Waypoint», так что ничего изменять не надо.
-
All Points should now be connected like this and the AI will be able to navigate inside the area and enter/exit it at the points where you set the specific entry and exit points.
+
Разместите '''AI/AIPoint''' внутри вашей области. Вы увидите, что они стали синим тогда, когда они будут находится в правильной области.
-
[[Image:Sandbox_SimpleAI_image041.png]]
+
[[Файл:Sandbox_SimpleAI_image031.png]]
-
See the section below on how ForbiddenAreas and Waypoints should be setup in terms of placement.
+
В том месте, где ИИ должнен входить и выходить из области, там изменить тип '''AIPoint''' на '''Entry/Exit''' (будет отображен символ двери, вместо синего шара).
-
====  Flight Navigation====
+
[[Файл:Sandbox_SimpleAI_image033.png]]
-
You need to surround every area where you want something to fly with an AI Navigation Modifier shape called Flight.  You also need to give this area a height.<br>
+
-
Water Navigation<br>
+
-
You need to surround every area where you want something to navigate on water (i.e. boats) with an AI Navigation Modifier shape called Water.  
+
 +
Одна часть области AINavigationModifier должна быть вне формы запретной области (красная линия), чтобы ИИ смог достичь точки.
-
====  Paths and Roads====
+
[[Файл:Sandbox_SimpleAI_image035.png]]
-
[[Image:Sandbox_SimpleAI_image043.png]]
+
Чтобы сгенерировать соединения со всеми точками, выберите вашу '''[[AINavigationModifier]]'' и нажмите '''Auto-Dynamic''' в '''Waypoint Connection Parameters'''.
-
Create an '''AIPath''' with the '''Road''' box ticked, and vehicles will automatically have a strong preference to use the road/path. AI can also be made to follow the path using the AIFollowPath flowgraph node
+
[[Файл:Sandbox_SimpleAI_image037.png]]
-
====  External Hide Points====
+
И, наконец, щёлкните по одной из точек и нажмите кнопку '''Regen Links''':
-
To make AI hide at specific spots you have to place AIAnchor (outside of waypoint areas).
+
[[Файл:Sandbox_SimpleAI_image039.png]]
-
Place an '''AI/AIAnchor''' next to any solid object. Now, notice the two red bars in front of the hide point, which indicates if the AI can use a crouch/hide animation, or a left/right strafe animation. The red line on the front of a hide point shows that there is left an right enough space the strafe left and right.  Make sure the Green Area is not blocked by anything, so that the AI can actually use it.  
+
Теперь, все точки должны быть соединены, как на рисунке ниже и ИИ сможет перемещаться внутри области, и входить/выходить из неё там, где вы установили конкретные точки входа и выхода.
-
[[Image:Sandbox_SimpleAI_image045.png]]
+
[[Файл:Sandbox_SimpleAI_image041.png]]
 +
Смотрите раздел ниже чтобы узнать о том, как должны быть настроены и размещены ForbiddenArea и Waypoints.
-
==== AIPoint Type Hide Points in Nav Areas====
+
==== Воздушная навигация ====
 +
Вы должны окружить каждую область, в которой вы хотите чтобы пилотировал воздушный транспорт формой AINavigationModifier с типом навигации «Flight». Вы также должны задать для этой области высоту.<br />
-
The same concept for AIAnchors applies to the AIPoint Hide Points.
+
==== Водная навигация ====
-
So, change one waypoint within a nav area to a Hide Point, by changing the '''Type''' in the '''AIPoint Properties'''.
+
Вы должны окружить каждую область, в которой вы хотите чтобы ориентировался водный транспорт (например, лодки) формой AINavigationModifier с типом навигации «Water».
-
[[Image:Sandbox_SimpleAI_image047.png]]
+
==== Пути и дороги ====
 +
[[Файл:Sandbox_SimpleAI_image043.png]]
-
[[Image:Sandbox_SimpleAI_image049.png]]
+
Создайте '''AIPath''' с отмеченной галочкой '''Road''', и транспортные средства будут автоматически иметь сильное предпочтение для использования дорог/путей. Также можно заставить ИИ следовать по пути используя нод потокового графа «AIFollowPath».
 +
==== Внешние точки прикрытия ====
 +
Чтобы заставить скрыться ИИ в определенных местах вы должны поставить AIAnchor (вне областей пути).
-
===How to setup AI correctly &#8211; Advanced tips===
+
Разместите '''AI/AIAnchor''' рядом с любым твёрдым объектом, например, к стене. Теперь, обратите внимание на два красные полосы перед точкой скрытия, которые указывают, что ИИ можете использовать анимацию присядки/скрытия, либо анимации наклона влево/вправо. Красная линия спереди точки скрытия показывает, сколько нужна места для наклона влево и вправо. Убедитесь, что зелёная область ничем не заблокирована, так, чтобы ИИ смог его использовать.
-
====  Forbidden Areas ====
+
-
[[Image:Sandbox_SimpleAI_image051.png]]
+
[[Файл:Sandbox_SimpleAI_image045.png]]
-
Here the forbidden area is placed too far away from the actual object.  
+
==== Тип «Hide» у AIPoint в областях навигации ====
 +
Тот же самый принцип, что у AIAnchor, также применяется у точки скрытия, типа AIPoint.
 +
Чтобы превратить точку пути в навигационной области, в точку скрытия, нужно просто выбрать тип '''Hide''' в поле '''Type''' раздела '''AIPoint Properties'''.
-
[[Image:Sandbox_SimpleAI_image053.jpg]]
+
[[Файл:Sandbox_SimpleAI_image047.png]]
-
Instead place them closer the the edges of the objects. This avoids that the AI might slip in the gaps. Now the AI navigates way better around these objects.  
+
[[Файл:Sandbox_SimpleAI_image049.png]]
-
[[Image:Sandbox_SimpleAI_image055.jpg]]
+
=== Как правильно настроить ИИ — Расширенные советы ===
-
Do not place two forbidden areas so close to each other. Even if the AI can&#8216;t fit through, the navigation will still trace a path in between.  
+
==== Запретные области ====
 +
[[Файл:Sandbox_SimpleAI_image051.png]]
-
[[Image:Sandbox_SimpleAI_image057.jpg]]
+
Здесь запретная область находится слишком далеко от самих объектов.
-
Instead delete one forbidden area. Make one big forbidden area which contains both objects.  
+
[[Файл:Sandbox_SimpleAI_image053.jpg]]
-
[[Image:Sandbox_SimpleAI_image059.jpg]]
+
Вместо этого размещайте их ближе к краям объектов. Это позволит избежать, попадания ИИ в области скольжения. Теперь ИИ обходит эти объекты намного лучше.
-
Do not place objects close on the edge of a forbidden area. Otherwise the AI circles around the hide objects and can slip in the forbidden area.  
+
[[Файл:Sandbox_SimpleAI_image055.jpg]]
-
[[Image:Sandbox_SimpleAI_image061.jpg]]
+
Не ставьте две запретные области так близко друг к другу. Навигация будет всё-равно идти между ними, даже если ИИ не сможет там пройти.
-
Place the hide objects either inside the forbidden area or outside of the forbidden area. Make sure that if the AI circles around the hide object it doesn&#8216;t slip in the forbidden area
+
[[Файл:Sandbox_SimpleAI_image057.jpg]]
-
Large open sided structures should not have one big forbidden area around them.  
+
Вместо этого удалите одну запретную зоны, и создайте одну большую запретную зону, содержащую оба объекта.
-
[[Image:Sandbox_SimpleAI_image063.jpg]]
+
[[Файл:Sandbox_SimpleAI_image059.jpg]]
-
Rather, place smaller forbidden areas around them.
+
Не размещайте предметы рядом с краем запретной зоны. В противном случае ИИ будет кружить вокруг скрытых объектов и сможет проскользнуть в запретную зону.
-
[[Image:Sandbox_SimpleAI_image065.jpg]]
+
[[Файл:Sandbox_SimpleAI_image061.jpg]]
 +
Размещайте скрытые объекты либо внутри запретной зоны, либо за её пределами. Убедитесь в том, что если ИИ будет кружить вокруг скрытых объектов, то он не проскользнёт в запретную зоне.
-
====  Hide Anchors ====
+
Большие, открытые сбоку структуры, не должны иметь одну большую запретную зону вокруг них.
-
[[Image:Sandbox_SimpleAI_image067.png]]
+
[[Файл:Sandbox_SimpleAI_image063.jpg]]
-
The AI hides at the hide anchor if an enemy is the cone. The more AI guys you have the more hide anchors you have to place. Do not place hide anchors for just one direction. Place them for all possible directions.
+
Вместо этого разместите меньшую запретную зону вокруг них.
-
[[Image:Sandbox_SimpleAI_image069.jpg]]
+
[[Файл:Sandbox_SimpleAI_image065.jpg]]
-
Place hide anchors at the sides of an object not only at the edges. Sides provide better cover than edges.
+
==== Якоря прикрытия ====
 +
[[Файл:Sandbox_SimpleAI_image067.png]]
-
[[Image:Sandbox_SimpleAI_image071.jpg]]
+
ИИ скрывается в якоре скрытия, если приближается враг. Чем больше у вас ИИ, тем больше должно быть размещено якорей скрытия. Не размещайте якоря скрытия только в одном направлении. Разместите их на все возможные направления.
-
For thin objects place hide anchors close to the edges so the AI can leave their positions quickly. Do not forget to place them on both sides pointing at each other
+
[[Файл:Sandbox_SimpleAI_image069.jpg]]
-
[[Image:Sandbox_SimpleAI_image073.jpg]]
+
Размещайте якоря скрытия не только по краям объектов, но и у боков. Бока обеспечивают лучшее прикрытие, чем края.
-
Place hide anchors only at position where the AI has real cover. The front and the back of e.g. a car provide less cover. The middle provides better cover.  
+
[[Файл:Sandbox_SimpleAI_image071.jpg]]
-
[[Image:Sandbox_SimpleAI_image075.jpg]]
+
Для тонких объектов, размещайте якоря скрытия так близко к краям, чтобы ИИ смог быстро покинуть свою позицию. Не забудьте разместить их по обе стороны, и обратите их друг к другу.
-
Normaly edges of a house provide less cover. First place hide anchors close to the edge pointing directly in the direction. Then place hide anchors with 45� rotation slightly away from the edge.  
+
[[Файл:Sandbox_SimpleAI_image073.jpg]]
-
[[Image:Sandbox_SimpleAI_image079.jpg]]
+
Размещайте якоря скрытия только в тех позиции, где ИИ истинно сможет спрятаться. Передняя и задняя часть, к примеру, автомобиля даёт небольшое прикрытие. Середина даёт лучшее прикрытие.
-
If you do not have enough hide anchors for many AI guys you can increase the hide anchors. The basic hide anchors are most important. Then you can increase the number hide anchors with the 45� ones.  
+
[[Файл:Sandbox_SimpleAI_image075.jpg]]
-
[[Image:Sandbox_SimpleAI_image081.jpg]]
+
Обычно края домов дают небольшое прикрытие. Первый якорь скрытия разместите близко к краю, и направьте его прямо. Затем разместите якорь скрытия с вращением 45°, немного подальше от края.
-
If you have long objects do not place hide anchors in the middle, otherwise the AI has to move to far to change position. Only if there is other cover in the area can place them in the middle.  
+
[[Файл:Sandbox_SimpleAI_image079.jpg]]
 +
Если вас не достаточно якорей скрытия для нескольких ИИ, то вы можете количество якорей скрытия. Основные якоря скрытия наиболее важны. Затем, вы можете увеличить количество якорей скрытия с вращением 45°.
-
====  Waypoints ====
+
[[Файл:Sandbox_SimpleAI_image081.jpg]]
-
[[Image:Sandbox_SimpleAI_image083.jpg]]
+
Если у вас длинные объекты, то не размещайте якоря скрытия в середине, в противном случае ИИ придётся далеко перемещаться, чтобы сменить позицию. Вы можете размещать их в середине, только тогда, когда есть другая позиция покрытия поблизости к середине.
-
For two rooms it is enough to place these two waypoints. From every corner of the rooms the AI can reach the closest waypoint. The link gives the AI the possibility to switch rooms.  
+
==== Точки пути ====
 +
[[Файл:Sandbox_SimpleAI_image083.jpg]]
-
[[Image:Sandbox_SimpleAI_image085.jpg]]
+
Для двух комнат, будет достаточно разместить две точки пути. ИИ сможет из каждого угла комнату достигнуть ближайшую точку пути. Соединение дает ИИ возможностью переключать комнаты.
-
Place waypoints at the edges of objects. The AI will have no problems going around and never gets stuck.  
+
[[Файл:Sandbox_SimpleAI_image085.jpg]]
-
[[Image:Sandbox_SimpleAI_image087.jpg]]
+
Размещайте точки пути на краях объектов. Никаких проблем с ИИ не будет и он никогда не застрянет.
-
The AI in this example is at the wall and is looking for the closest waypoint. Accidently the closest waypoint is behind an obstacle. In the new engine the AI would still find the correct one but it costs more performance. Instead place the waypoints with the same distance next to thin objects.  
+
[[Файл:Sandbox_SimpleAI_image087.jpg]]
-
[[Image:Sandbox_SimpleAI_image089.jpg]]
+
В данном примере ИИ стоит у стены и ищет ближайшую точку пути. По чистой случайности, ближайшая точка пути находится за препятствием. В новых движках ИИ нашел бы верную точку пути, но он требует более высокую производительность. Вместо этого размещайте точки пути на одинаковом расстоянием от объекта.
-
Take care when you link waypoints. The links should never go through or go very close to physical objects.  
+
[[Файл:Sandbox_SimpleAI_image089.jpg]]
-
[[Image:Sandbox_SimpleAI_image091.jpg]]
+
Будьте осторожны, когда соединяете точки пути. Соединение никогда не должны находиться в непосредственной близости от физических объектов, либо проходить через них.
-
Avoid waypoints that are to close to links. If two AI gyus start moving they might collide because the links are running to close next to each other.  
+
[[Файл:Sandbox_SimpleAI_image091.jpg]]
-
[[Image:Sandbox_SimpleAI_image093.jpg]]
+
Избегайте нахождение точек пути вблизи к соединениям. Если два ИИ начнут двигаться, то они могут столкнуться, так как соединения помогают ИИ обходить друг с друга.
-
Avoid such crossing links at object corners. AI might run into each other at intersections.  
+
[[Файл:Sandbox_SimpleAI_image093.jpg]]
-
[[Image:Sandbox_SimpleAI_image095.jpg]]
+
Избегайте пересечения соединение на углах объектов.
-
You can easily solve this by adding a new waypoint at the edge (You should have a waypoint at the edge anyway).  
+
[[Файл:Sandbox_SimpleAI_image095.jpg]]
-
[[Image:Sandbox_SimpleAI_image097.jpg]]
+
Вы можете легко решить эту проблему путем добавления новой точки пути на краю (одна точка на краю обязательно должна быть).
-
If you have alternative routes think how it would look like if you would walk exactly along the lines. Sometimes it is better to use more waypoints to simulate a more natural movement like the right example.  
+
[[Файл:Sandbox_SimpleAI_image097.jpg]]
-
[[Image:Sandbox_SimpleAI_image099.jpg]]
+
Если у вас есть альтернативные маршруты, то подумайте, как это будет выглядеть, если бы вы сами ходили точно по линии. Иногда лучше использовать большое количество точек пути для имитации более естественного движения, как в примере выше.
-
If you have a room first place all waypoints at all edges of objects. Only do this with objects you can&#8216;t walk over.  
+
[[Файл:Sandbox_SimpleAI_image099.jpg]]
-
[[Image:Sandbox_SimpleAI_image101.jpg]]
+
Если у вас есть комната, то перво-наперво разместите все точки пути по краям всех объектов. Делайте это для объектов, через которые нельзя пройти.
-
Then you look for waypoints which are to close to each other. If they are close together use one waypoint instead of two for cleaner navigation and less chance for the AI to get stuck.  
+
[[Файл:Sandbox_SimpleAI_image101.jpg]]
-
[[Image:Sandbox_SimpleAI_image103.jpg]]
+
Затем, вы ищете точки пути, которые находятся близко друг к другу. Если они находятся близко друг к другу, то используйте одну точку вместо двух, что даст чистую навигацию и меньший шансов того, что ИИ застрянет.
-
After the waypoints place the hide points, follow the general rules from the hideanchors.
+
[[Файл:Sandbox_SimpleAI_image103.jpg]]
-
[[Image:Sandbox_SimpleAI_image105.jpg]]
+
После точек пути, разместите точки скрытия, соблюдая общие правила из раздела «Якоря скрытия».
-
Hidepoints are also part of the navigation, merge hidepoints and waypoints if they are too close to each other.  
+
[[Файл:Sandbox_SimpleAI_image105.jpg]]
-
[[Image:Sandbox_SimpleAI_image107.jpg]]
+
Точки скрытия также являются частью навигация, сделайте слияние точек скрытия и точек пути, если они расположены слишком близко друг к другу.
-
If all navigation points are placed, start linking them.  
+
[[Файл:Sandbox_SimpleAI_image107.jpg]]
-
[[Image:Sandbox_SimpleAI_image109.jpg]]
+
Если все точки навигации размещены, то начинайте их соединение.
-
This waypoint in the middle may not provide perfect movement but it is better then AI getting stuck.
+
[[Файл:Sandbox_SimpleAI_image109.jpg]]
-
[[Image:Sandbox_SimpleAI_image111.jpg]]
+
Эта точка пути в середине, не обеспечивает идеальное движение, но уменьшает шанс застревания ИИ.
-
The red lines show bad links: either the links go through/close to geometry, or they are too close other links. It is okay if the AI first has to take 1-2m step(s) before walking in the right direction. That is better than AI getting stuck.  
+
[[Файл:Sandbox_SimpleAI_image111.jpg]]
 +
Красные линии показывают плохие соединения: либо соединения проходят через/близко к геометрии, либо они расположены слишком близко к другим соединения. Это нормально, если ИИ должен сделать 1-2 шага, прежде, чем начнёт движение в правильном направлении.
-
==== Result====
+
==== Результат ====
-
Having all this setup properly the AI will be able to walk to any point and fight against the player. The better you place the waypoints, hide points the more realistic and challenging it will be for the player to fight against the AI.
+
Настроив всё это правильно, у вас будет ИИ способный идти в любую точку чтобы начать бой с игроком. Чем лучше вы разместите точки пути и точки скрытия, тем реалистичней и сложней будет игроку бороться против ИИ.
-
[[Image:Sandbox_SimpleAI_image113.png]]
+
[[Файл:Sandbox_SimpleAI_image113.png]]
-
[[Category:Official:Basic - Gameplay Setup]]
+
[[Категория:Официальная документация:Основы - Настройка геймплея]]
-
== See Also ==
+
== См. также ==

Текущая версия на 10:44, 13 апреля 2011

Содержание

Настройка И. И. с более продвинутым поведением

Sandbox SimpleAI image001.jpg

Введение

Это учебное пособие покажет вам, как разместить врагов на карте и указать им, куда они могут идти или где могут скрываться. По умолчанию они запрограммированы стрелять в игрока, как только он попадёт в зону их видимости.

Типы характеров искусственного интеллекта, их взаимодействие с оружием, как далеко они могут видеть и слышать, продвинутое поведение, такое как групповая тактика, переговоры между ИИ, использование транспортных средств и взаимодействий с сложными объектами, описано в других обучающих программах и справочной библиотеке.

Добавление противника на карту

Размещение ИИ на ваш уровень

Для размещения ИИ в RollupBar выберите Objects затем Entity, в папке AI выберите Grunt и перетащите в окно перспективы.

Sandbox SimpleAI image003.png

Снабжение ИИ оружием

Для снабжения ИИ оружием нажмите кнопку в поле EquipmentPack откроется диалоговое окно пакетов экипировки. Для получения дополнительной информации о настройке пакетов экипировки, прочтите учебное пособие по Equipment Pack.

Sandbox SimpleAI image005.png

Важно: Чтобы изменения вступили в силу нажмите кнопку Reload Script (расположена ниже свойств сущности) чтобы Grunt начал использовать выбранный пакет оружия.

Sandbox SimpleAI image007.png

Архетипы противников

Все ИИ-персонажи Crysis размещены как архетип-объекты, это означает, что настроить параметры нужно всего один раз, чтобы использовать на разных уровнях. Чтобы увидеть параметры, которые они используют, просто нажмите на окно Entity Archetype (в следующем скриншоте текст CAMPER/CAMP.Light_Rifle).

Sandbox SimpleAI image009.png

Генерация навигации ИИ

Даже на равнинном ландшафте, убедитесь, что вы генерируете новую навигацию ИИ, хотя бы один раз после создания карты, а также после любых изменений на ландшафте.

Sandbox SimpleAI image011.png

Навигация ИИ может быть сгенерирована нажатием элемента Generate All Navigation, из меню AI.

Тестирование результатов

Перейдите в режим игры (CTRL+G) и подойдите к ИИ, если вы всё правильно настроили, то ИИ будет стрелять в игрока, когда он его увидит или услышит.

Sandbox SimpleAI image013.jpg

Настройка навигации

Введение

Чтобы ваш ИИ работал правильно на вашем уровне, вы должны настроить различные типы навигации.

Введение ai_DebugDraw=79 в консоль покажет вам, настроена ли уже триангуляция, это означает, что ИИ сможет найти свой путь из одной точки в другую не натыкаясь на препятствия.

Sandbox SimpleAI image015.png

Растительность

ИИ автоматически обходит объекты растительности, если всё настроено правильно.

Если Вы хотите, чтобы ИИ скрылись за деревьями установите флаг Hideable в свойствах Vegetation.

Sandbox SimpleAI image017.png

Затем, скорректируйте AIRadius Vegetation, чтобы ИИ понимал, насколько большой объект растительности.

Sandbox SimpleAI image019.png

ИИ будет так же автоматически обходить более сложные объекты, такие как транспортные средства.

Утесы и большие твердые объекты

Введение ai_debugdraw 85 в Консоль выведет на экран все области, которые слишком круты, чтобы подняться (показаны красным цветом) и области которые могут вызвать скольжение (зеленый).

Теперь мы должны изолировать все такие области запретными областями ForbiddenAreas (смотрите раздел ниже).

Sandbox SimpleAI image021.png

Запретные области

Вы должны окружить каждую внутреннею область точки пути формой ForbiddenArea, таким образом, ИИ не будет врезаться в стены и другие объекты.

Нажмите на AI/ForbiddenArea и создайте форму вокруг области, которую вы хотите сделать непроходимой (например, внешние стены здания). Выберите ForbiddenArea из меню, как показано ниже.

Sandbox SimpleAI image023.png

Как только ваша ForbiddenArea будет создана, а уровень будет триангулирован, ИИ не будет врезаться в стены.

Sandbox SimpleAI image025.png

Настройка точек пути во внутренних областях

Чтобы ИИ смог входить в двери и перемещаться внутри здания необходимо добавить Waypoint Region. Вам нужно расширить одну секций этого Waypoint Region вне запретной области, чтобы сделать вход для ИИ, как показано ниже.

Sandbox SimpleAI image027.png

3 вещи, которые необходимо настроить в Waypoint Region:

  • Область AI Navigation Modifier
  • AIWaypoint (разных типов)
  • Точки входа/выхода (Entry/Exit) AIWaypoint

Вы должны окружить каждую область точки пути формой AINavigationModifier с типом навигации (NavType) «Human Waypoint».

Щелкните по AI/AINavigationModifier и создайте форму указанного выше типа.

Sandbox SimpleAI image029.png

По умолчанию тип навигации «Human Waypoint», так что ничего изменять не надо.

Разместите AI/AIPoint внутри вашей области. Вы увидите, что они стали синим тогда, когда они будут находится в правильной области.

Sandbox SimpleAI image031.png

В том месте, где ИИ должнен входить и выходить из области, там изменить тип AIPoint на Entry/Exit (будет отображен символ двери, вместо синего шара).

Sandbox SimpleAI image033.png

Одна часть области AINavigationModifier должна быть вне формы запретной области (красная линия), чтобы ИИ смог достичь точки.

Sandbox SimpleAI image035.png

Чтобы сгенерировать соединения со всеми точками, выберите вашу AINavigationModifier и нажмите Auto-Dynamic' в Waypoint Connection Parameters.

Sandbox SimpleAI image037.png

И, наконец, щёлкните по одной из точек и нажмите кнопку Regen Links:

Sandbox SimpleAI image039.png

Теперь, все точки должны быть соединены, как на рисунке ниже и ИИ сможет перемещаться внутри области, и входить/выходить из неё там, где вы установили конкретные точки входа и выхода.

Sandbox SimpleAI image041.png

Смотрите раздел ниже чтобы узнать о том, как должны быть настроены и размещены ForbiddenArea и Waypoints.

Воздушная навигация

Вы должны окружить каждую область, в которой вы хотите чтобы пилотировал воздушный транспорт формой AINavigationModifier с типом навигации «Flight». Вы также должны задать для этой области высоту.

Водная навигация

Вы должны окружить каждую область, в которой вы хотите чтобы ориентировался водный транспорт (например, лодки) формой AINavigationModifier с типом навигации «Water».

Пути и дороги

Sandbox SimpleAI image043.png

Создайте AIPath с отмеченной галочкой Road, и транспортные средства будут автоматически иметь сильное предпочтение для использования дорог/путей. Также можно заставить ИИ следовать по пути используя нод потокового графа «AIFollowPath».

Внешние точки прикрытия

Чтобы заставить скрыться ИИ в определенных местах вы должны поставить AIAnchor (вне областей пути).

Разместите AI/AIAnchor рядом с любым твёрдым объектом, например, к стене. Теперь, обратите внимание на два красные полосы перед точкой скрытия, которые указывают, что ИИ можете использовать анимацию присядки/скрытия, либо анимации наклона влево/вправо. Красная линия спереди точки скрытия показывает, сколько нужна места для наклона влево и вправо. Убедитесь, что зелёная область ничем не заблокирована, так, чтобы ИИ смог его использовать.

Sandbox SimpleAI image045.png

Тип «Hide» у AIPoint в областях навигации

Тот же самый принцип, что у AIAnchor, также применяется у точки скрытия, типа AIPoint. Чтобы превратить точку пути в навигационной области, в точку скрытия, нужно просто выбрать тип Hide в поле Type раздела AIPoint Properties.

Sandbox SimpleAI image047.png

Sandbox SimpleAI image049.png

Как правильно настроить ИИ — Расширенные советы

Запретные области

Sandbox SimpleAI image051.png

Здесь запретная область находится слишком далеко от самих объектов.

Sandbox SimpleAI image053.jpg

Вместо этого размещайте их ближе к краям объектов. Это позволит избежать, попадания ИИ в области скольжения. Теперь ИИ обходит эти объекты намного лучше.

Sandbox SimpleAI image055.jpg

Не ставьте две запретные области так близко друг к другу. Навигация будет всё-равно идти между ними, даже если ИИ не сможет там пройти.

Sandbox SimpleAI image057.jpg

Вместо этого удалите одну запретную зоны, и создайте одну большую запретную зону, содержащую оба объекта.

Sandbox SimpleAI image059.jpg

Не размещайте предметы рядом с краем запретной зоны. В противном случае ИИ будет кружить вокруг скрытых объектов и сможет проскользнуть в запретную зону.

Sandbox SimpleAI image061.jpg

Размещайте скрытые объекты либо внутри запретной зоны, либо за её пределами. Убедитесь в том, что если ИИ будет кружить вокруг скрытых объектов, то он не проскользнёт в запретную зоне.

Большие, открытые сбоку структуры, не должны иметь одну большую запретную зону вокруг них.

Sandbox SimpleAI image063.jpg

Вместо этого разместите меньшую запретную зону вокруг них.

Sandbox SimpleAI image065.jpg

Якоря прикрытия

Sandbox SimpleAI image067.png

ИИ скрывается в якоре скрытия, если приближается враг. Чем больше у вас ИИ, тем больше должно быть размещено якорей скрытия. Не размещайте якоря скрытия только в одном направлении. Разместите их на все возможные направления.

Sandbox SimpleAI image069.jpg

Размещайте якоря скрытия не только по краям объектов, но и у боков. Бока обеспечивают лучшее прикрытие, чем края.

Sandbox SimpleAI image071.jpg

Для тонких объектов, размещайте якоря скрытия так близко к краям, чтобы ИИ смог быстро покинуть свою позицию. Не забудьте разместить их по обе стороны, и обратите их друг к другу.

Sandbox SimpleAI image073.jpg

Размещайте якоря скрытия только в тех позиции, где ИИ истинно сможет спрятаться. Передняя и задняя часть, к примеру, автомобиля даёт небольшое прикрытие. Середина даёт лучшее прикрытие.

Sandbox SimpleAI image075.jpg

Обычно края домов дают небольшое прикрытие. Первый якорь скрытия разместите близко к краю, и направьте его прямо. Затем разместите якорь скрытия с вращением 45°, немного подальше от края.

Sandbox SimpleAI image079.jpg

Если вас не достаточно якорей скрытия для нескольких ИИ, то вы можете количество якорей скрытия. Основные якоря скрытия наиболее важны. Затем, вы можете увеличить количество якорей скрытия с вращением 45°.

Sandbox SimpleAI image081.jpg

Если у вас длинные объекты, то не размещайте якоря скрытия в середине, в противном случае ИИ придётся далеко перемещаться, чтобы сменить позицию. Вы можете размещать их в середине, только тогда, когда есть другая позиция покрытия поблизости к середине.

Точки пути

Sandbox SimpleAI image083.jpg

Для двух комнат, будет достаточно разместить две точки пути. ИИ сможет из каждого угла комнату достигнуть ближайшую точку пути. Соединение дает ИИ возможностью переключать комнаты.

Sandbox SimpleAI image085.jpg

Размещайте точки пути на краях объектов. Никаких проблем с ИИ не будет и он никогда не застрянет.

Sandbox SimpleAI image087.jpg

В данном примере ИИ стоит у стены и ищет ближайшую точку пути. По чистой случайности, ближайшая точка пути находится за препятствием. В новых движках ИИ нашел бы верную точку пути, но он требует более высокую производительность. Вместо этого размещайте точки пути на одинаковом расстоянием от объекта.

Sandbox SimpleAI image089.jpg

Будьте осторожны, когда соединяете точки пути. Соединение никогда не должны находиться в непосредственной близости от физических объектов, либо проходить через них.

Sandbox SimpleAI image091.jpg

Избегайте нахождение точек пути вблизи к соединениям. Если два ИИ начнут двигаться, то они могут столкнуться, так как соединения помогают ИИ обходить друг с друга.

Sandbox SimpleAI image093.jpg

Избегайте пересечения соединение на углах объектов.

Sandbox SimpleAI image095.jpg

Вы можете легко решить эту проблему путем добавления новой точки пути на краю (одна точка на краю обязательно должна быть).

Sandbox SimpleAI image097.jpg

Если у вас есть альтернативные маршруты, то подумайте, как это будет выглядеть, если бы вы сами ходили точно по линии. Иногда лучше использовать большое количество точек пути для имитации более естественного движения, как в примере выше.

Sandbox SimpleAI image099.jpg

Если у вас есть комната, то перво-наперво разместите все точки пути по краям всех объектов. Делайте это для объектов, через которые нельзя пройти.

Sandbox SimpleAI image101.jpg

Затем, вы ищете точки пути, которые находятся близко друг к другу. Если они находятся близко друг к другу, то используйте одну точку вместо двух, что даст чистую навигацию и меньший шансов того, что ИИ застрянет.

Sandbox SimpleAI image103.jpg

После точек пути, разместите точки скрытия, соблюдая общие правила из раздела «Якоря скрытия».

Sandbox SimpleAI image105.jpg

Точки скрытия также являются частью навигация, сделайте слияние точек скрытия и точек пути, если они расположены слишком близко друг к другу.

Sandbox SimpleAI image107.jpg

Если все точки навигации размещены, то начинайте их соединение.

Sandbox SimpleAI image109.jpg

Эта точка пути в середине, не обеспечивает идеальное движение, но уменьшает шанс застревания ИИ.

Sandbox SimpleAI image111.jpg

Красные линии показывают плохие соединения: либо соединения проходят через/близко к геометрии, либо они расположены слишком близко к другим соединения. Это нормально, если ИИ должен сделать 1-2 шага, прежде, чем начнёт движение в правильном направлении.

Результат

Настроив всё это правильно, у вас будет ИИ способный идти в любую точку чтобы начать бой с игроком. Чем лучше вы разместите точки пути и точки скрытия, тем реалистичней и сложней будет игроку бороться против ИИ.

Sandbox SimpleAI image113.png

См. также