* initial changes
* add GLAD_ES loader
* Implement basic es compatibility header
* re-add accidentally deleted break
* Add GLES BC7 extension to glad and improve extension support report
* fix some enum mappings
* Use the ARB name for geo shader check
* Add es espand shader includes
* Fix glbufferstorage mapping
* fix some gl errors on opengl es
* Enable GL_CLIP_DISTANCE
* Add format conversions
* add bgba 8888 to rgba 8888 converter
* disable GLAD_GL_ARB_timer_query
* Properly handle wgl + opengl es on windows
* initial enable imgui gles
* add GL_BGR to GL_RGBA conversion
* inform opengl es on menu
* small corrections to the es header
* small refactor of glTexSubImage3D
* remove expandincludes, existing code already did that better
* change default graphic values for opengl es
* compile imgui with opengl es 3 on linux
* allow qtfred to run on opengl es
* improve es compatibility header and remove shader precision quantification
* add compiler hints
* remove unused structs
* Fix imgui crashing on windows with gles, use angle lib
* Do not use MSAA under OpenGL ES, at least for now
MSAA will need an alternative path for GL ES using GL_EXT_multisampled_render_to_texture and GL_EXT_multisampled_render_to_texture2
* add missing profile handler
* cleanup
* revert color_attachment_4/5 fbo workarounds
* Adjustments to log output and enable GL_BLEND
* Implement glGetQueryObjectui64v on es layer
* Fix deferred and decals support
Also added glGetTexImage(), glQueryCounter() and some additional comments
* Revert changes to default values of graphics options
* Minor improvements to glTexSubImage3D()
Fix heap corruption with smaller mipmaps due to decompression output
always being a 4x4 block rather than actual mipmap size. It's necessary to
pad the allocated data size to allow for the overflow.
Fix heap corruption with DXT1 due to using improper data offsets for the type.
Fix data offsets not always taking the depth value into account.
Adjust code for slight increase in decode performance.
Update bcdec to 0.98
FSO doesn't appear to use this any longer. And even when it was enabled the
requirements made it largely useless anyway. Removing to clean up cfile a
bit and so we don't have to keep maintaining it.
Adds bcdec lib to convert compressed DDS textures to RGBA based on what the
system supports. BC7 if BPTC extension not supported, DXT? if S3TC extension
not supported.
Should support cubemaps and volume textures but those were not tested.
Addtional changes:
- remove indexed DDS support since it had bugs but didn't work anyway
(R8 should be used instead)
- fix issues with volume textures (nothing to test with)
- remove old compression support flags as they are now obsolete
Fixes#4920
newer OpenGL extension support
add GL_ARB_texture_rectangle support for non-power-of-2 textures as interface graphics
add cubemap reading and writing support to DDS loader
fix bug in DDS loader that made compressed images with mipmaps use more memory than they really required
add support for a default envmap named "cubemap.dds"
new mission flag "$Environment Map:" to use a pre-existing envmap
minor cleanup of compiler warning messages
get rid of wasteful math from gr_set_proj_matrix()
remove extra gr_set_*_matrix() calls from starfield.cpp as there was no longer a reason for them to be there
clean up bmpman flags in reguards to cubemaps and render targets
disable D3D envmap code until it can be upgraded to current level of code
remove bumpmap code from OpenGL stuff (sorry but it was getting in the way, if it was more than copy-paste it would be worth keeping)
replace gluPerspective() call with glFrustum() call, it's a lot less math this way and saves the extra function call
clean up some DDS error messages and other minor bug/comment fixes
move bitmap stuff from pstypes.h, it makes more sense here anyway
start of 8-bit palette conversion, needs work but is here for WMCoolmon to look at and play with
- use VM_* macros for bmpman since it didn't seem to register the memory correctly (temporary)
- a little "stupid" fix for dds bitmap reading
- fix it so that memory is released properly on bitmap read errors
- some cleanup to model texture loading
- allow model textures to get released rather than just unloaded, saves bitmap slots
- bump MAX_BITMAPS to 4750, should be able to decrease after public testing of new code