This is libSOIL (Simple OpenGL Image Library) with modifications to the Makefile to let it install nicely on Mac OS X. By default, libSOIL.a will be installed in /usr/local/lib and the libSOIL headers will be installed in /usr/local/include/SOIL.
Forked from https://github.com/smibarber/libSOIL and incorporated changes from https://github.com/fenbf/SOIL_ext (commit 739ec6499f7befce10d3b6c37519c6b7fed6efea), which includes:
- [in progress] Added option to use immutable texture storage
- When possible (when extension is supported) library can create texture using glTextureStorage and then call glTexSubImage.
- See more here OpenGL wiki
- [done] Mipmap generation using glGenerateMipmap
- Original library scaled image to be POT and then used custom procedure to generate mipmaps. This can take some time.
- This change uses glGenerateMipmapEXT (if GL_EXT_framebuffer_object extension is available). This way Soil can create mipmaps for NPOT textures and use hardware support.
- New flag is added: SOIL_FLAG_GL_MIPMAPS. It can be passed to the SOIL_load_OGL_texture* procedures. If the extension (GL_EXT_framebuffer_object) is not supported then function uses the same process as when passing SOIL_FLAG_MIPMAPS.
- [done] upgraded to the version 1.33 of stb_image
- stb_image_write.c/.h were created. Those files contain missing functionality that was cut from the newer version of stbi (cut in 1.22)
- [done] Using only Modern OpenGL functionalities (when possible)
- CLAMP_TO_EDGE instead of GL_CLAMP
- glGetStringi instead of glGetString(GL_EXTENSIONS)
Clone this repo, make, make install. To install elsewhere, change the INCLUDEDIR and LIBDIR in the Makefile.
Public domain.