OpenMW with Godot?

General discussion regarding the OpenMW project.
For technical support, please use the Support subforum.
Kravensky
Posts: 9
Joined: 22 Sep 2020, 08:33

OpenMW with Godot?

Post by Kravensky »

Godot is awesome by the way. As said elsewhere, had it been around when OpenMW started then it could have been used.
© psi29a

Sometime ago i've read that OpenMW probably will not support Vulkan, because replacing OpenGL with it will break compatibility with older hardware and supporting both API will increase maintaining cost (or something like this). And i've thought: why don't use upcoming Godot 4.0, which supports both Vulkan and OpenGL (GLES 2.0) for compatibility? And it doesn't require maintaining: it's what Godot team for. They'll probably be glad to have OpenMW on their side.

I understand it'll take some (many?) effort to move OpenMW from OSG (which probably be deprecate in VulkanSceneGraph favor) to GDNative, but won't it be worth it?
Chris
Posts: 1625
Joined: 04 Sep 2011, 08:33

Re: OpenMW with Godot?

Post by Chris »

Kravensky wrote: 22 Sep 2020, 20:56 Sometime ago i've read that OpenMW probably will not support Vulkan, because replacing OpenGL with it will break compatibility with older hardware and supporting both API will increase maintaining cost (or something like this). And i've thought: why don't use upcoming Godot 4.0, which supports both Vulkan and OpenGL (GLES 2.0) for compatibility?
The problem is more specifically with OpenSceneGraph. OSG uses OpenGL, so there's no way we can use Vulkan with OSG. There are options to use Vulkan, like the in-development VulkanSceneGraph or using it directly separately from OSG, but the amount of work to change to something else is currently too big for next to little gain. As it was, the only reason OpenMW switched from Ogre3D to OSG was because we were fighting against Ogre3D more than benefiting from it. OSG currently doesn't pose that kind of problem, so there's little reason to change away from it.

As VSG improves, and as OpenMW starts gaining new more modern rendering features, the potential gains from switching will increase making it more attractive to use Vulkan, but that's something to wait on for the future when that potential can be realized.
Kravensky
Posts: 9
Joined: 22 Sep 2020, 08:33

Re: OpenMW with Godot?

Post by Kravensky »

Old GPUs don't support Vulkan. Is there any plans for VSG to support OpenGL?
Also, Godot probably can make other stuff simpler. Physics, for example.

But actually i don't know, what i'm writing about. So good luck in any case.
User avatar
AnyOldName3
Posts: 2667
Joined: 26 Nov 2015, 03:25

Re: OpenMW with Godot?

Post by AnyOldName3 »

Lots of what Godot provides is sufficiently different to how Morrowind did the equivalent thing that we'd need a custom version of it anyway. If we had to start OpenMW again from scratch, it would probably be better to use Godot as a starting point, but it's definitely less work to keep going without it now we've got what we've got.
User avatar
Sslaxx
Posts: 233
Joined: 12 Aug 2011, 18:59
Location: Malvern, UK
Contact:

Re: OpenMW with Godot?

Post by Sslaxx »

One big thing - physics - is the same between both of them (Bullet3D). Of course, how they use Bullet is very different. Godot, being a generalised game engine, would need a lot of customisation - and some of it may be difficult for non-technical reasons (GPL vs MIT and the nature of the former license "contaminating" code, for one).

As said, doable but with a lot of pain (and not all of it technology related).
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: OpenMW with Godot?

Post by psi29a »

There is currently no need to go to Godot unlike the need to switch away from Ogre3D to OSG was a few years back.

OpenMW is married to OSG, for better or worse. It would need another divorce lawyer (another scrawl) to switch again to another rendering middle-ware. If there was another rendering middle-ware, then the next best thing would be VSG. The question then becomes, do we abstract things out so that the end-user can choose between OSG and VSG or just dive right into VSG and drop OSG support.

This, of course, is just mental masturbation though as there is no pressing reason to change, yet. We can revisit the topic in a few years.
korreckj328
Posts: 5
Joined: 27 Apr 2020, 06:43

Re: OpenMW with Godot?

Post by korreckj328 »

So this is just a thought, but my understanding is that if OpenMW wants to continue supporting the mac platform, that discussion about looking at something with vsg (if that even works with moltenvk) maybe needed since apple has a good chance of removing OpenGL soon.
User avatar
AnyOldName3
Posts: 2667
Joined: 26 Nov 2015, 03:25

Re: OpenMW with Godot?

Post by AnyOldName3 »

If Apple want to shoot themselves in the foot by dropping OpenGL before easy migration paths have been made available, that's their prerogative, but so far, it looks like there'll be more-or-less drop-in replacements from third parties before they make it a problem. Google have recently finished their Metal backend for OpenGL ES 2.0 mode with ANGLE (https://github.com/google/angle) so worst-case scenario, we use that with GL4ES, and just deal with OpenMW on Mac inheriting all the bugs of OpenMW on Android.

If we were commercial software, we might have considered licencing MoltenGL, which is a sister project to MoltenVK, but unlike its sibling, hasn't been adopted by the Kronos group, so isn't free.
korreckj328
Posts: 5
Joined: 27 Apr 2020, 06:43

Re: OpenMW with Godot?

Post by korreckj328 »

I hadn't heard of ANGLE, that's exciting to read about I'm going to have to do some reading about it in general now just to learn some more. Thanks for the info.
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: OpenMW with Godot?

Post by psi29a »

OpenGL on Mac will remain a thing for years to come, they are not removing support that have just deprecated it.
https://support.apple.com/en-gb/HT202823

What this means is that they will not invest any more time into updating their implementation of OpenGL and focus on their own stuff.
Post Reply