aboutsummaryrefslogtreecommitdiff
path: root/backends/graphics/opengl/opengl-graphics.h
AgeCommit message (Collapse)Author
2013-10-24SDL: Let SdlGraphicsManager inherit from GraphicsManager.Johannes Schickel
2013-10-23SDL: Do not require a static graphics mode list in OpenGL and SurfaceSDL.Johannes Schickel
2013-10-19OPENGL/SDL: Add screenshot support.Johannes Schickel
2013-10-19TIZEN: Adapt to new OpenGL code.Johannes Schickel
Thanks to Chris Warren-Smith for testing this a bit.
2013-10-19OPENGL: Add OSD support.Johannes Schickel
2013-10-19SDL: Add a OpenGL SDL backend and hook it into the SDL backend.Johannes Schickel
The hooking code is nearly exactly the old hooking code. Only the OpenGL SDL creation has been adapted since it uses a different constructor now.
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.
2013-10-05BACKENDS: Remove OpenGL and OpenGL SDL backend.Johannes Schickel
This breaks our Tizen port.
2012-06-16ALL: Let overlay related methods in OSystem take a void * and use a proper ↵Johannes Schickel
pitch values. This is a first step to get rid of OverlayColor, which is a requirement for proper 4Bpp overlay support.
2012-06-16BACKENDS: Make OSystem::setMouseCursor take a "const void *" buffer.Johannes Schickel
This is mainly for consistency with OSystem::copyRectToScreen.
2012-06-16BACKENDS: Let copyRectToScreen take a "const void *" instead of "const byte ↵Johannes Schickel
*" as buffer. This removes the need to convert the parameter to copyRectToScreen to "const byte *", which is commonly used in games, which use Graphics::Surface to store their graphics data.
2012-06-03ALL: Replace cursorTargetScale in OSystem API with a simple "do not scale" ↵Johannes Schickel
logic. All uses of the old target scale API actually wanted to disallow scaling of the mouse cursor. This commit adapts our API to this and thus simplifies backend implementations. Some backends, most notable the Wii and Android, did some implementation of the cursor target scale, which I didn't adapt yet. I added a TODO for the porters there.
2012-02-15OPENGL: Prevent access to a few more members in the SDL OpenGL code.Johannes Schickel
2012-02-15OPENGL: Use tabs instead of spaces for indentation.Johannes Schickel
2011-08-21BADA: Fix formatting and non bada host compile errorChris Warren-Smith
2011-08-21BADA: Initial BADA port implementationChris Warren-Smith
2011-08-12OPENGL: Fix aspect ratio correction behavior.Johannes Schickel
Now only 320x200 and 640x400 will result in aspect ratio correction to be used if the user requested it. This should fix some strechting in Myst/Riven.
2011-08-09SDL: Take advantage of SdlGraphicsManager.Johannes Schickel
This gets rid of the hacks, where SdlEventSource added events with custom type numbers to pass SDL_VIDEOEXPOSE and SDL_VIDEORESIZE to the graphics manager. Furthermore it get rids of the uninituitive and hard to trace way of assigning the proper mouse coordinates to mouse related events. Formerly it passed the real screen coordinates through the even dispatching api to the graphics manager (at least hopefully ;-) and let that handle creating a new event with the proper coordinates. Now instead SdlEventSource handles the proper coordinate setup itself. Since this is a behavior change and I can not test all the SDL based small devices ports this commit might break compilation for them and more serve it might also break mouse position behavior. If any of that occurs I am sorry about it.
2011-06-20ALL: Remove trailing whitespacesMax Horn
This tries to make our code a bit more compliant with our code formatting conventions. For future use, this is the command I used: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-04BACKENDS: Replace OSystem::disableCursorPalette by setFeatureState callsMax Horn
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-03-20OPENGL: Get rid of unused switchDisplayMode.Johannes Schickel
2011-03-20OPENGL: Handle aspect ratio correction as flag instead of having a special ↵Johannes Schickel
mode for it. This partly fixes the OpenGL mode mess, but now OpenGL Normal and OpenGL Conserve will feature the same semantics when aspect ratio correction is enabled... That is still something to solve.
2011-03-17OPENGL: Cleanup switchDisplayMode.Johannes Schickel
2011-03-17OPENGLSDL: More refactoring to avoid direct access of ↵Johannes Schickel
OpenGlGraphicsManager's members.
2011-03-17OPENGL: Move setFullscreenMode to OpenGLGraphicsManager.Johannes Schickel
2011-03-17OPENGLSDL: Handle active fullscreen mode OPENGLSDL internal.Johannes Schickel
2011-03-17OPENGL: Make setScale non-virtual.Johannes Schickel
2011-03-17OPENGL: Get rid of _aspectRatioCorrection.Johannes Schickel
2011-03-17OPENGL: Slight refactoring.Johannes Schickel
First step into making all state variables of the OpenGL backend private, to help making the backend more maintainable, by disallowing subclasses to just mess with everything...
2011-03-17OPENGL: Update the OSD texture when visible while the output mode changes.Johannes Schickel
This fixes annoying graphics glitches, which occured sometimes when resizing the Window.
2011-03-17OPENGL: Refactor warpMouse.Johannes Schickel
Now subclasses will not need to worry about the scaling logic themselves, but just need to implement setInternalMousePosition, which should handles setting the system's mouse coordinates.
2011-02-19OPENGL: Get rid of adjustMouseEvent.Johannes Schickel
Rather than that I introduced a function which converts hardware screen coordinates to overlay / game screen coordinates. The logic which converts mouse movement events with hardware screen coordinates to overlay / game screen coordinates is now inside notifyEvent. This is still broken design, since one should not abuse an observer for that.
2011-02-19OPENGL: Fix documentation of OpenGLGraphicsManager::MousePos.Johannes Schickel
2011-02-07COMMON: OSystem now has a PaletteManagerMax Horn
svn-id: r55806
2010-12-08OPENGL: Fix OSD support by only updating the OSD texture in internUpdateScreen.Johannes Schickel
This actually still has the drawback that if one calls OSystem::updateScreen from the sound thread that it might crash. Hopefully no code does this though... svn-id: r54830
2010-12-03OPENGL: Some slight formatting fixes.Jordi Vilalta Prat
svn-id: r54755
2010-09-03SDL/OPENGL: Fix backend initialization when building with ENABLE_VKEYBD.Alejandro Marzini
svn-id: r52503
2010-09-03OPENGL: Fix enable aspect ratio feature.Alejandro Marzini
svn-id: r52502
2010-09-03OPENGL: Improve scaling, aspect ratio correction and display(GFX) modes.Alejandro Marzini
Now the previous aspect ratio modes are handled as GFX modes. The previous GFX modes were for scaling, but are removed now. A new 4/3 display mode added. Added Ctrl-Shift-A for backward switching through display modes, and Ctrl-Alt-<number key> for switching to a specific GFX mode. Window resizing now is available for all display modes, and will automatically change the scale factor as well as maintain the aspect ratio when needed. svn-id: r52501
2010-08-13OPENGL: Remove unnecessary aspect ratio corrections, and add "Original Size" ↵Alejandro Marzini
correction. Rename _transactionDetails.needHotswap to _transactionDetails.needRefresh. svn-id: r52054
2010-08-06OPENGL: Add 5/3 and 5/4 aspect ratio corrections.Alejandro Marzini
svn-id: r51806
2010-08-05OPENGL: Improve aspect ratio correction mode selection.Alejandro Marzini
svn-id: r51752
2010-08-03OPENGL: Refresh OpenGL textures on all loadGFX() calls.Alejandro Marzini
OpenGL context may be destroyed after calling SDL_SetVideoMode, so it is better to always recreate the textures. svn-id: r51675
2010-08-01OPENGL: By default only enable None, Conserve and 4/3 aspect ratio corrections.Alejandro Marzini
svn-id: r51599
2010-08-01OPENGL: Remove use of floats for aspect ratio correction. Improved ↵Alejandro Marzini
fullscreen toggling default mode selection. Floats can lead to calculation errors because, now uints are used and aspect ratio values are handled with a x 10000 scale. When entering fullscreen, it will be looked for the fullscreen mode with the smallest metric that mantains the game screen aspect ratio. svn-id: r51563
2010-07-31OPENGL: Add support for BGR and rgb(a) reversed formats (Not available for ↵Alejandro Marzini
GLES). General cleanup and commenting. svn-id: r51559
2010-07-30SDL/OPENGL: Add ability to switch between SDL and OpenGL graphics managers.Alejandro Marzini
OSystem_SDL will create a merged list of all graphics modes from SDL and OpenGL. When the user changes the graphics mode in options and restarts ScummVM should switch to that graphics mode in the corresponding graphics manager. svn-id: r51493
2010-07-30OSYSTEM: Add resetGraphicsScale() method.Alejandro Marzini
This fixes a hack for resetting the graphics scale to x1 when starting games that have a large screen size. The SDL graphics manager should now scale back to x1 without changing the current scaler in use, as well as the OpenGL graphics manager. svn-id: r51492