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

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

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

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

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

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

UnPinned posts
26 минут назад, Марк К. Марцелл сказал:

Ещё вопрос - какой консольной командой можно вызвать техническую информмацию? ToggleDebugText не работает.

Никакой. БОльшая часть отладочных команд Морровинда не реализована, т.к. это трудоёмкая задача, и за 16 лет существования проекта никто ими и не интересовался. С багами лучше сразу на багтрекер идти. Насколько я помню, что сворачивание и разворачивание игры считается за смену разрешения экрана на 0x0 и обратно, потому консоль и сбрасывается (т.е. проблема известная).

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

В 07.03.2024 в 12:00 PM, Марк К. Марцелл сказал:

Заодно отловил баг - альттаб из игры ресетит положение и размер окна консоли. Проверил инвентарь - там этого бага нет.  

Если что, баг вроде обходится отключением функции "minimize on focus loss" в "settings.cfg".

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

В 3/10/2024 в 10:39 AM, akortunov сказал:

Если что, баг вроде обходится отключением функции "minimize on focus loss" в "settings.cfg".

Спасибо. А что эта функция вообще даёт?

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

13 минут назад, Марк К. Марцелл сказал:

Спасибо. А что эта функция вообще даёт?

SDL2 уменьшает размер окна OpenMW при Alt-Tab-e (на Windows он становится нулевым), чтобы окно экран не занимало. С отключенной опцией окно OpenMW останется, просто курсор его покинет.

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

  • 1 месяц спустя...

Обзор основных изменений в проекте за март и апрель:
1. Лаунчер теперь умеет работать в "портируемом" режиме (когда он не привязан к директории My Games/OpenMW). Полезно, когда установлено сразу несколько разных экземпляров Морровинда, и нужно уметь запускать их все.
2. Окошки в интерфейсе игры теперь нельзя вынести за пределы экрана, как и на оригинальном движке (при условии, что минимальный размер окошка меньше, чем общий размер окна игры).
3. В сборках на Windows теперь используется Qt 6.6, а не Qt 5.15. Это позволит утилитам из состава OpenMW корректнее выглядеть со включенным масштабированием интерфейса в Windows.
4. Иконки в этих приложениях переведены с PNG на SVG, так что они теперь будут масштабированы корректно при изменении масштаба интерфейса операционной системы.
5. На Windows добавлена поддержка цветов текста при выводе в терминал, поддерживающий расцветку текста.
6. Обработка хитбоксов (в первую очередь летающих существ) приближена к оригинальной игре.
7. Через Lua теперь можно менять награду, назначенную за голову главного героя.
8. Через Lua теперь можно работать с числовыми параметрами ИИ (Flee, Fight, Alarm).
9. В Lua унифицирован API для работы с разными справочниками ESM-объектов. Теоретически может сломать некоторые существующие Lua-моды.
10. В Lua добавлен API для чтения YAML-файлов (в т.ч. JSON-файлов как их подмножества). Полезно для чтения файлов настроек Lua-модов.
11. В Lua доработан API для работы с магическими эффектами. Теперь можно читать свойства заклинаний и их эффектов, а также добавлять персонажу кастомные эффекты без предварительного создания соответствующей ESM-записи заклинания. Полезно для модов, добавляющих персонажам динамические баффы или дебаффы в зависимости от ситуации.
12. В Lua добавлен API для чтения атрибутов ESM-записей рас.
13. Через Lua теперь можно управлять режимом работы курсора (используется при управлении через геймпад). Полезно для модов, добавляющих игровой интерфейс для геймпадов.
14. В Lua добавлена возможность сохранять данные на время работы всего приложения, без их сброса в случае загрузки сохранения (например, текущее состояние плейлистов музыки в какой-нибудь кастомной системе музыки).
15. Профилировщик ресурсов (F4) теперь выводит больше информации (она разбита на страницы, переключение между ними через повторное нажатие F4).
16. Доработано чтение некоторых видов ресурсов из более новых игр (например, карт нормалей и файлов материалов BGSM/BGEM из Fallout 4).
17. Размер внутриигрового окна консоли не сбрасывается при Alt-Tab-е (по запросам местных трудящихся).

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

2 минуты назад, Kronis сказал:

Здравствуйте как сделать лаунчер на русский?

На 0.49 он сам включается, если в операционной системе русский язык включен.

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

В 4/28/2024 в 1:22 PM, akortunov сказал:

