Как сделать doom 3 светлее

Обновлено: 05.07.2024

dhewm 3 - это исходный GPL-порт для Doom 3, который работает на Windows, Linux, macOS и FreeBSD. Цель dhewm 3 - вывести DOOM 3 с помощью SDL на все актуальные платформы.
Дэниел Гибсон выпустил финальную версию dhewm3. По сравнению с оригинальной игрой Doom 3, dhewm 3 поддерживает 64-битные системы, SDL для поддержки низкоуровневой ОС, OpenGL и обработку ввода, OpenAL для вывода звука, эффекты реверберации OpenAL EFX для EAX, улучшенную поддержку широкоэкранного (и произвольного разрешения экрана). Это означает, что вы можете играть с разрешением 4K или даже 8K, портативной системой сборки на основе CMake и кросс-компиляцией с MinGW-w64.
В финальной версии dhewm 3 добавлена поддержка некоторых модов через специальный SDK: Classic Doom3, Fitz Packerton, HardQore2, Enhanced Doom3 и Rivensin от Denton (ранее известный как Ruiner), добавлена поддержка дисплеев с высоким разрешением в Windows, масштабируются меню, полноэкранные видео и КПК. Добавлена поддержка операционных систем AROS и OpenBSD.

Высококачественное освещение в DooM 3

Всё началось с идеи Humus-а, выпустившего ATI tweak. Идея проста: величина отражения (specular) на объекте зависит только от самого объекта, зачем задавать её в виде отдельной текстуры? Заменив выборку текстуры на расчёт в шейдере, Humus заметно увеличил производительность видеокарт ATI, которым выполнить пару математических функций проще, чем выбрать шестую текстуру.

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

Следующим шагом стал шейдер idiom-а, добавившего изменение величины отражения (заметьте, не интенсивности, а именно размера блика!) обратно-пропорционально значению, заданному в альфа-канале основной текстуры. Этим он пытался реализовать так называемый gloss map, т.е. величину гладкости поверхности. Ведь известно, что полированные поверхности дают чёткий блик, а матовые - размытый. Поскольку в оригинальном DooM 3 альфа-канал текстур практически не задействован, он подстроил расчёты так, чтобы при обычном значении альфа-канала получался блеск, соответствующий металлическому.

Получается, что для немодифицированных текстур DooM 3 поддержка gloss-map не работает, но почему тогда шейдер делает настолько красивый блеск? Потому что idiom добавил в расчёт освещённости несколько дополнительных инструкций, нормализующих вектор локальной нормали поверхности (bump mapping), который был получен из текстуры типа "карта нормалей". Эта простая операция на порядок улучшила качество имитации рельефа, что и определило общую приятственность картинки с данным шейдером.

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

Взяв за основу метод idiom-а (расчёт величины блика как степенной функции от гладкости поверхности) я реализвал более правильный и, к тому же, универсальный вариант, который полностью работоспособен в любой версии DooM 3 (скорее всего он будет нормально работать и в Quake 4). Тщательно проанализировав блеск, наблюдаемый в природе, я пришёл к выводу, что интенсивность отражения прямо-пропорциональна гладкости поверхности. Интенсивность (и спектр) отражений у нас задан в картах блеска (specular maps), значит нам не нужны gloss maps для определения величины блика! Чем выше интенсивность блика, тем более гладкая поверхность его создаёт; отталкиваясь от этого постулата, я добавил в шейдер вычисление средней интенсивности блеска как суммы R, G и B компонентов карты блеска. Подобрав правильный коэффициент мне удалось получить практически идеальный вариант: стекло блестит как стекло, металл как металл, кожа как кожа.

На этом эпопею с шейдером можно было бы закончить, если бы не вопиющая недоработка в самой модели освещения DooM 3! У каждого источника света есть жёстко заданная "область действия", зачастую противоречащая законам физики. Например рядом с ярким фонарём может быть полная темнота. А свет фонарика игрока, наоборот, нисколько не убывает с расстоянием, что выглядит весьма дико. В общем, это сильно мозолило мне глаз, поэтому после завершения работ над блеском я решил всерьёз заняться самим освещением.

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


Во первых, стало намного светлее. Во вторых, появился прелестный эффект отражений света в кафельной плитке и гладком металле.

Установка проста - распакуйте скачанный архив в папку 'DooM3\base' (как вариант - переименуйте superlight.zip в superlight.pk4).

Для получения наилучших результатов рекомендую прописать в autoexec.cfg следующие строчки:

Яркость и гамму подобрать по вкусу.

Наибольший эффект новый шейдер даёт в высоких разрешениях (1024 и более) при настройках качества Ultra High Quality. При правильной настройке компьютера Ultra-качество доступно даже для Radeon 9800 Pro, не говоря уже про GeForce 6600 и 6800. Настройка заключается в следующем: обновите драйвера вашей видеокарты, установите в BIOS setup настройку AGP Aperture Size на 256 MB, в autoexec.cfg добавьте строчку seta com_videoRam "512", и можете смело включать Ultra High Quality. Если в вашем компьютере не более 1 ГБ оперативной памяти, включите в doom3config.cfg уменьшение текстур. Я остановился на размерах 512 для основных текстур, 256 для bump и 128 для specular.

Поскольку я не имею возможности протестировать все видеокарты, возможны проявления артефактов как в патче humus-а. В этом случае просто исправьте в тексте шейдера строчку "precision_hint_fastest" на "precision_hint_nicest". И сообщите мне о достигнутых результатах

