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

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


MEZON

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

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

Wiki

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

Репозиторий с исходным кодом на GitHub
IRC: #openmw на irc.freenode.net
Полезные ссылки:
Wiki-статья о совместимости модов для Morrowind'а с OpenMW
Руководство по портированию ретекстуров в OpenMW
OpenMW на Youtube
OpenMW на ModDB
OpenMW на GitLab
Диздоки планов развития после 1.0
 
Сторонние проекты, основанные на OpenMW:
TES3MP - реализация мультиплеера для OpenMW.
Тема OpenMW на 4PDA - здесь можно найти сборки OpenMW для Android 5+ и гайды по решению проблем.

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

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

Что такое OpenMW?

 


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

  • полноиграбельная реализация Morrowind.
  • кроссплатформенность, запуск на Windows, Linux, MacOS X.
  • поддержка уже существующего контента, включая Tribunal и Bloodmoon и львиную долю созданных пользователями плагинов.
  • значительная модифицируемость: изменение игровой механики, создание новых эффектов заклинаний, доработка ИИ и т.д.
  • исправление ошибок системного проектирования: "грязные" GMST записи в плагинах, проблема "удвоения" в сейвах.
  • улучшение интерфейса и игрового дневника.
  • улучшение игровой механики, физики, боевой системы и ИИ.
  • поддержка мультиплеера.
  • улучшение графики путем поддержки функциональности современного аппаратного обеспечения.

Это очень амбициозный список, и ещё многое предстоит сделать, чтобы эти задачи стали реальностью.
OpenMW выпущен под лицензией GPLv3, весь исходный код написан с нуля.

В чём разница между "старым" и "новым" OpenMW?

Старый OpenMW был написан на языке D с небольшими кусками кода на C++. Позже главный разработчик решил полностью перейти на C++, потому весь код проекта был заново переписан.

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

И да, и нет.

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

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

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

Статус

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

Поддерживаемые платформы

Проект переписан на чистом C++ (с поддержкой стандарта С++17), потому должен работать на большинстве платформ, поддерживаемых OpenSceneGraph и остальными инструментами, в том числе на Windows 7 (или новее), Linux, MacOS X, FreeBSD и Android. Windows XP и более старые версии не поддерживаются, т.к. их не поддерживают используемые библиотеки и компиляторы.
Если вы хотите помочь портировать OpenMW на другие платформы, мы будет рады видеть вас на нашем форуме.

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

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

  • Языки программирования: C++, GLSL
  • Графика: OpenSceneGraph
  • Физика: Bullet
  • Звук: OpenAL
  • Ввод-вывод: SDL2
  • Скриптовый язык: Самостоятельная реализация скриптов Morrowind
  • Интерфейс: MyGUI
  • Поиск пути для ИИ: Recast & Detour

Код загрузки ESP/ESM и BSA был написан с нуля, но с помощью документации, созданной сообществом. Кроме того, и код загрузки NIF был написан с помощью имеющейся в сети информации.
Особая благодарность NIFLA/NifTools!

Главный разработчик Marc Zinnschlag (Zini) о OpenMW 1.0:
Целью OpenMW 1.0 является полная замена Morrowind.exe. Не больше, не меньше. Это также означает, что практически все улучшения оригинальной игры на данный момент исключены. Я настаивал на этом подходе, так как это самый безопасный способ завершить версию 1.0 наиболее быстро.
Релиз 1.0 будет очень важным этапом, ведь OpenMW наконец станет полноценной игрой. Мы надеемся, что OpenMW 1.0 привлечет много внимания, новых разработчиков и активных тестеров.

В некоторых случаях мы можем отклонятся от оригинала, даже до релиза 1.0.

Во-первых, я не считаю нужным копировать любые нефункциональные особенности. Бессмысленно имитировать сбои и различные ошибки. Равно как и ограничения игры (к примеру, глубину вложенности скриптов).
В общем, мы имеем полную свободу действий со всем, что не работает в Морровинде. Обратите внимание, что это не относится к какой-либо плохой игровой механике. Плохая не значит нефункциональная.

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

