Решил что сделаю сегодня пилотный тестовый релиз 13-версии, прежде чем я исчезну на продолжительное время на завтрашней встрече модостроителей/Moddertreffen-2015.
Я упаковал в архив всё что вам будет необходимо для обновления. Формально там только одна *.dll, и необходимое обновление шейдеров. Но если вдруг что не так, можно пошарить на github'е.
• Рендер GD3D11 - X13 тестовая версия в архиве (zip)
Хотелось бы, чтобы вы проверили его в работе, всё ли в нём отрабатывает корректно и как оно теперь выглядит в игре.
На работу чего особо стоит обратить внимание, вкратце:
- Воспроизведение видео;
- Систему частиц огня;
- Ночь в игре;
- Реализация тумана в лесу и на болотах(особо обратить внимание на потребление памяти при последующих загрузках/сохранениях).
Установка: распаковать содержимое архива в каталог игры с заменой файлов:
"..\System".
Тем самым вы бы мне очень помогли, в части реализации последующих Хот-фиксов. Спасибо..![]()
Тесселяция (Tessellation)
Тесселяция-шейдеров, продолжение...
Реализовал ещё кое-чего в тесселяции меша мира/WorldMesh-Tessellation: теперь больше не производится автоматического разделения при обнаружении краев. Это позволяет добитьсялучшего округления краёв, как это выглядит вы можете увидеть, например, здесь(в порядке слева-направо: 1- почти оригинал/Fast Original; 2- карта нормалей/Normalmapping; 3- тесселяция/Tessellation):
![]()
![]()
Кроме того, тени/Schatten теперь следует рассматривать как своего рода некий аналог "расширения" - вершинного освещения/vertex lighting, которое имело место в "Готике".
Иначе говоря: на отдалении, теперь используется старый метод вершинного освещения, благодаря которому, мир больше не выглядит таким "голым" и "стерильным".
По-мимо этого вершинное освещение будет просчитываться совместно с моделью затенения. В результате чего пещеры вновь станут немного темнее, но, например, в затенённых участках под мостами, тени не будут такими уж тёмными.
Также, это принесёт значительную пользу для модели освещения и затенения леса. Как это выглядит вы можете увидеть здесь(в порядке слева-направо: 1- было; 2- стало):
![]()
Здесь лучше всего обратить внимание на скалы и маяк на заднем фоне, а также переднюю часть часть леса, у которых практически не было никого затенения в зависимости от дистанции обзора.
Полагаю, что это могло быть одной из причин, о которой многие говорили некоторое время назад, что в рендере чего-то не хватает, разрушена атмосфера. Что собственно и подтолкнуло меня к очередной работе над версией для "Готики 1", а попутно и над этим. Что выглядело как-то не правильно и обо что постоянно "спотыкался" взгляд, теперь думаю, это будет смотреться немного иначе..![]()
Платформа игры (Gothic 1)
Текущий статус разработки рендера для "Готики 1".
Летаю над "Старым Лагерем"(который уже на пороге своего завершения), к сожалению, есть ещё некоторые проблемы с отдельными полигонами проникающими туда куда не нужно, иначе я сделал бы немного больше скриншотов..
![]()
![]()
Карты нормалей/Normalmaps для этой версии пока ещё не делались..
Добавлена версия в инсталляторе, для ленивых..
Небольшое исправление "легкой" проблемы в X12.
• Рендер GD3D11 - X12.1 в архиве (zip)
• Рендер GD3D11 - X12.1 в инсталляторе (exe)
Новое в этой версии:
- Исправлены все вобы/VOBs исчезавшие после закрытия инвентаря.
Скриншоты текущей версии:
Кстати, лучший пример применения тесселяции к мешу мира, можно наблюдать в мире аддона игры:
![]()
Тесселяция вобов в игре:
![]()
![]()
На этот раз я много возился с Тесселяцией. Как и где она используется более подробно будет описано ниже. А также, SMAA!![]()
• Рендер GD3D11 - X12 в архиве (zip)
• Рендер GD3D11 - X12 в инсталляторе (exe)
Новое в этой версии:
- Реализован новый аппаратный метод тесселяции PNAEN-Tesselation для вобов/Vobs с преобладанием UV-Data;
- Исправление привязки камеры редактора при первом её использовании;
- Редактор: реализовано новое диалоговое окно для настройки параметров вобов/Vob-Settings;
- Исправление, альфа-смешивание/Alphablending на меше мира/WorldMesh игры сейчас корректное;
- Исправление ошибок наложения полигонов воды, которые вызывали сильное снижение производительности;
- Реализована поддержка технологии субпиксельного морфологического сглаживания/SMAA;
- Исправлена потенциальная ошибка при рендеринге мешей с анимированными скелетами/skeletalmeshes, который удалял их материалы игрой;
- Исправление ошибок при изменении разрешений экрана с использованием меню, сопровождаемых вылетами игры;
- Значение минимальной дистанция отрисовки мира/world-draw-distance, сейчас равно 1;
- Добавлен параметр: "-XNoUpdate" в командную строку, который блокирует запуск программы обновления при его запуске;
- Добавлен параметр: "-XNoDevMenu" в командную строку, который открывает окно диалога пользовательских настроек/UserSettings вместо диалога AntTweakBar при нажатии клавиши [F11];
- Изменена формула отражающегося освещения/Specular Lighting;
- Редактор: добавлены настройки для параметров текстур/Texture-Settings в панель редактора/editor-panel;
- Уменьшен эффект "питера пена/peter panning" при визуализации теней;
- Исправление фризов и глубины наложения текстур в инвентаре;
- Теперь, материалы и текстуры применяемые к вобам/VOBs могут быть выбраны;
- Тесселяция/Tessellation теперь оказывает свое влияния на определенный диапазон;
- Исправление частых сбоев и вылетов связанных с моделями не имеющих фактического анимированного меша/skeletal-mesh, а только вложенного/attachments(пчелы в моде "Одиссея");
- Добавлена Тесселяция/Tessellation для меша мира игры.
Новые возможности панели редактора:
Как и ожидалось: всё в нём ещё слегка капризное, но я думаю вы сможете справиться с этим..
- Тесселяция вобов/Tessellation Vobs: Теперь Вы можете "нажимать/кликать" по статическим и анимированным вобам/Statische und Skeletal-Meshes VOBs, после этого откроется небольшое окно настроек. Здесь, вы сможете рассмотреть этот меш уже более подробно(для анимированных мешей на данный момент, отображается только один меш из листинга мешей) и отрегулировать требуемые параметры, как фактор тесселяции/Tesselation-Factor, округлость/Roundness и Displacement-Scale. Все настройки этих параметров будут автоматически сохранены и использованы при последующем запуске игры.
- Тесселяция мира/Tessellation World: Для того чтобы применить тесселяцию к части меша мира выберите её и нажмите(разок) клавишу [Пробел](я пока ещё не определился до конца, какую клавишу назначить за этой функцией). Это приведет к тому, что данная часть меша сначала будет каскадно(ступенями) сдвинута, чтобы функция обнаружения краев границ меша отработала корректно. Помимо этого, так будет создана PNAEN-информация и меш будет визуализирован с использованием тесселяции. Среди настроек параметров текстур, вы также сможете задать некоторые параметры тесселяции для этой части меша.
Важно: эти установки не сохраняются!- Если часть меша была не достаточно сильно обработана/разделена, даже при полностью оказавшей влияние тесселяции на меш, последующее нажатие на клавишу [Пробел], поможет в этом. Также вы можете настроить параметры тесселяции через клавишу [F11] и соответствующие меню(TesselationFactor, TesselationRange).
- По-мимо этого, карты нормалей/Normalmaps должны быть установлены, чтобы карты смещений/Displacement-Mapping функционировали должным образом. Для многих из вобов я уже сделал все необходимые настройки..
Известные ошибки:
- При использовании фактора тесселяции/Tesselation-Factor с анимированными мешами в значении от 0 до 0, то для отображения будет использоваться UV-Mapping;
- То же самое, возможно, случается и с мешем мира игры;
- Сокрытие тесселяции в зависимости от дистанции отрисовки, смотрится не совсем красиво;
- Иногда это будет применяться немного в стороне от диапазона камеры..
Удачи!![]()
(ну и как обычно, существует шанс того, что так или иначе, будет еще пара патчей. Потому что я мог опять что нибудь забыть!)![]()
Пакеты карт нормалей (NormalMap Packs)
Если вы собираетесь использовать оригинальную игру "Готика 2: Ночь Ворона" или моды и/или текстурные пакеты на её основе, совместно с рендером визуализации GD3D11, то вам понадобятся специально подготовленные для них пакеты карт нормалей в формате *.dds
Replacements_dds.7z — пакет карт нормалей для игры "Готика 2: Ночь Ворона" и модов на её основе.
Replacements_vurt.zip — пакет карт нормалей для текстурного мода Gothic 2: Graphics Overhaul.
Replacements_lhiver.zip — пакет карт нормалей для текстурного мода Gothic 2: L'Hiver Edition.
Установка: распаковать в каталог игры:
"..\System\GD3D11\textures\replacements".
Примечание:
1. В некоторых архивах уже есть подкаталог replacements, проверяйте чтобы каталоги не дублировались!
2. В случае совместной установки карт нормалей для текстурных модов и паков с игрой, сначала нужно установить(распаковать) в указанный каталог пакет для оригинальной игры "Г2: Ночь Ворона"- replacements_dds, после чего, распаковать в него пакет карт нормалей для конкретного мода, если он есть, Vurts - replacements_vurts или L'Hiver - replacements_lhiver, с обязательным подтверждением замены файлов, если это потребуется!
Никаких изменений в эти пакеты не вносилось, поэтому нет необходимости их повторно загружать, если они у вас уже установлены!
Удачи!![]()
Тесселяция (Tessellation)
Тесселяция-шейдеров, продолжение...
Тесселяция теперь доступна для анимированных мешей на скелете/SkeletalMeshes. Я когда-то сделал на половину соответствующую карту смещения/Displacement-Map для варана и решил её использовать. Вот так это все выглядит:
![]()
Слева-направо: 1- В сравнении с тесселяцией и без; 2- Картинка с тесселяцей в большем разрешении.
Интерфейс редактора (GUI: Interface Editor)
Тесселяция-шейдеров, продолжение...
Реализована панель настройки вобов, с параметрами тесселяции применяемой к ним.
В редакторе это выглядит примерно так:
По-мимо вобов тесселяция была удачно применена к модели Гг, поэтому сейчас мне предстоит написать дополнительный код для реализации этих настроек в меню.
Насколько всё это нагружает систему пока трудно сказать, так как я ещё не производил оптимизации для отсечений по пирамиде/Frustum- и дистанции видимости/Distanceculling для неё.
Но основные требования к характеристикам ПК будут дополнительно увеличены..