GL 4.1 in a different branch

GL 4.1 in a different branch

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Post Reply
sanguinariojoe
Posts: 26
Joined: 19 Apr 2016, 21:11

GL 4.1 in a different branch

Post by sanguinariojoe »

OK, following the suggestion of Hokomoko, I'm moving this discussion to the forum... May you please add a link to this topic in the issue report?
https://springrts.com/mantis/view.php?id=5650

That's pretty clear to me that asking for GL 4.1, while you are not prepared to do that, is not a good movement at all, since there are a number of devs affected by the change. The most remarkably ones are:

1.- People with old hardware. See here: https://springrts.com/mantis/view.php?id=5620
2.- Linux people with MESA drivers

Well, gajop and kloot, I'm not trying to annoy/bother you but trying to make you understand this situation can be avoided (partially, at least).

IMO, the best approach is creating a new branch to start developing with GL 4.1, integrating that later in the main develop branch. You are not maintaining two versions, you are just developing in a different branch while the changes are ready to be deployed.

Alternatively, you can create a frozen branch, with the current state of the engine, where just GL 3.1 is required, conveniently adding a note somewhere (in the compilation guide, probably).
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: GL 4.1 in a different branch

Post by gajop »

Alternatively, you can create a frozen branch, with the current state of the engine, where just GL 3.1 is required, conveniently adding a note somewhere (in the compilation guide, probably).
104 stable will require GL3.1
IMO, the best approach is creating a new branch to start developing with GL 4.1, integrating that later in the main develop branch. You are not maintaining two versions, you are just developing in a different branch while the changes are ready to be deployed.
But it is maintaining two versions. If one is developing in the GL 4.1 branch, they need to constantly apply fixes from develop. This can be a hassle, and it can become a really big issue the more the two versions diverge.

For some things though it can be fine to use a separate branch, but that's probably for completely new features that can be developed as isolated modules. I think those tend to be rare.

PS: You weren't annoying me, but you were phrasing mantis issues in what seemed like a personal argument. We are all aware of the issues of people with incompatible hardware, but eventually engine will have to move forward, and those users will be left with the option of using an older engine or upgrading their hardware/drivers.
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: GL 4.1 in a different branch

Post by Kloot »

you can create a frozen branch, with the current state of the engine
We call those "releases", which are long-term stable snapshots.
I'm not trying to annoy/bother you but trying to make you understand this situation can be avoided
You clearly formed your opinion based on a development build created before the 104 release was discussed a week ago, then started 1) assuming things and 2) stating the obvious without first bothering to check ahead (like reading the meeting minutes) for updates on the situation. *That* is annoying.
sanguinariojoe
Posts: 26
Joined: 19 Apr 2016, 21:11

Re: GL 4.1 in a different branch

Post by sanguinariojoe »

You clearly formed your opinion based on a development build created before the 104 release was discussed a week ago
In fact my bad, I did not even knew you are collecting the minutes. I like it!

Keeping GL 3 until 104 is released is quite good, no doubt. Anyway, I'm still thinking you should not ask for GL 4.1 before getting all ready. If you are not happy working in a different branch, then can you maybe consider allowing to override the minimum GL version rule in springsettings.cfg meanwhile?

I mean, the new engine would take a significant amount of time, right? With the current approach, a lot of people (like me) could not even try to help until such work is not finished
aeonios
Posts: 202
Joined: 03 Feb 2015, 14:27

Re: GL 4.1 in a different branch

Post by aeonios »

Why 4.1? GL3.3 has a lot more features that are relevant to spring than GL4.1 does. GL3.3 would allow using drawInstanced for animated units and possibly mixed point/linear sampling so that we could implement PCSS soft shadows in a single shader pass. GL4.1 adds some features that make occlusion culling more efficient but occlusion culling is pretty much irrelevant to the majority of spring games. GL4.1 does allow for some things like advanced motion blur, but that stuff is few and far between and also rather peripheral.
Post Reply

Return to “Engine”