В-третьих, мы не обязаны использовать те же технические детали реализации, что и в Морровинде. Для игрока всё выглядит аналогично оригиналу, но принципы работы "под капотом" могут быть совсем иными.

И, наконец, в-четвертых. В крайних случаях мы можем сознательно отходить от канонов Морровинда, если это делает реализацию проще или перспективнее. Идеальная копия не наш вариант, так как есть моменты совершенно без будущего, которые после релиза 1.0 пришлось бы удалять и заново переписывать.

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

 

 

1. Можно просто играть и отсылать багрепорты
2. Можно тестировать разрабатываемый код, до того, как он попадёт в основную ветку. Там же можно вести обсуждение и предлагать изменения.
3. Можно тестировать моды. Основная цель - выявить проблемы с совместимостью.
4. Можно исследовать механики оригинального движка, особенно актуально в области тонкостей работы скриптов.
5. Можно обновлять Wiki.

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

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

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

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

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

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

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

UnPinned posts

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

 

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

Вот поэтому я и предлагал кому-нибудь сделать на русском, поскольку инглиш тут технический, надо уметь его правильно понять. Я вот в переводчик закидывал, что-то понял, что-то - нет. Иногда меняю параметры некоторые, не вижу изменений ни в чём.)))

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

Спасибо. Правда одного добавления вышеописанной секции [Terrain] оказалось мало, чтобы созерцать дистант ленд надо ещё добавить:

[Camera]
viewing distance = 26000

Производительность порадовала. Только хочется теперь какого-то шейдера для ныряния под водой, как в MGE.

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

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

С 26 сентября:

 

akortunov:

  • Поведение AiActivate примерно соответствует оригинальному без MCP теперь. Более адекватный вариант пакета будет реализован позже. Много позже.
  • Доведено до ума не-стакование скриптовых предметов (исправляет проблемы с скриптом формы имперского легиона, возникающие, если забрести к Сироллусу Саккусу, у которого заскриптованных кирасы в инвентаре 2).
  • Предметы с разными владельцами теперь могут стакаться (убирает возможность возникновения несколько разных стаков предметов у торговцев по необъяснимым игроком причинам). При добавлении предмета в инвентарь объекта или актёра владелец убирается, он не используется для краж, используется актер или владелец объекта. Одна неожиданная проблема была обнаружена, могут быть другие.
  • Все зачарованные предметы могут автоматически перезаряжаться, не только те, которые находятся у игрока в инвентаре.
  • Вычисления скорости ветра (в т.ч. в GetWindSpeed) теперь соответствуют оригинальным. Дождь теперь выглядит немного иначе, но у нас недостаточно инфы, нужной для корректной реализации этого момента.
  • Путешествующие актеры и актеры без пакетов ИИ научились приветствовать игрока, если они удовлетворяют другим условиям приветствий. И проигрывают нужный идл. Путешествующие актеры не встанут как вкопанные, правда, а продолжат движение после окончания приветствия.
  • Большинство настроек дождя из Morrowind.ini теперь используются.

unelsson:

  • Редактор больше не портит данные о неисследованных тайлах карты в записях ландшафта, они правильно копируются из файла, который был отредактирован.
  • Поправлено рисование на ландшафте базовой версией текстуры.

elsid:

  • Актеры теперь имеют меньший шанс застрять в открывающейся двери, от которой они пытаются отойти (они будут двигаться в большем количестве направлений).

я:

  • Проверка на отсутствие анимации замаха более корректна. Если её нет, как может быть в реплейсерах анимации или в анимациях существ, сила атаки случайна, а не максимальна. Т.е. существа теперь тоже могут наносить урон пропорциональный времени замаха, если у них эта анимация есть (прямоходящие, например).
  • Результат Random теперь число с плавающей запятой (т.е. 50.000, а не целое число 50), как в оригинальном движке. Практическая ценность в том, что его можно делить на целое число и правильно получать дробное число.
  • Зачарования экипированных предметов теперь работают и на существах с инвентарями, а не только на NPC.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

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

С 21 октября:

 

Naratzul:

  • Добавлена поддержка Visual Studio 2019.

