[RenderEdge] Экспериментальная версия

» опубликован

Актуальная версия v0.1.1a

Особенности

Внимание! Тени работают крайне нестабильно, используют очень много оперативной памяти и сильно снижают FPS. Используйте их на свой страх и риск!

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

Установка

Папку можно разместить в любом месте на диске.

Требования:

Скриншоты

» Старая версия

Изменения

Следите за разработкой RenderEdge на Trello.
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
  * Первая стабильная сборка.


Просмотров: 35 740



» Лучшие комментарии


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

WIP: Contact Shadows

На примере карты Долина призыва дождя
Контактные тени вычисляются в экранном пространстве и позволяют получить чёткие тени даже от самых маленьких объектов. Производительность не зависит от сложности сцены.
Но на данный момент присутствует одна проблема, не позволяющая мне включить их в новую версию RenderEdge.
P.S. Следите за разработкой RenderEdge на Trello.
прикреплены файлы
DemonoiD #405 - 2 месяца назад (отредактировано ) 0
ENAleksey, ну смотри. В gad, все объекты сцены - декорации. По факту, анимированных теней там совсем немного, 10-15 юнитов на всю карту. Возможно, стоит разделить потенциально анимированные и статические тени, дабы рассчитывать статику большим промежутком времени, понижая нагрузку на частоту кадров, и дать время обновления под управление пользователю.
При наличии огромного числа анимированных теней, можно просто снижать их качество. Так же как делают с текстурами в любой современной игре.
Ещё один из забавных багов. Управляя камерой стрелочками в war3, я получил теоретическую карту расчитываемых теней в углу экрана.
Вот здесь ещё лучше видна данная забавная штуковина.
прикреплены файлы
ENAleksey #406 - 2 месяца назад (отредактировано ) 0
DemonoiD, узнать, является ли модель анимированной, не получится. Если обновлять тени через определенный промежуток времени, то это будет очень заметно. Тени можно не обновлять только если камера и направление источника света статичны, и объекты в кадре тоже не движутся (а узнать, двигаются они или нет, невозможно).
А про низкий фпс я писал в начале предыдущей страницы.
DemonoiD:
Ещё один из забавных багов
Это не баг, а средство для отладки - Debug Screen (этот параметр виден на твоих скринах). Ты случайно включил его, управляя интерфейсом с помощью стрелочек.
DemonoiD, пожалуйста, прячь большие картинки под спойлер.
DemonoiD #407 - 2 месяца назад (отредактировано ) 0
Баг с подсветкой повторить не удалось. Зато я нашел шедевральный рисованный стиль.
С такой стилистикой, но если изменить голубой на черный, черный на белый и добавить какой-то яркий цвет от эффектов типа синего или красного, можно создавать карты про слепых персонажей (и в будущем игроков, играющих с такой цветокорекцией)
ENAleksey,
Возможно ли при включении теней в RE, выключать автоматически стандартные тени war3?
Возможно ли при огромном количестве объектов сцены, убирать с просчета лишние тени по приоритету? (Зачем мне тень маленьких светлячков древа долголетия, если все лагает?)
(а узнать, двигаются они или нет, невозможно).
Теоретически это можно просчитать по % от изменения площади тени между промежутком времени. Но чую, что это будет жрать ещё больше памяти, чем сейчас.
прикреплены файлы
ENAleksey #408 - 2 месяца назад 0
Возможно ли при включении теней в RE, выключать автоматически стандартные тени war3?
Disable Unit Shadows - отключает стандартные тени юнитов.
Disable Fog of War - отключает стандартные тени зданий, но ещё и туман войны. Отключить только тени пока нельзя.
AlakFrost #409 - 2 месяца назад 0
С такой стилистикой, но если изменить голубой на черный, черный на белый и добавить какой-то яркий цвет от эффектов типа синего или красного, можно создавать карты про слепых персонажей (и в будущем игроков, играющих с такой цветокорекцией)
Обычные пост эффекты и шейдеры типо cel shading и rim light, которые доступны в юне или анриле, зачем изобретать велик на варике?
DrTema #410 - 2 месяца назад 0
Очень круто выглядит, жаль что для версии 1.26, а то использую 1.28.5
DemonoiD #411 - 2 месяца назад 2
DrTema, у меня вроде на более поздней пашет. Я честно не помню версию.
AlakFrost, потому что это на варике. Это же очевидно.
ENAleksey #412 - 1 месяц назад (отредактировано ) 0
Кст., вижу не только у меня проблемы с камерой.
она ведёт себя неадекватно если бродить по горам. Ну или я что-то ещё не так установил.
Лучше поздно, чем никогда :)
Вот функция, которая исправляет зависимость высоты камеры от высоты ландшафта:
function SetCameraZ takes real z, real time returns nothing
	local real zDiff = GetCameraField(CAMERA_FIELD_ZOFFSET) - GetCameraTargetPositionZ()
	call SetCameraField(CAMERA_FIELD_ZOFFSET, z + zDiff, time)
endfunction
ENAleksey #413 - 1 месяц назад 13

Обновление 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);
  • Исправлен сдвиг камеры при включении режима свободной камеры;
  • Исправлено влияние высоты ландшафта на высоту свободной камеры.

Contact Shadows

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

Color Grading

Теперь Color Grading и Tonemapping по функционалу полностью аналогичны соответствующим эффектам из Unreal Engine 4:
Color Grading and Filmic Tonemapper
Это сообщение удалено
HuNter32R #415 - 4 недели назад 0
Может глупый вопрос, но как сохранить настройки чтобы при каждом запуске игры не ковырять всё заново?
ENAleksey #416 - 4 недели назад (отредактировано ) 0
HuNter32R, пока сохранять настройки нельзя, но я обязательно добавлю такую возможность.
GF RaiseD #417 - 4 недели назад 0
ENAleksey, 1.29. Не знаю когда выйдет, но это должны пофиксить.