| Автор | Сообщение |
-=2002=- = Corporal =
 | | 129 |
 Doom Rate: 1.81
|
Отправлено: 18.09.12 00:19:15 | |
|
Графическая модификация для OpenGL портов (GzDoom, DoomsDay, Zandronium). Добавляет несколько шейдерных эффектов, значительно улучшающих качество графики.
На гоззо известен глюк, SSAO (эмуляция глобального затенения) просвечивает сквозь спрайты, в Zandronium и Doomsday такого нет.
Установка: Конфигурация для GzDoom. Кинуть содержимое архива в папку с игрой. Менять настройки через файл QeffectsGL.ini.
В конфиге для гоззо выключены анизотропная фильтрация и сглаживание, при включении порт крашится при запуске. Настоятельно рекомендую играть с брайтмапами (брать тут) и динамиклайтами.
Скрины.
Сверху - скрин с включённым модом. Снизу - без мода.


Ветка на Gamedev.ru http://www.gamedev.ru/projects/forum/?id=166000
Офф. сайт: http://code.google.com/p/qeffects-gl/downloads/list
Вот что пишет автор:
| Название: QeffectsGL Тип: графическая модификация, библиотека-wrapper API: OpenGL Начало разработки: 17 августа 2012 Окончание разработки: как надоест Текущая версия: 1.2 Лицензия: GPL v2
I. Введение
Недавно я выложил сорцы своего враппера QindieGL, эмулирующего OpenGL средствами Direct3D, а также несколько доработал его. Как выяснилось, этот враппер оказался полезным для любителей графических плюшек, в частности - ENBSeries, мода, улучшающего графику в куче игр на основе D3D9. Я подумал - а почему такая несправедливость? Почему бы не сделать свой ENBSeries с блекджеком и шлюхами для OpenGL-игр? И вот таки сделал. 
II. Описание
Это всё та же пресловутая дллка opengl32.dll, которую надо положить в папку с игрой. Она добавляет в старые OpenGL-игры следующие эффекты:
Анизотропная фильтрация текстур* Полноэкранное сглаживание (MSAA)* HSL color correction Screen-space emboss bump-mapping Screen-space ambient occlusion Bloom Depth of Field** * - это, конечно, можно включить и в настройках драйвера. Но для удобства я добавил это в QeffectsGL. ** - эффект отключен по умолчанию. Чтобы включить, поставьте DOF=1 в INI-файле. Не во всех играх он будет смотреться хорошо.
Параметры эффектов настраиваемые как в целом, так и для каждой игры в отдельности, посредством INI-файла. В частности, если кого-то напрягает яркий блум - его можно ослабить. Или, скажем, сделать цветокоррекцию: снимаете скрин из игры, крутите в фотошопе Hue/Saturation/Lightness, а потом вписываете эти параметры в INI-файл. Я создал профили для поддерживаемых игр, но можно попробовать его и с другими - работу я не гарантирую, но мало ли. Возможно, список эффектов будет расширен в дальнейшем. Проект является open-source под лицензией GPL v2.
III. Поддерживаемые игры
Doom 2 (Doomsday) GLQuake Half-Life / CS 1.6 Gunman Chronicles Quake2 Kingpin Soldier of Fortune Unreal UnrealTournament Quake3 RTCW Star Trek Voyager: Elite Force Tremulous American McGee's Alice Soldier of Fortune 2 Doom3 Quake4 IV. Системные требования
Желательна видеокарта с поддержкой третьих шейдеров и GLSL, но если что-то не поддерживается - эффект просто отключится.
Автор не несет ответственности за любые программные и/или аппаратные сбои, которые могут произойти в связи с установкой и использованием враппера. НЕ УСТАНАВЛИВАЙТЕ библиотеку в папку "WINDOWS/System32"! НЕ ИСПОЛЬЗУЙТЕ античитерское ПО вместе с враппером! На стиме, например, за opengl32.dll банят пожизненно и без лишних вопросов.
|
|
|
|
| |
Archibalt Shpritsendrosel - Lance Corporal -
 | | 137 |
 Doom Rate: 0.86 Posts quality: +1 |
