Перейти к содержанию

OpenMW или мечты иногда сбываются


MEZON

Рекомендуемые сообщения

Официальный сайт OpenMW
Страница загрузки
Ссылка на загрузку актуального билда для Win64 (обновляется ежедневно)
 
Баг-трекер

Wiki

Список задач до релиза 1.0

Репозиторий с исходным кодом на GitLab

Discord: OpenMW (в наличии русскоязычный канал)
IRC: #openmw на irc.freenode.net

Полезные ссылки:
Реестр популярных модов для OpenMW с гайдами по установке
Руководство по портированию ретекстуров в OpenMW
OpenMW на Youtube
OpenMW на GitLab
Диздоки планов развития после 1.0
 
Сторонние проекты, основанные на OpenMW:
TES3MP - реализация мультиплеера для OpenMW.

Тема OpenMW на 4PDA - здесь можно найти сборки OpenMW для Android 5+ и гайды по решению проблем.

OpenMW для VR - основан на OpenXR, готовые сборки (устаревшие) есть только для Windows.

Порт на Switch - к сожалению, в настоящее время им никто не занимается.

Что такое OpenMW?

 

OpenMW - это попытка воссоздать игровой движок для популярной RPG TES3 Morrowind, полноценную реализацию всех особенностей игры с открытым исходным кодом. Для того, чтобы вы имели более полное представление о проекте, вот ключевые особенности OpenMW:

  • Кроссплатформенность - запуск на Windows (7 или новее), Linux, MacOS X, Android (платформы x86 не поддерживаются).
  • Виртуальная файловая система, позволяющая устанавливать моды в отдельные директории, а не засорять Data Files.
  • Поддержка сжатых BSA-архивов для экономии места на диске.
  • Исправление ошибок системного проектирования: "грязные" GMST записи в плагинах, проблема "удвоения" в сейвах, лимит на 255 плагинов и т.д.
  • Улучшенный поиск пути - с помощью статического или динамического (на выбор) построения навигационной сетки на основе геометрии локаций (вместо использования вручную расставленных дизайнерами локаций маркеров).
  • Улучшение интерфейса (поддержка TrueType-шрифтов, масштабирования интерфейса и миникарты, поддержка текстур высокого разрешения для элементов интерфейса, редактирования разметки интерфейса с помощью XML-файлов, клавиатурной навигации, поворота камеры с помощью гироскопов и т.д.).
  • Улучшение графики (поддержка шейдеров постобработки, динамические тени от объектов, Distant Land (хоть и без генератора LOD-ов), анимированная трава, шейдер воды с поддержкой отражений в реальном времени, улучшенная система освещения без лимита в 8 источников света на объект, улучшенная система тумана и многое другое).
  • Улучшенная поддержка анимаций (возможность использовать отдельные файлы для отдельных групп анимаций, возможность добавлять кастомные кости в скелеты, возможность задать новые анимации для топоров, булав и кинжалов, поддержка анимаций открытия-закрытия контейнеров).
  • Начальная поддержка Lua-скриптов для расширения возможностей плагиностроения.
  • Поддержка ICU для локализации Lua-скриптов, шейдеров постобработки и элементов интерфейса.
  • Использование дополнительных ядер процессора для фоновых задач (например, для предварительной загрузки локаций для бесшовного перемещения по игровому миру или для обработки коллизий объектов).
  • Отсутствие лимита 4Гб на адресуемую процессом игры память из-за поддержки 64-битных архитектур.
  • Намного меньшее количество вылетов в сравнении с оригинальным движком.
  • Возможность модификации движка под свои нужды (например, довольно популярен TES3MP - форк OpenMW с поддержкой мультиплеера).

OpenMW выпущен под лицензией GPLv3, весь исходный код написан с нуля.

Нужен ли оригинальный Morrowind для OpenMW?

И да, и нет.

