OpenGL 3.x/4 - Any plan?
Hello everyone. Is any support for OpenGL 3.x/4 planned? I'd like to use Blender 2.8 with this.
Thanks in advance for any help.
Yes, I do have plan for OpenGL 3.x support (using GLES 3.x or not), but I have things to do before starting that (like more texture support in shader, and dynamic GLES loader, among other things).
@ptitSeb Is dymanic GLES loader mean precompiled shaders , or its something different ? Precompiled shaders are need it too for make some games to not have "pauses" , for example games as Lugaru, FrickingShark (when running without shaders) and probabaly some others as well.. As i say before i will gladly donate for it 100$ with no probs :)
Nope, that's completly different. Dynamic Loading will not be usefull in AmigaOS4 case. It's more on Linux to be able to load GLES3.0 or GLEs2.0 or GLES1.1 dynamicaly (like if there is many context, or to be able to try GLES3.0 first then fallback on GLES2.0 if not availbale).
The Shader Cache is something else. I may try to work on something later, still a bit unsure of were I want to go with it.
I see from commits you start to works on precompiled shaders : omg, cool ! thanks !
@kas1e yes, but I'm not finished yet. By the way, on Amiga, how to I access use "home" folder, so I can create/read the precompile shader archive?
@ptitSeb We didn't have there "home:" thing , usually what is in home: for unixes , we put in "PROGDIR:" (so root direcotry from where binary was run). For example in case of gl4es, it can be then "PROGDIR:.gl4es_cached_shaders" , or something.
Ok, but that mean there will be 1 cache per program using gl4es. Isn't there some common place instead? If there is nothing, I can go with PROGDIR:.gl4es.psa
Yeah..
But then its probabaly ok to have 1 cache per gl4es programm, as they will be different for each programms / states / etc ?
There will be many common state across the program. But 1 cache per program is OK I guess.
@kas1e : for Precompile Shader Archive, the extension GL_OES_get_program will probably be needed (and so the glProgramBinary(...) / glGetProgramBinary(...) functions). I don't think those are supported for now on Amiga.
That no problems, if they not in our gles2, i will ask and Daniel for sure will add it
Also, is there an aglGetProcAddress(...) function now? Or something similar, to get function pointer from optionnal extension. I think it was implemented some time ago... But I haven't implemented it in gl4es. So can I use something like IOGLES->aglGetProcAddress("glProgramBinary") to get function pointer for glProgramBinary?
@ptitSeb Not that long ago Daniel added that function, and that what he have wrote about in the readme:
- new function
void* aglGetProcAddress(const char* name);
which of course returns a pointer to the respectively named function.
On Amigas this is not really necessary, because we only have one single OpenGLES2 driver,
namely this one, with a well defined and fixed set of functions per version.
However, it sometimes may simplify porting to have this mechanism.
Ok @kas1e , with 6a0e80e03919241265b4ac5c98785422eee5c773 I have added support for this in gl4es.
Yeah, i see .. so .. as far as i see precompiled shaders is still wip (?) but i need already ask Daniel about those 2 function you mention before.
Yeah, i see .. so .. as far as i see precompiled shaders is still wip (?) but i need already ask Daniel about those 2 function you mention before.
Yes, still working on it, but it will need those 2 functions to work.
Aha, sended mail to Daniel , hope he can do it fast. Also tried to build latest gl4es code and fail, but probabaly we need to continue in another ticket :) will post error in amigaos4 port ticket
Coincidentally, I arrived here one day shy of a year since the last comment.. any closer to OpenGL3.x? No pressure, just asking out of curiosity 👍