Отправлено: 18.09.12 00:40:31 | |
|
| Внимательно прочёл, но так и не увидел инструкции по применению. Как это включить то? |
|
|
| |
Jurijus - Lance Corporal -
 | | 154 |
 Doom Rate: 0.17 Posts quality: +14 |
Отправлено: 18.09.12 01:11:46 | |
|
Все очень плохо выглядит.
 Что я сделал не так? |
|
|
| |
-=2002=- = Corporal =
 | | 129 |
 Doom Rate: 1.81
|
Отправлено: 18.09.12 01:25:18 | |
|
Archibalt Shpritsendrosel Конфигурация для GzDoom. Кинуть содержимое архива в папку с игрой. Менять настройки через файл QeffectsGL.ini.
FLYBAT На моих скринах выглядит лучше? |
|
|
| |
Jurijus - Lance Corporal -
 | | 154 |
 Doom Rate: 0.17 Posts quality: +14 |
Отправлено: 18.09.12 02:02:15 | |
|
| -=2002=-: | | На моих скринах выглядит лучше? |
Мне сначала показалось, что да. Ты не настроил шейдеры или так и должно быть?
 
Добавлено спустя 1 минуту 42 секунды:
Ты можешь сделать, чтобы Emboss не усилялся от игрока, а слабел? |
|
|
| |
-=2002=- = Corporal =
 | | 129 |
 Doom Rate: 1.81
|
Отправлено: 18.09.12 02:18:37 | |
|
FLYBAT Автор не я, так что нет. Хотя, можно попробовать похимичить с настройками, поставить кое-где отрицательные значения. Ещё автор выложил исходники, я их уже собирал в VisualStudio 2010, но как с ними работать, что менять и добавлять - не знаю.
Баг с просвечиванием SSAO известен, но сделать с ним что-то затруднительно. Нормально работает это, кстати, в Zandronium. |
|
|
| |
Jurijus - Lance Corporal -
 | | 154 |
 Doom Rate: 0.17 Posts quality: +14 |
Отправлено: 18.09.12 03:03:54 | |
|
| -=2002=-: | | можно попробовать похимичить с настройками, поставить кое-где отрицательные значения |
Я это сразу сделал. Не работает - все выглядит еще хуже. Надо звонить автору.
Zandronum* |
|
|
| |
-=2002=- = Corporal =
 | | 129 |
 Doom Rate: 1.81
|
Отправлено: 18.09.12 03:15:11 | |
|
FLYBAT Во, ковыряясь в исходниках нашёл шейдеры! Теперь могу переделать этот мод на своё усмотрение, в теории - могу натянуть на GzDoom шейдерную воду, рефлектный бамп-маппинг и т.д.  Автор всё равно, похоже, забросил свой проект.
Осталось только разобраться в GlSl. |
|
|
| |
Dagamon - 2nd Lieutenant -
 |  | | 1295 |
 Doom Rate: 1.47 Posts quality: +304 |
Отправлено: 18.09.12 07:59:08 | |
|
| -=2002=-: | | шейдерную воду, рефлектный бамп-маппинг |
 Я так давно об этом мечтал! |
|
|
| 1 |
3 |
4 |
 |
|
| |
Nil = 2nd Lieutenant =
 | | 1513 |
 Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 18.09.12 09:00:05 | |
|
| -=2002=-, не сможешь. Для всего этого требуется освещение, а оно в гоззе секторное, динамического освещения (в нормальном понимании) нет. |
|
|
| 1 |
2 |
1 |
 |
|
| |
-=2002=- = Corporal =
 | | 129 |
 Doom Rate: 1.81
|
Отправлено: 18.09.12 10:22:32 | |
|
Nil Можно сделать отражения на основе текущего кадра. Или через карту отражений, использую простую текстуру "блика". Хотя что-то, а для этого нужно иметь доступ к материалу. Хотя, сейчас всё это голословно. Мне сперва нужно разобраться до конца, как это работает.
Добавлено спустя 2 часа 38 минут 8 секунд:
Поковырявшись какое-то время, осознал, что максимум, что я могу сделать на данный момент - переделать уже имеющиеся эффекты, сделать их мягче, или наоборот - ярче, что-то инвертировать и слегка расширить. Для чего-то большего у меня банально нехватает знаний. Прошу прощения у тех, кому дал надежду на что-то большее и вопрошаю - есть ли тут люди, секущие в GLSL? |
|
|
| |
Dagamon - 2nd Lieutenant -
 |  | | 1295 |
 Doom Rate: 1.47 Posts quality: +304 |
