image ©Maxim Nikolaev

Проект — OpenMW, это попытка создать заново с нуля целиком мир Morrowind, с использованием новых технических возможностей и исправлением ошибок старой версии. Проект сделан кроссплатформенным и для запуска требует наличие данных оригинальной игры, но не использует её код или исполняемые файлы.
Также в проекте есть свободный редактор OpenMW-CS (Construction set) для изменения мира и создания своих квестов.

Вчера вышла новая версия 0.35.0, содержащая более 100 изменений и улучшений, и похоже это будет последняя версия на Ogre3D.
Скачать можно здесь. — https://openmw.org/downloads/
одно из наиболее важных изменений — появилась возможность продолжать начатую в оригинальном Morrowind игру. Полный список изменений и исправлений в changelog доступен тут — https://openmw.org/2015/openmw-0-35-0-released/

Команда разработчиков уже выжала практически все мощности движка Ogre 3D, и хотя реализовано настолько много, что игру даже уже можно проходить и ставить некоторые моды, но необходимость доработки поставила перед командой выбор — либо переписывать уже сам движок Ogre3D для себя, либо взять другой более подходящий движок. Когда проект только начинался много лет назад, Ogre3D очень подходил ему и ускорял развитие самого проекта, однако для отшлифовки игры и выпуска версии 1.0, где реализовано абсолютно всё задуманное, он, к сожалению, не подходит. Предстоящий выбор был тяжёл и ни один из вариантов не является лёгким.
Теперь движком будет OpenSceneGraph.

Почему же было решено провести замену? Вот список самых важных причин:

В свете всего выбран был OpenSceneGraph (OSG), который обещает высокую производительность и исполнение наших ожиданий.
Команда уже проверила, будут ли работать нужные им функции в движке.
Также новый движок поддерживает только OpenGL, который работает везде, а не OpenGL и DirectX, и теперь не требуется проводить двойную работу по проверке рендеринга в разных системах. К тому же многие разработчики OpenMW используют Linux, на котором нет DirectX, что делало невозможным их участие в некоторых задачах ранее.

Как долго будет меняться движок?

Код, работающий с движком, занимает 8% проекта, и поделён на разные подсистемы. Ogre3D это рендер, смена движка повлияет только на часть mwrender.

Что будет с старой версией движка на Ogre3d?

Некоторое время будут вноситься улучшения и поправки в обе версии OpenMW, так как портирование требует времени.

О прекращении поддержки DirectX.

Производительность на OpenGL будет намного лучше, чем OpenGL на Ogre3D, и чем DirectX, т.к. Ogre3D имел не самую лучшую поддержку OpenGL, и некоторые функции были доступны только при использовании одного из рендереров.

Какие платформы будут поддерживаться?

Linux, Windows, Mac OS X, Android. Все эти платформы будут поддерживаться.

Команда OpenMW благодарна авторам Ogre3D и надеется, что этот проект также продолжит развитие и будет улучшаться, а также благодарна людям, с которыми они общались на форуме проекта за поддержку и воодушевление с их стороны. Также особая благодарность Kojackowi за помощь в дебаге текстур DDS.

// LGro – Thanks to djalex for translation.

Wydanie 0.35.0 2015-02-17 - Vedyimyn

Zespół OpenMW ma zaszczyt ogłosić wydanie wersji 0.35.0! Miało to miejsce wczoraj. Nowe wydanie można pobrać, jak zwykle, tutaj, dla wszystkich platform. Obejmuje ono ponad 100 poprawek i udoskonaleń, co oczywiście przybliża nas jeszcze bardziej do wersji „1.0”. Z nowości: pojawił się zalążek narzędzia służącego do importowania zapisanych gier z oryginalnego Morrowinda, czar Uspokojenie  działa już poprawnie, NPC zmieniają swoje położenie przy przewijaniu czasu czekaniem/spaniem. Zmieniono parę nazw, na przykład OpenCS nazywa się teraz OpenMW-CS. Zmieniono okno wyboru plików w launcherze (docenimy każdą opinię na jego temat). Poniżej pełna lista zmian, obrazująca, jak wiele pracy włożono w to wydanie. Miłej lektury!

Znane problemy:

Lista zmian:

Zapraszamy do komentowania tutaj.

OpenMW 0.35.0 Released! 2015-02-16 - raevol