psi29a:

  • По сути убрана поддержка Visual Studio 2015, т.к. планируется переход на C++17.

я:

  • В NiTexturingProperty можно использовать произвольное количество текстур, а не исключительно 7 (заполненных и незаполненных слотов). Правда, больше 7 обрабатываться не будет, это включает текстуры декалей кроме одной.
  • Исправлено направление метели. Она теперь движется не перпендикулярно направлению от Красной горы к игроку, а с юга на север, как должна.
  • Исправлено направление неба. Оно теперь всегда движется в одном направлении с частицами бурь или с юга на север.
  • Убрана поддержка зачарований "при ударе" для луков и арбалетов. Её в оригинале нет и она баланс ломала. Зачарования не срабатывают и, как в MCP, зачаровывать такое оружие нельзя.
  • Строки типа "105" теперь могут быть обработаны парсером выражений как числа. Позволяет исправить компиляцию нескольких скриптов в Illuminated Order.
  • Настройка prevent merchant equipping переработана (во второй раз после первой попытки Андрея) и работает теперь примерно как в Morrowind Code Patch.

akortunov:

  • Щиты теперь опционально на спину убираются, если есть скелеты соответствующие.
  • Идл-анимация теперь сбрасывается только при движении, что позволяет двемерским призракам её правильно использовать.
  • Добавлена поддержка букв, не входящих в ASCII, в ID объектов. Улучшает поддержку Arktwend.

unelsson:

  • Форму ландшафта в редакторе теперь можно полноценно редактировать.

И тонны фиксов регрессий. Переходим на подготовку 0.46.0. Может даже в этом году выпустим.

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

А где их взять и как врубить сие?

Страница с самым последним билдом для Win (обновляется ежедневно)

Ссылка на последний билд всегда в верху есть.

И нужен спец скелет где-то.

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

Страница с самым последним билдом для Win (обновляется ежедневно)

Ссылка на последний билд всегда в верху есть.

И нужен спец скелет где-то.

Я именно про скелет и спрашивал, плюс - о необходимости включения спец. опции в конфиге, как это сделано для убирания оружия.

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

Я именно про скелет и спрашивал, плюс - о необходимости включения спец. опции в конфиге, как это сделано для убирания оружия.

shield sheathing = true

 

https://yadi.sk/d/rrnAKxQFZnWoBg

 

Наверное так.

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

shield sheathing = true

 

https://yadi.sk/d/rrnAKxQFZnWoBg

 

Наверное так.

спасибо! Оно даже работает))

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

AMD Ryzen 1600 + Radeon HD7770 + Vivec Plazas Exteriored дают 60-75 кадров при стандартной дальности обзора. Вот это я понимаю мечты сбываются! :thumbsup:

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

AMD Ryzen 1600 + Radeon HD7770 + Vivec Plazas Exteriored дают 60-75 кадров при стандартной дальности обзора. Вот это я понимаю мечты сбываются! :thumbsup:

Без теней и травы столько? У меня не райзен, а FX 8-ядрёный, видяха такая же, но я там модов косметических накрутил, да тени врубил, так что 70 фпс с этим зоопарком не возникают)))

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

Без теней и травы столько? У меня не райзен, а FX 8-ядрёный, видяха такая же, но я там модов косметических накрутил, да тени врубил, так что 70 фпс с этим зоопарком не возникают)))

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

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

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

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

Distance limit явно отвечает за дистанцию отрисовки теней, а как правильно перевести Fade start multipler, то есть, для чего конкретно нужна настройка?

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

а как правильно перевести Fade start multipler, то есть, для чего конкретно нужна настройка?

Там же в описании сказано - это процент от дистанции прорисовки теней, на которой они "угасать" начинают для плавного перехода.

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

Там же в описании сказано - это процент от дистанции прорисовки теней, на которой они "угасать" начинают для плавного перехода.

Спасибо. Переводчик гугла не очень понятно всё это переводит, я ему скармливал конфиг по частям, и 50% особо понятными не стали. Предпочитаю всё же переспросить)

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

