• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
Рендер GD3D11

Gothic ½ Рендер D3D7 → D3D11, в разработке... 17.8-dev9

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
  • Первое сообщение
  • #1
Gothic ½ — D3D11
G2D3D11_00.png

Ресурсы портала: World of Gothic.de
Страна разработчика: Германия
Платформа игры: "Готика 1", "Готика 2 - Ночь Ворона"
Тип обновления: Пакет
Рабочее название: D3D11-Renderer
Версия: X17.5 pre
Язык: независимо от языка
Вес: ~8,09 МБ

Автор/разработчик: Degenerated, далее перехватил инициативу kirides
Сайт проекта: Gothic-Dx11 De(Мертв), продолжение GitHub - kirides/GD3D11: D3D11-Renderer for Gothic and Gothic 2

Статус: Релиз альфа-версии (100 %)
Дата релиза: 04.09.2014
Дата обновления: 08.09.2014 | 09.09.2014 | 10.09.2014 | 14.09.2014 | 18.09.2014 | 22.09.2014 | 25.09.2014 | 26.09.2014 | 30.09.2014 | 07.10.2014 | 13.10.2014 | 20.11.2014 | 25.11.2014 | 15.12.2014 | 29.12.2014 | 08.01.2015 | 17.01.2015 | 23.01.2015 | 02.02.2015 | 10.02.2015 | 13.02.2015 | 19.02.2015 | 23.02.2015 | 24.02.2015 | 26.02.2015 | 28.02.2015 |13.03.2015| 20.03.2015 | 01.04.2015 | 02.04.2015 | 05.04.2015 | 18.04.2015 | 29.04.2015 | 25.05.2015 | 28.05.2015 | 09.06.2015 | 12.06.2015 | 19.06.2015 | 22.06.2015 | 26.06.2015 | 30.06.2015 | 15.07.2015 | 05.08.2015 | много-много версий спустя от другого разработчика |15.01.2023|

Ссылки:
M$ выпустила официальное обновление KB4019990 для Windows 7 SP1/Server 2012, которое добавляет в систему D3DCompiler_47.dll для возможности установки NET Framework 4.7.
D3DCompiler_47.dll также необходим для работы последних сборок рендера DX11.




Описание:
G½Direct3D11 Renderer, — визуализация основанная на Direct3D11 для игр "Готика 1" и "Готика 2: Ночь Ворона". Целью этого проекта является перенос графической составляющей этих игр на современный уровень графических систем. Для этого пишется прокси-DLL, которая позволяет прозванивать активный процесс Gothic2.exe использующий старый D3D7 рендер, и перехватывать его функции для пере-направления их в новую реализуемую визуализацию, которая открывает двери для динамических эффектов теней(Shaders), пост-обработке(PostProcessing), улучшенного освещения(Lighting), но прежде всего, для большей совместимости с современным железом, что является основной причиной создания этого проекта.


Основные изменения:
• Перенос рендера с D3D7 на D3D11;
• Использование драйвера много-поточности D3D11 для игры;
• Использование пакетом собственного *.INI-файла, с частично изменяемыми внутренними параметрами.

Графические технологии:
• HBAO: Horizon Based Ambient Occlusion/Глобальное освещение;
• SMAA: Enhanced Subpixel Morphological Antialiasing/Улучшенное суб-пиксельное морфологическое сглаживание;
• AF: Anisotropic Filtering/Анизотропная фильтрация;
• Pixel Shader/Пиксельные шейдеры;
• Normal mapping/Карты нормалей;
• Tesselation/Тесселяция.

Графические эффекты:
• Dynamic lighting/Динамическое освещение;
• Dynamic shadows/Динамические тени;
• Real-time reflections/Отражения в режиме реального времени.

Прочее:
• Горячая замена шейдеров;
• Собственная схема управления разрешением игры;
• Настраиваемый FOV просчитываемый на прямую из памяти игры;
• Собственная консоль управления;
• Поддержка широкоформатных мониторов;
• Изменение оригинального и поддержка нового формата текстур: *.dds;
• Возможность подгрузки высоко-полигональных мешей в игру с поддержкой других форматов моделей: *.obj, *.ase или (стандартный) *.3ds;
• Журнал лог-файла об изменениях в игре.


Описание, (в разработке)...