The OpenMW team is proud to announce the release of version 0.35.0! Grab it from our Downloads Page for all operating systems. This release includes over 100 bug fixes and improvements, and brings our “1.0” release much closer. Some notable features include the beginnings of an ess-Importer command line tool to import save games from vanilla Morrowind, proper handling of the Calm effect, and AI fast-forward functionality. Read the full changelog and bask in the glory of the huge amount of work that has gone into this release… Two more things: several OpenMW utilities have been renamed as of this release, including OpenCS being renamed to OpenMW-CS. And we would really appreciate any feedback on the launcher’s Data File selection UI. Enjoy!

Known Issues:

Changelog:

Want to leave a comment?
Zmiana silnika na OpenSceneGraph 2015-02-16 - Vedyimyn

Ogre3D to silnik graficzny wykorzystywany przez OpenMW od samego początku. Teraz zespół ogłasza rezygnację z niego.

W okresie naszych wersji alpha, Ogre3D był niezwykle użyteczny i umożliwiał szybki rozwój projektu. Dzięki Ogre3D, możesz już teraz grać w mniej więcej kompletnego Morrowinda poprzez OpenMW, co jest dużym wyczynem.

Jednakże, żeby doprowadzić OpenMW do stanu w pełni wyszlifowanego, i żeby dodać pozostałe kilka funkcji, musielibyśmy albo utworzyć swoją wersję Ogre3D (forka), dopasowaną do naszych potrzeb, albo zmienić silnik. Obie opcje są zadaniami trudnymi. Po długiej dyskusji wybraliśmy drugą opcję.

Dlaczego zmiana?

Nie ma jednego prostego powodu. Złożyło się na to kilka czynników.

Pierwszą blokadą dla wydania OpenMW 1.0 jest mała liczba klatek na sekundę w porównaniu z oryginalnym Morrowindem. Wynika to z pewnych właściwości Ogre3D 1.x, które stanowiły często wąskie gardło. W Ogre3D 2.x zostało to poprawione, toteż początkowym pomysłem było przeportowanie OpenMW na nowe wydanie tego silnika. Byłoby to duże przedsięwzięcie, ponieważ pod względem interfejsu programistycznego zaszły spore zmiany. Jest jednak kilka problemów z tym związanych:

Poza tym jest jeszcze kilka spraw, które stanowią problem od dłuższego czasu:

Nowy silnik

W świetle powyższych uwag, rozejrzeliśmy się za alternatywami i znaleźliśmy OpenSceneGraph, które świetnie spełnia nasze oczekwania, oferując do tego wysoką wydajność. Dokładnie sprawdziliśmy, czy ma wymagane funkcje, lub czy da się je łatwo dodać poprzez wtyczkę. W niedalekiej przyszłości przedstawimy harmonogram prac nad przeportowywaniem gry. Będziemy informować na bieżącą o ich postępie.

Dużą różnicą jest to, że OpenSceneGraph (w skróce OSG) wspiera tylko OpenGl. Ogre3D wspierał też DirectX, co jest dużym atutem. W idealnym świecie moglibyśmy zatem oferować wybór między jednym i drugim bez dodatkowej pracy z naszej strony. Niestety świat nie jest idealny. Nastręczyłoby to trudności w pisaniu shaderów (podejście zależy od systemu renderowania). Poza tym wiele błędów ujawniało się tylko przy użyciu Direct3D. Wspieranie tylko OpenGL raczej nas cieszy, bo w tej sytuacji nie musimy wspierać dwóch różnych systemów. Poza tym większość naszych developerów używa Linuksa, co uniemożliwia testowanie Direct3D.

Wstępne FAQ:

Q: Jak długo potrwa zmiana?

A: Dobra wiadomość jest taka, że Ogre3D to tylko silnik renderujący, i tylko do tego jest przez nas używany. Kod OpenMW jest podzielony na różne podsystemy, a zmiana silnika wpłynie co najwyżej na jeden nich, to jest „mwrender”. Jest to jakieś 8% kodu z naszej bazy.

Q: Co się stanie tymczasem z OpenMW, które używa OGRE? Dalszy rozwój (nowe funkcje), tylko poprawki błędów, czy kompletne zignorowanie?

A: Będziemy normalnie dalej rozwijać gałąź OGRE, dodając nowe funkcje i poprawki, tak długo jak port na OSG będzie na etapie rozwoju. Wiemy, że w OpenMW gra wiele osób, pomimo, że to tylko wersja alpha, więc ta ciągłość jest dla nas istotna.

Q: Co z platformami, na których zadziała OpenMW (Linux, Windows, Mac OS X, Android)?

A: Będziemy dalej wspierać je wszystkie.