ДА. Прежде чем использовать OpenMW, вы должны легально приобрести и установить Morrowind на ваш компьютер. OpenMW воcпроизводит только техническую сторону игры, и не содержит в себе каких-то материалов, защищенных авторским правом. Используются только данные уже установленной игры, либо с установочных файлов с диска или цифровой копии игры.

НЕТ. OpenMW - самостоятельный игровой движок. Он может быть базой для тотальных конверсий, не использующих файлы Morrowind. В качестве примеров можно привести Robowind Construct и StarWind.

Каково текущее состояние проекта?

Статус

OpenMW уже находится в состоянии "бета": основные функции реализованы, идет работа по оптимизации и паритету с MGE и MWSE. Кроме этого есть ряд проблем, в основном с физикой и поддержкой модов, использующих баги и недокументированные возможности оригинального движка.
OpenMW играбелен (можно нормально пройти сюжет игры и аддонов, ветки гильдий и т.д.), хотя и местами уступает MGE в качестве графики, но выигрывает по стабильности, а на многих машинах и по производительности и скорости загрузки локаций.

Какие технологии вы используете?

OpenMW построен с использованием различных библиотек и инструментов с открытым исходным кодом:

  • Языки программирования: C++ (стандарт C++17 с частичной поддержкой C++20), GLSL, Lua
  • Графика: OpenSceneGraph
  • Физика: Bullet
  • Звук: OpenAL
  • Ввод-вывод: SDL2
  • Интерфейс: MyGUI
  • Поиск пути для ИИ: Recast & Detour

 
Я не программист, как я могу помочь проекту?

 

1. Можно просто играть и отсылать багрепорты

2. Можно тестировать разрабатываемый код, до того, как он попадёт в основную ветку. Там же можно вести обсуждение и предлагать изменения.

3. Можно тестировать моды. Основная цель - выявить проблемы с совместимостью.

4. Можно исследовать механики оригинального движка, особенно актуально в области тонкостей работы скриптов.

5. Можно обновлять Wiki.

6. PR тоже не помешает, особенно если он позволит привлечь тестировщиков и плагиностроителей.

7. Можно донатить разработчикам на Patreon'е:

  • psi29 — проджект лид, поможете закрыть траты на хостинг
  • Capostrophic — тысяча и один фикс + вагон фич
  • AnyOldName3 — тени в OpenMW
  • David Cernat — работа над TES3MP
Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

  • 2 года спустя...
  • Ответов 3.1 тыс
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

UnPinned posts

Который связан с невозможностью призыва двух и более одинаковых саммонов.

Нет и в ближайшее время исправлен не будет.

Ссылка на комментарий
Поделиться на другие сайты

Нет и в ближайшее время исправлен не будет.

 

Понятно, ну ок, не самый критичный баг.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Вновь кучка фиксов регрессий для релиза. Потихоньку идем к RC2.

 

С 19 апреля:

 

я:

  • Убрал спекулярность через материал для NIF-файлов морровиндской и более ранних версий насовсем, она в морровинде, по всей видимости, намертво отсутствует, даже для NiLight со спекулярным цветом, а у нас из-за солнца головы Westly и всякие реплейсеры, экспортированные с кривыми NiSpecularProperty, начинают блестеть неприглядно.
  • Ключи убирают ловушки только при активации закрытых дверей/контейнеров. Если на дверь назначены и ключ, и ловушка, но она изначально была открыта (уровень замка 0, хотя он пока обрабатывается как "ключ обязателен"), то ловушка игнорируется.
  • Поправил формулу вычисления шанса успешного каста заклинания.
  • Поправил работу эмиттеров частиц в Morrowind Optimization Patch, у них там узлы находятся позже систем частиц в иерархии, на что у нас работа с графом сцены при загрузке и копировании NIF не рассчитывала (войдет в 0.46)

bzzt:

  • Поправлены сломанные тени в скриншотах сохранений.
  • Тени, если выключить compute tight scene bounds, будут выглядеть немного лучше, чем раньше.
  • Невидимая вода под ландшафтом перестанет влиять на производительность.

mp3butcher:

  • Частицы наконец реагируют на рассеянное освещение.
  • NiParticleColorModifier наконец-то меняет цвет и прозрачность частицы, которые раньше подменялись освещением.

AnyOldName3:

  • Редактор больше не пытается создать геометрию для сеток путей из пустых массивов треугольников и линий (неопределенное поведение в OSG, которое Роберт не желает поправлять) (войдет в 0.46).

fr3dz10:

  • В некоторых случаях в редакторе теперь появились ссылки на статьи в документации.

elsid:

  • Несколько правок, связанных с генерацией навмешей.

psi29a:

  • ShowSceneGraph теперь правильно работает на OSG 3.6.x и меньше спамит в консоль об отсутствующих сериализаторах.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

Уважаемые, пару вопросов, не догуглился.

1. Можно ли как-то изменить расположение камеры от третьего лица как в MGE?
2. Не могу найти на гитлабе некий новый улучшенный шейдер тумана. Не поделитесь ссылкой и инструкцией по установке?
3. Заметил, что у новых светильников из Dunmer Lanterns Replacer от MelchiorDahrk не отображается эффект свечения. Как пофиксить?
4. Часто после загрузки персонаж не двигается, управление не работает. 
5. Текстуры огня отображаются через раз. Вообще все текстуры заклинаний и прочих частиц выглядят странно.  
6. Будет ли быстрый каст?

Изменено пользователем hater_8
Ссылка на комментарий
Поделиться на другие сайты

1) Нет. Попытки это сделать пока приводят к серьезным проблемам, отложено на лучший день.

2) Он забагован и практически не поддерживается годами, не следует им всерьез пользоваться. Вообще вот он. Для того, чтобы его "установить", ветку придется собрать — в среде разработки.

3) Вполне себе отображается на 0.46.0 и более поздних сборках. Искать их на официальном форуме (в треде OpenMW 0.46.0 или ночных сборок, ссылки на ночные сборки для основных систем есть на странице Downloads в том числе).

4) Ничем не могу помочь, информации недостаточно.

5) Morrowind Optimization Patch стоит? Так или иначе, должно быть значительно улучшено в текущих ночных сборках (правильно применяется NiParticleColorModifier, который цвет частиц меняет по времени). MOP должен работать более-менее корректно в сборках 0.46.0, в более старых в половине моделей частиц не будет.

6) Он баланс меняет значительно, даже (да в принципе особенно) фича из MCP все моменты не может предусмотреть. Он в теории и на практике возможен, но пусть лучше его моды (будущие моды) добавляют, а не разработчики опенмв кое-как поддерживают.

Ссылка на комментарий
Поделиться на другие сайты

3) Вполне себе отображается на 0.46.0 и более поздних сборках. Искать их на официальном форуме (в треде OpenMW 0.46.0 или ночных сборок, ссылки на ночные сборки для основных систем есть на странице Downloads в том числе).

5) Morrowind Optimization Patch стоит? Так или иначе, должно быть значительно улучшено в текущих ночных сборках (правильно применяется NiParticleColorModifier, который цвет частиц меняет по времени). MOP должен работать более-менее корректно в сборках 0.46.0, в более старых в половине моделей частиц не будет.

Версия 0.47. МОП стоит. Свечение фонарей Мелькора видно только в помещениях. С огнём вышеупомянутые проблемы в основном в интерьерах. Никаких ретекстуров для него нет.

 

А что вообще по шейдерам? Можно ли как-то сделать нормальным отсечение тумана при добавлении дистанта? 

 

Еще хотел бы отметить, что дистант дико жрёт фпс. Ryzen 5 2500U, 8gb, RX560X 4gb. Не топовый ноутбук, но тот же Battlefiled V летает на средне-высоких. Думал, в ОпенМВ завезут производительность.  

Ссылка на комментарий
Поделиться на другие сайты

Еще хотел бы отметить, что дистант дико жрёт фпс. Ryzen 5 2500U, 8gb, RX560X 4gb. Не топовый ноутбук, но тот же Battlefiled V летает на средне-высоких. Думал, в ОпенМВ завезут производительность.

 

Дистант ленд не готов. Сделать производительной неготовую ещё фичу немножко сложно.

И какие вы настройки используете для удаленного ландшафта?

Ссылка на комментарий
Поделиться на другие сайты

 

[Camera]
field of view = 60
viewing distance = 17103

[Terrain]
distant terrain = true
 

 

https://www.fullrest.ru/forum/topic/18520-openmw-ili-mechty-inogda-sbyvayutsya/page-140?do=findComment&comment=994215

exterior cell load distance должен быть равен 1

Ссылка на комментарий
Поделиться на другие сайты

Понял, спасибо. Поддерживаю автора комментария, очень не хватает гайдов по настройке в закрепе итт. В интернете хватает информации, но смущает, что она за разные годы и кто что пишет. Отсюда очень много вопросов и непонимания. И я подозреваю, что вам приходится отвечать на одни и те же С:

Ссылка на комментарий
Поделиться на другие сайты

С начала мая:

 

elsid:

  • Частота обновлений навмешей снижена до 4 в секунду, что должно заметно снизить нагрузку на CPU. Настраиваемо.
  • Перехват вылетов можно отключить через переменную среды
  • Для Bullet поддерживается использование переменных двойной точности

p4r4digm

  • Скриншоты теперь сохраняются в папку "screenshots" внутри папки данных пользователя, а не просто в её корень

я:

  • Поправил работу поглощения заклинаний для заклинаний с несколькими эффектами (мана не будет восстанавливаться несколько раз, если эффекты заклинания были поглощены несколько раз)
  • Раса частей тела, принадлежащих одежде и броне, теперь не проверяется (она в этом случае ни для чего не используется, в оригинальных записях расы назначены от балды, а OpenMW-CS их редактировать не позволяет, поэтому в новых записях расы остаются пустыми)
  • Стражи смогут более-менее корректно преследовать невидимого игрока (да, это будет выглядеть странно, но оно так в Морровинде работает)
  • Скорость проигрывания анимации движения теперь ограничена, как в оригинале. Но реальная скорость будет соответствовать ожидаемой, а не тоже будет ограничена.
  • Несколько дополнительных вещей логируются, а названия ячеек логируются иначе
  • Доделал режимы цветов вершин в шейдерах.
  • Для камер, использующих ортогональную проекцию — камер локальной карты, карты мира и т.д. — "маленькие" объекты (на самом деле большие, потому что у этих камер размер изображения маленький) больше не будут выкинуты, что должно позволить массивным значениям единственноой настройки small feature culling (20+ пикселей) не ломать эти самые карты.
  • NiPathController теперь двигает узлы, но более продвинутые его настройки пока не поддерживаются. Насекомые в BCSounds и Nocturnal Moths заработают.
  • Корневые записи, не являющиеся узлами, теперь будут игнорироваться, а не делать меш неюзабельным. Исправляет загрузку моделей некоторых рукавиц для левой руки в Better Morrowind Armor Fixes от Pherim.
  • При копировании частей тела в модель будут выбираться все узлы с подходящими именами, а не первый узел, у которого есть набор состояний, являющийся родительским для геометрии, что должно исправить отсутствие карт среды у кирасы Индорил из HiRez Armors на персонажах и у эбеновой кирасы. Эффект карты среды может быть назначен на произвольный узел выше геометрии. Из-за оптимизатора могут быть ложные срабатывания.

akortunov:

  • Туман войны теперь хранится в PNG, а не TGA (большие сейвы могут уменьшиться из-за этого на ~20%)
  • Флаги стат персонажей убраны в отдельную запись флагов (основано на моих правках)
  • Увеличения навыков и специализаций теперь не сохраняются, если заполнены нулями (они не заполнены нулями только у игрока пока).
  • Сокращено использование пространства сейва предметами инвентаря.
  • Правки выше должны уменьшить сейв ещё на 4%.

Assumeru:

  • Скрипты теперь (теоретически) можно запускать спокойно на объектах, не являющихся уникальными.

Через страшное колдунство bzzt вернули к жизни, он вновь пытается сделать более-менее юзабельные удаленные статики.

 

Релиз потихоньку делается. Сборки RC2 для Windows и Linux здесь.

Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Подскажите, пожалуйста, как работать с nif моделями (https://github.com/OpenMW/openmw/tree/master/components/nif)

Я хочу попытаться разработать библиотеку для сервера tes3mp, которая будет рассчитывать высоту размещения динамических объектов на поверхности ландшафта. Для этого нужно как то вычислить размеры модели объекта.

Изменено пользователем lime
Ссылка на комментарий
Поделиться на другие сайты

Загрузчик NIF к этому не имеет отношения, и вообще напрямую с NIF-моделями работать не следует, нужен доступ к графу сцены, его пока что нет.

Ссылка на комментарий
Поделиться на другие сайты

, нужен доступ к графу сцены, его пока что нет.

Проблема в том, что если бы он и был, то это бы мне не помогло по тому, что сервер tes3mp не грузит esm файлы и модели. Он просто пересылает состояние мира и объектов между игроками и реализует некоторую другую логику сетевой игры с помощью lua скриптов.

Ссылка на комментарий
Поделиться на другие сайты

Проблема в том, что если бы он и был, то это бы мне не помогло по тому, что сервер tes3mp не грузит esm файлы и модели. Он просто пересылает состояние мира и объектов между игроками и реализует некоторую другую логику сетевой игры с помощью lua скриптов. 

Тогда логичнее задавать такие вопросы непосредственно разработчикам TES3MP.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

С 18 мая:

 

akortunov:

  • Эффекты заклинаний теперь не зависят от параметров игрового времени, что они делали по неизвестным причинам.
  • Всякие мелкие рефакторинги.
  • Значения навыков и атрибутов теперь хранятся как числа с плавающей запятой, что позволяет правильно работать командам типа ModStrength 0.2.

я:

  • Включил обратно слежение головой для не-прямоходящих существ. Оно вроде перестало быть сломанным.
  • Включил обратно склеивание анимации оружия с анимациями движения в виде от первого лица, его отсутствие ведет к поведению, отличающегося от оригинального слишком сильно.
  • Всякие мелкие фиксы и правки, связанные с NIF.
  • Добавил поддержку типа записи NiLines (основанную на теоретической информации, а не практической). В оригинальном движке она только с новейшим мвсе работает правильно. Это геометрия, состоящая из линий, она используется в TESCS для выделения. Больше инфы см. у Ежа в его обновленных заметках.
  • Данные приветствий будут сбрасываться автоматически, когда актер покидает сцену.
  • GetDistance теперь будет работать, если заданный объект не найден на сцене (но не объект, с которым она работает), или если емкость, в которой вызывающий объект находится, на сцене отсутствует, и выдавать более логичные предупреждения. Более понятная ошибка будет логироваться и если то, что объект не был найден, считается фатальным.
  • Инструкция TCL ведет себя немного ближе к оригиналу, актеры смогут ударить по игроку, какой бы смысл это не имело.
  • У магических эффектов без флага AppliedOnce продолжительность определяется более корректно. Они теперь не могут быть мгновенными.
  • Магические эффекты частично обновляются во время анимации смерти, что позволяет более корректно обрабатывать применение и снятие магических эффектов (в т.ч. их визуальных эффектов). Например, эффекты все ещё применяются к умирающим персонажам — это заметно, если завершающий удар был нанесен зачарованным оружием, но на момент применения эффекта персонаж уже технически погиб. Правда, практически мгновенно затем пропадут.

elsid:

  • Всякие мелкие рефакторинги и оптимизации, в основном связанные с ИИ
  • Улучшения отладки, так же в основном связанные с ИИ

Assumeru:

  • SetFight/SetFlee/SetHello/SetAlarm и ModFight/ModFlee/ModHello/ModAlarm теперь изменяют и базовую запись, а не только конкретного актера.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

стоит написать сюда немного найденных ошибок, которые скорее всего связаны именно с OpenMW

И привести список ошибок, на треть состоящий состоящий из особенностей оригинала (пп. 2, 5 и скорее всего 1 и 9) и на две трети состоящий из двух багов (или скорее ограничений) мультиплеера (пп. 3,3,7,8, а также 4,6).

Разработчиков мультиплеера здесь нет, и такие ошибки на Фуллрест постить бессмысленно.

Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

Но ведь OpenMW не должен разве исправлять ошибки оригинала?

Только ошибки ДВИЖКА, да и то только которые в виде вылетов.

Баланс игромеха и косяки в ресурсах (типа скриптовых ошибок и халявных предметов в локациях) OpenMW не правит, да и не может править.

Для исправления ошибок в игровых файлах есть игровой редактор и моды, создаваемые с его помощью.

И уж тем более OpenMW не может править несовместимость морровиндовских скриптов с мультиплеером, которого в самом OpenMW нет и которые в TES3MP обходятся кастомными Lua-скриптами.

Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

Но ведь OpenMW не должен разве исправлять ошибки оригинала? Я бы спросил на GitHub, но тамошний непонятный мне дизайн, а ещё то, что я плохо пишу на английском не позволяет мне

С ошибками оригинала типа очепяток и неверных терминов ("аргонийцы") — в тему ГФМ, а не сюда.

С ошибками-фичами-особенностями игромеха — в спортлото, но иногда и сюда.

 

 

2. https://imgur.com/Pkoi7pt - не знаю как в оригинале, но на сборке GFM+tes3mp+Better Dialogue Font у Абелле Хредитте в Валенварионе есть алхимическая аппаратура Тайного Мастера и стоит она даже дешевле, чем Грандмастера.

В оригинале аппаратура тайного мастера недоступна вообще. GFM позволяет их найти у этого алхимика.

Вопрос: причем здесь ОпенМВ и мультиплеер?

 

 

5. https://imgur.com/fZ1V666 - можно ли отключить функцию надевания персонажем проданной ему брони?

В ОпенМВ (в последних ночных сборках точно) в разделе "Дополнительно" лаунчера есть такая опция.

 

 

9 и 10

Это в ГФМ.

Изменено пользователем morrow
Ссылка на комментарий
Поделиться на другие сайты

Только что просматривал отчет разработчиков об версии 0.46.0 

От теней в реальном времени был впечатлен, ваши мнения?

Изменено пользователем Ztitsval
Ссылка на комментарий
Поделиться на другие сайты

Шикарный релиз! Капо, Андрею и другим разработчикам земной поклон за их титанический труд!

 

Вопрос. Чендлог прочитал, но так и не понял, дистантленд реализован в 0.46 или ещё находится в разработке?

Ссылка на комментарий
Поделиться на другие сайты

Спасибо.

дистантленд реализован в 0.46 или ещё находится в разработке?

В 0.46 насчет лодов ничего не изменилось, они, как и раньше, только для ландшафта.

В 0.47 мб что-то будет доведено до ума, т.к. в мастер уже (как обычно преждевременно) залито.

Ссылка на комментарий
Поделиться на другие сайты

Кстати, я ни на что не намекаю, но возможно в раздел "Я не программист, как я могу помочь проекту?" стоит добавить ссылки на Patreon или аналогичные сервисы участников проекта OpenMW?

Ссылка на комментарий
Поделиться на другие сайты

Кстати, я ни на что не намекаю, но возможно в раздел "Я не программист, как я могу помочь проекту?" стоит добавить ссылки на Patreon или аналогичные сервисы участников проекта OpenMW?

Добавлю в течение дня.

 

Апд.

Добавил всех отсюда. Akortunov'а там нет, но если что, то добавлю, да он и сам может.

Изменено пользователем morrow
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...