GAMEDESIGNERCOMPENDIUM Telegram 519
Штучний інтелект противників-людей в The Last of Us

хочу поділитись документом де описані основні підходи до розробки ШІ противників як у комбаті, так і у стелсі.

Посилання: https://www.gameaipro.com/GameAIPro2/GameAIPro2_Chapter34_Human_Enemy_AI_in_The_Last_of_Us.pdf

Основними стовпами дизайну стали:
1. Противники мають відчуватись “реалістичними” та “живими”.
2. Гравцю має здаватись, що вони працюють у команді.
3. Противники мають реагувати на вбитих, гравця і мати “інстинкт самозбереження”.
4. Противники мають бути небезпечними, щоб гравець боявся вступати в бій.

Щоб досягти цих цілей, розробники, зрозуміло, дуже старалися над аудіо- та візуальним супроводом, але також приділяли дуже багато уваги поведінці противників. Основна мета була максимально уникнути дивних маневрів, що можуть зруйнувати занурення гравця (зайняти позицію з неправильної сторони дверей або ж пробігти крізь напрям вогню свого напарника).

Навігація.
ШІ використовує два типи navmesh: класичний navmesh, що є відносно дешевим для перформансу, але не надто точним, а також не враховує всі потенційні перепони, та локальні 2D-сітки для КОЖНОГО окремо взятого противника. Другий тип навігації був у рази дорожчим за класичний, але давав хорошу точність у навігації та міг враховувати динамічні перешкоди. Для оптимізації розробники обмежили навігацію на 2D-сітках до одного разу на кадр (тоді як класичний вони могли викликати 40 разів на кадр), а противники мали чергу, у якій використовували 2D-сітки.

Окремим викликом було зробити захід у фланг і навігацію через простір “інтелектуальними”, щоб противники не робили це на відкритому просторі перед гравцем. Для цього розробники імплементували карту зору (exposure map).
На navmesh була вказана висота кожного елемента за допомогою бітів, що давало “топографічну карту” рівня і дозволяло розрахувати видимість. Позиція гравця бралася за основу, і далі вираховувалась видимість на 360 градусів. “Дешевизна” такого підходу дозволила використовувати його для розрахунку всіх найкращих маршрутів руху, особливо заходу у фланг гравця.

Зір.
Класичний конус для поля зору противника не спрацював для розробників, оскільки гра має достатньо великі відстані, а значить, чим ближче гравець до противника, тим легше уникати поля зору. І навпаки, що далі гравець від противника, то швидше і більше поле зору стає.
Щоб вирішити цю проблему, розробники замінили конус на кастомну форму поля зору, що давала кращий кут огляду ближче до противника і звужувала його на відстані.

Для визначення видимості гравця розробники використовували лише одну точку на тілі Джоела, що змінювала свою позицію залежно від того, чи знаходиться гравець у стелсі, чи вже вступив у бій.
У стелсі противники перевіряли, чи бачать центр грудної клітини, що дозволяло зробити стелс легшим для гравця. Однак під час комбата противники перевіряли видимість голови Джоела.

У випадку, якщо противник помітив гравця, він ставив мітку із часовою позначкою і передавав локацію гравця іншим противникам. Однак він не мав доступу до “поточної позиції”, доки знову не помітить гравця або ж доки гравець не вистрілить.

Противники намагаються взяти в “облогу” позицію гравця та наблизитись до неї так близько, як дозволяють укриття, але якщо гравець змістився більше ніж на 5 метрів від поточної позиції, одному противнику дається наказ перевірити останню відому точку, і якщо він не помітив гравця - всі противники починають пошук.

Незалежно від стану гравця (комбат чи стелс), видимість розраховується із таймером. У бою противникам треба менше кадрів “видимості гравця”, ніж у стелсі, але це гарантувало, що противник не реагуватиме на один кадр видимості гравця.

#gamedesign #AI #TLOU #enemy #navigation #combat #stealth
🔥6👍3🤔1



tgoop.com/gamedesignercompendium/519
Create:
Last Update:

Штучний інтелект противників-людей в The Last of Us

хочу поділитись документом де описані основні підходи до розробки ШІ противників як у комбаті, так і у стелсі.

Посилання: https://www.gameaipro.com/GameAIPro2/GameAIPro2_Chapter34_Human_Enemy_AI_in_The_Last_of_Us.pdf