Отправлено: 18.09.12 21:01:42 | |
|
| Прогрес есть? |
|
|
| 1 |
3 |
4 |
 |
|
| |
Raise - UAC Gunner -
 | | 54 |
Doom Rate: 1.74 Posts quality: +8 |
Отправлено: 22.09.12 01:26:09 | |
|
| эффекты эти или не дают никакого результата или вообще ухудшают внешний вид. за исключением Bloom эффекта. от него фаерболы больше не выглядят как кучка пикселей летящих в игрока. но что ж так лагает то? все эффекты выключил, просто подключив библиотеку и уже начинает притормаживать. |
|
|
| |
Korshun = Lance Corporal =
 | | 169 |
Doom Rate: 3.84 Posts quality: +13 |
Отправлено: 02.10.12 16:51:26 | |
|
Эх, ну не заменят никакие ENB и прочие врапперы графических API нормальной поддержки этих эффектов в движке! Мало искать нормальные параметры для каждой игры, так ещё и половина эффектов будет глючить :/.
FLYBAT У тебя на скринах глючит SSAO (Screen Space Ambient Occlusion). И пофиксить это можно только программированием .
| Raise: | | эффекты эти или не дают никакого результата или вообще ухудшают внешний вид. Так во всех за исключением Bloom эффекта. от него фаерболы больше не выглядят как кучка пикселей летящих в игрока. |
В нормальных опенгл портах для этого есть ореолы. В гздуме их пока что нет, а на декорейте полноценно реализовать их невозможно (но можно довольно близко к "настоящим"). А в ждуме можно даже навешивать источники света (всмысле ореолы) на текстуры (выглядит примерно как лампочки на первом скрине) |
|
|
| 1 |
1 |
3 |
 |
|
| |
Dagamon - 2nd Lieutenant -
 |  | | 1295 |
 Doom Rate: 1.47 Posts quality: +304 |
Отправлено: 08.03.13 15:23:37 | |
|
Кто нибудь перезалейте конфинг для Gzdoom! Пожалуйста! |
|
|
| 1 |
3 |
4 |
 |
|
| |
BFG2407 = Warrant Officer =
 | | 1211 |
 Doom Rate: 1.38 Posts quality: +235 |
Отправлено: 12.08.13 15:12:57 | |
|
-=2002=- в GLSL я соображаю. Попробую поковырять... давно хотел вписать ToneMapping в Doom |
|
|
| 2 |
2 |
1 |
 |
|
| |
Kragoth762 = Master Sergeant =
 | | 474 |
Doom Rate: 1.93 Posts quality: +47 |
Отправлено: 12.08.13 15:48:54 | |
|
| В Zandronum 1.1.1, GZDooM 1.8.2, вылетает! |
|
|
| |
LifeKILLED Recruit
 | | 7 |
 Doom Rate: 3.43
|
Отправлено: 09.11.13 13:50:55 | |
|
Привет всем!
QEffects под Zandronum
Захотелось вдруг дико зарубиться в Brutal Doom с современными наворотами, нашел модификацию QEffectsGL. Под современные порты пришлось самолично править шейдеры. Но по крайней мере вернулись к поддержке SSAO (Screen Space Ambient Occlusion), пусть и глючной. Установку - распаковываем в корневую папку Зандронума. Все уже настроено.

Я еще покопаюсь в исходниках и попробую решить следующие проблемы:
* отрисовать пост-эффекты ДО оружия, HUD и меню (распознать начало отрисовки HUD и вставить пост-процессинг туда... теоретически можно отследить по отключению проверки Z-буффера)
* убрать SSAO на небе (опять же отследить этот момент, врубить, например Scissor-тест, выявляющий геометрию кроме неба, а все прочее отрисовать так далеко, как это возможно... ну или просто плоской линией, на которой следов SSAO не будет надеюсь обойтись без правки исходников Zandronum, опять же по коссвенным параметрам...) |
|
|
| |
Nil = 2nd Lieutenant =
 | | 1513 |
 Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 09.11.13 15:31:25 | |
|
LifeKILLED, по хорошему надо переписывать весь рендерер полностью и заново. В старом остались куски кода из 2000 года, от ZdoomGL. Решение видется следующее: отказ от текущего рендерера, создание опции игры, которая позволит задействовать новый рендерер и собственно написание нового рендерера. Очевидные проблемы старого рендерера: 1) Модель освещения, основанная на секторах, доставшаяся по наследству из 1993 года. Как не изворачивайся, а от линий перехода освещённости избавится при такой модели освещения не получится. 2) Структура геометрии. Нет разделения на статическую и динамическую, что мешает создавать LOD ноды. Из-за этого большие карты с открытыми пространствами тормозят. 3) Болезни совместимости. Очень много кода завязанно на поддержании тех или иных трюков, таких как отражения, нерендерящиеся сектора и другие. При этом для новых карт это всё не нужно совсем. 4) Рендер объектов при обходе BSP. Если сектор не виден (например, находится прямо за углом Г образного коридора), то и все объекты в том секторе не будут рендерится, вне зависимости от того, что какие-то их части уже высунулись из-за угла. 5) Наложение текстур, пиксельные шейдеры и много чего ещё очень сильно ограниченны. Скажем, нельзя наложить текстуру на сужающийся коридор так, чтобы она тожу сужалась, создавая эффект искажения перспективы. А шейдерах нельзя использовать ничего кроме одной текстуры и одной переменной t — времени, из-за чего всё, что можно сделать — это различные деформации текстуры. Из-за модели освещения нельзя даже в принципе получить вектора освещения, поэтому текстуры обречены быть плоскими.
Нормальный SSAO получить при полном отсутствии информации об источниках освещения, векторы камеры иотдельно рассчитанных карт нормалей нельзя. При секторном освещении все потуги обречены, красивее не станет. Надо браться и писать совсем новый движок. Примерно год назад Граф полностью прекратил разработку GZDoom и бросил клич всем, кто хочет, продолжить разработку. Желающих не нашлось и сейчас GZDoom медленно умирает, поддерживаясь только тем, что его автоматически обновляют до актуальной версии Zdoom стандартными средствами git. Как только в Zdoom произойдут изменения, требующие изменения в коде рендерера, судьба GZDoom будет зависеть только от комьюнити, найдётся ли добрый человек, сделавший патч, или нет.
Немного не заметил, что под zandronium, но пока разницы нет. В будующем, возможно, что-нибудь авторы zandronium предпримут. |
|
|
| 1 |
2 |
1 |
 |
|
| |
Archi]ASTS[ = Commissar =
 | | 5405 |
Doom Rate: 1.9 Posts quality: +61 |
Отправлено: 09.11.13 16:20:08 | |
|
Nil Была идея сделать порт на основе того же Doom 3, но опять же, заниматься то кто этим будет? Заодно можно было бы и освещение нормальное иметь, и редактор уровней(имеется ввиду поддержка как карт в формате и Doom 3, и классических, возможно, с помощью конвиртирования в нормальный формат). Пришлось бы отказаться от некоторых ограничений, наследуемых от ванили, но на нее, по-моему, и смысла нет ориентироваться тем, кто под GZDoom и выше собирается делать что-то. |
|
|
| 1 |
2 |
1 |
 |
|
| |
c4tnt UAC Sergeant Major
 | | 796 |
 Doom Rate: 1.92 Posts quality: +5 |
|
| |
Nil = 2nd Lieutenant =
 | | 1513 |
 Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 10.11.13 23:09:15 | |
|
c4tnt, где ты в думе возьмёшь эту вращающую освещающую точку? Нету её. "Динамические" источники света не годятся, потому как они работают на иных принципах. Попытка их переписать на шейдерах была, она бессмысленна и несовместима с туманом. Бессмыслена потому, что никаких проблем вроде просачивающего света или создания теней не решает и решать не может в текущем шейдерно-геометрическом конвеере.
То, что для освещения нужны нормали, это не секрет. Добавить поддержку карт нормалей не так уж и сложно (хотя потребует переписания кучи устаревшего кода и написания новых парсеров, что тоже не сложно, но нудно), но без освещения стены ВСЁ РАВНО будут плоскими. И теням взятся будет неоткуда.
Если запарится и сделать полностью динамическое освещение (ну, можно с lightmaps, они всё делают быстрее), то появятся вопросы к секторному освещению, fakecontrast, освещению неба, освещению спрайтов. Потом окажется, что всё лил матовое, или глянцевое и нужны будут материалы. Потом окажется, что геометрия слишком квадратная и модели примитивны, что какую красивую переливающуюся текстуру не напяливай, красивее это топорное картостроительное решение не становится. Надо повышайть детализацию, делая всякие бессмысленные и, главное, трудозатратные действия, которые либо никак, либо в худшую сторону влияют на геймплей. И ради чего? Лично меня пока полностью устраивает графика. Да, я был-бы не против поддержки чего-нибудь из этого в гоззе, но надеятся, что все эти графические навороты помогут делать карты — глубоко неправильно. Они НАВРЕДЯТ. Сильно затормозят процесс, нельзя будет бросить на середине, если уже начал. К каждой текстуре надо делать кучу других текстур, потом описывать материал, потом часамы тестировать при разном освещении, навесить эту текстуру на 10 стен и начать всё заново. И ведь игроки не оценят. Потому как всё равно получится аляповато, а на геймплее это всё не отражается. Вот и получается, что улучшение графики не приносит ничего хорошего. Ещё раз, я не против возможностей, но также и понимаю, что использовать их вряд-ли получится так, чтобы не навредить процессу. Да, на карте бывает несколько (десятков, в самом оптимистичном случае) мест, где освещение, материалы и эффекты действительно позволят сделать что-либо красивое. Но если попробовать растиражировать их на весь уровень, игрок будет видеть только пустые квадратные коридоры. Если не верите, посмотрите на Ютубе моды к тому-же Half-life2 или ещё чему-нибудь подобному. Увидите квадратные коридоры и пустые комнаты, и пофиг на текстуры и освещение. Надо это всё наполнять, или стандартным мусорорм, который всем надоел и ничего уже не улучшает, или всерьёз заниматся отделкой, делая бесконечные окна, трубы, дверные косяки, плинтуса, подоконники, рамы, колонны, упоры, узоры, мебель и тратя на это бесконечное время, в конце концов забрасывая проект. Альтернатива есть и она называется "похрен на детализацию". Делайте геймплейно-оринтированные карты с равномерным уровнем детализации, которая ещё не путается под ногами, но уже не прямоугольные коридоры и кубические комнаты с хренодетализацией по типу компьютерных ниш и потолочных плинтусов. Я кончил. |
|
|
| 1 |
2 |
1 |
 |
|
| |
c4tnt UAC Sergeant Major
 | | 796 |
 Doom Rate: 1.92 Posts quality: +5 |
Отправлено: 11.11.13 02:41:01 | |
|
| | c4tnt, где ты в думе возьмёшь эту вращающую освещающую точку? |
Секторное освещение - это конечно плохо и всё такое, но. В принципе из секторов кое-что добыть можно толковое, только просто никто никогда не пытался. На самом деле ведь секторное освещение это такой ambient light mesh, только очень своеобразно сгенерированный.
Так не просто же от нечего делать на спрайтовое освещение смотрим - хороших моделей для гоззы нет, кроме воксельных, разве что. Но воксельные я бы примитивными не назвал, вполне в стиле игры.
| | геометрия слишком квадратная |
Ну KDIZD же, да и не только он. Понятно, что в обычном ваде смысла не очень много.
Ну а подробнее по поводу того, как таки можно сделать лайтинг всего этого безобразия. У спрайта должен быть радиус сбора света. Яркость света, поступающую со всех интересующих направлений можно просто численным интегралом секторов по секторам круга вокруг энтити получать. Расположение секторов зависит от позиции рендера - один сектор смотрит перед спрайтом, один слева, один справа и один назад. могут быть ещё верхние и нижние, но это просто формулу нужно уточнять будет. Маска освещения состоит из нескольких масок, собственно - освещение спереди, сзади, слева, справа, сверху и снизу. Маски умножаются на полученные из круга значения и суммируются в одну финальную маску. финальная перемножается со спрайтом. К самим маскам требование простое - если их умножить на максимальную яркость и сложить - должна получиться максимальная яркость спрайта во всех точках. В общем, это не совсем карта нормалей и конкретно ту программу ждать не требуется. Динлайты и фоновая засветка в такой модели тоже прекрасно учитывается. Для динлайтов, в принципе, можно и полноценные карты нормалей использовать уже. Хотя, даже просто с интегрированием можно и картой нормалей вполне обойтись в режиме, похожем на д3 ambilight, он там есть, хотя никто и не знает. Другое дело в том, что мало кто рискнёт лезть в рендер гоззы, а так это бы и на софте в простом варианте работало наверное даже. |
|
|
| |
BFG2407 = Warrant Officer =
 | | 1211 |
 Doom Rate: 1.38 Posts quality: +235 |
Отправлено: 12.11.13 08:08:22 | |
|
Archi Идея до-сих пор есть 
Добавлено спустя 5 минут 40 секунд:
c4tnt Вопросов у меня нет, я пытаюсь разобрать может ли Doom3(BFG) перекомпилировать карту классического дума в собственный формат "на лету" - Это связанно с рядом причин, кроющихся именно в рендеринге. Вопрос такой, как ограничить Ambient light Doom3 линиями секторов? Далее родная физика Doom выдранная из сорцов, может запускаться в Doom3 как модификация. Мало того, консольку можно научить ACS(тут впринципе тоже больших сложностей нет). Вся загвоздка в формате карт, ну дюже он уже дряхлый... |
|
|
| 2 |
2 |
1 |
 |
|
| |
[D2D]_Revenant - Colonel -
 | | 4358 |
 Doom Rate: 1.49 Posts quality: -31 |
Отправлено: 20.12.13 19:02:19 | |
|
c4tnt Прикольная штука. А запихать в порт ее возможно? |
|
|
| 10 |
2 |
6 |
 |
|
| |
vlr66 - Corporal -
 | | 88 |
 Doom Rate: 1.96 Posts quality: +3 |
Отправлено: 21.08.14 14:24:59 | |
|
| Конфигурация для GzDoom. файл удален. Обновите пожалуйста. |
|
|
| |
Dagamon - 2nd Lieutenant -
 |  | | 1295 |
 Doom Rate: 1.47 Posts quality: +304 |
|
| 1 |
3 |
4 |
 |
|
| |
alekv - Colonel -
 |  | | 4170 |
 Doom Rate: 1.87 Posts quality: +950 |
Отправлено: 01.03.15 00:40:59 | |
|
| Может кто перезалить файлик только не на яндекс, не могу с него качать? |
|
|
| 1 |
3 |
1 |
 |
|
| |
Dagamon - 2nd Lieutenant -
 |  | | 1295 |
 Doom Rate: 1.47 Posts quality: +304 |
Отправлено: 01.03.15 00:41:40 | |
|
| alekv: | Может кто перезалить файлик? |
Посмотри мой пост выше. |
|
|
| 1 |
3 |
4 |
 |
|
| |
alekv - Colonel -
 |  | | 4170 |
 Doom Rate: 1.87 Posts quality: +950 |
Отправлено: 01.03.15 00:43:53 | |
|
| Да сразу не заметил что в теме 2 стр. , как заметил, попробовал скачать.. яндекс даже не грузится(с ним уже года пол проблемы какие-то у меня -_-) |
|
|
| 1 |
3 |
1 |
 |
|
| |
[D2D]_Revenant - Colonel -
 | | 4358 |
 Doom Rate: 1.49 Posts quality: -31 |
Отправлено: 01.03.15 08:32:01 | |
|
Я так понимаю, под гоззу это перестало поддерживаться? На офф сайте гоззы нет в списке вообще, и в версии 1.2 в ини нет настроек. Вписал гоззу в ини, на 2х версиях не работает. |
Рейтинг сообщения: -1, отметил(и): Antonov |
|
| 10 |
2 |
6 |
 |
|
| |