Многомесячная работа над ещё большей реалистичностью картинки привела к выводу, что отказываться от falloff света, заданного в игре, нельзя. Поэтому я сделал небольшой трюк, добавив динамическое увеличение "дальности" света в зависимости от яркости источника. Также изменён расчёт гладкости поверхности. Шейдер значительно оптимизирован по скорости. Результат можно скачать отсюда.

Тьма и как с ней бороться - рецензия на DOOM III и детальная настройка игры

Возможно, статья о DOOMе третьем кажется сейчас неактуальной. Но, по моему скромному мнению, игровой раздел Overclockers должен начаться именно с этой игры. К тому же, поскольку немало людей рыщет по Интернету в поисках трюков, направленных на увеличение производительности в этой игре (или, наоборот, способа включить "секретные" графические изыски), а так же модов, избавляющих от некоторых огрех, было решено свести воедино информацию обо всех известных "твиках" и некоторых стоящих модах. Я поместил её в конце статьи, так что те, кому не интересна рецензия, могут смело читать с конца.

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

Итак, вступление окончено, перейдем к "препарированию" самой громкой, на настоящий момент, сенсации жанра 3D action.

реклама

Первое впечатление от игры - Вступительный Ролик. Именно так, с большой буквы. Наверное, с него мы и начнем. Первое, что бросается в глаза - достойная режиссура. События разворачиваются в лучших традициях дорогих фантастических фильмов категории "A", во всяком случае, в самом начале. Практически уверен, как бы вы не отнеслись к третьему DOOM (если вы еще не играли), самые положительные эмоции вы испытаете от Вступительного Ролика. Как ему и положено, он подает игру в наиболее выгодном ракурсе. Авторы постоянно показывают нам одну из уникальных особенностей этого движка - интерактивные GUI. Здесь мы плавно переходим к обсуждению того, что больше всего будоражило игровую общественность, а именно нового движка от ID.

Не совсем оправдала мои личные ожидания. Возможно, я многого хочу, но я ожидал от этого движка большего. В частности, чего-то гораздо большего, чем Far Cry. Сразу оговорюсь, что играю с последними версиями всех драйверов, выставив настройки на HIGH 800x600, чего, возможно, недостаточно, чтобы проникнутся всем великолепием детища от ID. Потратим же несколько драгоценных строчек на обсуждение ТТХ движка DOOM III и посмотрим, как это всё отразилось на самой игре. Итак, с точки зрения технического новаторства DOOM заметно превосходит Far Cry, так как использует новейшую Unified Lighting System, вещь, которую некоторые не сразу заметят, но которая обеспечивает техническое превосходство DOOM III.

Позволю себе в общих чертах обрисовать эту без преувеличения удивительную технологию. Ключевое отличие ULS от остальных подходов к освещению состоит в том, что все эффекты освещения обрабатываются с помощью одних и тех же алгоритмов. То есть, никаких больше Light Maps, они уходят в прошлое (наконец-то). Во встроенном в саму игру редакторе мы можем наблюдать эффект нового источника освещения в реальном времени. Впрочем, мир жесток, и Кармаку пришлось идти на компромиссы, прежде всего ради гордых владельцев доисторических видеокарт. Компромисс заключается в использовании Shadow Volumes для генерации теней. Главным преимуществом Shadow Volumes является то, что для их применения достаточно 8 битного Stencil Buffer'a, который поддерживается с незапамятных времен. Главным же недостатком является его влияние на скорость заполнения. А у карточек на основе чипов от NVidia как раз имеется способность к удвоению филрейта при отсутствии записи цвета и Stencil Buffer. Это, конечно же, лишь совпадение, не более того. Но в этом как раз и кроется секрет превосходства GeForce над аналогичными Radeon при работе в DOOM 3. К тому же, тени такого рода несколько нереалистичны и склонны к излишней резкости, и это притом, что в природе чаще встречается рассеянное освещение. Это приводит нас к неутешительному выводу - движок не совместим с крупными открытыми пространствами, а так же с освещением "нормальной" комнаты. Его удел - бункера. Бункера с несколькими яркими (но пыльными) лампами. Нет, не подумайте, что в игре вышедшей в XXI веке совсем нет отрытых пространств, они есть, но они, что называется, Огромные Открытые Пространства закрытого типа. Шаг влево, шаг вправо. Совершить не удастся. И после великолепия джунглей и пляжей Far Cry это кажется диким и смехотворным.

К печальным последствиям приводит увлечение Кармака т.н. Normal Maps. Сами по себе они неплохи, и позволяют экономить драгоценные полигоны, но вот из-за этих самых Normal Maps разрешение основных текстур снижено где-то до уровня чуть ниже PainKiller, а это очень, очень плохо. Far Cry, опять же, показал нам, что такое настоящие текстуры.

DOOM 3 - как добавить освещение ?


на ютюбе глянь как ребята проходят. там при просмотре можно обделаться.


не надо добавлять туда освещение

Он в DooM-то очкует :)) Хотя, конечно, темнота оригинальной игры выглядит скорее как недоработанная система освещения, которая в значительной степени лечится вышеупомянутым модом (но светло не становится, становится лишь немного светлее там, где есть источники света).

Занавеску сними, мне помогло.

От SS2 твои волосы будут гораздо более мягкими и шелковистыми. 146%

Проще купить надувную Сигурни Уи.

Выглядит так же, профиту больше. Arguably.


Doom 3 разве сложный и страшный? Я его как-то на максимальном уровне сложности пробежал и не заметил особо как.


А по-теме: ТС, ты либо полненький тролль, либо тебе делать нечего. Не нужно в эту игру добавлять освещение.

Но вообще, если уж жим-жим, то посмотри в сторону bfg edition, там фонарики к оружию прикручены.

Читайте также: