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

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
Ссылка на комментарий
Поделиться на другие сайты

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

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

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

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

UnPinned posts

Очень просто определяет - генератор Distant Land считает травой любой статик с моделью из папки Grass. Морровиндовский движок же сам траву не обрабатывает, т.к. моды с ней не подключаются к самой игре.

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

Очень просто определяет - генератор Distant Land считает травой любой статик с моделью из папки Grass. Морровиндовский движок же сам траву не обрабатывает, т.к. моды с ней не подключаются к самой игре.

Понятно. А в ОпенМВ модуль отрисовки теней просто берёт имеющиеся объекты вне зависимости от того, где они лежат? То есть в нынешней ситуации нельзя ему просто запретить реагировать на меши из отдельных каталогов, я правильно понял?

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

Можно, но этот костыль вряд ли примут, т.к. моды на траву в принципе не рассчитаны на то, чтобы их к игре подключали.

А если их не надо подключать, зачем лишние костыли сейчас вводить, особенно учитывая тот факт, что тени сами по себе ещё экспериментальные?

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

Можно, но этот костыль вряд ли примут, т.к. моды на траву в принципе не рассчитаны на то, чтобы их к игре подключали.

А если их не надо подключать, зачем лишние костыли сейчас вводить, особенно учитывая тот факт, что тени сами по себе ещё экспериментальные?

Ну насчёт принятия "костыля" - есть же тут целая тема на форуме, где обсуждается вопрос всяких наворотов, типа оружия в ножнах, так что может, и стоит предложить. В конце концов лично я проблемы в отрисовки теней от всего не вижу, ибо в жизни тени так и работают. Просто производительность падает, но это очевидно, ибо иначе никак... МГЕ же - сам по себе большой костыль со всеми его фишками, когда как в OpenMW всё равно реализуются вещи, которых в ванильном движке нет. Вопрос только в приоритете, тут не спорю)

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

Привет, не нашёл отдельной темы под это дело, поэтому напишу здесь. Есть такой запрос, хотелось поставить кастомную карту мира в интерфейсе персонажа для своего сервера на Тес3МП. Для обычного морровинда она делается вот так, но достигается всё это дело патчем экзешника морровинда, что, я так понимаю, не будет работать с опенМВ. Вопрос, собственно, можно ли такое реализовать в опенМВ на данный момент (патч, плагин и т.д.), и в частности на Тес3МП?

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

Вопрос, собственно, можно ли такое реализовать в опенМВ на данный момент (патч, плагин и т.д.), и в частности на Тес3МП?

Насколько мне известно, нет.

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

С 5 сентября:

akortunov:

  • По наводке Хрнчамда поведение сообщения том, что о вашем преступлении стало известно полицаям, изменено так, чтобы только появляться, если за прошедший кадр изменился штраф, который игрок выплатит. Раньше оно могло появиться во многих экземплярах, если игрок украдет несколько предметов нажатием "взять все", в то время как Морровинд тупо не обрабатывает события преступлений в реальном времени и обрабатывает их все разом за кадр вне паузы. Нам же требовался другой подход.

я:

  • Если замок слишком сложен, чтобы его открыть слабым заклинанием, отмычкой или снять с него ловушку щупом, сей акт все равно будет считаться преступлением, как это и должно быть. Замечено TR'овцами.
  • Поправлено то самое предупреждение Qt, что появляется всегда, когда лаунчер запускается через терминал/консоль. То, что об открытии незакрытого файла дважды.

Джеймс Стефенс:

  • Как в Морровинде, звук закрытия или открытия не-телепортирующей двери прекращается, если дверь остановилась из-за касания об неё актера. Ранее он не прекращался, что приводило к довольно странным последствиям (дверь "захлопнулась", а физически не закрылась). Не всем может быть по нраву такое решение проблемы, но пусть пока так будет.

unelsson:

  • Для удобства окраски ландшафта текстурами окрашиваемые куски ландшафта теперь можно выбирать. Этот день мы отдаляли, как могли, но Zini уже почти год нет на месте.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

 

С 5 сентября:

akortunov:

  • По наводке Хрнчамда поведение сообщения том, что о вашем преступлении стало известно полицаям, изменено так, чтобы только появляться, если за прошедший кадр изменился штраф, который игрок выплатит. Раньше оно могло появиться во многих экземплярах, если игрок украдет несколько предметов нажатием "взять все", в то время как Морровинд тупо не обрабатывает события преступлений в реальном времени и обрабатывает их все разом за кадр вне паузы. Нам же требовался другой подход.

я:

  • Если замок слишком сложен, чтобы его открыть слабым заклинанием, отмычкой или снять с него ловушку щупом, сей акт все равно будет считаться преступлением, как это и должно быть. Замечено TR'овцами.
  • Поправлено то самое предупреждение Qt, что появляется всегда, когда лаунчер запускается через терминал/консоль. То, что об открытии незакрытого файла дважды.

Джеймс Стефенс:

  • Как в Морровинде, звук закрытия или открытия не-телепортирующей двери прекращается, если дверь остановилась из-за касания об неё актера. Ранее он не прекращался, что приводило к довольно странным последствиям (дверь "захлопнулась", а физически не закрылась). Не всем может быть по нраву такое решение проблемы, но пусть пока так будет.

unelsson:

  • Для удобства окраски ландшафта текстурами окрашиваемые куски ландшафта теперь можно выбирать. Этот день мы отдаляли, как могли, но Zini уже почти год нет на месте.

 

Это как раз вошло в сборку от 12 сентября?)

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

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

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

Првет, есть ещё вопросик:
Можно ли прикрутить к игроку анимацию, например танца, чисто теоретически? Тип, игрок нажимает кнопку, появляется менюшка, выбираем "танец" и анимация проигрывается несколько раз, потом уходит в idle обратно.

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

Сейчас такого нет, теоретически возможно всё, если это кто-то реализует.

Неправильно поставил вопрос)) Каким путём это можно было бы сделать?

чтобы понимать,хотя бы, в какую сторону копать

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

Неправильно поставил вопрос)) Каким путём это можно было бы сделать?

чтобы понимать,хотя бы, в какую сторону копать

Программированием. И в код анимаций лучше без нужды не лезть, особенно если опыта нет.

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

С 16 сентября:

я:

  • Причесал загрузчик нифов немного на основе своих наработок. Дополнительные данные и контроллеры именованных объектов теперь не стремно загружаются с технической точки зрения.
  • В оригинале был костыль — для спутников, использующих переменную companion из трибунала, если они не удовлетворяют никакому другому условию открытия конкретного окна при активации, теперь открывается окно инвентаря. Костыль теперь копируется, фиксит какой-то мод.
  • Большинство объектов кроме активаторов и предметов, которые невозможно активировать вообще теперь можно активировать, даже если они безымянные. Вместо имени в подсказках используется ID. Поведение более-менее теперь копирует оригинальное, а то были жалобы.
  • Почистил шейдер воды. Но вряд ли какая-то разница в производительности есть.
  • NiMaterialColorController теперь может контролировать конкретный цвет материала, как в оригинале, а не только Diffuse.
  • Больше ключевых слов теперь можно использовать как строковые аргументы в скриптах.
  • Глобальный/локальный конфиг (openmw.cfg конкретно) больше не должны иметь больший приоритет, чем пользовательский, и папки, в них обозначенные, не будут загружаться позже, чем таковые в пользовательском конфиге. Теоретически.
  • Исправлен шанс выпадения ничего для уровневых списков, которые находятся в уровневых списках. Теперь реален спаун некоторой Бладмуновской живности.

akortunov:

  • Из сундука с доказательствами (конфискованными украденными предметами) теперь никогда нельзя брать предметы без последствий.
  • Незаконное взаимодействие с предметом, который принадлежит фракции, теперь корректно изгоняет игрока из этой фракции
  • Подсказки с TFH показывают не номер ранга в гильдии, а название, если оно есть.
  • Выполнение скриптов продолжается после смерти игрока. То есть теперь реально его скриптом воскресить.
  • PCForce1stPerson/3rdPerson теперь действительно Force изменение перспективы камеры.
  • Клавиши быстрого переключения оружия/заклинания теперь не работают, когда окна инвентаря/заклинаний не включены (в чаргене, например).
  • Быстрые клавиши вообще не будут работать в чаргене.

Assumeru:

  • Любой объект, имеющий визуальное представление, теперь можно закрыть/открыть скриптовыми инструкциями Lock/Unlock или (если его можно активировать) вскрыть отмычкой. Включая актеров (в оригинале при вызове на них Lock вылет).
  • Растения и сундуки гильдий больше нельзя закрыть/вскрыть заклинанием.
  • Поправлено неопределенное поведение при загрузке удаленных топиков.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

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

Who are you?

 

I’m Alexei, a high school student from Central Russia.

Так это правда.

Ну что ж. Pay Respect!

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

Интервью с Capostrophic:

 

https://openmw.org/2019/interview-with-capostrophic/

Йеп, даешь EMBM в OpenMW (и хватит его уже фейковым бампом называть, ага)!
Ссылка на комментарий
Поделиться на другие сайты

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

 

Опыта в графике бы ещё набрать.

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

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :(  Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?
Ссылка на комментарий
Поделиться на другие сайты

 

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :(  Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?
  • Дистант ленд — сложна. Но можно просто повысить дальность прорисовки:
  1. Лезем в Documents\My Games\OpenMW
  2. открываем в блокноте settings.cfg
  3. в секции [Camera] в строке "viewing distance = хххх" ставим 20000
  4. Прописываем ручками секцию [Cells] и пишем:
  5.  

    [Cells]

    exterior cell load distance = 2

  6. Это не дистант ленд, просто повышаем дальность прорисовки и сдвигаем дистанцию подгрузки ячеек, если ваш компуктер — старое ведро, то фпс упадёт до плинтуса, если мощный, то просто упадёт.

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

 


 

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :( Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?

Как это - нету дистанд лэнда? На месте он, в конфигах включается только, причём тремя способами: "правильный", стрёмный и очень стрёмно-тормозной)))

 

 

Второй как раз описал morrow - повысить дальность прорисовки через конфиг, при этом в игре ползунок не трогать. Первый способ такой:

 

[Terrain]
composite map level = -3
composite map resolution = 1024
distant terrain = true
lod factor = 1.0
max composite geometry size = 4.0
shader = true
vertex lod mod = 0

 

А третий даст наилучшую картинку, но игра еле с места сдвинется: это, как опять же писал morrow, повысить кол-во загруженных ячеек.
exterior cell load distance = 2 - тут можно выставить и 3, и 5, но адские тормоза обеспечены. Зато ВСЕ объекты видны, так-то))))

 

Кстати, просьба к нашим уважаемым разработчикам: можете ли выложить (со ссылкой в шапке) для таких ламеров, как я, конфиг дефолтный с переведёнными на русский комментариями? Проще говоря, инструкцию по настройке. Я ковыряюсь, экспериментирую, конечно, но далеко не всё понимаю, зачем это нужно. Пока таких опций нет в основном интерфейсе, может, стоит нас научить, что и как менять? Ну и неплохо ещё к комментариям добавить рекомендации - стоит ли трогать, и почему...

 

Не мультипости, если хочешь что-то написать сразу после имеющегося поста - дописывай в него, а не отправляй новый. Scarab-Phoenix.

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

Фу, я протупил с дистант лендом.

 

Подробное описание (но тут не всё и на английском) — https://openmw.readthedocs.io/en/master/reference/modding/settings/index.html

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

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

Вы сможете оставить комментарий после входа в



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

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