Відеоігри швидко стають чудовим симулякром реальності. Ми можемо блукати по неймовірним світів, спілкуватися з правдоподібними персонажами і наносити нацистам переконливо виглядають побої. Проте, відеоігри все ще відчувають проблеми зі зняттям одягу.
Подивіться на сцену з ігри 2010 року Mass Effect 2 з роздягатися Джейкобом. На перший погляд здається, що він стягнув сорочку, як це зробив би будь-яка людина, демонструючи невидимому оператору зароблені в боях кубики преса. А тепер придивіться уважно: до моменту, коли його руки рухаються по тілу, «знімаючи» сорочку, її вже немає. Гра перейшла з одягненою на роздягнену модель за допомогою ілюзії, що змушує гравця подумати, що він знімає сорочку.
Ігри без проблем можуть демонструвати оголених людей, як втім і одягнених. Але перехід від одного стану до іншого набагато складніше, ніж можна уявити. Насправді ця проблема виникає навіть у добре фінансованих і талановитих розробників AAA-ігор. Але як немовля, який намагається засунути голову в рукав сорочки, індустрія поступово рухається вперед.
Персонажі відеоігор не вдягають одяг так, як це робимо ми. Коли гравець запускає Uncharted 4 і бачить Нейтана Дрейка, одягненого в його традиційний пуловер з засуканими рукавами, то насправді це не гола модель персонажа з накинутим на нього об'ектом- «сорочкою». Його одяг приклеєна до нього як частина тіла. Для того, щоб по-справжньому показати, як він одягає і знімає її, розробники повинні окремо симулювати і одяг, і Дрейка, що поки є невирішеною проблемою.
Розмови про роздяганні в іграх почалися після твіти розробника ігор Тома Френсіса, який написав «Цікаво, скільки разів і в скількох командах розробників директор одного разу говорив" Ми створимо першу гру, в якій це можливо. Ми зробимо анімацію зняття і надягання одягу ". А технічні фахівці або аніматори відповідали йому: "Вибачте, але немає. Нам до цієї технології працювати ще 400 років "».
Як відповів Френсіс Kotaku в своєму листі, проблема багатогранна. «З точки зору фізики складно симулювати м'які об'єкти, плавно обертаються навколо складної геометрії, анімація вручну неефективна за часом, крім того, в кінці кінців, овчинка не варта вичинки», - розповів він. «Роздягання ніколи не було серйозної частиною AAA-ігор, тому якісне рішення цього завдання не варто вкладення праці розробників».
«Навіть якщо компанія зможе дозволити собі такі ресурси і час, симуляція реальної одягу з урахуванням сил і енергії потребують для створення красивого і стабільного результату потребують безлічі ітерацій», - повідомив нам в листі технічний художник Blizzard Хенсен Годард. Це можливо в анімованих 3D-фільмах, тому що там використовується зовсім інший набір інструментів для повної симуляції і повторної симуляції деформації тканини, поки вона, нарешті, не потрапить в готовий кадр. Для працюючих в реальному часі ігор така розкіш недоступна.
«У фільмах алгоритм знову і знову виконує ітерації однієї і тієї ж формули, щоб прийти до чогось надійному. В іншому випадку меш вибухає на частини, розщеплюється і розтягується, а топологія стає мінливою ». Хенсен описав працює в реальному часі технологію як «непередбачувану». «Жодна студія не ризикне тим, щоб вся сцена була зіпсована через" вибухнула "одягу. Занадто багато часу і витрат для такого ризику ». Крім того, для розрахунків потрібно купа пам'яті і обчислювальної потужності - це надто багато для несуттєвого, короткого моменту, який запросто можна зімітувати, як у випадку з Mass Effect 2.
Навіть такі незначні деталі, як кишені, викликають проблеми у розробників ігор. У грі Ubisoft 2014 року Watch Dogs головний персонаж Ейден Пірс бродить по місту, засунувши руки в кишені. Директор по анімації Колін Грем, в відео про закулісся гри зізнався, що ніколи не бачив, щоб хтось намагався зробити таке в відеогрі, тому що майже неможливо змусити руки залишатися в кишенях при вільному русі тканини разом з персонажем. В результаті команда розробників створила пристрій з мотузкою, яке звисало з шиї мокап-актора, щоб його руки завжди знаходилися в правильному положенні.
Але навіть при цьому в процесі розробки виникали проблеми. «Одного разу вранці ти запускашь збірку, відкриваєш свій рівень для ітерації і тестування, з'являєшся на карті і бачиш, що пальці Ейдена ворушаться в повітрі, замість того, щоб мирно лежати в кишенях», розповідає колишній дизайнер Ubisoft Шон Нунан.
Одну з таких дивних збірок навіть використовували в одному з трейлерів гри трейлерів гри, в якому демонструвався ігровий персонаж актриси Айши Тайлер. Коли персонаж Тайлер веде розмову по телефону, Ейден спокійно спостерігає за нею, в той час як його пальці смикаються поруч з курткою, як ніби він виконує концерт Баха.
«Особисто мені здається, що найважливіший висновок тут полягає існування досить високу ймовірність того, що блукаючи по Чикаго, Ейден насправді перебирає пальцями в кишенях», - каже Нунан. «І це страшно».
Інші розробники використовують хитрі обхідні шляхи. Візьмемо для прикладу The Witcher 3 - симулятор секс-сцен, на базі якого побудована 100-годинна епічність фентезійна RPG. Секс, як ви могли чути, часто пов'язаний з роздяганням. Однак створення тканин, з якими б могли взаємодіяти персонажі, не було пріоритетним завданням в списку CD Projekt. Технічний директор по графіку гри Кшиштоф Кжіщчін повідомив нам, що команді розробників, крім усього іншого, довелося б вручну створювати нові анімації персонажів і текстури під зовнішньої одягом. Нагорода за такий обсяг зусиль виявилася б занадто малою. Яким же стало рішення? Вони використовували магію. В одній зі сцен одна з головних пасій Геральта Йенніфер закликає невідомі сили, щоб змусити свій одяг зникнути.
Але насправді її одяг не пропадає. «Коли Йенніфер" магічним чином знімає одяг "в одній з романтичних сцен The Witcher 3, насправді це досить простий, але тим не менш відмінний трюк з включенням прозорості на підставі анимированной маски текстур», - розповідає Кжіщчін. «Фізично її одяг не пропадає з тіла. Вона знаходиться на героїні протягом всієї сцени, просто прихована прозорістю ».
Тепер, коли ми знаємо, які проблеми викликає одяг в іграх, нас ще більше вражають сцени роздягання, які виглядають по-справжньому природними без ведьмовской магії або хитрих перемикань камери. Зокрема, справжнім дивом виглядає зняття піджака братом Дрейка в Uncharted 4.
У першій великій сцені з теперішнього часу, де Нейтан Дрейк, Сем Дрейк і Саллі спробували зробити складне пограбування під час аукціону, і Нейтан, і Сем стягують з себе костюми так вільно, що я відразу ж зловив себе на думці, що хочу зрозуміти, з якого вони матеріалу. Але як вдалося це зробити? Як у чарівників з Naughty Dog вийшло те, на що, здавалося б, не здатні інші?
Хенсен Годард, який працював тоді в Naughty Dog, знаходився в команді, що вирішувала цю задачу. Сучасні ігрові движки не підтримують справжню симуляцію тканини в реальному часі, тому Naughty Dog довелося використовувати підручні матеріали: більш просту техніку деформації геометрії під назвою BlendShape, яка використовується в багатьох іграх для деформації осіб та інших мешів відповідно до емоціями та іншими візуально відрізняються станами. Вони вирішували це завдання, переміщаючи моделі поверхонь, звані «скінами» або «мешамі» - по суті це те, що ми бачимо в грі - уздовж набору взаємопов'язаних «кісток» і «шарнірів».
За словами Годарда. використання BlendShape для вирішення проблеми одягу не було простим завданням. Для застосування BlendShape необхідно, щоб кожна можлива поза об'єкта була створена заздалегідь і запечена в гру до часу її виконання. Оскільки в BlendShape використовується безліч поз, їх застосування в стандартному вигляді зажадало б занадто високого навантаження на пам'ять. З іншого боку, створення мешів для кожного контуру піджака було б «дуже складною і болісною роботою».
Але в якийсь момент Годарда і його колег осінило: можна алгоритмічно генерувати пози піджака і використовувати інструмент, який Годард спочатку написав для анімації осіб . «Припустимо, у нас є симуляція з 1000 кадрів», - каже він, описуючи симулируемого об'єкт з тканини. «І це повністю аналогічно особі з тисячею BlendShapes».
Іншим зайнялося машинне навчання: воно аналізувало створені скульптингом або відскановані пози, щоб визначити, чи рухається тканину природним чином. Якщо штучний інтелект визначав, що, припустимо, збіг одно всього 87%, то негайно переробляв кадр. «У грі все відбувається швидко, і оскільки результат відповідає справжнім формам в 99,99% випадків, ніхто не помічає різниці», - каже Годард.
І тільки вирішивши завдання, Годард зрозумів, що зробив те, чого не зміг ніхто інший. «Жодна студія не використовувала аналогічний спосіб», - сказав він. «Я знаю це, тому що всі вони зв'язувалися зі мною, щоб обговорити цю тему. І я розповів все, абсолютно все. Тепер це стає галузевим стандартом ».
«Я пишаюся цим», - сказав нам Хенсен. І цілком заслужено. Коли ви наступного разу побачите, як персонаж недбало знімає з себе піджак, то будете знати, що дякувати за це треба Годарда.
Яким же стало рішення?Але як вдалося це зробити?
Як у чарівників з Naughty Dog вийшло те, на що, здавалося б, не здатні інші?