Support many versions of OpenGL
[Long term idea - maybe
v4.x
]
Inspired by godot why don't blender go with the same idea and only unlock features that match user choice of opengl
This may bring
blender 2.x
<= 2.7
to live again with all droped features with only refactoring
Also would help if you decided to go for "Everything is AddOn" ( I would post my idea about this in a separate issue )
First issue here : I hope I posted in the right place
comming from blender.chat/channel/blender-coders kB25}
7 Comments
OpenGL is a minimum requirement. If your system has a higher version blender will utilise this. For example compute shaders and shader storage. Going back to an earlier version is not possible due to the big differences inside OpenGL.
A big difference between a game engine and blender is that fix quality in blender must be consistent. Otherwise your scenes will look differently on other hardware. This is acceptable in game engines, but not when doing production work.
Currently metal and vulkan is in development. Eventually opengl will be phased out, but not in the near future. What I want to say that what you are proposing doesn’t match blender as a content creation suite and is a large investment for to my knowledge not that much of benefits.
Just a side comment . The plan is to bump minimum requirement to OpenGL 4.3 in blender 3.5. We could not do this earlier due to Limited support of OpenGL on macOS. As metal is now introduced we can now safely increase the minimum requirement
[1]
The benefit I see is't for now but for next major versions Let's say someone build a new lib like OpenGL
2.7to3.xWhat I'm tring to say is :
build once and reuse[2]
Of course that's per project feature, and could be specified in blender preferences
[3]
Other thing is the elemenation of a hardware limitaion, so blender could run on more devices with any version, however the functions runnig are only related to hardware
[4]
Think of it as every thing as addon - and addons depend on base and graphic addons
[5]
I know it's a very long thing to go with and would need a new structure of blender builds
that's why I'm saying it's for LTS not for the current version
ofcourse it's hard to refactor it now, and ofcourse it's more hard to do whenever any new driver arrives or any new major version with more features
This could be a draft for now
But it's a thing to consider if you would like blender to continue and include forks over time, not to be replaced by any fork for a hardware limitation
I'd post another post for "Everything is an Addon" to complete my vision as we couldn't disscuss two separate things here
4.3WOW !I remember the latest is
4.6Sorry, but what your proposing isn’t realistic and assumes that blender doesn’t have systems in place that cope with multiple gl backends. My advice if you want to propose something such a low level change is to do more research on the topic and the implications.
There is a difference between a minimum supported version and the version that is actually used. So if you have a 4.6 capable system since blender 2.6 it is already being used.
Yes, I mean minimal to have 4.3 is limiting hardware more
seems my proposal here goes aginst blender foundation sight
However It comes from the fact that some droped features are really separated as forks like UPBGE
I didn't want blender to be a bunch of forks, branches and versions for every use case
but a base, with addons for every separate need ( for blender or use cases )
I wish I could develpe in languages blender writen with to refactor it myself
Any way it's just an idea