Полезные клавиши/функции, настройки и управление:
(Для альфа-версии рендера G½D3D11-v21 и частично Х17.1)
Консоль:
Для рендера визуализации создана собственная консоль, обладающая простым интерфейсом и снабжённая стандартной функцией "авто-завершения" набираемого текста(команд), на манер консоли игры "Готика".
В активной сессии консоли блокируется перехват всех событий о нажатых клавишах для игры, до тех пор, пока активна сессия "режима консоли".
В режиме компиляции текстур, в консоль выводится информация о проблемных шейдерах, в случае возникновения ошибок с ними.
  • Клавиши и сочетания клавиш:
    [F11] — активирует режим консоли D3D11 в игре.
    [ESC] — закрывает активную сессию режима консоли в игре.
    [↑] или [↓] — используя стрелки вверх/вниз можно вызывать или просматривать ранее уже введённые команды.
  • Команды консоли:
    Help
    ; ... выводит список всех доступных команд используемых рендером визуализации.
    ListKeys
    ; ... выводит список всех клавиш клавиатуры используемых рендером визуализации.
    DebugHud
    ; ... отключает вывод информации от глобального пользовательского интерфейса(HUD),
    ; будет полезна для создания скриншотов, - включено (0) или выключено (1), по-умолчанию: 1.

Рендер D3D11:
  • Клавиши и сочетания клавиш:
    [Alt] + [Tab ⇆] — активирует возможность управления мышью.
    [Alt] + [↵ Enter] — позволяет переключаться между оконным и полно-экранном режимами в игре. В настоящее время всегда используется оригинальное разрешение рабочего стола, имейте это ввиду.
    [+] или [−] — позволяют регулировать сколько объектов визуализации может быть максимально отображено, в значении (−1), все.
  • Цифровая клавиатура:
    [Numpad 0] — активирует функцию "Горячей замена шейдеров", каждый раз при её нажатии подгружает шейдер по-новому.
    [Numpad 1] — включает/отключает, функцию записи всех D3D7- и DDRAW вызовов в файл Log.txt, с сохранением его каталог: "..\Gothic II").
    [Numpad 2] — включает/отключает, функцию записи всех основных изменений в лог-файл;
    [Numpad 3] — активирует функцию сохранения текстур. При этом, все текстуры загружаемые игрой, будут сохранены в каталог: "..\System\Textures", в формате *.PNG;
    [Numpad 4] — ??
    [Numpad 5] — включает/отключает поддержку технологии HBAO.
    [Numpad 6] — включает/отключает поддержку карт нормалей(Normal map) рендером визуализации.
    [Numpad 7] — активирует функцию создания скриншотов(при активации, затеняет участок текста сверху, слева, на скриншоте, в который проставляется логотип), с последующим автоматическим их сохранением в каталог: "..\System\Screenshots".
    [Numpad 8] — ??
    [Numpad 9] — ??
  • Команды консоли:
    "hbaoRadius"
    ; ... изменяемый параметр для актуального радиуса освещения, при "hbaoRadius 5.2" устанавливает его значение равным - 5.2.
    ExperimentalWater
    ; ... активирует функции рендера для "Новой воды" и "Отражений" с автоматическим выбором визуализации между "океаническими" и "не океаническими" шейдерами, - океан (1) или море/река/озеро (0), по-умолчанию: 0.
    UseOceanShader
    ; ... активирует функции рендера для "Отражений" с автоматическим выбором визуализации между "океаническими" и "не океаническими" шейдерами, - океан (1) или море/река/озеро (0), по-умолчанию: 1.
    HideWorldMeshes
    ; ... отключает отрисовку мешей мира игры, - включено (1) или выключено (0), по-умолчанию: 1.
    ; используя её, вы можете подменять меши миров с низко-полигональных на высоко-полигональные, причем старые,
    ; также будут использоваться для просчета коллизий. Но эти меши не используются при просчете глобального освещения!
    EnableSMAA
    ; ... активирует функцию для сглаживания рёбер на мешах моделей, - включено (1) или выключено (0), по-умолчанию: 0.
    WorldShadows
    ; ... активирует функцию наложения динамических теней на мир игры, - включено (1)
    ; или выключено (0), по-умолчанию: 0.
    ; лучше всего её применять после полной загрузки игры и используемых текстур.
    ; это снизит вероятность вылета игры с ошибкой: "Файл не найден".
    • SunShadowRangeScale
      ; ... регулируемый множитель для дистанции дальности наложения теней.
      ; более высокие значения уменьшают качество теней, отчего они накладываются на большие дистанции видимости.
    • ShowShadowCamera
      ; ... активирует функцию пред-просмотра и определения теней камерой игры. Может быть полезной, если поиграться с её параметрами.
      EnableHBAO
      ; ... описание ??
      ShowReflectionBuffer
      ; ... описание ??

Лог изменений:
— Функция "bForceOceanWaterShader" была удалена из списка команд.

На что стоит обратить внимание:
— Игра обязательно должна запускаться в оконном режиме (!) Вместе с пакетом поставляется обновленный файл Gothic.ini, который поможет вам в этом;
— Визуализация всегда работает с разрешением рабочего стола. Так как разрешение в игре имеет свои настройки для широкоформатных мониторов, используется "Пользовательский интерфейс" игры, то вам для правильной работы пакета, необходимо выставить равнозначное значение для разрешения рабочего и разрешения в игре. Файл: [Gothic.INI], параметры: "zVidResFullscreenX" и "zVidResFullscreenY";
— Рендер визуализации регулирует угол обзора(FOV) для широкоформатных мониторов, более не требуется никаких фиксов для них.

Установка/удаление:
— Для установки распаковать содержимое архива "GD3D11_V*.zip" в каталог: "..\Gothic II\System". При необходимости создать требуемые каталоги;
— Для де активации работы пакета достаточно, переименовать/удалить файл "ddraw.dll". Для полной деинсталляции пакета необходимо удалить все соответствующие файлы и каталоги созданные при его установке.

Детальное описание изменений:
Системные требования и ПО (версии 1-21, Х1-Х17.1):
Минимальные системные требования:
- Windows Vista со всеми обновлениями и выше;
- DirectX 11 с последними обновлениями;
- Видеокарта с аппаратной поддержкой DirectX 11.

Необходимое ПО:
"OС Windows" — Redistributable Pack MS Visual C++ 2012 (64-bit или 32-bit), или полная версия — Redistributable Pack MS Visual C++ 2005-2008-2010-2012-2013 Extended (x86, x64)
"Готика 2: Ночь Ворона" — Report версия 2.6.0.0-rev2 (fix), GothicStarter ver.2.6f, G2MDK-ver.2.6, Patch G2MDK-ver.2.6a

Релизы на GitHub'e:
GitHub - ataulien/GD3D11: D3D11-Renderer for Gothic and Gothic 2 - Неактуально.
Продолжение разработки рендера теперь тут:
GitHub - kirides/GD3D11: D3D11-Renderer for Gothic and Gothic 2

Предрелизы:
v17.8-dev10, v17.8-dev11, v17.8-dev12, v17.8-dev13, v17.8-dev14, v17.8-dev15
Подробней Releases · SaiyansKing/GD3D11
 
Последнее редактирование модератором:

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
будет ли проект поддерживать моды типа В2 кроме оригинальной Готика 2 - Ночь Ворона ?
Изначально, запланирована поддержка всего, но реально модами никто не занимается т.к. других проблем вагон и тележки. Думаю, как только к оригиналу все что нужно прилепят, займутся модами, если с ними будут проблемы..
 

hypnotoad

Участник форума
Регистрация
12 Фев 2011
Сообщения
88
Благодарности
7
Баллы
160
Для чего необходимы текстуры карт нормалей? После распаковки в указанное место в картинке ничего не меняется. Используется ли для настроек файл G2D3D11.ini от старой версии, или в новой настройки скрыты в каком-то другом месте?
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Апдейт, версия X6!

Исправление ошибок, улучшение общей производительности и HBAO+ !


