Сегодня 19 мая 2024
18+
MWC 2018 2018 Computex IFA 2018
реклама
Видеокарты

Интервью с королём программирования iD Software - Джоном Кармаком

 Джон Кармак Мне думается, нет в живых такого игрока, который не знал бы, кто такой Джон Кармак, поэтому я избавляю вас от долгого вступления.

Вопрос: Trinity умер? У вас осталось в планах продолжить работу над Trinity, после выпуска Q3, или Trinity действительно мёртв?

Ответ: Я всегда был в некоторых непонятках, как Trinity стал какой-то отдельной вещью. Когда мы закончили Quake 1, я начал заниматься исследованиями морфирования уровня детализации и некоторыми другими вещами. Мы устали говорить о "будущей технологии", и Майкл Абраш (Michael Abrash) предложил следовать интеловской стратегии именования продуктов, находящихся в разработке, по названиям рек. Dallas - trinity river.

Вопрос: Вне зависимости от того, как вы назовёте "будущую технологию" (если вы не придерживаетесь Trinity), будет ли следующий движок/технология уметь делать Volume Rendering и штучки типа этого? Может быть, у вас есть ментальное предсказание, или мечты о том, что вы хотели бы видеть в движке следующего поколения?

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

Мне кажется, что есть два "чистых" направления работы для достижения следующего уровня "охкакздорововсёвыглядит":

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

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

Все нынешние железки способны обрабатывать довольно большие массивы текстур в каждом новом кадре, но ни один из их драйверов до сих пор не отлажен. Одни акселераторы обновляют текстуры через управляющих буфер fifo, другие пишут напрямую в текстурную память, как правило с многократным буферированием копирования или часто с жутко затормаживающей синхронизацией. Использование этого потребует совместной работы со ВСЕМИ разработчиками железа. Как результат, все эти технологии высочайшего качества обсчёта могли бы быть использованы: и bump mapping, и arbitary composition of wear, и modifier maps, и procedural modifications, да и все остальные красивости, если только захотелось бы их использовать.

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

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

Использование сожрало бы огромное количество triangle rate и fill rate. Даже с небольшим количеством источников освещения и тщательным culling-ом, это в 4 раза повысило бы нагрузку на систему, по сравнению с сегодняшней архитектурой.

Такие карты как TNT и Rage128 стали бы минимумом для игр, а на Voodoo стало бы невозможно играть, поэтому, как мне кажется, никто не рискнёт применить такие технологии в ближайший год.

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

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

Я всем говорю о том, что собираюсь написать позиционную бумагу по этому вопросу, но пока не пришло. Звучит знакомо?

 
 
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Вечерний 3DNews
Каждый будний вечер мы рассылаем сводку новостей без белиберды и рекламы. Две минуты на чтение — и вы в курсе главных событий.

window-new
Soft
Hard
Тренды 🔥
Китай разработал собственный ключевой модуль для квантовых компьютеров, несмотря на санкции 58 мин.
В Китае запустили первую станцию хранения электроэнергии на натрий-ионных элементах 2 ч.
Phison представила новый бренд серверных SSD PASCARI и накопители X200 с PCIe 5.0 3 ч.
Tesla отказалась от поддержки Steam в новых партиях электромобилей 3 ч.
Huawei представила настольный ПК Qingyun W515x на базе фирменного процессора Kirin 9000C 4 ч.
Huawei нарастила долю китайских компонентов в смартфонах серии Pura 70 12 ч.
Renault более не может рассчитывать на помощь Volkswagen в создании электромобиля за 20 000 евро 14 ч.
Пользователи новых iPad Pro обратили внимание на зернистость экрана 19 ч.
Минцифры пообещало тестовые зоны 5G по всей России и полноценные сети в городах-миллионниках до 2030 года 21 ч.
Новый iPad Pro получил медный логотип и оказался более ремонтопригодным, чем предшественник 21 ч.