Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-03-23 | OPENGL: Fix black screen for some GL implementations with shaders. | Johannes Schickel | |
For compatibility location 0 is used to decide whether fixed function style vertex information is used in old GL contexts. In some cases drivers might assign the color information to be passed through attribute 0. This caused the array attribute status for location 0 to be disabled and resulted in wrong vertex data to be used. | |||
2016-03-16 | OPENGL: Log extensions available on debuglevel 5+. | Johannes Schickel | |
2016-03-16 | OPENGL: Flag texture dirty on allocation. | Johannes Schickel | |
2016-03-16 | OPENGL: Do not keep uniform state for nonexistent uniforms. | Johannes Schickel | |
2016-03-16 | OPENGL: Store logical texture dimensions in GLTexture. | Johannes Schickel | |
2016-03-16 | OPENGL: Introduce convenience wrappers for get*Location in Shader. | Johannes Schickel | |
2016-03-16 | OPENGL: Do not hardcode any uniform/attribute handling in Shader. | Johannes Schickel | |
2016-03-16 | OPENGL: Let Shader store the uniform state. | Johannes Schickel | |
2016-03-16 | OPENGL: Only set projection matrix once on pipeline activation. | Johannes Schickel | |
2016-03-16 | OPENGL: Properly deactivate old pipeline. | Johannes Schickel | |
2016-03-16 | OPENGL: Make shader pipelines use fixed shaders. | Johannes Schickel | |
2016-03-16 | OPENGL: Implement CLUT8 look up as Pipeline. | Johannes Schickel | |
2016-03-16 | OPENGL: Move pipeline code to pipelines/. | Johannes Schickel | |
2016-03-16 | OPENGL: Only allow Pipeline to switch active Framebuffers. | Johannes Schickel | |
2016-03-16 | OPENGL: Do not allow direct access to Context::activePipeline. | Johannes Schickel | |
2016-03-16 | OPENGL: Implement texture drawing in Pipeline instead of Surface. | Johannes Schickel | |
2016-03-16 | OPENGL: Make shader/framebuffer part of pipeline state. | Johannes Schickel | |
2016-03-16 | OPENGL: Don't prefix maxTextureSize variable for consistency. | Johannes Schickel | |
2016-03-16 | OPENGL: 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-16 | OPENGL: Introduce ShaderManager to handle builtin shaders. | Johannes Schickel | |
2016-03-16 | OPENGL: Introduce pipeline abstraction to cleanup code. | Johannes Schickel | |
2016-03-16 | OPENGL: Support GLSL based CLUT8 look up for GLES2+. | Johannes Schickel | |
2016-03-16 | OPENGL: Detect NPOT support for GLES. | Johannes Schickel | |
For GLES1+ there exists GL_OES_texture_npot, which indicates that there is NPOT support. GLES2 always had (limited) NPOT support, which is all we require, thus we always enable it. | |||
2016-03-16 | OPENGL: Simplify shader support checks. | Johannes Schickel | |
2016-03-16 | OPENGL: Keep feature state for all contexts and log them. | Johannes Schickel | |
2016-03-16 | OPENGL: Handle GLES2 and GL shaders uniformly. | Johannes Schickel | |
GLES2 requires precision qualifiers to be set and allows use of precision qualifiers. For GLES2 we define a default precision now. Since precision qualifiers are not supported in the GLSL version we use for GL, we introduce compatibility #defines. | |||
2016-03-16 | OPENGL: Accelerate palette lookups with shaders. | Johannes Schickel | |
This currently is limited to GL contexts. | |||
2016-03-16 | OPENGL: 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-16 | OPENGL: Cleanup. Remove Texture::getHardwareFormat. | Johannes Schickel | |
2016-03-16 | OPENGL: Move color key handling for CLUT8 to TextureCLUT8. | Johannes Schickel | |
2016-03-16 | OPENGL: Fix texture format for BGR565. | Johannes Schickel | |
2016-03-16 | OPENGL: Move max texture size information to Context. | Johannes Schickel | |
2016-03-16 | OPENGL: Create new abstraction for GL texture objects. | Johannes Schickel | |
2016-03-16 | OPENGL: Remove (some) unused GL definitions. | Johannes Schickel | |
2016-03-16 | OPENGLSDL: Request "standard" GL contexts. | Johannes Schickel | |
Compatibility profiles only exist in modern OpenGL and we request an ancient version. | |||
2016-03-16 | OPENGL: Unify shader implementation for GL and GLES2. | Johannes Schickel | |
2016-03-16 | OPENGL: Slightly cleanup programmable pipeline handling. | Johannes Schickel | |
2016-03-16 | OPENGL: (Partly) move context specific handling to Context. | Johannes Schickel | |
This does not include (most) shader setup, and projection matrices yet. | |||
2016-03-16 | OPENGL: Make Context::reset explicitly reset state. | Johannes Schickel | |
2016-03-16 | OPENGL: Slight simplifcation for opengl-func.h usage. | Johannes Schickel | |
2016-03-16 | OPENGLSDL: Destroy GL context on exit with SDL2. | Johannes Schickel | |
2016-03-16 | OPENGL: Handle destruction gracefully when no context is setup. | Johannes Schickel | |
2016-03-16 | OPENGL: Add support for shaders with GL contexts. | Johannes Schickel | |
2016-03-16 | OPENGL: Reset context description on context destroy. | Johannes Schickel | |
2016-03-16 | OPENGL: Reset full context structure. | Johannes Schickel | |
2016-03-16 | OPENGL: Support GLES2 contexts. | Johannes Schickel | |
2016-03-16 | OPENGL: Typo. | Johannes Schickel | |
2016-03-16 | OPENGL: Simplify orthogonal projection setup. | Johannes Schickel | |
2016-03-16 | OPENGLSDL: Slight cleanup. | Johannes Schickel | |
2016-03-16 | OPENGL: Simplify context type setting. | Johannes Schickel | |