IMontstorespawn сколько месяцев в опенмв, работает так же? Изменено пользователем Larkin
Ссылка на комментарий
Поделиться на другие сайты

IMontstorespawn сколько месяцев в опенмв, работает так же?

iMonthsToRespawn используется, насчёт "так же" - не знаю, пока жалоб вроде не было.

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

С 29 октября:

 

я:

  • Ещё немного оптимизирован поиск ESM-записей в их хранилище, занимает 3 раза быстрее теперь (итого в примерно 5 раз быстрее, чем в 0.45.0). Сейвы грузятся немного быстрее.
  • StopSound принимает некорректные аргументы громкости и высоты звука, исправляет скрипты в Артквенде.
  • ForceGreeting игнорирует ненужные и строковые, и численные аргументы, исправляет скрипты в Арктвенде.
  • Position принимает дополнительный строковый аргумент, который игнорируется. Снова скрипты в Арктвенде.
  • Добавлены настройки теней в лаунчер.
  • Добавлены настройки weapon/shield sheathing в лаунчер.
  • Подправлены некоторые настройки по умолчанию. Тени будут выглядеть намного лучше, но они сильнее будут нагружать проц и немного иначе будут нагружать видеокарту. В разных условиях может быть лучшая или худшая производительность. Текстуры далекого ландшафта вновь используются только для относительно удаленных кусков ландшафта, потому что слишком отличаются от обычных.
  • Захардкоженная быстрая клавиша 10 (рукопашный бой) больше не загружается и не сохраняется из сейвов.
  • Скриптовая функция SameFaction теперь работает и не ломает скрипты.
  • GetDetected/GetLineOfSight/Cast/StartCombat работают правильно, если не были найдены актеры, соответствующие заданному ID.
  • Пустые названия экстерьерных ячеек правильно сохраняются, а не исключаются из записей.

akortunov:

  • Парсер скриптов полноценно научился в Юникод, которым скрипты перекодируются. С этим + несколькими моими правками Арктвенд теперь можно не патчить люто.
  • Актеры-спутники и с пакетом Travel, близкие к своей цели, правильно замедляются. Можно увидеть по стражнику в интро.
  • Используются трансформации NiSwitchNode.
  • Персонажи с пакетом Activate перестанут открывать окно диалога или контейнера, если попытаются активировать другого персонажа (необязательно игрока).
  • Убрано чрезмерное затемнение/выход из затемнения при загрузке сейва, сделанного в интерьере, когда игра была только запущена.
  • Положение магических снарядов при запуске зависит от высоты персонажа.
  • Границы ячеек, включенные ToggleBorders, правильно очищаются и больше не становятся причиной вылета при закрытии игры.

Stomy:

  • Добавлена поддержка назначения колесика на большинство действий (смену оружия, например)

bzzt:

  • Добавлено опциональное максимальное расстояние прорисовки теней и плавные переходы к этой границе. На самом деле набор моих правок сильно по мотивам его правок.

elsid:

  • Персонажи будут открывать двери, только если они действительно находятся на их пути.
  • Много фиксов генерации навмешей.

И фиксы регрессий, тысячи их. Масштабирования виджетов, выборки ландшафта в редакторе, показа оружия и щитов, скорости движения игрока, саммонов, ругани Coverity и т.д. и т.п.

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

Здрасьте. Знаю, что не всю инфу показываю, какая нужна, скрин вообще случайно сделал... Периодически вот такое ловлю 

https://yadi.sk/i/Bq7_xM_yk3J8Mg

 

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

 

Билд самый последний, но было и раньше. AMD FX8350, Radeon HD 7770, 20Gb Ram

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

Понятно, спасибо... а то я только на гитлабе искал...

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

Понятно, спасибо... а то я только на гитлабе искал...

Короче, старый CMake не переваривает новую версию Boost. Нужно юзать CMake 3.15.3 или выше.

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

У меня установлена 3.15.5

У меня тоже, и с ним сборка проходит нормально. С 3.14 сборка валилась.

Другие ошибки, связанные с Boost, не встречал.

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

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

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

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

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

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

Войти

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

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

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