Новое в этой версии:
  • Улучшена производительность рендера мешей мира игры;
  • Реализовано инстанцирование для вобов(Instancing für VOBs), что также повышает производительность при рендеринге в игре;
  • Исправление ошибки связанной с переполнением некоторых индексных буферов;
  • Исправление D3D11 при отработке пиксельных шейдеров не связанных с 4k-рендером(4k-Rendertarget) при визуализации теней(не совсем понял про что речь ?!);
    • Пиксельный шейдер(Pixel Shader) используется только там, где это действительно необходимо (деревья, кустарники)!
  • Исправление некоторых вобов(VOBs) многократно добавляемых в перезаписываемый BSP-кэш (причина?), при каждой перезагрузке мира игры;
    • Это уменьшает время загрузки при загрузке сохраненной игры;
  • Исправление, теперь BSP-кэш очищается в нужное время, потому что ранее он не очищался вообще, так как не вызывалась требуемая функция после загрузки игры из сохранения;
    • Решает проблемы с производительностью при загрузке новых объектов игры и светящимися огнями в гавани;
  • Исправление вылетов игры связанных с драконами. У них по-прежнему много костей и рендер может отработать с ошибками; (Не совсем понял в чем тут связь, проблема рендера и кости скелета ?!)
  • Наконец-то мне удалось выяснить, какие текстуры используют свой альфа-канал, а какие нет!
  • Исправление панели управления в редакторе, при его вызове программа не знала какие кнопки отрисовывать в начале;
  • Добавлены эффекты HBAO +. Настройки смотрите в меню, клавиша - F11;
  • Добавлены настройки управления разрешением для карт теней(Shadowmap);
    • Дополнительная оптимизация рендеринга теней;
    • Стандартное разрешение для карт-теней в настоящее время снижено до 1024 пикселей;
  • Добавлена опция отключения "DisableWatermark", в настройках управления - "Общие";
  • Немного снижен эффект работы алгоритма для отрисовки теней из-за ошибки "Peter-Panning", эффект "Питера Пена"(оттенялись не только принадлежащие тени объекты).

Скриншоты текущей версии с модом Л-Хейвер:
lh1.jpg lh2.jpg lh3.jpg lh4.jpg
lh5.jpg lh6.jpg lh7.jpg lh8.jpg
lh9.jpg lh10.jpg lh11.jpg

Хорошего времяпрепровождения!
s_065.gif
 

Вложения

  • GD3D11_X6.zip
    8,3 MB · Просмотры: 240
  • GD3D11_X6.rar
    5,9 MB · Просмотры: 230

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Для чего необходимы текстуры карт нормалей? После распаковки в указанное место в картинке ничего не меняется.
Эм.. вики уже не помогает.? ::)
Если ничего не работает с включенной функцией номал-маппинга то, либо установлено криво, либо сама игра кривая..

Используется ли для настроек файл G2D3D11.ini от старой версии, или в новой настройки скрыты в каком-то другом месте?
Версии начиная с первой по 21-ю это одна линейка, она не совместима ни чем, с версиями из линейки Х1-6. Это разные версии..
 

Лебедев

Участник форума
Регистрация
3 Сен 2005
Сообщения
595
Благодарности
77
Баллы
225
Добрый день. Графика современная получается, анимации из проверенных (30%) работают как и при DirectX 7, но пока найденные минусы в версии X6:

Не стабильная работа в полноэкранном режиме (иногда зависает) Windows 7 Professional X64 SP1.
Видеоролики в микроскопическом размере (пикселей 10 работают).
При включении чит консоли и ввода кода - чёрный экран и звук продолжает идти = потеря информации об изображении в DirectX. (Помогает только перезапуск всей игры)

Пока на этом все найденные плюсы и минусы.
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Исправление некоторых вобов(VOBs) многократно добавляемых в перезаписываемый BSP-кэш (причина?), при каждой перезагрузке мира игры;
Это уменьшает время загрузки при загрузке сохраненной игры;
Вроде как это баг самой игры.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Не стабильная работа в полноэкранном режиме (иногда зависает) Windows 7 Professional X64 SP1.
Видеоролики в микроскопическом размере (пикселей 10 работают).
При включении чит консоли и ввода кода - чёрный экран и звук продолжает идти = потеря информации об изображении в DirectX. (Помогает только перезапуск всей игры).
Систем пак в довесок ставить не пробовал? С ним этих проблем быть не должно, но будет некоторое падение общей производительности по ФПС, где-то на 30-40%.
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Систем пак в довесок ставить не пробовал? Но с ним этих проблем быть не должно, но будет некоторое падение общей производительности по ФПС, где-то на 30-40%.
Вообще, странно что разраб не включил эту заплатку для вин8/8.1
Код:
    HMODULE hDDraw = LoadLibrary("ddraw.dll");
    if(hDDraw)
    {
        SetAppCompatDataFunc SetAppCompatData = (SetAppCompatDataFunc)GetProcAddress(hDDraw, "SetAppCompatData");
        if(SetAppCompatData)
            SetAppCompatData(12, 0);
        FreeLibrary(hDDraw);
    }
С ней все становится как часы. Если конечно она в его случае уместна
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Находящееся в разработке..
Моря и "океяны" новой воды...
s_004.gif



