Version 1.2 - 2021/04/17
General:
- updated GL4ES Documentation
- updated all libs, see below for the changelog.
- everything compiled with GCC 10.3.0
GL4ES (updated till commit done Apr 15, 2021):
-
Improve glGetError() handling
-
Set default GL version to 2.1 (instead of 2.0) for GLES2.0 backend
-
GLSL version 1.2 is default now, instead of GLSL 1.1
-
Added ARB_vertex_program and ARB_fragment_program, which is major work by itself and some of the notable changes are:
- Added support for Program Matrix from ARB_vertex_program extension
- include support for GradARB variant for texture2D and textureCube built-in functions
- Added ARL and relative addressing support
- Added the ARB vertex shader attribute vertex.attrib
- Added the ARB parameter
state.matrix.texture
- Added support for ARB_fog_linear
- Added support of ARB_precision_hint_nicest option
- Added 'OPTION ARB_position_invariant' to ARB_vertex_program
- Added sign support for single-value params
- Added support for direct constant in ARB language
-
Improved FPE with more compatibility fixes
-
Improved Handling of DXTc textures + added some support for DXTc with sRGB textures
-
Improve handling of partial mipmapped textures
-
Added support for Texture LOD access in Fragment Shaders
-
Increased maximum Texture Unit support to 16 (from 8)
-
Added support for a program without Vertex Shader
-
Some fixes for programs that switch GLX Context frequently.
-
Fixes and improvements in fpe_shaders (less array access)
-
Added support for Clipping Plane in custom shaders (help OpenMW water reflection)
-
Added support for multiple FBO attachment (if hardware support it)
-
More optimization on real VBO handling
-
Proper handling of gl_ClipVertex
-
AmigaOS4 specific changes (by ptitSeb and Daniel):
- Fix: typo in pixel.c, pixel.g was not set
- Cleaning up Logging
- Introduced define GL4ES_COMPILE_FOR_USE_IN_SHARED_LIB so gl4es can be used inside of minigl.library (minigl4gl4es) amiga shared library.
- Additionl extensions GL_MGL_packed_pixels (old Amiga flavour of GL_EXT_packed_pixels) and GL_EXT_compiled_vertex_arrays (note the s at the end, a common typo...)
- build info can be disabled by silence-define
- FPS drawing in its own function so that it can be called from outside in case aglSwapBuffers is not called by the client.
- Improved env var handling.
- Added a BigEndian only fastpath for GL_INT_8_8_8_8_REV <-> GL_UNSIGNED_BYTE conversion (not more slow-route)
- Fixed some conversion involving GL_INT_8_8_8_8(_REV) and GL_BGRA that used 2 passes where 1 would be enough
- Added a few more AmigaOS4 specifics texture format handling, so no conversion needs it at all. Thanks to Daniel for ogles2.library v3.1 where he added new, aos4 only, formats.
GL_AOS4_texture_format_RGB332
GL_AOS4_texture_format_RGB332REV
GL_AOS4_texture_format_RGBA1555REV
GL_AOS4_texture_format_RGBA8888
GL_AOS4_texture_format_RGBA8888REV
-
And a gazillion of improvements, fixes, dealing with regressions and new features. An actual changelog is MUCH bigger, and there is only a summary. For the full list go to https://github.com/ptitSeb/gl4es/commits/master
SDL1_gl4es (updated till commit has done Jan 3, 2021, all work done by Capehill):
- Recompiled with GCC 10.3.0
- Merged latest SDL1 official changes, many changes, but nextly count only amigaos4 specific fixes:
- Enabled joysticks support (some missing fix from 2018)
- Change initialization procedure: some apps do not call SDL_Init, but initialize some subsystem only
- Fix issue with HWSURFACE blits
SDL2_gl4es (updated till commit done on Apr 10, 2021, all work done by Capehill):
- Recompiled with GCC 10.3.0
- Merged latest SDL2 official changes, a lot of changes, but nextly count only amigaos4 specific fixes:
- Fixed fast calling of SDL_SetWindowSize + SDL_SetWindowPos combo
- Implement SDL_OpenURL
- Open screens with SA_LikeWorkbench + smart refresh mode
- More controller mappings
- Add Drag n Drop support
- Avoid blitting over window borders
- Use vertex mode when doing Composite to avoid scaling factor issues
- Do endian conversion for textures in order to fix the opengles2 render
- Use BMA_ACTUALWIDTH instead of BMA_WIDTH to calculate the renderer output size
- Use texture blending mode from command queue and simplify composite setup
- Change SYSREQ to PRINTSCREEN
- Fix crash in thread creation
- Fixed compiler warning
- Fix Calling SDL_GetTicks before SDL_Init crashes
- Fixed SDL timer thread consuming CPU
- Reset keyboard state during full screen toggle
- Fix SDL_GetPrefPath
- Add native thread and timer support for AmigaOS 4
- Improve texture filter setup
- Fix VSYNC handling during renderer creation
GLU_gl4es
- No functional changes, only recompiled with GCC 10.3.0.