Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Перетаскивайте фигуры, заполняйте линии и зарабатывайте очки! Свобода действий, увлекательный геймплей и тренировка ума – станьте мастером блоков!

Блок Мастер - Супер Пазл

Три в ряд, Головоломки, Казуальные

Играть

Топ прошлой недели

  • cristall75 cristall75 6 постов
  • 1506DyDyKa 1506DyDyKa 2 поста
  • Animalrescueed Animalrescueed 35 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

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

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
15
TechSavvyZone
TechSavvyZone

Продолжение поста «Технологии: "Path Tracing и Ray Tracing" принципы работы»⁠⁠1

2 дня назад

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

ГП с трассировкой — устройство и принцип работы

Несмотря на все ухищрения, для быстрых расчетов трассировки все также требуется мощное вычислительное оборудование. Поэтому видеокарты, поддерживающие ее, оснащаются тысячами шейдерных процессоров и специализированными вычислительными блоками — RT-ядрами.

Шейдерные процессоры выполняют арифметические операции, в то время как RT-ядра разработаны и оптимизированы именно для операций трассировки лучей.

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

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

Как и шейдерные процессоры, RT-ядра работают параллельно друг с другом. На современных видеокартах это позволяет обрабатывать несколько миллиардов лучей в секунду, а общий счет выполненных операций при этом достигает триллионов. Например, NVIDIA GeForce RTX 3090 родом из 2022 года выполняет за одну секунду до 36 триллионов операций. Тогда как самый мощный суперкомпьютер 2000 года, полагающийся на грубую вычислительную мощность центральных процессоров, за то же время осуществлял лишь 12,3 триллиона.

Чем отличается трассировка лучей

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

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

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

Это позволяет хорошо интерполировать непрямое освещение, не прибегая к огромному количеству вычислений. Данный способ является одним из методов трассировки, который используется системой освещения Lumen в графическом движке Unreal Engine 5. Второй вариант техники называется трассировкой лучей в экранном пространстве. Тут используется совершенно другой подход на основе трех составляющих: изображения, полученного с помощью традиционного рендеринга, карты глубины кадра и карты нормалей. Из отрендеренного изображения берется информация о цвете объектов. Карта глубины показывает, насколько далеко они находятся от камеры.

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

Когда в процессе трассировки луч попадает на отражающую поверхность, его дальнейшее распространение продолжается в соответствии с этой информацией. Например, попав в озеро, лучи отразились в сторону деревьев — значит на поверхности озера появится искаженное изображение последних.

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

Показать полностью 10
IT Программист Инженер Программа Компьютерная графика 3D графика Программирование Компьютерные игры Ответ на пост Длиннопост
0
31
TechSavvyZone
TechSavvyZone

Технологии: "Path Tracing и Ray Tracing" принципы работы⁠⁠1

3 дня назад

Трассировка пути — продвинутая технология построения изображений в компьютерной графике. Она широко применяется для создания реалистичных сцен в фильмах, и все больше становится популярной в новых играх для ПК и консолей. Как работает эта технология, и в чем ее отличия от более распространенной трассировки лучей?

Что такое трассировка пути

Компьютерная графика, используемая в современном кинематографе, основана на одной из техник трассировки лучей — трассировке пути (Path Tracing). Этот алгоритм появился в далеком 1986 году, но из-за своей сложности лишь спустя 30 лет начал массово использоваться для создания графики в фильмах.

Чтобы понять, почему все это время трассировка пути оставалась неосуществимой, ознакомимся с основами построения подобной картинки. Сначала 3D-художники вручную моделируют форму объектов в сцене, а программное обеспечение для рендера разбивает их на мелкие треугольники — полигоны.

Затем на модели накладываются текстуры, которые симулируют материалы определенного цвета и типа — например, шероховатые, гладкие или стеклянные.

Готовые объекты и источники света: солнце, небо, фонари, размещаются в нужных положениях на 3D-сцене. После этого добавляется виртуальная камера и запускается процесс рендеринга — благодаря ему картинка в кадре визуализируется в виде привычного 2D-изображения.

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

Для образования каждой точки конечной картинки осуществляется несколько тысяч подобных расчетов. А для формирования одного кадра изображения с разрешением 4К их потребуется несколько миллиардов.

Именно из-за этого долгое время создание изображений с использованием трассировки пути было очень медленным процессом. Например, в 2016 году рендерингом фильмов «Зверополис» и «Моана» занималась ферма из тысяч серверов, которые производили вычисления в течении нескольких месяцев — и это всего для двух часов анимации.

Формирование изображения

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

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

Базовый цвет точки формируется с помощью нескольких лучей, которые попадают рядом с центральным — для этого все их цвета усредняются. Подобные лучи называются первичными.

В результате такого подхода формируется изображение с правильной перспективой.

Глобальное освещение

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

Для этой цели комбинируются два вида расчетов: прямого (Direct) и непрямого (Indirect) освещения. При первом виде вычислений просчитываются лучи непосредственно от источников освещения — солнца, неба и ламп. Они называются теневыми.

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

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

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

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

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

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

Сложность трассировки пути зависит от количества источников света, количества лучей на точку и предельно допустимого числа их дополнительных отскоков. У сцены из первого примера с замком используется четыре источника света, тысяча лучей на точку и 12 отскоков. Чтобы визуализировать один ее кадр в 4К, нужно просчитать примерно 400 миллиардов лучей.

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

Чтобы достичь приемлемой производительности, в современных играх трассировка пути реализована намного проще — один-два луча на точку и от одного до четырех отскоков. Но даже при таких параметрах и базовом разрешении Full HD для комфортной игры каждую секунду видеокарте понадобится просчитывать около полумиллиарда лучей.

Иерархия ограничивающих объемов

Еще одна ключевая трудность при трассировке пути — узнать, на какой именно полигон луч из точки попадает первым, чтобы определить ее основной цвет. В случае, если полигонов десятки или сотни, можно воспользоваться вычислением траектории луча с помощью математических уравнений. Но в современных сценах их миллионы, поэтому этот способ потребует огромных вычислительных ресурсов. Чтобы упростить данный процесс, используется иерархия ограничивающих объемов (Bounding Volume Hierarchy, BVH). При таком подходе сцена разделяется на виртуальные объемы-коробки, в каждой из которых оказывается одинаковое количество полигонов.

Коробки делятся надвое до тех пор, пока в каждой из них не останется всего несколько полигонов (обычно от 4 до 32). В нашем примере сцена состоит из трех миллионов полигонов, которые «раскладываются» в полмиллиона небольших коробочек.

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

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

В виду ограничения фотоматериалов

ПРОДОЛЖЕНИЕ СЛЕДУЕТ...

Показать полностью 23
IT Программист Инженер Программа Компьютерная графика 3D графика Программирование Компьютерные игры Длиннопост
2
9
user10393482
Искусственный интеллект

Магия? Нет, нейросеть. Представлена Ultra3D, которая создает 3D-модель из фото за 10 секунд⁠⁠

4 месяца назад

До недавнего времени создание качественной 3D-модели из одной картинки было долгой и муторной задачей. Нейросети пыхтели по несколько минут, а то и часов, чтобы выдать что-то более-менее внятное, часто "мыльное" и с искаженной геометрией. Теперь, похоже, всё изменилось.

Исследователи представили Ultra3D — новую модель, которая генерирует полноценную трехмерную модель из одного-единственного 2D-изображения всего за 10 секунд.

Как это работает?

Вы просто даете ей одну картинку — сову, бургер, статую, да что угодно. А через 10 секунд получаете готовую 3D-модель, которую можно покрутить со всех сторон и рассмотреть в деталях.

В чем прорыв?

  1. Скорость. 10 секунд — это феноменально быстро. Предыдущие методы требовали долгой "оптимизации" под каждое изображение, а Ultra3D просто "прогоняет" картинку через себя и сразу выдает результат.

  2. Качество. Судя по примерам на сайте проекта, качество впечатляет. Модель отлично справляется с мелкими деталями, сложными текстурами (вроде перьев совы или салата в бургере) и правильно восстанавливает геометрию объекта. Никаких "поплывших" форм.

  3. Доступность. Нужна всего одна картинка. Не нужно снимать объект с разных ракурсов или иметь специальное оборудование.

Вот сравнение модели с другими:

Зачем это нужно?

Потенциал у технологии огромный:

  • Игры: Можно будет сфотографировать свой любимый предмет (или кота) и легко перенести его в игру.

  • Интернет-магазины: Вместо галереи фото — полноценная 3D-модель товара, которую можно покрутить перед покупкой.

  • 3D-печать: Упростится создание моделей для печати.

  • AR/VR: Быстрое наполнение виртуальных миров реалистичными объектами.

P.S. А еще я веду канал "сбежавшая нейросеть", где рассказываю про ИИ с творческой стороны. Подписывайтесь!

Показать полностью 1
[моё] Дизайнер IT Программирование Искусственный интеллект Графика Компьютерная графика 3D графика Длиннопост
3
7
jacksergeev
Серия Создание игр с нуля до эксперта

История о том, как можно учиться неизвестному или попытка создать свою игру⁠⁠

5 месяцев назад

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

У меня всегда были какие-то маленькие способности к рисованию, любовь к программированию и работе над какой-то логикой - это все есть в геймдеве.

Выбор был очевиден: я часто засматривался на Юнити, ведь Unreal Engine - лагающая херота, а Godot не имеет много гайдов и туториалов, и документации в том числе. И вот пошло-поехало.

В сентябре я открыл Юнити, и ... понял, что нихера не знаю( Но я радостно забил на это и открыл ChatGPT, думал, что он все расскажет и покажет. Что одним промптом будет ГТА - нет, это была моя первая ошибка.

Затем так получилось, что я бросил это дело до конца марта... Но мечта была, да и прогать на c# вдруг захотелось. Начал учить C# - по известному всем программистам сайтом метанит (нет, это не злостная реклама сайта @moderator, хватит сносить мои посты). За полторы месяца дошел до принципов ООП - относительно нелёгкая тема) и решил, что пора

Надо было отметить, что за этот учебный год (да, я школьник-спортсмен, который тренируется в одном из СШОР Питера) я несколько раз открывал юнити и закрывал, тк не понимал, что за дела.

Пора приступать к вамой интересной части повествования! Поняв, что я готов, я открыл документацию, юнити, Visual Studio и просто сделал себе цель - расставить блоки, добавить куб, дать передвижение кубу - и платформер готов! Скоко же я потел, непонимал, но я сделал это! Почему-то мне казалось, что это ахиреть какой прорыв. Возможно)

Затем я открыл туториал Breakers и пошел пилить раннер. Уроки старые, но базу дают и убирают неуверенность в движке. Сделал на основе этого очередной раннер-платформер с 1 уровнем, где можно было подрубить Год-мод и полететь!

Наступило время для чего-то сложнее. Сделать крестики-нолики, но я поставил себе 1 цель - там должна быть своя графика. Дано: графический планшет и Фотошоп. Результат - в предыдущем посте. Есть поле, яблоко и банан, что дало название Apples | Bananas. Я потратил плюс-минус 3 дня на это. Через сколько дебрей я прошел! Но это сделано! Выложена первая версия этого, будет добавлено меню, нормальный рестарт, ИИ и улучшение багов.

Так вот, к чему это я. Первое, не сдавайтесь! Понятно, что сразу может ничего не получиться, нужно идти дальше, работая. Второе, понятно, что это не выстрелит, и у каждого есть свои крестики-нолики. Но останавливаться я не собираюсь)

Кстати, этот "гениальный" шедевр можно оценить в моем новом тг-канале. В нем я буду выкладывать все, что знаю, узнал, а также гайды, мемы, новости, ассеты, скрипты и на мои файлы, как сейчас например. Вот ссылка: https://t.me/unitygames3009.