Устранил некоторые ошибки с последнего изображения воды и в целом немного повозился с ней, пока получается примерно так:
ocean2.jpg

Многое будет ещё дорабатываться..
 

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.049
Благодарности
1.170
Баллы
340
Устранил некоторые ошибки с последнего изображения воды и в целом немного повозился с ней, пока получается примерно так:
В статике не слишком понятно, что и как. Видео бы глянуть.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
статике не слишком понятно, что и как. Видео бы глянуть.
"Концерт, по вашим заявкам".. :)
Для тех, кто хотел увидеть видео с новой водой:


Вот так это выглядит в данный момент, вода ещё немного плоская.. Позже я подумаю о том чтобы избежать явных повторений в её колебаниях, как и над реализацией прозрачности для неё.
Освещение временное, но сгодится для первого предварительного обзора.
s_064.gif
 

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.049
Благодарности
1.170
Баллы
340
О! Вода смотрится просто шикарно! *thumbs up*
 

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.183
Благодарности
2.880
Баллы
420
Хорошо всё. Но синий цвет воды и неба не очень удачно подобран. Какое-то все слишком темное и холодное. В реале небо намного светлее будет днем, как и вода. На закате цвета вообще другие, как и в пасмурную погоду.
Встанет также проблема волн у берега - без них будет намного хуже все выглядеть. А также задача грамотного замыливания удаленных объектов вследствие непрозрачности воздуха. Вот пример кадров Восточного моря - пена у берега, море ясным днем, на закате, днем в пасмурную погоду:
2.jpg
4.jpg
3.jpg
1.jpg
Как видно, в реале цвета очень сильно могут меняться в зависимости от погоды и времени суток.
 

Degenerated

Участник форума
Регистрация
9 Янв 2015
Сообщения
22
Благодарности
18
Баллы
170
Хорошо всё. Но синий цвет воды и неба не очень удачно подобран. Какое-то все слишком темное и холодное. В реале небо намного светлее будет днем, как и вода. На закате цвета вообще другие, как и в пасмурную погоду.
Встанет также проблема волн у берега - без них будет намного хуже все выглядеть. А также задача грамотного замыливания удаленных объектов вследствие непрозрачности воздуха. Вот пример кадров Восточного моря - пена у берега, море ясным днем, на закате, днем в пасмурную погоду:
Как видно, в реале цвета очень сильно могут меняться в зависимости от погоды и времени суток.

The lighting on the water is still pretty simple. It is just a linear interpolation between white and a dark gray, depending on how high the sun is. Also the horizon doesn't look right yet and sunsets should be much brighter.

Maybe I will go and implement this algorithm on day, which looks far nicer than the single scattering model I am currently using.

This is just an early preview, so there will be changes :)
 

Strategik

Участник форума
Регистрация
22 Июл 2008
Сообщения
50
Благодарности
1
Баллы
160
У меня зависает rundll32 при старте. Windows 7 64bit, nvidia, извесная проблема. Как посоветуете пофиксить? Можно ставить етот патч?
Можно играть с вашем патчем в модах rebalance или snc?
Если видяха апаратно держит только DX10 игра стартонет?
Спасибо за любую помощь.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995

Strategik

Участник форума
Регистрация
22 Июл 2008
Сообщения
50
Благодарности
1
Баллы
160
Скиньте плз ссилку на мод Л-Хейвер
На каком систем паке Ви играете? а то у меня зависает на rundll32
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Скиньте плз ссилку на мод Л-Хейвер
Здесь что-то было: https://worldofplayers.ru/threads/36390/

На каком систем паке Ви играете? а то у меня зависает на rundll32
Сгодится любой для Г2НВ.
А то что у тебя зависает, говорит о том что пак у тебя не работает, криво установлен или игра сама кривая..
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Strategik,
Теперь относительно понятны твои проблемы..
1. Систем пак и Рендер ДХ11, хоть и работают вместе но не сводились в один пакет. Это если и произойдет, то только после релиза нормальной версии ДХ11.
А пока, при их совместной установке возможно падение производительности для Рендера ДХ11.
2. Что до мелкого FPS, то здесь проблема в винде, это ее баги, надо смотреть конкретно на твоей системе что и как установлено + пробовать фиксить.

ТимВивер установлен? Если нет поставь, запусти и скинь мне в ЛС Свой ИД и пароль, посмотрим что и как..
 
Сверху Снизу