OpenMW support for other games: Oblivion, Skyrim, Fallout and more

Feedback on past, current, and future development.
User avatar
cc9cii
Posts: 523
Joined: 28 Mar 2013, 04:01

Re: Elder-scrolls IV Oblivion

Post by cc9cii »

I compile most of the dependencies from source, including zlib, libpng, Freetype, SDL, MyGUI, Ogre, etc. Even Qt. This might be too much for most people. I'll have a go at setting up a ubuntu vm to see if the code will compile.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Elder-scrolls IV Oblivion

Post by psi29a »

Hey cc9cii... should OpenMW-master catch up in terms of the things you are working on, would you be more inclined to spend more research time in using OpenMW-master instead of OpenMW-0.36 "Ogre3D edition"?

Or are you on that particular branch because you like Ogre3D? :D
1Zero
Posts: 38
Joined: 09 Feb 2020, 18:44

Re: Elder-scrolls IV Oblivion

Post by 1Zero »

cc9cii wrote: 18 Jun 2020, 01:18 I compile most of the dependencies from source, including zlib, libpng, Freetype, SDL, MyGUI, Ogre, etc. Even Qt. This might be too much for most people. I'll have a go at setting up a ubuntu vm to see if the code will compile.
Alright, there appears to be no way around compiling some libraries on my own. I probably just throw all the files into Visual Studio and create a whole new project, then cross compile it for Windows and Linux. Or I change my original plans and put the scripting updates for Oblivion into the current OSG based branch of OpenMW and maybe your changes can be ported for OSG as well.

Looking through your commits
https://github.com/cc9cii/openmw/commit ... 50c503bb99

The changes to the plugin file format are fairly easy to integrate into master, while the facegen library is dependent on OGRE3D
User avatar
Ace (SWE)
Posts: 887
Joined: 15 Aug 2011, 14:56

Re: Elder-scrolls IV Oblivion

Post by Ace (SWE) »

cc9cii wrote: 18 Jun 2020, 01:18 I compile most of the dependencies from source, including zlib, libpng, Freetype, SDL, MyGUI, Ogre, etc. Even Qt. This might be too much for most people. I'll have a go at setting up a ubuntu vm to see if the code will compile.
I still have the old OpenMW development environment setup guide that did Ogre and MyGUI, it still talks about VS2013 but should mostly be valid even today;
https://gist.github.com/ananace/a25557c ... e-setup-md
User avatar
cc9cii
Posts: 523
Joined: 28 Mar 2013, 04:01

Re: Elder-scrolls IV Oblivion

Post by cc9cii »

Well I got openmw to compile using gcc 9.3.0 under Ubuntu 20.04 LTS, but... the linker is having kittens. Apparently it might have something to do with https://gcc.gnu.org/onlinedocs/libstdc+ ... l_abi.html which means at least one of the third party libraries was built with an old version of gcc. In other words all the dependencies has to be compiled for linux as well. i.e. there's just as much pain under Linux as Windows in terms of getting dependency libraries
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Elder-scrolls IV Oblivion

Post by psi29a »

Ran into that as well at work during integration, so until older libs are compiled with newer gcc, then you'll need to pass along this macro: _GLIBCXX_USE_CXX11_ABI=0 so that your openmw can link against older libs.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Elder-scrolls IV Oblivion

Post by AnyOldName3 »

If you try and use someone else's CMake-generated solution file, it will always be significantly more work to trick it into working on your machine than it would be just to get CMake working in the first place. The big thing is that it'll call back into CMake to regenerate itself if it's not up-to-date (and other times for other reasons) so you'll need to have a working CMake setup for that to work.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Elder-scrolls IV Oblivion

Post by AnyOldName3 »

Huh, there was a whole extra page of posts after the one I was responding to.
1Zero
Posts: 38
Joined: 09 Feb 2020, 18:44

Re: Elder-scrolls IV Oblivion

Post by 1Zero »

AnyOldName3 wrote: 18 Jun 2020, 15:17 If you try and use someone else's CMake-generated solution file, it will always be significantly more work to trick it into working on your machine than it would be just to get CMake working in the first place. The big thing is that it'll call back into CMake to regenerate itself if it's not up-to-date (and other times for other reasons) so you'll need to have a working CMake setup for that to work.
You mean the ProjectSection Dependencies in a solution file?
https://docs.microsoft.com/en-us/visual ... ew=vs-2019
Visual Studio doesn't care where they are coming from.
I can prepare for example MiniSAT with CMake without any trouble but the solution file for VS contains no indication how they have been generated, the GUID's refer to the unique identifier for this solution + project settings.
I suppose you refer to the vcxproj files which do in fact contain library dependency path, but aren't too difficult to update manually.
Either way, I will get it to compile eventually, either by creating a whole new project with all of cc9cii's files or following the CMake guide Ace thankfully posted.
Then again, maybe it would be better to update master instead of the older Ogre3D fork c99cii is working on? Unfortunately, there is little sense in integrating a scripting environment for a later game as long as the assets can't be loaded, which his fork achieves.
User avatar
cc9cii
Posts: 523
Joined: 28 Mar 2013, 04:01

Re: Elder-scrolls IV Oblivion

Post by cc9cii »

I'm a little confused about the scripting work - will you be generating a bunch of empty methods that needs to be implemented? Like, all these and more from OBSE, etc?
Post Reply