aboutsummaryrefslogtreecommitdiff
path: root/backends/graphics/opengl/texture.cpp
AgeCommit message (Collapse)Author
2018-08-26OPENGL: Use premultiplied alpha for color-keyed cursorsBastien Bouclet
This fixes colour fringing on keyed cursors when using filtering. Fixes Trac#10594.
2016-05-03OPENGL: Assure color attributes for shader pipeline are always set.Johannes Schickel
2016-03-16OPENGL: Flag texture dirty on allocation.Johannes Schickel
2016-03-16OPENGL: Store logical texture dimensions in GLTexture.Johannes Schickel
2016-03-16OPENGL: Implement CLUT8 look up as Pipeline.Johannes Schickel
2016-03-16OPENGL: Move pipeline code to pipelines/.Johannes Schickel
2016-03-16OPENGL: Do not allow direct access to Context::activePipeline.Johannes Schickel
2016-03-16OPENGL: Implement texture drawing in Pipeline instead of Surface.Johannes Schickel
2016-03-16OPENGL: Make shader/framebuffer part of pipeline state.Johannes Schickel
2016-03-16OPENGL: Introduce abstraction for framebuffer.Johannes Schickel
This allows us to use various framebuffer settings easily. Now the GPU accelerated CLUT8 surface implementation does not need to query former framebuffer state anymore.
2016-03-16OPENGL: Introduce ShaderManager to handle builtin shaders.Johannes Schickel
2016-03-16OPENGL: Introduce pipeline abstraction to cleanup code.Johannes Schickel
2016-03-16OPENGL: Support GLSL based CLUT8 look up for GLES2+.Johannes Schickel
2016-03-16OPENGL: Accelerate palette lookups with shaders.Johannes Schickel
This currently is limited to GL contexts.
2016-03-16OPENGL: Introduce simple abstraction for surfaces.Johannes Schickel
This is basically an interface extracted from Texture without any knowledge about any actual implementation, except for copyRectToTexture, fill, and dirty rect handling. These are convenient helpers.
2016-03-16OPENGL: Cleanup. Remove Texture::getHardwareFormat.Johannes Schickel
2016-03-16OPENGL: Move color key handling for CLUT8 to TextureCLUT8.Johannes Schickel
2016-03-16OPENGL: Move max texture size information to Context.Johannes Schickel
2016-03-16OPENGL: Create new abstraction for GL texture objects.Johannes Schickel
2016-03-16OPENGL: (Partly) move context specific handling to Context.Johannes Schickel
This does not include (most) shader setup, and projection matrices yet.
2016-03-16OPENGL: Handle destruction gracefully when no context is setup.Johannes Schickel
2016-03-16OPENGL: Add support for shaders with GL contexts.Johannes Schickel
2016-03-16OPENGL: Support GLES2 contexts.Johannes Schickel
2016-03-16OPENGL: Support RGB555 for OpenGL ES output.Johannes Schickel
This mode should *not* be used by any new engines/code. If someone is going to use it and says it works with the OpenGL output, please make them wear a red uniform and beam them onto a remote planet.
2016-03-16OPENGL: Rename GLCALL to GL_CALL.Johannes Schickel
2016-03-16OPENGL: Resolve OpenGL functions on run-time.Johannes Schickel
Formerly we relied on static linkage. However, in the presense of modern OpenGL (ES) implementations it is not easily identifable which library to link against. For example, on Linux amd64 with nVidia drivers and SDL2 setup to create a GLES 1.1 context one would need to link against libGL.so. However, traditionally GLES 1.1 required to link against libGLESv1_CM.so. To prevent a huge mess we simply resolve the OpenGL functions on run-time now and stop linking against a static library (in most cases). GLES support needs to be enabled manually on configure time for now. Tizen changes have NOT been tested.
2016-03-16OPENGL: Define GLCALL in opengl-sys.h.Johannes Schickel
debug.h is now always included and all calls should be made through GLCALL.
2016-03-16OPENGL: Refactor GL extension handling slightly.Johannes Schickel
2014-02-12OPENGL: Use GLfloat for draw cooridnates in Texture.Johannes Schickel
2014-02-11OPENGL: Release old texture name before creating a new one.Johannes Schickel
This prevents any texture name leaks (and thus memory leaks) on recreateInternalTexture calls.
2013-11-20OPENGL: Fix texture re-allocation checkWillem Jan Palenstijn
This fixes a crash when opening the menu in the SCI Laura Bow 2 intro.
2013-10-19OPENGL: Limit maximum Surface size to maximum texture size.Johannes Schickel
This is mostly aimed at old graphics chips. For example, wjp's old laptop only supports 1024x1024 textures but has a 1280x800 screen. Switching to fullscreen would create a bigger overlay than supported. Now it will get limited to an smaller resolution and then scaled too. Alternatively we could think of tiling surfaces into textures. But then handling scaling would be more complicated since it might result in artifacts on texture tile borders.
2013-10-19OPENGL: Implement dirty rect handling.Johannes Schickel
2013-10-19OPENGL: Add new generic OpenGL (ES) backend.Johannes Schickel
This backend is based on ideas of the old OpenGL backend, of the Android GL backend and of the iPhone GL backend.