Интервью с Тимом Свини из Epic Games: будущее игр и видеокарт

Вот наткнулся в сети на интервью с Тимом Свини из Epic Games на тему "Будущее игр и видеокарт" (английский и русский варианты).

Всем настоятельно рекомендую ознакомиться с полным вариантом, ну а тем кому по каким-то причинам влом - ниже привожу небольшую подборку цитат:

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

...Разница в производительности между high-end и low-end компьютерами что-то порядка 100x...

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

...Мои рабочие компьютеры - это рабочие станции Dell. На данный момент я используют конфигурацию с двумя CPU, каждый из которых имеет четыре ядра, то есть восемь вычислительных ядер и 16 Гбайт памяти. У нас в Epic принято работать на high-end "железе"...

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

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

...Трассировка лучей - неплохое определение будущих техник рендеринга. Кроме того, есть рендеринг, и есть схема лучей, разделяющая сцену на микрополигоны и воксели. Существует от пяти до десяти разных техник, и все они очень интересны применительно к рендерингу следующего поколения.
Рендеринг может выполняться на CPU. Если у центрального процессора есть достаточное количество ядер и достойная поддержка векторных вычислений, то подобные схемы могут оказаться весьма удобны в играх. Кроме того, по мере того, как GPU становятся более универсальными, появляется возможность писать движок рендеринга, который работает напрямую на GPU и минует DirectX, а также и графический конвейер. Например, вы можете написать рендер в CUDA и запустить его на "железе" nVidia, минуя растеризацию и всё остальное.

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

...Но, честно говоря, я думаю, что DirectX 10 - последний графический APU DirectX, который действительно важен для разработчиков. В будущем разработчики наверняка будут писать собственные рендеры, которые будут использовать как CPU, так и GPU - используя язык программирования графического процессора, а не DirectX. Я думаю, что мы дойдём до этого очень быстро. Как я предполагаю, к выходу приставок следующего поколения в районе 2012 года... Я думаю, мы всего лишь в промежутке нескольких лет от того момента, когда программный подход будет быстрее, чем традиционный через API...

...GPU общего назначения конкурируют с CPU? Как вы думаете, кто победит?

Сегодня сказать сложно. Оба процессора могут выполнять любой код, GPU просто лучше оптимизированы для параллельного вычисления векторов. CPU лучше справляются с внеочередным (OOO) выполнением, ветвлениями и задачами, связанными с операционной системой. Как только у них будет общий набор функций, ситуация станет весьма интересной. Мы сможем, например, увидеть, как CPU полностью вытеснят GPU с рынка, если в будущих дизайнах появится значительная интеграция параллельных вычислений. Или мы увидим, как разработчики GPU начнут теснить обычные CPU с рынка: например, Windows или любая другая операционная система смогут работать напрямую на GPU. Возможностей много...

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

...Движок Unreal, на самом деле, привязан к циклам жизни приставок. Мы будем продолжать улучшать Unreal Engine 3 и добавлять существенные новые функции до конца жизни сегодняшних приставок. Поэтому вполне нормально ожидать, что мы выпустим новую версию в 2011 или 2012 году...

...Самой большой проблемой является масштабирование на всё большее число ядер. UE3 использует функциональное разделение и пути, поэтому у нас есть поток рендеринга, который обрабатывает рендеринг во всей игре. У нас есть поток геймплея, который отвечает за весь геймплей и AI. У нас можно загружать потоки и для физики. Мы хорошо масштабируемся от двух ядер до четырёх, и вы действительно увидите существенный прирост производительности, когда запустите UT3 на четырёхъядерном процессоре по сравнению с двуядерной системой.

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

...Что касается ПК, то Intel реализовала большое количество расширений в CPU, да и nVidia интегрирует много расширений в GPU к моменту появления приставок следующего поколения. Мы станем свидетелями того, как несколько ядер CPU будут работать с логикой геймплея, частью задач GPU, которые требуют общих вычислений... и два разных компилятора. Один для GPU, а второй для CPU. Результатом будет снижение нашей зависимости от раздутого "промежуточного слоя", который всё замедляет, чтобы сохранить настоящую функциональность устройств...

...Если вы расширите закон Мура, то увидите, что с числом ядер, которые Microsoft использовала в Xbox 360, вполне понятно, что к 2010 году (к началу следующего десятилетия) в один процессор можно будет устанавливать десятки вычислительных ядер, и вы получите полностью рабочее унифицированное вычислительное окружение. Настанет очень интересное время для графики... В то время у нас будет физический движок, который работает на вычислительном устройстве, программный рендер, который может выполнять намного больше функций, чем в DirectX в результате наличия общей вычислительной функциональности. Я думаю, что ситуация действительно изменит мир...

...Я определённо представляю себе начало следующего десятилетия: ПК будут продаваться с достойным уровнем графической функциональности без какого-либо графического "железа" в машине. Из графического "железа" будут только выходы VGA и HDMI, и на этом всё. То же самое случится и со звуком. Сами подумайте: вы покупали high-end дорогие звуковые карты с различным уровнем ускорения звука. И взгляните, что случилось с появлением Vista. Всё! Звук на 100% программный, и с этой операционной системой всё аппаратное ускорение исчезло. Звук теперь рассчитывается программно, а "железо" используется только для цифро-аналогового преобразования. Хороший шаг вперёд, поскольку теперь появилась большая гибкость: теперь вы отвечаете за алгоритмы звука, управляете частотами, мы избавились от всех проблем несовместимости с "железом", которые были результатом сложных аппаратных реализаций и плохо написанных драйверов. Ситуация теперь намного более прозрачная и менее накладная...

Последняя правка: чт, 15/05/2008 - 00:45
Submitted by Victor on

Комментарии

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

Submitted by Militari on
Quote:
Wertyozer писал(а):
Занятно, ...да ж хочется заняться настольными играми, пока ограничения с "железа" не снимутся и можно будет делать игры нового поколения)
Тоже идея хорошая. Ведь на настольных играх легче проработать вселенную и правила в ней. А уже продумав это все можно переносить действия и виртуальную реальность.
Submitted by Victor on

Да и выпустить "настолку" было бы не плохо, или там фигурки персонажей, в рекламу податься и прочее - бизнес)

Submitted by Militari on

GameDev.by