Основними стовпами дизайну стали:
1. Противники мають відчуватись “реалістичними” та “живими”.
2. Гравцю має здаватись, що вони працюють у команді.
3. Противники мають реагувати на вбитих, гравця і мати “інстинкт самозбереження”.
4. Противники мають бути небезпечними, щоб гравець боявся вступати в бій.

Щоб досягти цих цілей, розробники, зрозуміло, дуже старалися над аудіо- та візуальним супроводом, але також приділяли дуже багато уваги поведінці противників. Основна мета була максимально уникнути дивних маневрів, що можуть зруйнувати занурення гравця (зайняти позицію з неправильної сторони дверей або ж пробігти крізь напрям вогню свого напарника).

Навігація.
ШІ використовує два типи navmesh: класичний navmesh, що є відносно дешевим для перформансу, але не надто точним, а також не враховує всі потенційні перепони, та локальні 2D-сітки для КОЖНОГО окремо взятого противника. Другий тип навігації був у рази дорожчим за класичний, але давав хорошу точність у навігації та міг враховувати динамічні перешкоди. Для оптимізації розробники обмежили навігацію на 2D-сітках до одного разу на кадр (тоді як класичний вони могли викликати 40 разів на кадр), а противники мали чергу, у якій використовували 2D-сітки.

Окремим викликом було зробити захід у фланг і навігацію через простір “інтелектуальними”, щоб противники не робили це на відкритому просторі перед гравцем. Для цього розробники імплементували карту зору (exposure map).
На navmesh була вказана висота кожного елемента за допомогою бітів, що давало “топографічну карту” рівня і дозволяло розрахувати видимість. Позиція гравця бралася за основу, і далі вираховувалась видимість на 360 градусів. “Дешевизна” такого підходу дозволила використовувати його для розрахунку всіх найкращих маршрутів руху, особливо заходу у фланг гравця.

Зір.
Класичний конус для поля зору противника не спрацював для розробників, оскільки гра має достатньо великі відстані, а значить, чим ближче гравець до противника, тим легше уникати поля зору. І навпаки, що далі гравець від противника, то швидше і більше поле зору стає.
Щоб вирішити цю проблему, розробники замінили конус на кастомну форму поля зору, що давала кращий кут огляду ближче до противника і звужувала його на відстані.

Для визначення видимості гравця розробники використовували лише одну точку на тілі Джоела, що змінювала свою позицію залежно від того, чи знаходиться гравець у стелсі, чи вже вступив у бій.
У стелсі противники перевіряли, чи бачать центр грудної клітини, що дозволяло зробити стелс легшим для гравця. Однак під час комбата противники перевіряли видимість голови Джоела.

У випадку, якщо противник помітив гравця, він ставив мітку із часовою позначкою і передавав локацію гравця іншим противникам. Однак він не мав доступу до “поточної позиції”, доки знову не помітить гравця або ж доки гравець не вистрілить.

Противники намагаються взяти в “облогу” позицію гравця та наблизитись до неї так близько, як дозволяють укриття, але якщо гравець змістився більше ніж на 5 метрів від поточної позиції, одному противнику дається наказ перевірити останню відому точку, і якщо він не помітив гравця - всі противники починають пошук.

Незалежно від стану гравця (комбат чи стелс), видимість розраховується із таймером. У бою противникам треба менше кадрів “видимості гравця”, ніж у стелсі, але це гарантувало, що противник не реагуватиме на один кадр видимості гравця.

#gamedesign #AI #TLOU #enemy #navigation #combat #stealth

BY Конспект геймдизайнера [GD compendium]


Share with your friend now:
tgoop.com/gamedesignercompendium/519

View MORE
Open in Telegram


Telegram News

Date: |

While some crypto traders move toward screaming as a coping mechanism, many mental health experts have argued that “scream therapy” is pseudoscience. Scientific research or no, it obviously feels good. The public channel had more than 109,000 subscribers, Judge Hui said. Ng had the power to remove or amend the messages in the channel, but he “allowed them to exist.” To view your bio, click the Menu icon and select “View channel info.” End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance. How to Create a Private or Public Channel on Telegram?
from us


Telegram Конспект геймдизайнера [GD compendium]
FROM American