Шрек »в розрізі

Мультфільм «Шрек» студії PDI / DreamWorks створений за допомогою комп'ютерних технологій. Команда художників, аніматорів, інженерів протягом трьох років з нулів і одиничок творила нову реальність. І все для того, щоб занурити глядача в атмосферу, в якій бувальщина і вигадка змішалися так, що відокремити їх один від одного неможливо.

І хоча події розгортаються на цілком земних ландшафтах і в більш-менш звичних інтер'єрах, склад дійових осіб переважно казковий. Ангажовані все улюблені «артисти»: і говорять звірі, і вогнедишні дракони, і монструозні тролі.

Для втілення такої небивальщіни в життя потрібні були фахівці з комп'ютерних наук (а точніше - з комп'ютерної графіки), що займаються розробкою технологій для виробництва цифрової «дійсності». Деякі з цих технологій вже реалізовані в програмному забезпеченні, але коли мова заходить про «спецефектах», вченим доводиться засукати рукава і винаходити нові математичні методи для розрахунку тривимірних світів.

Отже, як же зроблений «Шрек»? Для початку познайомимося з реалізацією середовища проживання персонажів мультфільму. Герої живуть і працюють в тридцяти шести різних середовищах: в казковому лісі, серед посівів соняшнику, в середньовічних замках, над кратером вулкана і т. Д. Кожен такий маленький світ збирається з величезного числа об'єктів: дерев, будівель та іншого «реквізиту». Щоб ввести в середу, наприклад, готичний собор, потрібно описати його пристрій математично.

Рис 1. Різні види собору

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

Візуалізація - дуже тривалий і ресурсномісткий процес. За свідченням аніматорів, прорахунок деяких кадрів займав понад 20 годин, а обсяг даних для розрахунку досягав 2,3 Гб. Щоб прискорити виробничий процес, над сценами працювала ціла мережа з 168 двопроцесорних робочих станцій Silicon Graphics 1200 2U і кілька серверів Silicon Graphics Origin 200.

Мал. 2. Взаємодія в'язкої рідини з персонажем

Мал. 3. Турбулентне рух лави

Мал. 4. Анатомія принцеси

Мал. 5. Принцеса Фіона і Шрек

Однією з найскладніших завдань на шляху до фотореалізму виявилася імітація шкіри. Аніматори почали роботу над макіяжем героїв з вивчення посібників з дерматології та косметичної лазерної хірургії в Стенфордському університеті. Щоб добитися схожості персонажів мультфільму з живими істотами, а не шкіряними ляльками, потрібно забезпечити особливу властивість живої шкіри - напівпрозорість. Шкіра відображає світло не так, як, скажімо, пластмасові тіла. Частина світла, що потрапляє на її поверхню, відбивається, частина поглинається верхнім шаром, інші ж промені проникають в більш глибокі прошарки і відображаються вже звідти, створюючи ефект просвічування. Такими ж властивостями володіють і інші органічні матеріали, наприклад - фрукти, листя, молоко. Людина настільки звик до м'яких тіней навколо носа і губ і світиться прожилкам листя, що навіть найменший дефект освітлення може змусити його відчути неприродність зображення. Тому над трисекундній сценою зі склянкою молока аніматори працювали близько двох місяців, але все одно залишилися не задоволені результатами. Складність, як і в випадку з шкірою, полягала в тому, що, коли частинки світла (фотони) проникають в стакан з молоком, тільки частина з них негайно відбивається від поверхні. Більшість же потрапляє всередину рідини і, багаторазово соударяясь з кульками жиру і молекулами молока, вилітає на поверхню в скоєно непередбачуваною точці. Саме ця суміш блукаючих фотонів висвітлює стакан молока зсередини. Змоделювати зигзаги мільйонів часток на комп'ютері можна, але такий підхід до вирішення завдання може багаторазово уповільнити роботу над фільмом. Тому вченими була побудована спрощена математична модель: фотон або відразу ж відбивається, або проникає в середу, кілька разів соударяющихся з частинками всередині неї і виходить на поверхню. При такому підході сцену можна розрахувати швидше, але готовий продукт буде виглядати дещо штучним. Доводиться компенсувати дефекти зображення невеликими хитрощами.

«Шрек» в цифрах і фактах

Для озеленення пейзажів знадобилося 28 186 дерев і близько трьох мільярдів листя.

Було розроблено близько 68 моделей цифрових акторів: чотири головних персонажа, кілька другорядних і близько тридцяти казкових створінь.

У масовках були задіяні 1000 тварюк - в сцені вторгнення на болото 1000 глядачів на турнірі, 1500 гостей, запрошених на весілля.

За одну «робочу зміну» комп'ютери студії «перемелювали» величезну кількість даних: тільки обсяг файлів текстур становив близько 650 Мб.

Більшість робочих станцій і серверів, «працювали» на виробництві «Шрека», працювало під керуванням операционой системи Linux.

Приєднуйтесь до групи "Обозреватель" на Facebook. Слідкуйте за оновленнями!