P.S: Спасибо тем ,кто дочитал до конца! @moderator, если снесет и этот пост, у меня подгорит пердак(

Показать полностью
[моё] Начинающий художник Unity Gamedev Творчество Telegram (ссылка) Telegram 2D Photoshop Рисование Компьютерная графика Digital Программирование ChatGPT DeepSeek Дизайнер Сайт Тренд Чат-бот Скрипт Текст
4
17
TechSavvyZone
TechSavvyZone

Продолжение поста «Технологии в Играх: "Motion Blur"»⁠⁠1

8 месяцев назад

Движение, Иллюзия или обман Зрения?

Вы могли слышать термин кадры в секунду (FPS), и что 60 FPS — действительно хороший ориентир для любой анимации. Но большинство консольных игр идут на 30 FPS, а кинофильмы обычно записывают на 24 FPS, так зачем же нам стремиться к 60 FPS?
Кадры… в секунду?

Ранние времена кинопроизводства

Съёмки голливудского фильма 1950 года «Юлий Цезарь» с Чарлтоном Хестоном

Съёмки голливудского фильма 1950 года «Юлий Цезарь» с Чарлтоном Хестоном

Когда первые кинематографисты начали снимать кино, многие открытия делались не научным методом, а путём проб и ошибок. Первые камеры и проекторы управлялись вручную, а плёнка была очень дорогой — настолько дорогой, что при съёмке старались использовать наименьшую возможную частоту кадров, лишь бы сэкономить плёнку. Этот порог обычно находился между 16 и 24 FPS.

Когда на физическую плёнку наложили звук (аудиотрек) и воспроизводили его одновременно с видео, то управляемое вручную воспроизведение стало проблемой. Выяснилось, что люди нормально воспринимают переменный фреймрейт для видео, но не для звука (когда изменяется и темп, и высота тона), так что кинематографистам пришлось выбрать постоянную скорость для того и другого. Выбрали 24 FPS, и сейчас, спустя почти сто лет, он остаётся стандартом в кино. (В телевидении частоту кадров пришлось слегка изменить из-за того, как ЭЛТ-телевизоры синхронизируются с частотой электросети).

Кадры и человеческий глаз

Но если 24 FPS еле приемлем для кино, то какой оптимальный фреймрейт? Это хитрый вопрос, потому что оптимальной частоты кадров нет.

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

Глаз — это не камера. Он не воспринимает движение как серию кадров. Он воспринимает непрерывный поток информации, а не набор отдельных картинок. Почему тогда кадры вообще работают?

Два важных феномена объясняют, почему мы видим движение, когда смотрим на быстро сменяющиеся картинки: инерция зрительного восприятия и фи-феномен (стробоскопическая иллюзия непрерывного движения).

Большинство кинематографистов думают, что единственной причиной является инерция зрительного восприятия, но это не так; хотя и подтверждённая, но не доказанная с научной точки зрения инерция зрительного восприятия является феноменом, согласно которому остаточное изображение, вероятно, сохраняется примерно 40 миллисекунд на сетчатке глаза. Это объясняет, почему мы не видим тёмное мерцание в кинотеатрах или (обычно) на ЭЛТ.

Фи-феномен в действии. Заметили движение на картинке, хотя на ней ничего не двигается?

Фи-феномен в действии. Заметили движение на картинке, хотя на ней ничего не двигается?

С другой стороны, многие считают именно фи-феномен истинной причиной того, что нам видится движение за отдельными изображениями. Это оптическая иллюзия восприятия непрерывного движения между отдельными объектами, если их быстро показывают одно за другим. Но даже фи-феномен подвергается сомнению, и учёные не пришли к единому мнению.

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

Стандартные фреймрейты, от плохих к идеальным

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

Несмотря на то, что 60 FPS считаются хорошим фреймрейтом для плавной анимации, этого ещё недостаточно для отличной картины. Контраст и резкость всё ещё можно улучшить за пределами этого значения. Для изучения, насколько наши глаза чувствительны к изменению яркости, был проведён ряд научных исследований. Они показали, что испытуемые способны распознать белый кадр среди тысячи чёрных кадров.

Как выглядит 24 FPS в сравнении с 60 FPS?

Перейти к видео

HFR: перемонтаж мозга с помощью «Хоббита»

«Хоббит» был популярным кинофильмом, снятым на двойном фреймрейте 48 FPS, который называется HFR (high frame rate). К сожалению, не всем понравился новый вид. Этому было несколько причин, главная из них — так называемый «эффект мыльной оперы».

Мозг большинства людей обучен воспринимать 24 полных кадра в секунду как качественное кино, а 50-60 полукадров (чересстрочные телесигналы) напоминают нам телеэфир и разрушают «эффект плёнки». Схожий эффект создаётся, если активировать интерполяцию движения на вашем ТВ для материала 24p (прогрессивная развёртка). Она многим не нравится (несмотря на то, что современные алгоритмы довольно хороши в рендеринге плавных движений без артефактов, что является главной причиной, почему критики отвергают эту функцию).

Хотя HFR значительно улучшает изображение (делает движения не такими прерывистыми и борется со смазанностью движущихся объектов), непросто найти ответ, как улучшить его восприятие. Это требует переобучения мозга. Некоторые зрители не замечают никаких проблем после десяти минут просмотра «Хоббита», но другие абсолютно не переносят HFR.

Камеры и CGI: история motion blur

Но если 24 FPS называют едва переносимым фрейрейтом, то почему вы никогда не жаловались на прерывистость видео, выходя из кинотеатра? Оказывается, в видеокамерах есть встроенная функция — или баг, если хотите — которой не хватает в CGI (в том числе в анимациях CSS!): это motion blur, то есть размытие движущегося объекта. После того, как вы видели motion blur, его отсутствие в видеоиграх и в софте становится до боли очевидным.


Motion blur, это… видимая тянучка быстро движущихся объектов в неподвижном изображении или последовательности изображений, таких как кинофильм или анимация. Она происходит, если записываемое изображение изменяется во время записи одного кадра либо из-за быстрого движения, либо при длительной экспозиции.

В данном случае картинка лучше тысячи слов.

Без эффекта motion blur

Без эффекта motion blur

C эффектом motion blur

C эффектом motion blur

Motion blur использует хитрость, изображая много движения в одном кадре, жертвуя детализацией. Вот причина, почему кинофильм на 24 FPS выглядит относительно приемлемо, по сравнению с видеоиграми на 24 FPS. Но как изначально появляется motion blur? Согласно описанию E&S, которая впервые применила 60 FPS для своих мега-купольных экранов:

Когда вы снимаете фильм на 24 FPS, камера видит и записывает только часть движения перед объективом, а затвор закрывается после каждой выдержки, чтобы перемотать плёнку к следующему кадру. Это значит, что выдержка закрыта в течение такого же времени, что и открыта. При быстром движении и действии перед камерой частота кадров недостаточно высока, чтобы успеть за ними, а изображения размываются в каждом кадре (из-за времени экспозиции).

Вот графика, упрощённо объясняющая процесс.

Классические кинокамеры используют обтюратор (вращающийся секционированный диск) для захвата motion blur. Вращая диск, вы открываете затвор на контролируемый промежуток времени под определённом углом и, в зависимости от этого угла, изменяете время экспозиции. Если выдержка маленькая, то на плёнку запишется меньше движения, то есть motion blur будет слабее; а если выдержка большая, то запишется больше движения и эффект проявится сильнее.

Если motion blur — такая полезная вещь, то почему кинематографисты стремятся от него избавиться? Ну, при добавлении motion blur вы теряете детализацию; а избавившись от него — теряете плавность движений. Так что когда режиссёры хотят снять сцену с большим количеством деталей, вроде взрыва с большим количеством вылетающих частиц или сложной сцены с действием, они часто выбирают маленькую выдержку, которая уменьшает размытие и создаёт чёткий эффект кукольной мультипликации.

Так почему бы его просто не добавить?

Motion blur значительно улучшает анимацию в играх и на веб-сайтах даже на низких фреймрейтах. К сожалению, его внедрение слишком дорого обходится. Для создания идеального motion blur вам понадобилось бы снять в четыре раза больше кадров объекта в движении, а затем осуществить временнýю фильтрацию или сглаживание (вот отличное объяснение от Хьюго Элиаша). Если для выпуска приемлемого материала на 24 FPS вам нужно делать рендеринг на 96 FPS, то вместо этого вы можете просто поднять фреймрейт, так что зачастую это не вариант для контента, который рендерится в реальном времени. Исключениями являются видеоигры, где заранее известна траектория движения объектов, так что можно рассчитать приблизительный motion blur, а также системы декларативной анимации вроде CSS Animations и, конечно, CGI-фильмы как у Pixar.

60 Гц != 60 FPS: частота обновления и почему она важна

герц (Гц) обычно используется, когда говорят о частоте обновления, в то время как показатель кадров в секунду (fps) — устоявшийся термин для покадровой анимации. Чтобы не путать их, мы используем Гц для частоты обновления и FPS для фреймрейта.

Если вы задаётесь вопросом, почему на вашем ноутбуке так некрасиво выглядит воспроизведение дисков Blu-Ray, то часто причина в том, что фреймрейт неравномерно делится на частоту обновления экрана (в противоположность им, DVD конвертируются перед передачей). Да, частота обновления и фреймрейт — не одно и то же, «[Гц] частота обновления включает в себя повторное рисование идентичных кадров, тогда как фреймрейт измеряет, как часто исходный видеоматериал будет выдавать полный кадр новых данных на дисплей». Так что фреймрейт соответствует количеству отдельных кадров на экране, а частота обновления соответствует числу раз, когда изображение на экране обновляется или перерисовывается.

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

Новая проблема у каждого дисплея

Кинопроекторы

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

Однако это не полное описание. Конечно, в результате такого процессы вы увидите-таки фильм, но мерцание экрана из-за того, что экран остаётся тёмным 50% времени, сведёт вас с ума. Эти затемнения между кадрами разрушат иллюзию. Для компенсации проекторы на самом деле закрывают затвор два или три раза на каждом кадре.

Конечно, это кажется нелогичным — почему в результате добавления дополнительных мерцаний нам кажется, что их стало меньше? Задача в том, чтобы уменьшить период затемнения, который оказывает непропорциональный эффект на зрительную систему. Порог слияния мерцания (тесно связанный с инерцией зрительного восприятия) описывает эффект от этих затемнений. Примерно на ~45 Гц периоды затемнения должны составлять менее ~60% времени показа кадра, вот почему эффективен метод двойного срабатывания затвора в кино. Более чем на 60 Гц периоды затемнения могут составлять более 90% времени показа кадра (необходимо для дисплеев вроде ЭЛТ). Вся концепция в целом немного сложнее, но на практике вот как можно избежать мерцания:

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

  • Применить постоянные, неизменяемые фазы затемнений с продолжительностью менее 16 мс

Мерцающие ЭЛТ

Мониторы и телевизоры ЭЛТ работают, направляя электроны на флуоресцентный экран, где содержится люминофор с низким временем послесвечения. Насколько мало время послесвечения? Настолько мало, что вы никогда не увидите полное изображение! Вместо этого в процессе электронного сканирования люминофор зажигается и теряет свою яркость менее чем за 50 микросекунд — это 0,05 миллисекунды! Для сравнения, полный кадр на вашем смартфоне демонстрируется в течение 16,67 мс.

Обновление экрана, снятое с выдержкой 1/3000 секунды.

Обновление экрана, снятое с выдержкой 1/3000 секунды.

Так что единственная причина, почему ЭЛТ вообще работает — это инерция зрительного восприятия. Из-за длительных тёмных промежутков между подсветками ЭЛТ часто кажутся мерцающими — особенно в системе PAL, которая работает на 50 Гц, в отличие от NTSC, работающей на 60 Гц, где уже вступает в действие порог слияния мерцания.

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

Размытые ЖК-дисплеи

Жидкокристаллические дисплеи (LCD), которые классифицируются как устройства выборки и хранения, на самом деле довольно удивительные, потому что у них вообще нет затемнений между кадрами. Текущее изображение непрерывно демонстрируется на нём, пока не поступит новое изображение.

Позвольте повторить: На ЖК-дисплеях нет мерцания, вызванного обновлением экрана, независимо от частоты обновления.

Но теперь вы думаете: «Погодите, я недавно выбирал телевизор, и каждый производитель рекламировал, чёрт побери, более высокую частоту обновления экрана!» И хотя в основном это чистый маркетинг, но ЖК-дисплеи с более высокой частотой обновления решают проблему — просто не ту, о которой вы думаете.

Зрительное размытие в движении

Производители ЖК-дисплеев всё повышают и повышают частоту обновления из-за экранного или зрительного motion blur. Так и есть; не только камера способна записывать размытие в движении, но ваши глаза тоже могут! Прежде чем объяснить, как это происходит, вот две сносящие крышу демки, которые помогут вам почувствовать эффект (нажмите на изображение).

В первом эксперименте сфокусируйте взгляд на неподвижном летающем инопланетянине вверху — и вы будете чётко видеть белые линии. А если сфокусировать взгляд на движущемся инопланетянине, то белые линии волшебным образом исчезают. С сайта Blur Busters:

«Из-за движения ваших глаз вертикальные линии при каждом обновлении кадра размываются в более толстые линии, заполняя чёрные пустоты. Дисплеи с малым послесвечием (такие как ЭЛТ или LightBoost) устраняют подобный motion blur, так что этот тест выглядит иначе на таких дисплеях».

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

Во втором эксперименте ребята из Blur Busters пытаются воссоздать эффект ЖК-дисплея по сравнению с экраном с малым послесвечием, просто вставляя чёрные кадры между кадрами дисплея — удивительно, но это работает.

Как показано ранее, motion blur может стать либо благословением, либо проклятием — он жертвует резкостью ради плавности, а добавляемое вашими глазами размытие всегда нежелательно. Так почему же motion blur — настолько большая проблема для ЖК-дисплеев по сравнению с ЭЛТ, где подобных вопросов не возникает? Вот объяснение того, что происходит, если краткосрочный кадр (полученный за короткое время) задерживается на экране дольше, чем ожидалось.

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

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

Вот как! Получается, что нам нужно сделать — так это засветить изображение на сетчатку, а затем позволить глазу вместе с мозгом выполнить интерполяцию движения.

Дополнительно: так в какой степени наш мозг выполняет интерполяцию, на самом деле?

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

Кадры и обновления экрана не смешиваются и не совпадают!

Как было упомянуто ранее, существуют проблемы, если фреймрейт и частота обновления экрана не синхронизированы, то есть когда частота обновления не делится без остатка на фреймрейт.

Проблема: разрыв экрана

Что происходит, когда ваша игра или приложение начинают рисовать новый кадр на экране, а дисплей находится посередине цикла обновления? Это буквально разрывает кадр на части:

Ваш CPU/GPU выполняет определённые вычисления для составления кадра, затем передаёт его в буфер, который должен ждать, что монитор вызовет обновление через стек драйверов. Затем монитор считывает этот фрейм и начинает его отображать (здесь вам нужна двойная буферизация, чтобы всегда одно изображение отдавалось, а одно составлялось). Разрыв происходит, когда буфер, который в данный момент выводится на экран сверху вниз, заменяется следующим кадром, который выдаёт видеокарта. В результате получается, что верхняя часть вашего экрана получена из одного кадра, а нижняя часть — из другого. Если быть точным, разрыв экрана может произойти, даже если частота обновления и фреймрейт совпадают! У них должна совпадать и фаза, и частота.

Это явно не то, что нам нужно. К счастью, есть решение!

Решение: Vsync

Разрыв экрана можно устранить с помощью Vsync, сокращённо от «вертикальная синхронизация». Это аппаратная или программная функция, которая гарантирует, что разрыва не произойдёт — что ваше программное обеспечение может отрисовать новый кадр только тогда, когда закончено предыдущее обновление экрана. Vsync изменяет частоту изъятия кадров из буфера вышеупомянутого процесса, чтобы изображение никогда не изменялось посередине экрана.

Следовательно, если новый кадр ещё не готов для отрисовки на следующем обновлении экрана, то экран просто возьмёт предыдущий кадр и заново отрисует его. К сожалению, это ведёт к следующей проблеме.

Новая проблема: джиттер

Хотя наши кадры больше не разрываются, воспроизведение всё равно далеко не плавное. На этот раз причина в проблеме, которая настолько серьёзна, что каждая индустрия даёт ей свои названия: джаддер, джиттер, статтер, джанк или хитчинг, дрожание и сцепка. Давайте остановимся на термине «джиттер».

Джиттер происходит, когда анимация воспроизводитеся на другой частоте кадров по сравнению с той, на которой её снимали (или предполагали воспроизводить). Часто это означает, что джиттер появляется, когда частота воспроизведения нестабильная или переменная, а не фиксированная (поскольку бóльшая часть контента записывается с фиксированной частотой). К сожалению, именно это происходит при попытке отобразить, например, контент 24 FPS на экране, который обновляется 60 раз в секунду. Время от времени, поскольку 60 не делится на 24 без остатка, приходится один кадр показывать дважды (если не использовать более продвинутые преобразования), что портит плавные эффекты, такие как панорамирование камеры.

В играх и на веб-сайтах с большим количеством анимации это даже более заметно. Многие не могут воспроизводить анимацию на постоянном, делящемся без остатка фреймрейте. Вместо этого частота смены кадров у них сильно изменяется по разным причинам, таким как независимая друг от друга работа отдельных графических слоёв, обработка ввода пользовательских данных и так далее. Вас это может шокировать, но анимация с максимальной частотой 30 FPS выглядит гораздо, гораздо лучше, чем та же анимация с частотой, которая изменяется от 40 до 50 FPS.

Борьба с джиттером

При преобразовании: «телекинопроектор»

«Телекинопроектор» — метод преобразования изображения на киноплёнке в видеосигнал. Дорогие профессиональные конвертеры вроде тех, что используются на телевидении, осуществляют эту операцию в основном с помощью процесса, который называется управление вектором движения (motion vector steering). Он способен создавать очень убедительные новые кадры для заполнения промежутков. В то же время по-прежнему широко используются два других метода.

Ускорение

При преобразовании 24 FPS в сигнал PAL на 25 FPS (например, ТВ или видео в Великобритании) обычной практикой считается просто ускорить оригинальное видео на 1/25 секунды. Так что если вы когда-нибудь гадали, почему «Охотники за привидениями» в Европе на пару минут короче, то вот ответ. Хотя метод работает на удивление хорошо для видео, он ужасно отражается на звуке. Вы спросите, насколько хуже может быть ускоренный на 1/25 звук без дополнительного изменения высоты тона? Почти на полтона хуже.

Возьмём реальный пример крупного провала. Когда Warner выпустила в Германии расширенную Blu-Ray коллекцию «Властелина колец», они использовали для немецкого дубляжа уже скорректированную PAL-версию звуковой дорожки, которая была предварительно ускорена на 1/25 с последующим понижением тона для исправления изменений. Но поскольку Blu-Ray идёт на 24 FPS, им пришлось выполнять обратное преобразование видео, так что они снова его замедлили. Конечно, с самого начала плохой идеей было выполнять такое двойное преобразование, из-за потерь, но что ещё хуже, после замедления видео для соответствия частоте кадров Blu-Ray они забыли изменить обратно тон на звуковой дорожке, так что все актёры в фильме внезапно стали звучать сверхдепрессивно, разговаривая на полтона ниже. Да, это реальная история и да, она очень оскорбила фанатов, было много слёз, много плохих копий и много потерянных денег после большого отзыва дисков.

Мораль истории: изменение скорости — не самая лучшая идея.

Pulldown

Преобразовать киноматериал для NTSC, американского телевизионного стандарта, не получится простым ускорением, потому что преобразование 24 FPS в 29,97 FPS соответствует ускорению на 24,875%. Если только вы по-настоящему не любите бурундуков, это будет не лучшим вариантом.

Вместо этого используется процесс под названием 3:2 pulldown (среди прочих), который стал самым популярным методом преобразования. В рамках этого процесса берут 4 оригинальных кадра и преобразуют их в 10 чересстрочных полукадров или 5 полных кадров. Вот иллюстрация, которая описывает процесс.

На чересстрочном дисплее (то есть ЭЛТ) видеополя посредине отображаются в тандеме, каждый в чересстрочном варианте, поэтому они состоят из каждой второй строки пикселей. Оригинальный кадр A разбивается на два полукадра, оба из которых отображаются на экране. Следующий кадр B тоже разбивается, но нечётное видеополе отображается дважды, так что этот кадр распределяется по трём полукадрам. И, в сумме, мы получаем 10 распределённых по видеополям полукадров из 4 оригинальных полных кадров.

Это работает достаточно хорошо при показе на чересстрочном экране (таком как ЭЛТ-телевизор) примерно с 60 видеополями в секунду (практически полукадрами), поскольку полукадры никогда не показываются вместе. Но такой сигнал выглядит ужасно на дисплеях, которые не поддерживают полукадры и должны составить вместе 30 полных кадров, как в самом правом столбце на иллюстрации вверху. Причина провала в том, что каждый третий и четвёртый кадры слепляются из двух разных кадров оригинала, что приводит к тому, что я называю «Франкенфрейм». Это особенно ужасно выглядит на быстром движении, когда имеются значительные отличия между соседними кадрами.

Так что pulldown выглядит изящно, но это тоже не универсальное решение. Тогда что? Неужели нет идеального варианта? Как выясняется, он таки есть, и решение обманчиво простое!

При показе: G-Sync, Freesync и ограничение максимальной частоты кадров

Вместо того, чтобы бороться с фиксированной частотой обновления, конечно, гораздо лучше использовать переменную частоту обновления, которая всегда синхронизирована с фреймрейтом. Это именно то, для чего предназначены технологии Nvidia G-Sync и AMD Freesync. G-Sync — модуль, встроенный в мониторы, он позволяет им синхронизироваться с выдачей GPU вместо того чтобы заставлять GPU синхронизироваться с монитором, а Freesync достигает той же цели без модуля. Это действительно революционные технологии, которые устраняют необходимость в «телекинопроекторе», а весь контент с переменным фреймрейтом, вроде игр и веб-анимации, выглядит намного более плавным.

К сожалению, и G-Sync, и Freesync — относительно новые технологии и ещё недостаточно широко распространились, так что если вы как веб-разработчик делаете анимации для веб-сайтов или приложений и не можете себе позволить использовать полноценные 60 FPS, то лучше всего будет ограничить максимальный фреймрейт, чтобы он без остатка делился на частоту обновления — практически во всех случаях наилучшим ограничением будет 30 FPS.

Так как достичь пристойного баланса с учётом всех желаемых эффектов — минимального размытия в движении, минимального мерцания, постоянной частоты кадров, хорошего отображения движения и хорошей совместимости со всеми дисплеями — без особого обременения GPU и дисплея? Да, сверхбольшие фреймрейты могут снизить размытие в движении, но большой ценой. Ответ ясен: 60 FPS.

Показать полностью 17 1
Инженер IT Технологии Компьютер Компьютерная графика Компьютерные игры Программа Разработка Программирование Видео Ответ на пост Длиннопост
0
14
TechSavvyZone
TechSavvyZone

Технологии в Играх: "Motion Blur"⁠⁠1

8 месяцев назад

В связи с особенностями зрения быстро движущиеся объекты мы видим размытыми. Motion Blur предназначен для симуляции этого эффекта в видеоиграх.

Размытие в движении (motion blur) — это визуальный эффект, который имитирует размытие объектов при их быстром движении. Этот эффект можно наблюдать в реальной жизни, когда, например, вы смотрите на быстро движущийся автомобиль или махаете рукой перед глазами. В играх размытие в движении используется для создания более реалистичного и кинематографического опыта. Оно помогает передать ощущение скорости и динамики, делая сцены более живыми и захватывающими.

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

Зачем нужно размытие в движении в играх?

Размытие в движении в играх выполняет несколько важных функций:

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

  2. Эстетика: Размытие может добавить кинематографичности и драматизма, делая сцены более впечатляющими. Эффект размытия часто используется в экшн-сценах, чтобы подчеркнуть динамику и напряжение. Он также может быть использован для создания художественных эффектов, таких как размытие фона для выделения главного объекта.

  3. Сглаживание: Эффект может помочь скрыть недостатки графики и сгладить резкие движения, особенно при низкой частоте кадров. Когда частота кадров падает, движения могут казаться дергаными и неестественными. Размытие в движении помогает смягчить эти артефакты и сделать игру более приятной для глаз.

Как работает размытие в движении: основные принципы

Временная интеграция

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

Векторное поле скорости

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

Постпроцессинг

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

Типы размытия в движении: объектное и экранное

Объектное размытие

Объектное размытие (object motion blur) применяется непосредственно к движущимся объектам. Это позволяет создать более точный и реалистичный эффект, так как размытие учитывает форму и движение конкретного объекта. Объектное размытие требует более сложных вычислений, так как необходимо учитывать движение каждого объекта в сцене. Однако этот метод позволяет добиться высокой точности и реализма.

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

Экранное размытие

Экранное размытие (screen space motion blur) применяется ко всему изображению на экране. Этот метод проще в реализации и менее требователен к ресурсам, но может быть менее точным. Экранное размытие учитывает движение камеры и объектов в сцене, создавая общий эффект размытия. Этот метод позволяет быстро и эффективно реализовать размытие в движении, но может быть менее точным в деталях.

Пример: В шутерах от первого лица размытие применяется ко всему экрану при быстром повороте камеры. Когда игрок быстро поворачивает камеру, весь экран становится размытым, создавая ощущение скорости и динамики. Это помогает передать ощущение быстрого движения и улучшить восприятие игры.

Настройки и оптимизация размытия в движении в играх

Настройки в играх

Большинство современных игр предлагают настройки размытия в движении, которые позволяют игрокам регулировать интенсивность эффекта или полностью его отключить. Это важно, так как некоторые игроки могут испытывать дискомфорт или снижение производительности из-за этого эффекта. Настройки размытия позволяют игрокам адаптировать эффект под свои предпочтения и технические возможности системы.

Оптимизация

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

Примеры оптимизации

  1. Адаптивное размытие: Интенсивность размытия увеличивается при быстром движении камеры и уменьшается при медленном. Это позволяет адаптировать эффект под текущие условия и улучшить производительность.

  2. Качество размытия: В некоторых играх можно выбрать между высоким и низким качеством размытия, что позволяет игрокам балансировать между визуальным качеством и производительностью. Выбор качества размытия позволяет адаптировать эффект под возможности системы и предпочтения игрока.

Фи-феномен в действии. Заметили движение на картинке, хотя на ней ничего не двигается?

Фи-феномен в действии. Заметили движение на картинке, хотя на ней ничего не двигается?

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

Motion Blur симулирует эту особенность человеческого зрения. В зависимости от игры, размытие может использоваться для:

  • Всего кадра

  • Краев кадра

  • Только быстродвижущихся объектов

Каждый вид размытия актуален для определенных сцен.

  • Размытие всего кадра помогает сгладить движение при низком FPS, когда изображение кажется дерганным. Особенно оно актуально для консолей, где многие игры идут с частотой 30 к/c.

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

  • Размытие быстродвижущихся объектов призвано подчеркнуть скорость их движения, не размывая прочие элементы для сохранения динамики игры. К примеру, окружение может двигаться с размытием, а модель персонажа или оружие в руках — перемещаться без него.

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

Показать полностью 7
Инженер IT Технологии Компьютер Компьютерная графика Компьютерные игры Программа Разработка Программирование Длиннопост
3
128
TechSavvyZone
TechSavvyZone

Технологии в Играх: История "От вектора до Decima" Часть Вторая⁠⁠

10 месяцев назад

Продолжаем обзор игровых движков — от примитивной графики восьмидесятых до высокотехнологичных инструментариев современности.

id Tech 3

Quake III стала первой игрой отказавшейся от программного рендера. Только OpenGL, только хардкор! Все функции обработки графики ложились на GPU, разгружая основной процессор. Появилось объемное текстурирование, модели в формате MD3, объемные лучи, параметрические поверхности и многое другое. Так же на id Tech 3 был реализован настоящий бамп-мэппинг (а не обманки из Unreal), полученный за счет использования вертексных шейдеров, которые до Quake III применялись только в кино для создания спецэффектов.

В 1999 году Джон Кармак в очередной раз сделал все сам и в очередной раз двинул индустрию резким рывком вперед. Благодаря вышеописанным нововведениям, id Tech 3 стал самым популярным лицензируемым движком в новом тысячелетии. Medal of Honor, Return to Castle Wolfenstein, American McGee`s Alice, Star Wars: Jedi Knight, Soldier of Fortune II: Double Helix, Heavy Metal: F.A.K.K.2, Star Trek: Voyager Elite Force, Quake Live и другие проекты работали на пламенном моторе от id.

Серия игр Call of Duty до сих пор используют модифицированную версию движка id Tech 3, написанную Infinity Ward и названную IW Engine. Так же студия Treyarch, подмастерья Infinity Ward, используют IW Engine для спин-оффов COD World at War и Black Ops, а также других разработок, вроде 007: Quantum Of Solace. Их предыдущий движок, Treyarch NGL, тоже написан на основе id Tech 3 и использовался для создания Spider-Man 2: The Game, Ultimate Spider-Man, Call of Duty 2: Big Red One, Call of Duty 3 и других игр.

Glacier Engine

Проприетарный движок датчан из io interactive, начавших в 2000 году серию Hitman. Glacier представляет собой в меру продвинутую технологию, идущую в ногу со временем и выдающую большие скопления NPC на больших картах. Графика не всегда была приоритетом io interactive, студия больше стремилась к масштабу и натуралистичности геймплея. Еще в Hitman Blood Money Glacier отрисовывал огромные толпы массовки без потерь фреймрейта, даже в версии для PS2.

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

Так же на основе Glacier был создан движок Dawn Engine использовавшийся в Deus Ex: Mankind Divided.

Geo-Mod

Создатель движка Descent, Джон Слэгл, маг и кудесник, в 2001 году создал чудесный движок Geo-Mod, который похоронила его же иновационность. Написав технологию за одно лето 2000 года, Джон совершил прорыв, конкурировать с которым не смог никто, даже он сам. До Geo-Mod разрушаемость в играх была реализована в виде подмены моделей по окончанию их «здоровья» с хорошей на разрушенную, между которыми вставляли красивый спрайт взрыва. Однако в серии Red Faction, игры которой использовали технологию Слэгла, разрушаемость была реализована по принципу просчета геометрической формы урона, в результате которого движок дробил область разрушения на множество многоугольников, обсчитывал координаты попадания и «вынимал» из множества самую подходящую фигуру. Так же движок просчитывал связи, что создавались при геомодификации, чтобы соприкасающиеся объекты рушились друг за другом, при разрушении одного из них, по всем законам физики. В Geo-Mod к тому же была наращиваемая геометрия и реакция освещения на геомодификацию.

У движка было всего две итерации, и в полную мощность он работал лишь на ПК. В версии Red Faction для PS2 его особенности пришлось жестко урезать в угоду оптимизации. Позже Слэгл ушел из индустрии, а на полную его идеи заработали лишь в 2011 году, с выходом Red Faction Armageddon, которая стала лебединой песнью движка и всего сериала.

Aurora Engine

Преемником Infinity в эпоху полноценного 3D, стал Aurora Engine от все той же BioWare. В 2002 году на нем вышла большая RPG Newerwinter Nights и два ее дополнения. В начале нового тысячелетия ролевки перешли в честные три измерения, на полную развернув свои миры перед игроками, жаждущими исследования и отыгрыша. В те времена BioWare была одним из лучших поставщиков таких миров, а с новым движком их игры были упакованы в не уступающую масштабам графику, с динамическими тенями и системой частиц.

В 2004 году движок лицензировали поляки из CD Projekt RED для первой части The Witcher. Мощности технологии не удовлетворили польских разработчиков, отчего им пришлось переписать около восьмидесяти процентов кода. В основном изменения затрагивали рендеринг, отчего картинка Aurora значительно изменилась, движок оброс пост-эффектами, новой системой освещения, динамической сменой дня и ночи, погодными эффектами и новой физической моделью Karma. Таким образом, был проложен путь к RED Engine, будущему наследнику модифицированной Aurora от CD project RED.

Позже сами BioWare взялись развивать идеи своего стареющего движка. В 2003 году вышла Star Wars: Knights of the Old Republic, работающая на измененной версии Aurora Engine - Odyssey. Разработчики внедряли все новые и новые инструменты в старый движок, пока не поняли, что сделали совершенно новый. В 2006 году Odyssey был переработан и превратился в Electron, легший в основу Newerwinter Nights 2.

Gamebryo

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

Компания Neumerical Design Limited, занимающаяся разработкой рендереров для AutoCAD, после контракта с Interactive Magic создали Gamebryo. Усилиями отдела продаж движок превратился в здорового конкурента RenderWare. Он умел все то же самое, но в больших масштабах: качественные эффекты воды, высокая дальность отрисовки пространства, высокая детализация текстур, поддержка физики Havok и мультиплатформенность.

Dark Age of Camelot, The Elder Scrolls III: Morrowind, Divinity 2, Rift, Bully Scholarship Edition, Epic Mickey, Catherine, Fallout 3 и Warhammer Online: Age of Reckoning – лишь малый список игр, созданных на Gamebryo.

Bethesda так были воодушевлены местным инструментарием, что создали на этом движке не только Morrowind но и The Elder Scrolls IV: Oblivion, Fallout 3 и Fallout New Vegas (силами Obsidian). Лишь позже они переехали на свой собственный движок Creation, который в целом перенял все достоинства и недостатки Gamebryo.

Однако движок застрял в прошлом и на презентации новой версии в 2013 году (которая поддерживала DirectX11 и дружила с железом WiiU) стало ясно, что по качеству картинки технология осталась где-то в 2009.

Unreal Engine 2

Вторая версия UE вышла в 2002 году вместе с релизом Unreal Tournament 2003. В ней были практически полностью переписаны ядро и механизм рендеринга, добавлен физический движок Karma с физикой ragdoll и новая ревизия UnrealEd. Epic наращивали удобство инструментария и актуальность используемых технологий, и их подход, позже выльется в сверхпопулярный UE3 основанный на тех же принципах.

Вторая версия Unreal Engine легла в основу Unreal II: The Awakening, Brothers in Arms: Road to Hill 30, Pariah, SWAT 4, Tom Clancy's Splinter Cell: Double Agent и других.

У движка были улучшенные версии вроде Unreal Engine 2.5 с кучей докрученных технологий вроде DirectX 9, OpenGL 2 и Pixomatic, а также Unreal Engine 2X заточенной конкретно под первый Xbox.

Разработчики из сторонних студий часто использовали UE2 для создания собственных движков. Например, в Thief: Deadly Shadows и Deus Ex: Invisible War, использовался переписанный движок от Epic, названный внутри студии Flesh. Irrational Games написали свой Vengeance Engine (Tribes: Vengeance, SWAT 4) на основе Unreal Engine 2.5, с добавлением HDR, физики Havok 2.0 и других вещей, нынче ставших нормой для любого трехмерного движка. В BioShock (от все той же Irrational) поначалу был задействован Vengeance Engine, однако затем Кен Левин перевел всю команду на свежий Unreal Engine 3. Движки Ubisoft, ставшие основой для большинства их игр середины двухтысячных - YETI engine и LEAD engine, так же были созданы на основе Unreal Engine 2.5.

Jade Engine

Названный в честь главной героини Beyond Good & Evil, движок от Ubisoft, лег в основу не только BG&E, но и второй трилогии Prince of Persia, а так же серии игр про безумных кроликов Rayman Raving Rabbids (вытеснивших самого Рэймана).

В рамках одной технологии BG&E превращается то в игру с открытым миром, то в напряженный стэлс, то в квест, то в симулятор фотографа, то в гонки. Эта чехарда сопровождается отличными эффектами и разнообразными фильтрами. Так же в играх на Jade постоянно использовались постэффекты, делавшие картинку в нужной степени кинематографичной, особенно для начала двухтысячных. А уж занавески, ведущие себя по всем законам физики, в Prince of Persia: The Sands of Time свели с ума многих игроков.

В 2009 году, когда движок окончательно устарел, Ubisoft начали использовать его в играх для портативных консолей и систем со слабым железом, вроде Wii. На основе Jade был создан другой игровой движок компании - Fox, на котором были сделаны игры Naruto: Rise of a Ninja и Naruto: The Broken Bond. Специально для этих проектов в движок была добавлена технология Cell-Shading.

Id Tech 4

Джон Кармак в 2003 году приступил к новому проекту. Технология создавалась с нуля, ведь писать пришлось на C++, ибо C, к тому моменту, уже не хватало. Показы Doom 3 на выставках говорили о том, что Кармак снова тащит индустрию за собой, в какой раз уже делая машину для убийства компьютерного железа. На смену Кармаковской карте освещения пришло попиксельное, да еще и с технологией самозатенения. Главным же новшеством была технология Мегатекстурирования, которая кроме как в Enemy Territory Quake Wars больше нигде не использовалась, однако пригодилась в будущих версиях движка.

Графика у Кармака была отличной, а вот удобство использования хромало. В середине двухтысячных все уже привыкли к удобному во всех смыслах Unreal Engine, который дошел до ревизии 2.5 и содержал в себе уйму инструментов для игр любых жанров. Еще и ценник в 250 000 долларов за лицензию на одну игру выглядел не сильно привлекательно. Работать с неудобной командной строкой и постигать глубины id Tech 4 мало кто хотел. Тем не менее, на движке вышло немало достойных игр вроде Prey, Wolfenstein (2010), Quake 4 и Brink.

Source Engine

Valve не привыкать перестраивать технологии с нуля. Сначала они перестроили Quake Engine для Half-Life. Затем в 2004 они перестроили свой GoldSrc для Half-Life 2. Так и появился известный Source, гордость Valve и икона моддерского сообщества. На фоне конкурентов движок отличали новые графические технологии – подробная физическая модель (перестроенный с нуля Havok), скелетная анимация с реверсной кинематикой, продвинутая технология Ambient occlusion, шейдерная вода и лицевая анимация с автоматической синхронизацией губ. Ну и завершал все это открытый исходный код вкупе с редактором Source Development Kit, в котором можно было создавать игры любых жанров. В 2005 году с выходом демки Half-Life 2: Lost Coast Valve добавили в движок еще и поддержку HDR.

Source лег в основу как игр от самой Valve так и проектов других студий. На нем были созданы Portal, Left 4 Dead, Team Fortress 2, Dark Messiah of Might & Magic, Dear Esther, Tactical Intervention, The Stanley Parable, обе части Titanfall, Apex Legends а так-же Counter Strike: Source и другие популярные проекты.

В трейлере Half-Life: Alyx, которая должна выйти уже в этом году, Valve продемонстрировали новую итерацию движка - Source 2. Технология уже была задействована в Dota 2 – Reborn, однако в довольно сыром виде. Если верить короткому трейлеру Alyx, пожилой движок снова выглядит внушительно: новые физика и освещение впечатляют, а заточенность под VR дает надежду на неслабый импакт от геймплея и окружения.

Unity

В 2005 году вышла первая версия одного из самых известных движков современности. Поначалу движок был бедным и испытывал нехватку инструментов, однако активно рос и спешно дорабатывался. Уже после 2010 года с добавлением инструментария для разработки мобильных игр и приложений популярность Unity поползла вверх на фоне бума смартфонов.

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

Движок стоил дешево, в отличие от той же технологии id, имел бесплатную версию и подписку стоимостью 120 долларов в месяц на человека против лицензии id Tech за 250 000 долларов на один проект.

Unity сегодня — самый доступный, легкий в освоении, гибкий движок, с пользовательским интерфейсом не сложнее Photoshop. На нем работают игры самого разного калибра: от проектов Blizzard вроде Hearthstone: Heroes of Warcraft или огромной Endless Space, до инди разработок вроде The Missing, Gone Home или Firewatch. А также мобильных проектов типа Dead Trigger, Bad Piggies, и сверхпопулярной Pokemon GO. Обширные возможности движка наглядно продемонстрированы в технодемках вроде Adam, Blacksmith и совсем свежей The Heretic. В них показаны максимальные возможности движка и то, что Unity не отстает от флагманов вроде UE или id Tech по сложности и навороченности картинки.

CryENGINE

Начав в 2000 как бенчмарк Nvidia, движок CryENGINE превратился в самостоятельную единицу и открытый объект лицензирования после релиза первой части Far Cry в 2005 году. Crytek разработали прекрасную технологию и игру, что показывала ее достоинства. Братья Йерли оснастили движок всеми необходимыми наворотами для работы с открытыми уровнями, немыслимым количеством отображаемого пространства и хитрым отображением уровня детализации, когда объекты вдали движок подменяет на спрайты вместо моделей. Еще в рукаве у разработчиков была технология PolyBump позволявшая создавать низкополигональные модели, на вид не отличающиеся от высокополигональных.

Но с лицензированием движка не задалось. На CryENGINE было сделано всего пять игр, четыре из которых принадлежали к франшизе Far Cry, а пятой была корейская MMO Aion: Tower of Eternity. Братья Йерли продали все права на движок и торговую марку Far Cry издателю Ubisoft и решили начать все сначала под крылом EA. Именно поэтому все остальные итерации движка называются CryEngine, строчными буквами без капслока.

Serious Engine

Тихие хорваты из Croteam не спеша делали свой ответ Doom, мясной шутер Serious Sam и случайно создали довольно мощный движок, который в последствии будут сравнивать с монструозным Unreal Engine. Особенностью мотора от Croteam была его быстрота и доступность, а так же отрисовка огромных пространств и большого числа противников одновременно. Получилось так, что и игру выпустили, и движок нескольким сторонним студиям лицензировали.

Вторая версия движка хвасталась поддержкой HDR, продвинутым ИИ и ragdoll-физикой однако покупать ее никто не спешил. Вышедший в 2005 году на данной версии движка Serious Sam 2, оказался не очень удачным.

Третья версия движка оказалась намного сильнее, на ней были сделаны HD-ремейк первой части Serious Sam и Serious Sam 3. Движок был заточен под консоли седьмого поколения и многоядерные процессоры и использовал DirecX11. А вот четвертая итерация Serious Engine легшая в основу The Talos Principle и VR версии первой части Serious Sam, могла похвастаться новомодными эффектами и неплохой оптимизацией. Чего уж говорить о поддержке VR.

В новой итерации Serious Engine, на которой в данный момент создается Serious Sam 4, хорваты обещают реализовать полноценный открытый мир и транспортные средства для передвижения.

Yeti Engine

Помимо неплохого Jade Engine у Ubisoft было еще пара технологий, в числе которых как раз был движок Yeti, ориентированный в первую очередь на консоли. Yeti был разработан студией Ubisoft Tiwak (бывшие Yeti Interactive) в 2006 году для Xbox 360-версии Tom Clancy's Ghost Recon Advanced Warfighter и использовался вплоть до 2012 года.

Движок умел все, что в те годы требовалось от хорошего кроссплатформенного движка: шейдеры, God Rays, HDR, динамические тени, затенение от деревьев, интеграция с PhysX, глубина резкости, пост-фильтры и др. На движке вышло около десятка проектов, среди которых Lost: Via Domus, Beowulf: The Game и Tom Clancy's Ghost Recon: Future Soldier.

MT Framework

В 2006 году Capcom вошли в седьмое поколение консолей с новым движком, собранным в один пакет из старых инструментов для работы с Xbox 360. Основная особенность мотора была в работе с каждым ядром CPU напрямую, разделяя задачи на потоки. Тот самый Multi-Threading вынесенный в название. Хотя по другой версии аббревиатура расшифровывается как Megaman Trigger. Поначалу железо PS3 не поддавалось мультипотоковости из-за процессора Cell, отчего Lost Planet: Extreme Condition и Dead Rising долгое время были эксклюзивами X360, однако со временем разработчикам удалось создать специальные инструменты и делать игры даже под сложный процессор Sony. Толпы зомби (при этом не вредящих FPS) в Dead Rising ошеломляют до сих пор, Resident Evil 5 и Devil May Cry 4 все еще выглядят потрясно и даже Dragon`s Dogma может похвастаться неплохой картинкой при наличии немаленького открытого мира.

У движка была мобильная версия, благодаря которой смог случиться порт Resident Evil: Revelations c 3DS, ведь все игры на данном движке изначально создаются с максимально возможной графикой, а уже после обрезаются под конкретные требования конкретной платформы. Отсюда и превосходное качество портов от Capcom, пытавшихся изо всех сил очистить репутацию после фиаско с Sourcenext.

Unreal Engine 3

UE2 принес Epic очень много денег и в компании поняли, что разработка движков намного прибыльнее разработки игр. В 2006 году свет увидела Gears of War наглядно демонстрирующая возможности новой итерации движка, и заодно в выгодном свете показывающая возможности свежего Xbox 360.

UE3, в будущем, станет победителем седьмого консольного поколения, ведь большинство ведущих игровых тайтлов будут сделаны именно на его основе. Плюс Epic окажут колоссальное влияние на индустрию, принеся не только HD графику нового поколения, но и ту самую механику шутеров с укрытиями, став новыми id Software во второй половине двухтысячных.

В UE3 компания собрала все наработки и инструменты с предыдущих итераций движка, созданные не только Epic, но и прочими компаниями-партнерами (вроде технологии SpeedTree). Все это было упаковано в очередную ревизию UnrealED и прекрасно раскрывало возможности консолей седьмого поколения. К тому же фирмам, что уже приобрели UE2, можно было просто обновить его до UE3 и работать с новыми инструментами в уже привычном, старом интерфейсе.

Главным недостатком игр на движке была серо-коричневая гамма картинки, несвоевременная подгрузка текстур и засилье блюра, однако эти решения диктовало не самое мощное консольное железо того времени.

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

Помимо трилогии Gears of War на UE3 работали: трилогия Mass Effect, трилогия Bioshock, трилогия Batman Arkham, Mortal Kombat (2011), дилогия Injustice, Singularity, дилогия Borderlands, Alpha Protocol, Unreal Tournament 3, Medal of Honor (2010), Shadows of the Damned, Alice Madness Returns, Bulletstorm, XCOM и даже мобильные проекты вроде серии Infinity Blade.

Rockstar Advanced Game Engine

Поработав с RenderWare и поняв, что технология себя изжила, Rockstar взялись за разработку собственного инструментария, который позже станет фундаментом для будущих проектов студии вроде GTA и Red Dead Redemption.

В 2006 году компания выпустила симулятор настольного тенниса Rockstar Table Tennis. Никто к такому не был готов. Все ждали чего угодно от скандальной студии, но не симулятор тенниса. Однако именно в этой игре Rockstar презентовали новый движок RAGE, заточенный под консоли нового поколения и оснащенный передовой физической технологией Euphoria от NaturalMotion c процедурной генерацией анимации и инверсной кинематикой. Кроме как Rockstar, навороченная технология от NM, толком больше нигде не использовалась – разве что с грехом пополам в Star Wars The Force Unleashed и не очень удачном футбольном симуляторе Backbreaker. Однако это не мешало NM жить за счет своего анимационного движка Endorphin и мобильных разработок в будущем.

RAGE основан на движке Angel Game Engine, использовавшийся для игр серии Midnight Club и проектов Rockstar шестого поколения игровых консолей.

В 2008 году вышла GTA IV, во всей красе показавшая, на что способен новый движок. Игра попала в книгу рекордов Гиннеса как одна из самых распродаваемых за короткий промежуток времени. Новая часть гангстерской саги выглядела отлично, а из-за маниакально проработанных мелочей, революционной физики и анимации, огромного бесшовного города, регистрации попаданий по разным частям тел врагов и других многочисленных нюансов, казалась пришельцем из далекого будущего. Игры была настоящим next-gen проектом, которого так давно ждали игроки. Так же скрупулезно разработчики проработали физику автомобилей, максимально приближенной к симуляторной, но все равно работающей как аркадная. Хитрая система учитывала вес машин, силу сцепления шин с поверхностью, погодные условия и многое другое. Это делало езду сложной в управлении и опасной на высоких скоростях. Позже в GTA V физику упростили в пользу большей аркадности и простоты освоения.

Позже Rockstar поняли, что движок годится не только для игр в открытом мире вроде GTA или RDR, но и для драйвовых шутеров от третьего лица, вроде Max Payne 3. Игра отличалась проработанной шутерной механикой с сильным импактом от экшна. Позже компания использовала наработки Max Payne 3 в GTA V.

Последняя на данный момент игра на RAGE – Red Dead Redemption 2, одна из самых красивых игр текущего восьмого консольного поколения, имеет охапку наград и внушительные продажи.

CryEngine 2

Учтя опыт работы с первой версией своего движка, братья Йерли начали все заново с другим издателем и другой игровой серией. В 2007 году CryEngine 2 выдавал отличную картинку и аккуратно вклинился между легким в освоении UE3 и неподатливым, но технологичным id Tech 4.

За четыре года существования движка его лицензировали больше студий, нежели первый CryENGINE. В основном, конечно, для обучающих целей, но игр на нем было сделано не меньше десятка. Например, первый Crysis с аддоном, Entropia Universe, Blue Mars и Merchants of Brooklyn.

Главной же особенностью нового движка были отличная картинка вкупе с отличной оптимизацией под 64-разрядные процессоры и поддержкой Direct3D 10.

Anvil Engine

В 2007 году вышла первая Assassin's Creed. Помимо графики нового поколения и большого по тем временам мира, предлагавшая принципиально новый геймплей. Вместо стандартного передвижения Ubisoft предлагали игрокам преодолевать практически любые препятствия прямо на бегу, лазить по стенам, перепрыгивать с крыши на крышу, взбираться на шпили древних достопримечательностей и тд. Специально для обсчета новой системы взаимодействия с окружением, был написал Scimitar Engine.

Scimitar служил верно, но недолго — уже в Prince of Persia (2008), вместе с добавлением шейдеров cell-shading, Ubisoft переименовали его в Anvil. Движок обрел собственное имя и до сих пор используется внутренними студиями при работе над сериалами Aassassins Creed и Ghost Recon.

Для Assassin's Creed 2 вышедшей в 2009 году движок обновили косметикой, добавили продвинутую систему растительности из Far Cry 2 (в этом плане Dunia Engine был слишком хорош), переработали физику тканей и искусственный интеллект. У Ubisoft на руках был один из самых мощных проприетарных движков на рынке, чем они во всю пользовались.

Главным же недостатком движка была работа только под DirectX9. При разработке триквела AC в издательстве поняли, что выпускать в 2012 году проект только с поддержкой DX 9 минимум глупо. Так была добавлена поддержка DX 10 и 11. Графика была на высоте, поэтому разработчики сделали упор на продвинутую анимацию и масштабность, подтянув количество персонажей до 3000 на локацию, да еще и с поумневшим ИИ. На этой же версии движка вышли AC 4 и Rogue в 2013 и 2014 годах. Игры во всю демонстрировали старость технологии, особенно на фоне эксклюзивов Sony и проектов на движке от id Software.

Dunia Engine

Еще один технологичный движок от Ubisoft, использующийся преимущественно в серии шутеров Far Cry начиная с сиквела, вышедшего в 2008 году. Dunia был разработан на основе первой версии CryENGINE, продолжая его идеи и развивая сильные стороны. Разработчики говорили, что от оригинальной технологии осталось лишь пара процентов, все остальное было переписано заново, однако именно идеологически Dunia - CryENGINE от Ubisoft.

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

В Far Cry 2, вдобавок ко всему, дебютировала технология физически точного огня, перекидывающегося от очага возгорания на соседние объекты, леса и поля, распространяясь ветром.

В 2009 году вышла James Cameron's Avatar: The Game, в основе которой был все тот же Dunia Engine, а отличительной чертой проекта было честное стереоскопическое 3D.

Позже движок был доработан и последующие части серии, начиная с Far Cry 3, выходили уже на Dunia Engine 2, вплоть до пятой части и аддона New Dawn.

Eclipse Engine

Наигравшись с Odyssey и Electron, BioWare во время проблемной разработки Dragon Age: Origins в очередной раз переработали свой движок. Консоли нового поколения диктовали свои условия, а порядком устаревший Electron за ними уже не поспевал. Новая реинкарнация получила название Eclipse Engine и вышла на ней лишь Dragon Age: Origins в 2009 году и аддон к ней.

В основном все изменения коснулись технологии рендеринга и косметики: новых пост-эффектов вроде motion blur, глубины резкости и интеграции PhysX.

Более поздняя итерация Eclipse получила название Lycium Engine и стала основой для Dragon Age 2 - последней игры, созданной на собственном движке BioWare. Еще до релиза первой Dragon Age студия уже вовсю работала с Unreal Engine 3 на серии Mass Effect, а в будущем и вовсе перешла на Frostbite.

Frostbite

Отказавшись от сторонних технологий, DICE разработали собственный инструментарий для создания шутеров. После первого появления в 2008 году, Frostbite стал одним из ведущих движков прошлого и текущего консольных поколений. Обретя славу благодаря разрушаемости и реалистичным визуальным эффектам в дилогии Battlefield: Bad Company, движок стал основным инструментом для DICE. А позже и всей EA, заставляющей разработчиков создавать на Frostbite игры разных жанров.

Первая версия движка не поддерживала DirectX11, однако уже во Frostbite 2 ее добавили, в результате чего Battlefield 3 долгое время была одной из самых технологичных игр, наравне с Crysis 2 и эксклюзивами Sony.

Crystal Tools

В 2009 году из под пера Square Enix вышла Final Fantasy XIII, задуманная как флагман игра, поражающая своей навороченной картинкой. Проект оказался не особо успешным и собрал смешанную критику, однако положенный в его основу движок Crystal Tools, с поставленными задачами справился хорошо. FFXIII в 2009 году была одной из самых красивых игр, и приятная картинка для многих перекрыла все ее недостатки вроде монотонного игрового процесса, тесных локаций и слабого сценария. В результате чего Square Enix продолжили тринадцатую часть еще двумя играми: Final Fantasy XIII-2 и Lightning Returns: Final Fantasy XIII.

Изначально движок назывался White Engine и был ориентирован на PS2, однако из-за проблемного процесса разработки был переписан под PS3. Главной фишкой Crystal Tools было не только высокое качество графики, но и бесшовные переходы от кат-сцен к кинематографическим вставкам, что делало FFXIII и ее сиквелы киматографичнее многих конкурентов.

Avalanche Engine 2.0

Движок-тайна в силу того, что Avalanche Studios до сих пор хранят молчание о спецификациях, методах работы и процессе создания движка. Дьявольски красивая картинка, продвинутая симуляция погодных эффектов и огромные игровые пространства без подгрузок сделали имя движку, а его отрицание любых DirectX кроме 10 в 2010 году неслабо удивляло. Just Cause 2 созданная на AE2.0 была одной из самых красивых игр начала прошлого десятилетия и даже сегодня ей есть чем удивить.

Более поздние итерации движка, используемые в Just Cause 3, Just Cause 4 и Mad Max продолжали начатое в 2010 году и дошли вплоть до реалистичной симуляции внутриигровых стихийных бедствий, вроде торнадо.

В виду ограничения Фотоматериалов

ПРОДОЛЖЕНИЕ СЛЕДУЕТ...

Показать полностью 23
Технологии Компьютерное железо Компьютер IT Инновации Программа Видеокарта Тестирование Раритет Компьютерные игры Компьютерная графика Разработчики игр Программирование Длиннопост
16
66
TechSavvyZone
TechSavvyZone

Технологии в Играх: История "От вектора до Decima"⁠⁠

10 месяцев назад

Графический движок - это база, фундамент, сердце будущего проекта. Пламенный мотор, заставляющий все составные части работать слаженно и складываться в единое целое. В компьютерную или видеоигру, в готовое произведение, предстающее во всей красе перед игроком. С точки зрения использования технологий все едины: от крупнобюджетных проектов, вроде опусов Хидео Кодзимы или Дэвида Кейджа, до камерных сатирических игр Винса Дези или Американа МакГи.

Скоро грядет новое консольное поколение с еще более красивыми мирами, детализированными персонажами и разнообразными приключениями. Отличный повод вспомнить, как все начиналось, развивалось, изменялось и мутировало. Как и благодаря кому зеленые векторы превратились в спрайты, затем в полигоны а уже из них сложились миры, по красоте не уступающие голливудским фильмам, стать частью которых не против даже передовые актеры вроде Джона Бернтала или Мадса Миккельсена.

Векторы

В 1961 году вышла одна из первых видеоигр в реальном времени Spacewar! созданная студентами с помощью векторов. Спустя двадцать лет почти ничего не изменилось и даже в восьмидесятых, во времена Battlezone и Elite, игры делались из векторов. Все еще не было конкретных движков. Для отрисовки графики разработчики использовали проверенный векторный метод. Линии проходили из точки А в точку Б а уже из них собирали геометрические фигуры в разных сочетаниях, получая своего рода танки и угловатые космические корабли. Данный способ построения картинки лишь тормозил индустрию – работа с векторами не требовала мощного железа, компании не стремились улучшать имеющиеся комплектующие и биться друг с другом за мощности и кошельки покупателей. Так же это практически на нет сводило работу художников и дизайнеров, ведь в итоге всей графикой занимались программисты, пишущие на «Бейсике». Позже, с появлением дискретных чипов и улучшенных графических адаптеров, добавлявших целых 16 цветов, работа художников стала более востребованной.

Adventure Game Interpreter (AGI)

Во времена квестового бума восьмидесятых супруги Уильямс и их компания Sierra On-Line были на коне. Для своих двухмерных квестов, ставших визитной карточкой студии, они использовали AGI написанный Элом Лоу (отец Leisure Suit Larry) – на тот момент это было лучшее, на чем можно было делать игры. Движок понимал команды как в старинных текстовых RPG и мог выдавать картинку со слоями, где персонажа на экране могли закрывать различные предметы. Героем можно было управлять с клавиатуры и мыши (в поздних версиях) а разрешение картинки достигало целых 160х200 пикселей! Так же AGI стал первым мультиплатформенным движком в истории индустрии, благодаря чему великая King`s Quest вышла на восьми платформах и продалась полумиллионным тиражом, что для тех лет было неслыханно. Схожий успех ждал серию Space Quest, что открыло путь целой ватаге продолжений.

Уильямсы не стали останавливаться на достигнутом и решили развивать идеи Лоу, представив преемника AGI – Sierra`s Creative Interpreter. Мотор оказался намного требовательнее к системам в силу возросших мощностей. Например, разработчики подняли разрешение до 320х200 пикселей с 256 цветовой палитрой, новым звуком, расширенным скриптовым языком и управлением, полностью прикрепленным к мыши. SCI стал продвинутой альтернативой движку SCUMM от Lucasfilm Games и продержался на рынке около десяти лет. В 1997 на движке вышла последняя игра – хоррор Shivers 2.

Script Creation Utility for Maniac Mansion (SCUMM)

Игровая студия имени того самого Джорджа Лукаса, отца далекой-далекой галактики, подходила к созданию своих квестов экспериментально и с юмором. Для их нового проекта, Maniac Mansion было решено написать свою версию интерпретатора языка программирования, да такую, что было бы не стыдно потом использовать в других играх. Так появился SCUMM – движок, в котором можно было рисовать локации, писать нелинейные диалоги и размещать активные предметы и другие элементы пиксельхантинга вообще без написания кода.

Так же в движок легко и безболезненно вживлялись новые инструменты и функции, а Lucasfilm Games не скупились на обновления, в результате чего технологию ждал успех, после которого ее начали лицензировать другие студии. Таким образом, в SCUMM удалось вживить собственную систему написания интерактивной музыки и движок для создания анимации. Благодаря гибкости и богатству инструментария SCUMM в девяностых вытеснил AGI и даже разошелся по всем платформам, от NES до Amiga.

Культовые игры вроде Full Throttle, Day of the Tentacle, дилогии Monkey Island и The Dig Стивена Спилберга были созданы именно на SCUMM.

Gold Box Engine

Движок, написанный специально для игр по мотивам Dungeons & Dragons в 1987 году. Отличительная особенность заключалась в том, что в движке были реализованы сразу два режима перспективы – от первого лица и с высоты птичьего полета, чем активно пользовались разработчики. Так же у Gold Box был единый формат хранения данных и можно было перетаскивать сохранения из игры 1988-го года в игру 1993-го. Проекты на движке так и назывались - Gold Box, в честь коробки с игрой позолоченного цвета. Позже была выпущена усовершенствованная версия движка – DarkSun и открытый редактор Forgotten Realms Unlimited Adventure, что подстегнул фанатов на творчество и дал жизнь технологии вплоть до 2000 года.

Так же на Gold Box вышли Pool of Radiance и самая первая (и между тем онлайновая) игра великой серии Neverwinter Nights.

Underworld Engine

Инструментарий, использовавшийся при создании легендарных игр серии Ultima Underworld и первой System Shock. Главная особенность была в том, что движок, как и все остальные движки того времени, хранил карту в тайлах, однако конвертировал ее в псевдо-3D прямо на ходу. Стены имели острые углы, а из тайлов и их свойств генерировались полигоны в трехмерной сетке. Еще туда закладывались немногочисленные трехмерные объекты вроде пропов, которые тоже превращались в полноценное 3D. В 1992 году движок сносил крышу игрокам, особенно когда те выбрасывали какой-либо предмет из инвентаря и он, в прямом смысле отлетал от персонажа, а иногда и вовсе рикошетил от окружения.

UWE обогнал развитие индустрии года на три, как и обогнал развитие компьютерного железа, ведь чтобы запустить Ultima Underworld в полноэкранном режиме требовался самый мощный на рынке процессор и неимоверное количество оперативной памяти. Разработчики смогли обойти прожорливость, ограничив вид всего до трети экрана, завалив остальное пользовательским интерфейсом – индикаторами, выбором курсоров, куклой персонажа, инвентарем и зельями.

Позже движок оптимизировали, System Shock уже мог запускаться на бытовой машине, хоть и недешевой. А в версии Ultima Underworld для PS1 открыли весь экран.

Wolf3D

Вдохновившись на одной из выставок демкой UWE, Джон Кармак написал свой ответ. Так родился великий Wolf3D.

Работала его технология намного шустрее а игры запускались почти на любом среднестатистическом ПК тех лет. Джон использовал принцип рейкастинга, работавший как визуальный эхолот. При любом движении игрока, движок посылал лучи и с их помощью просчитывал положение врагов, предметов, аптечек и расстояние до стен. В зависимости от возвращаемых данных, движок по сути вращал игру вокруг игрока и отрисовывал спрайтовые объекты так, как они должны были быть видны с текущего расстояния и угла обзора. Ловкий код, текстурированные стены и масштабируемые спрайты делали свое дело и великий Wolfenstein 3D стал настоящим хитом а заодно и основоположником жанра шутера от первого лица.

Главный недостаток движка был в неспособности обсчитать текстуры на полу и потолке ведь тогдашняя модель рейкастинга этого не умела. Однако движок улучшался и в будущем эту проблему исправили, а самые поздние версии движка выглядели чуть ли не как будущий id Tech 1, особенно это видно на примере Rise of the Triad.

Voxel Space

Параллельно с развитием Кармаковского псевдо-3D в начале девяностых развивались воксельные технологии. Компания Novalogic отринув привычную полигональную сетку и текстуры, создали технологию, базирующуюся на просчете трехмерных пикселей. С помощью данного решения можно было создать что угодно и в каких угодно масштабах, с высокой степенью разрушаемости окружения и без изъянов привычного рендера 3D моделей. Обратной стороной данной технологии стали растущие в геометрической прогрессии требования к вычислительной мощности с которыми не справлялось железо не только тогдашних ПК, но и некоторых современных. Novalogic создали резвый движок Voxel Space, который прилично работал на тогдашнем железе, пока игрок не начинал повышать настройки разрешения. Легкая размытость картинки была не высокой ценой за отличную разрушаемость и детализацию.

На движке были созданы игры серии Commanche и Delta Force, а так же известные у нас в стране Вангеры. Так же для ознакомления с технологией можно попробовать веселую демоверсию Voxelstein 3D.

RealSpace

В 1993 году вышел Strike Commander, футуристичный авиасимулятор в котором впервые в истории было реализовано накладывание текстур в реальном времени на 3D объекты с правильным затенением Гуро и затуманиванием отдаленных фрактальных объектов. Все благодаря движку RealSpace, за разработку которого отвечал перфекционист Крис Робертс, продюсер и режиссер всех Wing Commander а так же монструозного Star Citizen. Системные требования были непомерными, отчего игра стала тогдашним аналогом Crysis, даже несмотря на то, что большая часть экрана была закрыта приборной панелью корабля, в стиле Ultima Underworld.

К релизу Strike Commander на CD производительность повысили втрое а в будущих Wing Commander Armada и Wings of Glory и того выше.

Id Tech 1

В 1993 году началась эра Doom и движка id Tech 1. Игра подняла такой шум, что отголоски его слышны даже сегодня. Фактически это была более красивая, более разнообразная и более удобная версия Wolf3D. Оставив рейкастинг как основу, Кармак добавил стены разной высоты с разными углами наклона, что позволило сделать наклонные полы, лифты и подъемники на уровнях. Так же Кармак написал древовидную систему хранения уровней и формат BSP (Binary Space Partitioning) которые используются в геймдеве и по сей день.

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

Детище id Software открыло дорогу сотням клонов, подражателей и продолжателей идей. Десятки студий начали писать свои движки на технологии Кармака, выпускать свои игры и даже продавать эти самые движки другим студиям. На id Tech 1 были созданы обе части Doom а так же проекты сторонних студий - Heretic, Hexen и Strife. Перспективу шутеров тех времен назвали 2.5D, ведь это было не честное 3D, а лишь его симуляция. Разработчики из Blue Sky Productions усовершенствовали технологию Кармака в своем движке UW, который позже начнут назвать 2.75D.

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

Descent

Вышедший вслед за Doom шутер про полеты на космических кораблях задействовал все шесть степеней свободы, оставаясь при этом все еще игрой в 2.5D. Каждая карта в игре состояла из набора комнат-параллелепипедов, соединенных туннелями. Descent была построена из череды небольших замкнутых пространств, из-за чего не требовала мощного железа и развязывала руки программистам. Благодаря этому в игре появилась прорывная на тот момент динамическая система освещения и полигональные объекты. К тому же движок был портальным, и сложность геометрии отдельных комнат уровней никак не сказывалась на производительности. Хоть и спецэффекты все еще были спрайтовыми, картинка срабатывала как надо.

За границы дилогии Descent движок так и не вышел, канув в лету вместе с серией.

Ecstatica

Шесть лет было потрачено на разработку Ecstatica: A State of Mind, при рендеринге которой использовались не привычные треугольники, а эллипсы. Окружение, персонажи, оружие – все состояло из сфер разных размеров и пропорций. Для движка был создан специальный оптимизированный алгоритм отображения эллипсов, их освещения и глубины местонахождения. Из-за чего все сферы в объектах взаимодействовали друг с другом без каких-либо артефактов. Игра была разделена на экраны с пререндеренными задниками как в ранних частях Resident Evil или Dino Crisis.

Сделана Ecstatica была всего двумя людьми – Эндрю Спенсером и Аленом Мэндро. Позже у игры вышел сиквел, который делала уже целая команда людей на усовершенствованном движке. Как результат – игра еще больше, еще лучше и красивее. Вот только технология не получила развития в дальнейшем и сгинула под диктатом полигонов подобно воксельным экспериментам.

Jedi Engine

В 1995 году LucasArts Games усовершенствовали формулу Кармака в Star Wars: Dark Forces. Их ответ id Tech 1 под названием Jedi Engine позволял вертеть головой во все стороны (чего в Doom делать было нельзя), оставаясь при этом все таким же движком с рейкастингом. Еще одной отличительной особенностью была в том, что окружение в игре было честно трехмерным, а протагонист Dark Forces Кайл Катарн мог еще прыгать и приседать. Для противников создали огромное количество анимаций на все случаи жизни, что в 1995 году создавало эффект сравнимый с тонной анимаций в The Last of Us.

Именно Star Wars: Dark Forces ввел моду на мышь в шутерах в целом, и свободную 2.75D перспективу. Jedi Engine усовершенствовался и был значительно доработан для вестерн-шутера Outlaws в 1997, а позже и вовсе обзавелся поддержкой 3D-акселераторов. Развивая идеи данного движка, был разработан Sith Engine в котором упор делался на усложненное скриптование.

Build Engine

Созданный студентом-фанатом Джона Кармака движок Build ознаменовал бум псевдо-трехмерных шутеров от первого лица, среди которых были Duke Nukem 3D, Redneck Rampage, Blood, Shadow Warrior, Witchhaven и другие мастодонты жанра. Игры на Build выходят даже сейчас, например прошлогодняя Ion Fury была создана на модифицированной версии данного движка.

Отличий от движка Кармака было немного, это была все та же рейкастинг-технология с поддержкой остроугольных стен для моделирования спусков, что разнообразило левелдизайн. Однако на фоне конкурентов выделяла его открытая архитектура со всем ресурсами игры и мощный редактор уровней, в котором можно было собирать локации, словно в конструкторе LEGO. Из-за чего Build стал самым долгоиграющим 2.75D движком и легко смог конкурировать с уже трехмерными проектами аж до самых двухтысячных.

Так же Кен Сильверман добавил в движок поддержку вокселей, которой вовсю пользовались разработчики Blood и Shadow Warrior, после чего и вовсе написал полноценный воксельный движок Voxlap на котором и создал ранее упоминаемый Voxelstein 3D.

Build пытались перекупить Epic MegaGames, однако не срослось, что подтолкнуло студию к созданию монструозного Unreal Engine.

Quake Engine

В 1996 Quake ознаменовал переход всей индустрии в честное 3D, сделав поиски псевдо-3D ненужными и отправил на пенсию технологию рейкастинга. Создав полностью трехмерный движок, Кармак подстегнул на гонку не только индустрию компьютерных и консольных игр, но и производителей компьютерных комплектующих. Стартует борьба Nvidia и AMD за кошельки пользователей, а вместе с ними еще и борьба производителей клавиатур, компьютерных мышей, жестких дисков и CD-приводов.

В id Software был создан полностью трехмерный движок с полигональными объектами и трехмерным окружением благодаря одной уловке – вместо честного рендеринга в реальном времени движок заранее обрабатывал окружение и запихивал в память компьютера не только карту уровня, но и карту лайтмэпов, намеченную карту теней и прочее. Это сказалось на графике в целом, однако для 1996 выглядело прорывом. Позже с появлением поддержки 3D-акселераторов картинку удалось значительно улучшить, благодаря поддержке текстур высокого разрешения. Даже на топовом 486-процессоре игру было практически бесполезно запускать в SVGA-разрешении, и тут на помощь приходили ускорители вроде 3dfx или Rendition Verite, производство и спрос на которые как раз подстегнул Quake.

Кармак впервые использовал технологии трехмерных динамичных источников света и обработку только видимой части уровня в угоду оптимизации, что сказалось на левелдизайне в целом, однако добавило душной атмосферы и клаустрофобии в игру. По традиции весь код был открыт а уровни хранились в той самой структуре BSP, что как никогда стимулировало фанатское творчество. Многие именитые разработчики вроде Американа МакГи начинали свой путь с фанатских уровней для Quake, которые id издавали на дисках.

Так же движок лег в основу GoldSrc от Valve, разработанный для первой части Half-Life и позже превращенный в Source.

Photex Engine

Продвигая в массы Windows 95 Билл Гейтс обещал всем сетевую игру с другими игроками, подключаемые устройства вроде геймпадов, единый стандарт звука и продвинутый рендер с автоматическим определением настроек графики, зависящих от мощности ПК. Без самописных драйверов и кривого чужого кода, без танцев с бубном и шаманских песнопений. Нужно было лишь проводить на покой MS-DOS, поставить Windows Chicago (ранее название Win95) а остальное за вас бы сделал DirectX.

Билл не лукавил и реализовал все обещанное, а одной из первых игр поддерживающих все возможные стандарты Windows была Monster Truck Madness от Terminal Reality, вышедшая спустя два месяца после Quake. Первая игра с поддержкой Direct3D вместо OpenGL или 3dfx Glide выглядела худе детища Кармака, однако могла автоматически определять графические настройки и работала чуть резвее.

Chasm Engine

Классический пример игровой индустрии пост-СССР. Взяв за основу принцип рендера из id Tech 1, украинские разработчики из Action Forms использовали полноценные 3D модели, но без поддержки каких-либо акселераторов. Или, например, полноценное динамическое освещение и разрушаемые объекты соседствуют с двухмерным окружением. Chasm: The Rift была заточена под MS-DOS и могла похвастаться щадящими системными требованиями в отличие от той же прожорливой Quake.

Главной же фишкой Chasm: The Rift была почти что физически корректная расчлененка, дающая тактическое преимущество в геймплее. Врагам легко можно было отстрелить конечности – ноги или руки с оружием, после чего они переходили на ближний бой. И это в 1996 году, за четыре года до Soldier of Fortune! Так же игра могла похвастаться неплохим по тем временам сюжетом и колоритными персонажами, что в будущем станет одной из фишек студии-разработчика.

Позже Chasm Engine превратили в движок AtmosFear, на котором Action Forms создавали все свои последующие проекты: «Вивисектор: Зверь внутри», «Анабиоз: Сон Разума» и серию Carnivores.

Infinity Engine

Infinity был идеальным движком для огромных двухмерных RPG девяностых с сотнями персонажей и десятками локаций. BioWare в свое время сделали его для Battleground Infinity, после чего использовали в серии Baldur’s Gate, где он раскрыл себя на полную. Уже после подключились Black Isle Studios и Infinity окончательно вошел в историю как движок, на котором были созданы одни из самых громких изометрических RPG того времени - Planescape: Torment и Icewind Dale.

Движок работал в изометрии, с пререндеренными задниками и спрайтами персонажей, являясь по сути духовным преемником того самого Gold Box. Да и BioWare поначалу использовали его для тех же целей - создавали проекты по Dungeons & Dragons в лице Baldur`s Gate.

Id Tech 2

Программный рендеринг Кармака погибал под натиском производителей трехмерных акселераторов и ультимативного Гейтсовского набора DirectX. Джон и команда взялись за исправление всех ошибок Quake и выпустили сиквел уже на новом движке, который пусть и базировался на фундаменте Quake Engine, на деле работал совершенно иначе. Внутри id Tech 2 было два варианта движка – софтверный и OpenGL, в котором Кармак распихал компоненты и модули игровой логики по динамическим библиотекам. Благодаря чему можно было менять рендерер буквально на ходу, не перезапуская игру, а так же делало движок дружелюбнее для студий, что в будущем собирались лицензировать технологию. Ничего прорывного в движке не было, просто развитие идей Quake Engine и их улучшение c учетом фишек конкурентов – стабильный сетевой код, звук на DirectX 3, OpenGL рендерер и открытый сетевой код.

Движок стал популярным. Помимо Quake II, задавшего новую планку качества (и кучи Mission Pack`ов для него) на id Tech 2 создали такие хиты как Kingpin, Heretic 2, Soldier of Fortune, SiN и сломавшуюся под своими амбициями Daikatana.

