Now this is a bit off-topic but speaking of the Godot engine... I'd like to say that I'm very proud of my students Viktor and Leona, who used the engine to produce a retro-style platformer game called "Gedaria" as their final project this year. Leona provided the hand-drawn graphics and Viktor did the programming. Not bad for two 19-year-olds just coming out of secondary school!
Godot has dropped support for OpenGLES since version 2.1. 3.0 use vulkan like a lot of new software. So we need vulkan first.. but i think it will be really hard
So we need vulkan first.. but i think it will be really hard
As kas1e said in a post above, we don't really need the Godot engine because Irrlicht is good enough. When I said that "we're still waiting for Godot", I was of course making an obvious literary reference
Godot has dropped support for OpenGLES since version 2.1. 3.0 use vulkan like a lot of new software. So we need vulkan first.. but i think it will be really hard
As for Godot 4.x. They give no guarantees that GLES2 will be supported for v4.x+, but do say that others in the community might add it.
I have no idea which GLES3 features they need. Either way, GLES3 on AmigaOS 4 is a lot more feasible than Vulkan. We already support a little GLES3 (e.g., layout qualifiers in shaders).
Features such as instancing support (e.g., glDrawElementsInstanced()), are not available yet. That can be worked around, with a performance hit...
/usr/local/amiga/ppc-amigaos/SDK/local/newlib/include/SDL/SDL_opengl.h:46,
from COpenGLExtensionHandler.h:51,
from COpenGLExtensionHandler.cpp:9:
/usr/local/amiga/ppc-amigaos/SDK/local/common/include/GL/gl.h:796:23: note: previous declaration of ‘void glLogicOp(GLenum)’
796 | GLAPI void GLAPIENTRY glLogicOp( GLenum opcode );
| ^~~~~~~~~
In file included from /usr/local/amiga/ppc-amigaos/SDK/local/common/include/mgl/gl.h:363,
from /usr/local/amiga/ppc-amigaos/SDK/local/newlib/include/SDL/SDL_opengl.h:55,
from COpenGLExtensionHandler.h:51,
from COpenGLExtensionHandler.cpp:9:
/usr/local/amiga/ppc-amigaos/SDK/local/common/include/mgl/minigl.h:2106:13: error: ‘void glCopyPixels(GLint, GLint, GLsizei, GLsizei, GLenum)’ was declared ‘extern’ and later ‘static’ [-fpermissive]
2106 | MGLAPI void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
@Sinan You need to build irrliht from my repo, and you need to remove minigl from your SDK , i.e. there should't be directory "GL" with minigl inludes, but instead directory "GL" with gl4es includes.
Also check for which SDL you build it, if for SDL1, then be sure that SDL/SDL_opengl.h have commented out direct include of minigl.
If it will not help, i can upload clib2 version of irrlicht
I do not 100% remember if SDL2 version is all good and fine, as it was experemental more or less, and everything irrlicht based is still was and are SDL1 based because official irrlicht devs still on SDL1, and that SDL2 addon is my own stuff for testing/future stuff. But that you can test to build SDL2 version of irrlicht and few examples for SDL2 (examples build just like you say : make -f Makefile.amigaos4 SDL2=1)
Quote:
For Clib2 version, do I add -mcrt=clib2 in the makefile.amigaos4 ?
Yes, and if i remember right, one function need to be commented out as it present in clib2 itself, but when you will compile you will see which one/where.
CIrrDeviceSDL.cpp: In constructor ‘irr::CIrrDeviceSDL::CIrrDeviceSDL(const irr::SIrrlichtCreationParameters&)’:
CIrrDeviceSDL.cpp:89:9: error: ‘putenv’ was not declared in this scope; did you mean ‘setenv’?
89 | SDL_putenv("SDL_VIDEODRIVER=OS4");
| ^~~~~~~~~~
I managed to compile with commenting SDL_putenv.
I hope this is the correct way... Can you share your irrlicht clib2 so that I can compare ?