Q: Galeria na stronie OpenSceneGraph jest raczej skromna. Jeśli ten silnik jest taki super, to czemu nie robi się gier z jego użyciem?

A: Pod względem możliwości OSG dorównuje Ogre3D (a nawet go przewyższa), zatem ta „skromność” galerii OSG jest dla nas zaskoczeniem. Twórca tego silnika, Robert Osfield, ma swoją teorię na to (wolne tłumaczenie, oryginalna wypowiedź jest tutaj: „As a general note”…):

Generalnie, jeśli chodzi o gry i konflikt OSG vs Ogre, podejrzewam, że to kwestia korzeni każdego projektu i kultury w jakiej się rozwijał. OSG wywodzi się ze świata VisSim i przez lata wyrósł na przenośną bibliotekę graficzną ogólnego przeznaczenia. Społeczność zgromadzona wokół niego zajmowała się profesjonalnymi symulacjami, wizualizacjami, rzeczywistością wirtualną i sprawami naukowymi. Ogre natomiast od początku był tworzony jako API dla gier, choć może być używany do wielu innych rzeczy niż gry. Jednakże to do gier jest wykorzystywany najczęściej.

Q: Mam obawy co do zakończenia wsparcia dla Direct3D, bo to przy jego użyciu mam więcej klatek na sekundę w porównaniu z OpenGL.

A: Jesteśmy świadomi różnicy w wydajności między jednym i drugim. Wynika ona z kiepskej implementacji OpenGL w Ogre3D 1.x. Valve pokazał (tutaj), że poprawna jego implementacja gwarantuje wydajność na poziomie Direct3D, a nawet większą.

Ostatnie podziękowania

Wiele zawdzięczamy Ogre3D i mamy nadzieję, że dobrze się temu projektowi odwdzięczyliśmy przyczyniając się do wielu poprawek.

Chcemy podziękować wszystkim, którzy pracowali nad Ogre3D i jakkolwiek przyczynili się do jego rozwoju, za ich wielki wysiłek w to włożony. Wszystkim, z którymi pisaliśmy na forum, za wsparcie i zachetę z ich strony. Szczególnie dziękujemy Kojackowi za pomoc w debugowaniu tekstur DDS.

Zapraszamy do komentowania tutaj.

To Ogr(e)! 2015-02-15 - Vedyimyn

Ostatnio niecierpliwie wyczekiwaliśmy Ogre 2.0, silnika używanego w OpenMW. Druga wersja jest kamieniem milowym w jego rozwoju. Pozwoli nam to uczynić OpenMW jeszcze lepszym niż przedtem. Niestety dostosowanie OpenMW do nowej wersji silnika nie jest kwestią poprawki paru linijek kodu. Ogre 2 różni się znacznie od Ogre 1, a OpenMW musi razem z nim ewoluować.

Część problemów dotyczy „sklejania” części ciała tak, żeby stanowiły całość. Jak wiadomo, postaci w Morrowindzie składają się z torsu, głowy, rąk i nóg. Muszą także być w stanie trzymać przedmioty, co także oznacza „sklejanie”. Jako że takiej możliwości jeszcze nie ma w Ogre 2, implementacja tego silnika pozbawiła grę istotnej funkcjonalności.

Ostatni post Scrawla na jego stronie dotyczy problemów takich jak ten powyżej, więc jeśli interesujesz się takimi technikaliami, koniecznie zajrzyj tutaj.

Oczywiście poza pracą nad silnikiem, pracowano też nad samym OpenMW. Naprawiono ponad 100 bugów z trackera oraz dodano parę funkcji. Teraz, jeśli „przewiniesz czas” czekając lub śpiąc, NPC będą w innych miejscach niż byli przedtem (w końcu chodzili w międzyczasie, czyż nie?).

Zbliżamy się do wydania 0.35.0 dość szybko, więc założono już blokadę kodu. Obecna praca skupia się na wydaniu następnym, w którym już poprawiono tor ruchu słońca. Ktoś zauważył, mianowicie Yann GOUY, że słońce nie wschodzi i nie zachodzi we właściwych miejscach. Księżyce, co prawda, też mają tę przypadłość, ale muszą trochę poczekać na naprawę. W wersji 0.36.0 dodano też możliwość ubierania zwłok.

Pełna lista zmian dla 0.35.0 jest już napisana. Jest to kwestia paru dni, zanim się pojawi, więc miejcie oko na naszą stronę internetową. Albo zlećcie to aptowi/yumowi/pacmanowi…

Zapraszamy do komentowania tutaj.