Unreal Engine

Epic Games (тогда еще Epic MegaGames) после неудачи с лицензированием Build Engine в 1998 решили написать свой движок. Несмотря на то, что многие вещи вроде красивого освещения уже были реализованы в Quake II, Тим Суини, ведущий программист студии, строил движок на четырех столпах: честные отражения 3D моделей на поверхностях, порталы между сегментами уровней, масштабирование текстур в реальном времени и динамический скайбокс. Вкупе с революционным на тот момент мультитекстурированием (из которого в будущем выросли такие вещи как бамп-мэппинг и level of detail) эти технологии делали Unreal Engine самым навороченным движком на рынке конца девяностых. Вишенкой на торте был редактор UnrealEd, в котором можно было редактировать все что угодно и настоящая кросс-платформенная архитектура мультиплеера, одна из первых в жанре FPS.

В 1999 году вышла улучшенная версия движка Unreal Engine 1.5, готовая работать под Dreamcast и PlayStation 2 и обросшая косметическими изменениями.

Epic Games сделали очень важную и, по сути, самую популярную технологию для индустрии открыв дверь непрерывному потоку лицензирования. На Unreal Engine были созданы именитые проекты вроде Rune, Deus Ex, Clive Barker`s Undying и Unreal от самих Epic.

LithTech

Для поддержки Win95 Microsoft занялась созданием собственного Direct3D движка с возможностью создания трехмерного окружения. На эту работу они подрядили Monolith и поручили им доделать начатый еще в 1996 DirectEngine. Что-то пошло не так и сделку расторгли однако Monolith выкупили права на технологию и нарекли ее LithTech Engine, создав на нем меха-шутер Shogo: Mobile Armor Division. Вложенные средства окупились, ведь в 1998 Direct3D уже обгонял по навороченности OpenGL. Графика в Shogo была отличной, а позже, в «Blood II: The Chosen» уровень графики подняли еще выше. LithTech не дотягивал до монстров вроде Quake II или Unreal, однако с движком было легко работать, что оценили сторонние разработчики.

Внутри Monolith было создано отдельное подразделение Touchdown Entertainment которое в течение десятка лет разработало аж девять версий движка, которые с энтузиазмом лицензировались разработчиками третьего эшелона. Например, версия LithTech Discovery созданная для разработки MMO, использовалась для создания Matrix Online. А версия LithTech ESD была разработана для сервисов Real Arcade. Однако известность движку принесли версии LithTech Talon и Jupter Engine Extended. На первом были сделаны хиты от самой Monolith вроде No One Lives Forever, Aliens vs Predator 2 и F.E.A.R. А второй использовался для создания игр от City Interactive (сейчас CI Games) вроде Code of Honor и SAS. Движок оказал влияние на внешний вид игр в целом и стал одним из популярных. Даже такие одиозные шутеры как Kiss: Psycho Circus: The Nightmare Child создавались на LithTech.

В настоящее время Monolith все еще используют технологию, ведь их Middle-earth: Shadow of Mordor создана на измененной до неузнаваемости итерации Jupiter EX. А Middle-earth: Shadow of War на новой версии движка Firebird, построенной на все том же LitchTech.

3DMark

С непреклонным ростом мощностей компьютерного железа производители и покупатели все чаще стали нуждаться в инструменте, с помощью которого можно было оценить мощность и качество всего этого самого железа. Future Crew, выходцы из демосцены, основали компанию Futuremark и создали бенчмарк 3DMark 99, удовлетворяя спрос. Они написали движок, в реальном времени жонглирующий разными инструкциями Direct3D, чтобы было проще измерять эффективность 3D-ускорителей. В этой версии бенчмарка ядром был движок MaxFX от Remedy, который позже ляжет в основу шутера Max Payne.

На улицах оверклокеров и производителей видеокарт наступил настоящий праздник, ведь теперь можно было ко всем новым релизам прикладывать количество баллов из 3DMark, измеряя крутость своего железа. Бенчмарк, даже спустя двадцать лет, пользуется популярностью, ведь в каждой новой версии присутствуют графические технологии, которые на момент выхода разработчиками игр еще не используются. Они еще не обкатаны «в поле» и именно на них можно проверить слабые и сильные места видеокарт. Например, уже в 2001 у них была поддержка вертексных и пиксельных шейдеров вкупе с бамп-мэппингом. А в самой последней версии 3D Mark 11, вышедшей в 2010, уже была поддержка CUDA и DirectX11.

Исполнительный директор Futuremark Юкки Макинен не так давно объявил, что компания работает над новым поколением бенчмарка, который будет работать только с DirectX 11, а графические тесты в нем будут напоминать кадры из блокбастеров вроде Кэмероновского Аватара и Бэевского Армагеддона.

GoldScr

Два программиста Microsoft Майк Харрингтон и Гейб Ньэлл в 1996 решили последовать тренду и создать свой трехмерный шутер по образу Джона Кармака и Майкла Эбраша. Они обратились в id Software и купили себе Quake Engine, чтобы не тратить время на написание собственного инструментария. Поработав чуть дольше, они поняли, что исходных функций не хватает, и решили переписать весь код до капли. И даже не один раз - а целых два, ведь Half-Life была готова еще за год до релиза, однако Гейб ее забраковал и велел переделать.

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

Так же у движка была открытая архитектура, дарившая широкие возможности по созданию уровней и модостроению, благодаря чему был создан Counter Strike, открывший эру киберспорта. GoldSrc неплохо лицензировался сторонними разработчиками и лег в основу Ricochet, Gunman Chronicles и ПК версии James Bond 007: Nightfire (консольные работали на id Tech 3).

Dark Engine

Эта технология интересна тем, что обрабатывала только видимые персонажем куски игровых уровней, тем самым решая проблемы с производительностью. В Dark Engine точкой отсчета для рендеринга становился сам персонаж игрока, что давало преимущество в настройке картинки для разработчиков. Looking Glass Technologies для своих Thief и System Shock 2, по сути, переизобрели портальный движок, наподобие того, что был в Descent. Так же Dark Engine отличался глубоким звуком и продвинутым ИИ, отчего в первые две части Thief было по настоящему жутко играть, технологии работали на атмосферу.

Несмотря на все достоинства, движок был неудобен для разработчиков и сложен в использовании, отчего для третьей части Thief Уоррен Спектор лицензировал Unreal Engine.

RenderWare

Созданный двумя сотрудниками Canon в 1999 году движок RenderWare лег в основу целой сотни игр и стал одним из самых востребованных движков эпохи PS2. Fight Night Round 3, GTA 3, Burnout, Cold Fear, Killer7, Manhunt, Sonic Heroes, Need for Speed: Most Wanted, Battlefield 2, Mortal Kombat: Deadly Alliace, Call of Duty: Finest Hour, The Godfather, Crackdown, Max Payne 2 и многие другие включая отечественные «шедевры» вроде Боя с Тенью.

В 2003 году Criterion приобрели MathEngine — разработчиков физического движка Karma, основа которого превратилась в RenderWare Physics — продвинутой физической составляющей нового движка. Главной же особенностью RenderWare была мультиплатформенность и гибкость, что упрощало разработку для консолей тех лет: Dreamcast, GameCube, Xbox и Playstation 2. Движок одним из первых мог отображать огромные пространства без загрузочных экранов, что сыграло на руку Rockstar с их серией GTA в целом и GTA: San Andreas в частности.

Студия Criterion Software, выросшая из двух программистов, что написали RenderWare, не только лицензировала свой движок сторонним разработчикам, но и собственноручно работала над популярной консольной серией Burnout, пока их не приобрели EA. После нового договора движок RenderWare больше не лицензировался, однако техподдержку тем, кто уже приобрел технологию отменять не стали.

В виду ограничения Фотоматериалов

ПРОДОЛЖЕНИЕ СЛЕДУЕТ...

Показать полностью 25
Технологии Компьютерное железо Компьютер IT Инновации Программа Видеокарта Тестирование Раритет Длиннопост Компьютерные игры Компьютерная графика Разработчики игр Программирование
3
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии