Актуальная версия v0.1.3a
Экспериментальная версия больше не поддерживается, используйте основную.

Особенности

  • (+) Каскадные тени;
  • (+) Расчёт освещения в линейном пространстве;
  • (+) Physically Based Shading;
  • (+) ACES Tonemapping and Color Grading;
  • (+) Screen Space Reflections;
  • (+) Temporal Anti-Aliasing;
  • (+) Contact Shadows;
  • (+) Поддержка пользовательских шейдеров для пост-эффектов и моделей;
  • (-) Использование моделей из .obj, .3ds, .dae, .blend файлов;
  • (-) Модификация .mdx/.mdl формата моделей: добавление карт нормалей и .dds/.blp2 формата текстур;
  • (-) Модификация War3 Model Editor;
  • (-) Добавление новых возможностей в World Editor.
Баги:
  • Некоторые пост-эффекты работают некорректно при ограниченном viewport.

Скриншоты

Старая версия
Скриншоты





Видео

Установка

Требования:

Распакуйте архив и запустите RenderEdge.exe. Нажмите F7, чтобы показать меню настроек. Изменить настройки также можно в файле RenderEdge.ini (расположен в архиве RenderEdge_exp.mpq).
В редакторе реестра можно включить опцию, позволяющую загружать файл настроек, шейдеры и текстуры из папки с RenderEdge: HKEY_CURRENT_USER\Software\RenderEdge\AllowLocalFiles. Последовательность поиска ресурсов: загруженная карта, папка с RenderEdge, архив RenderEdge_exp.mpq.
Для подключения RenderEdge к Jass New Gen Pack (exp. 2) отредактируйте файл wehack.lua следующим образом:
wehack.lua
-- # begin RenderEdge #
RenderEdgePath = grim.getregpair("HKEY_CURRENT_USER\\Software\\RenderEdge", "InstallPath")
haveRenderEdge = grim.exists(RenderEdgePath .. "\\RenderEdge.exe")

function toggleRenderEdgeDebug(checked)
    if checked then
		grim.setregdword("HKEY_CURRENT_USER\\Software\\RenderEdge", "Debug", 1)
	else
		grim.setregdword("HKEY_CURRENT_USER\\Software\\RenderEdge", "Debug", 0)
	end
end

function toggleRenderEdgeAllowLocalFiles(checked)
    if checked then
		grim.setregdword("HKEY_CURRENT_USER\\Software\\RenderEdge", "AllowLocalFiles", 1)
	else
		grim.setregdword("HKEY_CURRENT_USER\\Software\\RenderEdge", "AllowLocalFiles", 0)
	end
end

if haveRenderEdge then
	RenderEdgeMenu = wehack.addmenu("RenderEdge")
	
	RenderEdgeEnabled = TogMenuEntry:New(RenderEdgeMenu, "Run with RenderEdge", nil, true)
	
	RenderEdgeDebug = TogMenuEntry:New(RenderEdgeMenu, "Debug Mode", 
	    function(self) toggleRenderEdgeDebug(self.checked) end, false)
	if grim.getregpair("HKEY_CURRENT_USER\\Software\\RenderEdge", "Debug") == 1 then
		wehack.checkmenuentry(RenderEdgeMenu, RenderEdgeDebug, 1)
	else
		wehack.checkmenuentry(RenderEdgeMenu, RenderEdgeDebug, 0)
	end
	
	RenderEdgeAllowLocalFiles = TogMenuEntry:New(RenderEdgeMenu, "Allow Local Files", 
	    function(self) toggleRenderEdgeAllowLocalFiles(self.checked) end, false)
	if grim.getregpair("HKEY_CURRENT_USER\\Software\\RenderEdge", "AllowLocalFiles") == 1 then
		wehack.checkmenuentry(RenderEdgeMenu, RenderEdgeAllowLocalFiles, 1)
	else
		wehack.checkmenuentry(RenderEdgeMenu, RenderEdgeAllowLocalFiles, 0)
	end
end
-- # end RenderEdge #

function testmap(cmdline)
	if haveRenderEdge and RenderEdgeEnabled.checked then
		local pos = string.find(cmdline, ".exe")
		cmdline = string.sub(cmdline, 5 + pos)
		cmdline = RenderEdgePath .. "RenderEdge.exe " .. cmdline
	end
	
	if wh_opengl.checked then
		cmdline = cmdline .. " -opengl"
	end
	if wh_window.checked then
		cmdline = cmdline .. " -window"
	end
	wehack.execprocess(cmdline)
end

Редактирование шейдеров

Если вы хотите отредактировать шейдеры, то скачайте архив, распакуйте шейдеры, скомпилируйте и поместите их в папку Shaders. Эту папку вы можете импортировать в карту, разместить в папке RenderEdge или в архиве RenderEdge_exp.mpq.
Скачать шейдеры и fxc.exe.

Компиляция из Visual Studio

Добавьте шейдеры в проект, в его свойствах настройте HLSL Compiler следующим образом:






Компиляция с помощью fxc.exe

@echo off
fxc.exe /T fx_2_0 /Fo Standard.cso Shaders\Standard.fx /nologo
fxc.exe /T fx_2_0 /Fo Shadows.cso Shaders\Shadows.fx /nologo
fxc.exe /T fx_2_0 /Fo PostProcess.cso Shaders\PostProcess.fx /nologo
fxc.exe /T fx_2_0 /Fo Skybox.cso Shaders\Skybox.fx /nologo
pause

Изменения

Следите за разработкой RenderEdge на Trello.
v0.1.3a
  * Добавлена возможность включать/отключать рендеринг различных типов объектов;
  * Добавлена поддержка Индикаторов;
  * Добавлена поддержка Occlusion Mask;
  * Добавлена поддержка Молний;
  * Добавлена поддержка Плавающего текста;
  * Добавлена возможность выбора единиц измерения интенсивности точечных источников света;
  * Добавлены настройки Тумана войны;
  * Добавлена возможность отключать стандартные тени зданий;
  * INIReader: добавлена возможность записи комментариев в одной строке со значением типа string;
  * INIReader: добавлена возможность скрыть игровой интерфейс;
  * Удалены пределы свободной камеры движения;
  * Tonemapper: Blue Correction, Expand Gamut;
  * Изменена интенсивность Bloom на более корректную;
  * Добавлен параметр Calibration Constant для Auto Exposure;
  * Добавлен новый Height Based туман;
  * Сохранение положения камеры после отключения режима Free Camera;
  * Улучшен Screen Space Reflections;
  * Параметр Default Projection Matrix переименован в Constant Vertical FoV;
  * Оптимизирован Auto Exposure;
  * Добавлена возможность приостановить игру (приводит к дисконекту при включении в игре по сети);
  * Улучшена блокировка ввода в режиме Free Camera;
  * Добавлена возможность сделать скриншот;
  * Изменена модель освещения при включенном PBS (может быть изменена обратно в следующей версии);
  * Исправлена ошибка, при которой один из чанков ландшафта не отбрасывал тени;
  * Исправлены некорректный цвет и интенсивность точечных и направленных источников света;
  * Исправлено освещение скайбокса;
  * Исправлен некорректный перехват параметров камеры с нестандартной ближней плоскостью отсечения;
  * Исправлена некорректная работа Contact Shadows с нестандартными плоскостями отсечения камеры;
  * Исправлен эффект параметра Unshaded Materials;
  * Исправлен рендеринг пост-эффектов в главном меню;
  * Исправлено влияние пользовательского интерфейса и направления камеры на Contact Shadows;
  * Исправлено появление черных рамок при отключении параметра User Interface, если они изначально были скрыты;
  * Исправлена работа Screen Space Reflections с включенным Temporal AA;
  * Исправлены графические артефакты при включении и выключении HDR;
  * Исправлена матрица проекции;
  * Исправлено некорректное размытие SSAO с включенным параметром Downsampling
  * Исправлены вылеты при переключении режима V-Sync;
  * Исправлена перезагрузка шейдеров и настроек при загрузке защищенных карт;
  * Исправлен рендеринг теней в главном меню;
  * Исправлена утечка памяти;
  * Исправлены вылеты при смене разрешения экрана;
  * Исправлены вылеты при воспроизведении роликов;
  * Исправлена загрузка ресурсов из RenderEdge_exp.mpq;
  * Исправлены неправильные пути текстур в RenderEdge.ini.

v0.1.2a
  * Добавлена возможность выбора температуры направленного источника света;
  * Добавлена обработка стандартных теней юнитов на воде;
  * Добавлена возможность выбрать единицу измерения интенсивности точечных источников света;
  * Добавлена возможность использовать улучшенную матрицу проекции;
  * Добавлена возможность загрузки текстур и шейдеров из папки с RenderEdge (AllowLocalFiles в реестре);
  * Добавлена возможность загрузки шейдеров из карты;
  * Добавлена опция, позволяющая исправить дрожание скайбокса при перемещении камеры;
  * Чтение настроек из RenderEdge.ini (поиск файла в карте, в папке с RenderEdge (при включенном AllowLocalFiles), в .mpq архивах);
  * Теперь опция Disable Unit Shadows отключает тени юнитов и на земле, и на воде;
  * Уменьшено потребление оперативной памяти при использовании каскадных теней;
  * Снято ограничение на количество объектов, способных одновременно откидывать тени;
  * Улучшено качество теней;
  * Улучшен интерфейс настроек;
  * Улучшен режим свободной камеры: камера от первого лица, нет зависимости от высоты ландшафта;
  * Отключены мягкие тени (можно включить, отредактировав шейдер ShadowCommon.fxh);
  * Тени не рендерятся если игра на паузе;
  * Отображение версии RenderEdge в главном меню игры в правом нижнем углу;
  * Оптимизация Debug Screen;
  * Исправлен баг: модель основания здания имела освещение юнитов вместо ландшафта, и откидывала тени;
  * Исправлена некорректная интенсивность точечных источников света;
  * Игра больше не вылетает при использовании теней;
  * Исправлено периодическое исчезание теней при перемещении и вращении камеры;
  * Тени ландшафта снова работают корректно.

v0.1.1a
  * Добавлены контактные тени (Screen Space Ray-Traced Shadows);
  * Добавлена поддержка погодных эффектов;
  * Добавлен туман для скайбокса;
  * Улучшен Color Grading: добавлена отдельная настройка Shadows, Midtones и Highlights;
  * Добавлена возможность вручную задать гамму монитора: Output Device -  Explicit gamma mapping (LDR);
  * Добавлена возможность выбрать размер текстуры теней;
  * Добавлены расширенные настройки Ambient Occlusion;
  * Добавлена возможность скрыть интерфейс, отключить туман войны и тени юнитов в режиме Default Renderer;
  * Улучшен режим Debug Screen: отображение на весь экран;
  * Оптимизация Auto Exposure;
  * Оптимизация Rendering Pipeline;
  * Добавлены описания exe и dll файлов;
  * Исправлен баг: модели зданий при выборе места строительства не обрабатываются;
  * Исправлена некорректная работа Auto Exposure при ограниченном viewport;
  * Исправлена некорректная работа SSR при включенном Temporal AA;
  * Исправлена некорректная работа пост-эффектов при нестандартных настройках плоскостей отсечения камеры;
  * Исправлено влияние режима свободной камеры на отображение портрета;
  * Исправлено некорректное размытие SSAO при включённом downsampling;
  * Исправлены баги в JassAPI (конвертация real <=> float);
  * Исправлен сдвиг камеры при включении режима свободной камеры;
  * Исправлено влияние высоты ландшафта на высоту свободной камеры.

v0.1.0a
  * Добавлена поддержка анимированных текстур;
  * Добавлена поддержка полупрозрачных моделей;
  * Добавлена поддержка Unshaded материалов;
  * Добавлена поддержка Vertex Color;
  * Добавлена поддержка освещения скайбокса;
  * Добавлена поддержка текстур, размер которых не кратнен степени 2;
  * Улучшена функция скрытия интерфейса;
  * Улучшен Sky Light: добавлен параметр Blend Factor;
  * Улучшен Debug Point Light: добавлена возможность вручную задать координаты;
  * Улучшен Image Based Lighting;
  * Использование пиксельных отражений;
  * Добавлен параметр Culling Mode для теней;
  * Добавлена возможность выбрать формат и цветовое пространство монитора;
  * Добавлен Temporal Anti-Aliasing;
  * Добавлен эффект Screen Space Reflections;
  * Добавлен эффект Auto Exposure (UE4);
  * Улучшен Chromatic Aberration;
  * Обновлён SSAO: заменён на Scalable Ambient Obscurance;
  * Улучшен Bloom (увеличен максимальный радиус, добавлена возможность растянуть по   * горизонтали или вертикали);
  * Сохранение пропорций Lens Dirt текстуры при любом соотношении сторон экрана;
  * Сглаживание теперь применяется до остальных пост-эффектов;
  * Оптимизация Color Grading (запекание в LUT текстуру);
  * Отображение пост-эффектов только в пределах viewport;
  * Убрана возможность использовать Irradiance текстуру в качестве источника ambient освещения;
  * Убрана возможность включить улучшенную воду;
  * Загрузка и создание текстур и эффектов только по мере необходимости;
  * Обновлен конвертер d3d8 в d3d9;
  * Исправлен баг, при котором для юнитов и ландшафта использовался один и тот же направленный источник освещения;
  * Исправлены вылеты при рубке деревьев с включенными тенями;
  * Исправлены вылеты при сворачивании игры с включенными тенями;
  * Исправлены вылеты при включении режима свободной камеры;
  * Исправлены вылеты при установке маленького радиуса в эффекте Bloom;
  * Исправлено сворачивание запущенной в полноэкранном режиме игры при переключении режима вертикальной синхронизации;
  * Исправлено растягивание экрана при включенном интерфейсе и тенях;
  * Исправлена утечка памяти при включенном интерфейсе и пост эффектах;
  * Исправлено некорректное отображение SSAO при включённом режиме свободной камеры;
  * Исправлена функция проекции SSAO и SSR текстур на экран;
  * Исправлена некорректная гамма коррекция скайбокса при включенной пост-обработке;
  * Исправлена некорректная работа Dithering;
  * Исправлен некорректный цвет стандартных точечных источников света;
  * Запрет на отключение интерфейса и включение режима свободной камеры в главном меню игры и во время загрузки карты;
  * Динамическая очистка неиспользуемой памяти, занимаемой тенями;
  * Исправлено некорректное значение параметров Height и Density при использовании тумана;
  * Исправлена загрузка текстур из .mpq архивов;
  * Исправлена некорректная яркость точечных источников света.

v0.0.2a
  * Новый пост-эффект Bloom;
  * Добавлены настройки Lens Dirt;
  * Добавлена возможность протестировать самосветящиеся материалы (см. вкладку Material);
  * Unshaded материалы выключены по умолчанию, их можно включить на вкладке Material;
  * Исправлены проблемы с конвертацией цвета стандартных источников света/тумана в линейное пространство;
  * Исправлена проблема, при которой нельзя было менять освещение в картах, где была вызваны функция SetDayNightModels("", "");
  * Добавлен счётчик памяти, используемой варкрафтом;
  * Debug Screens теперь работают.

v0.0.1a
  * Первая стабильная сборка.

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
48
6 лет назад
0
чёт не доганяю, это только на игру вешается или можно в карту запихать, что б картинка у всех была лучше?
0
23
6 лет назад
0
molot39, только на игру вешается.
0
48
6 лет назад
0
Araders:
molot39, только на игру вешается.
ясно, спасибо
закатал губу
2 комментария удалено
2
25
6 лет назад
2
Кристофер:
NanO, трудно сделать годный скрин, т.к. при большом количестве объектов фаталит.
На сцене 30 к заспавненых разрушаемых декораций и еще примерно 10 к спецефектов (трава). Не знаю сколько уж в камере рендерица, но ничего не крашится, хотя фпс около 5 пляшет. Ноут 2009 года
Загруженные файлы
0
18
6 лет назад
0
Угу, у меня именно из-за теней фаталится. Собственно, город без теней выглядит не очень.
0
25
6 лет назад
0
Очень круто, спасибо за скрины.
0
18
6 лет назад
0
Сделал вот без теней.
Скрины
Загруженные файлы
0
20
6 лет назад
Отредактирован ENAleksey
0
И так, пару замечаний, кои оформить нормально я не могу, потому что я навключал всего подряд для проверки фпс.
На данном скрине не видно, но атака сфинкса молнией вокруг "квадратна". Я не успеваю заскринить этот момент.
раскрыть
Далее из мелких раздражающих нюансов.
Цветофильтры не обрабатываются у ещё не созданных игроком объектов (когда мышкой выбираешь на каком месте будет стоять здание здание), а так же в некоторых анимациях у юнитов или при клике на юнита (например у древа ветров)
Не работают пост эффекты на миникарту и иной интерфейс, а хотелось бы. Или хотя бы на лицевую-модель юнита.
Не отказался бы от краткого тз или описания программного продукта, дабы знать несведующему что за что отвечает, и что я должен увидеть, после того как кликну какую-нибудь кнопку.
Что касательно самого главного что я проверял - фпс. Стабильные 31-32 чтобы я не делал. Без всех эффектов - 99. Жаль, что в сборке нет фпс-локера.
Системки - 16 гигов оперативы, AMD FX - 8320 8 ядерный, GTX 650 на 2 гига. Монитор - говно.
В общем и целом, если мелкие вышеописанные визуальные баги будут устранены, можно уже пиарить в масс медиа с помощью ютуберов с 30к подписчиками.
А, все, господа. Я понял о каком фпсе вы говорите.
раскрыть
Загруженные файлы
5
13
6 лет назад
Отредактирован ENAleksey
5
атака сфинкса молнией вокруг "квадратна"
Это из-за того, что включен Physically Based Shading, а оригинальные материалы моделей варкрафта не затачивались под него. К тому же модель атаки сфинкса не является unshaded (хотя, логичнее было бы, если являлась), поэтому и наблюдаются такие артефакты.
DemonoiD:
Цветофильтры не обрабатываются у ещё не созданных игроком объектов
Спасибо за выявление бага, исправил.
DemonoiD:
а так же в некоторых анимациях у юнитов или при клике на юнита (например у древа ветров)
Можно больше примеров, желательно со скриншотами? У меня всё в порядке, в том числе и с Древом Ветров.
DemonoiD:
Не работают пост эффекты на миникарту и иной интерфейс, а хотелось бы. Или хотя бы на лицевую-модель юнита.
Это сделано специально. Зачем применять пост-эффекты к интерфейсу? Это смотрится отвратительно:
Скриншот
Про портрет я ещё подумаю, но, скорее всего, оставлю как есть.
DemonoiD:
А, все, господа. Я понял о каком фпсе вы говорите.
Тени лучше не использовать на сценах с большим количеством объектов, так как они жрут очень много оперативки и фпс.
DemonoiD:
Не отказался бы от краткого тз или описания программного продукта, дабы знать несведующему что за что отвечает, и что я должен увидеть, после того как кликну какую-нибудь кнопку.
Позже добавлю всплывающие подсказки при наведении на кнопки.

WIP: Contact Shadows

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