Обзор основных изменений в проекте за март и апрель:
1. Лаунчер теперь умеет работать в "портируемом" режиме (когда он не привязан к директории My Games/OpenMW). Полезно, когда установлено сразу несколько разных экземпляров Морровинда, и нужно уметь запускать их все.
2. Окошки в интерфейсе игры теперь нельзя вынести за пределы экрана, как и на оригинальном движке (при условии, что минимальный размер окошка меньше, чем общий размер окна игры).
3. В сборках на Windows теперь используется Qt 6.6, а не Qt 5.15. Это позволит утилитам из состава OpenMW корректнее выглядеть со включенным масштабированием интерфейса в Windows.
4. Иконки в этих приложениях переведены с PNG на SVG, так что они теперь будут масштабированы корректно при изменении масштаба интерфейса операционной системы.
5. На Windows добавлена поддержка цветов текста при выводе в терминал, поддерживающий расцветку текста.
6. Обработка хитбоксов (в первую очередь летающих существ) приближена к оригинальной игре.
7. Через Lua теперь можно менять награду, назначенную за голову главного героя.
8. Через Lua теперь можно работать с числовыми параметрами ИИ (Flee, Fight, Alarm).
9. В Lua унифицирован API для работы с разными справочниками ESM-объектов. Теоретически может сломать некоторые существующие Lua-моды.
10. В Lua добавлен API для чтения YAML-файлов (в т.ч. JSON-файлов как их подмножества). Полезно для чтения файлов настроек Lua-модов.
11. В Lua доработан API для работы с магическими эффектами. Теперь можно читать свойства заклинаний и их эффектов, а также добавлять персонажу кастомные эффекты без предварительного создания соответствующей ESM-записи заклинания. Полезно для модов, добавляющих персонажам динамические баффы или дебаффы в зависимости от ситуации.
12. В Lua добавлен API для чтения атрибутов ESM-записей рас.
13. Через Lua теперь можно управлять режимом работы курсора (используется при управлении через геймпад). Полезно для модов, добавляющих игровой интерфейс для геймпадов.
14. В Lua добавлена возможность сохранять данные на время работы всего приложения, без их сброса в случае загрузки сохранения (например, текущее состояние плейлистов музыки в какой-нибудь кастомной системе музыки).
15. Профилировщик ресурсов (F4) теперь выводит больше информации (она разбита на страницы, переключение между ними через повторное нажатие F4).
16. Доработано чтение некоторых видов ресурсов из более новых игр (например, карт нормалей и файлов материалов BGSM/BGEM из Fallout 4).
17. Размер внутриигрового окна консоли не сбрасывается при Alt-Tab-е (по запросам местных трудящихся).

Шикарный список. Местные трудящиеся вас искренне благодарят.

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

  • 1 месяц спустя...

Доброго времени суток! Скажите, пожалуйста, что-нибудь слышно про openmw 0.49, а то я уже, честно говоря, заждался)

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

10 часов назад, Варвур Сарети сказал:

Доброго времени суток! Скажите, пожалуйста, что-нибудь слышно про openmw 0.49, а то я уже, честно говоря, заждался)

Нет, не слышно. К тому же, с релиза 0.48 меньше года прошло.

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

22 часа назад, akortunov сказал:

Нет, не слышно. К тому же, с релиза 0.48 меньше года прошло.

Так... Если выпускать по 0.01 в год, мы получим релиз ОпенМВ 1.0 к 2075-му. Похоже, пора начинать вести здоровый образ жизни.

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

В 12.06.2024 в 10:43 AM, Марк К. Марцелл сказал:

Так... Если выпускать по 0.01 в год, мы получим релиз ОпенМВ 1.0 к 2075-му. Похоже, пора начинать вести здоровый образ жизни.

На случай, если кто-то воспримет это слишком серьёзно, напоминаю, что 0.49 - это не "49% от 1.0", а "49-й крупный релиз с начала разработки". Релиз 1.0 может выйти как после какого-нибудь 0.53, так и после 0.146. А может никогда не выйти.

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

4 минуты назад, doxkraft сказал:

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

Список есть в шапке темы.

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

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

Обзор наиболее важных изменений за май-июнь:

1. Добавлена возможность читать данные диалогов через Lua.
2. В Qt-приложения из состава OpenMW добавлена поддержка тёмных тем на Windows 10 и 11.
3. Если персонаж игрока проваливается сквозь текстуры в интерьере, то игра телепортирует его обратно.
4. Обработка музыки переехала в Lua-скрипты, что должно позволить создавать свои музыкальные системы.
5. Значительно переработана обработка источников освещения.
6. Lua умеет обнаруживать, когда MWScript-овые скрипты ставятся в очередь на выполнение через StartScript.

Как обычно, также в наличии множество менее важных правок, которые не имеет смысла выделять отдельно.

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

Отличные новости!

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

4. Можно вешать на разные локации разные музыкальные темы, я правильно понял?

5. Любопытно. Что поменялось? Производительность? Затухание на расстоянии? Количество освещаемых мешей?

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

4 часа назад, Марк К. Марцелл сказал:

Отличные новости!

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

4. Можно вешать на разные локации разные музыкальные темы, я правильно понял?

5. Любопытно. Что поменялось? Производительность? Затухание на расстоянии? Количество освещаемых мешей?

3. Игра проверяет, что игрок находится ниже самого нижнего объекта в локации.
4. Да, если кто-то из мододелов напишет такие скрипты.
5. Там Капо вот такое накрутил:

"По заветам wareya убрал зависимость выбора источников света от расстояния к камере и их видимости. При достижении предела источников на объект они теперь определяются на основе расстояния к объектам, на которые назначены. Сильно сокращает частоту неприятного и очевидного переназначения источников света. Источники света, используемые для объекта, определяются один раз на все камеры. По непонятным причинам у кого-то еще и улучшается производительность (по моим замеркам в экстерьерах она немного падает).
По собственным соображениям убрал ненужный верхний предел освещенности от одного источника света, в оригинале нет такого. Полное освещение все еще ограничено сверху."

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

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

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

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

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

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

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

Войти

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

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

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