Commit Graph
6575 Commits
Author SHA1 Message Date
Johannes Schickel 83c638ad02 OPENGL: Setup the correct header size for BMP screenshots.
This fixes an color bug in the resulting screenshots.
2011-03-17 21:20:20 +01:00
Johannes Schickel 8d35d91bdf OPENGL: Cleanup switchDisplayMode. 2011-03-17 21:20:20 +01:00
Johannes Schickel f490e6f361 OPENGLSDL: More refactoring to avoid direct access of OpenGlGraphicsManager's members. 2011-03-17 21:20:20 +01:00
Johannes Schickel 83b199e921 OPENGL: Move setFullscreenMode to OpenGLGraphicsManager. 2011-03-17 21:20:20 +01:00
Johannes Schickel 8d87a460b0 OPENGLSDL: Handle active fullscreen mode OPENGLSDL internal. 2011-03-17 21:20:20 +01:00
Johannes Schickel c9f6136110 OPENGLSDL: Cleanup. 2011-03-17 21:20:20 +01:00
Johannes Schickel daf6050d7c OPENGL: Make setScale non-virtual. 2011-03-17 21:20:20 +01:00
dhewg 0eb5352290 ANDROID: Increase default touchpad mode scale
aka my display is bigger than yours
2011-03-17 21:01:49 +01:00
dhewg 8953581ec9 ANDROID: Ignore the slop area on all touch scrolls
Prevents initial cursor jumps
2011-03-17 21:01:49 +01:00
Johannes Schickel 758aa78acc OPENGL: Get rid of _aspectRatioCorrection. 2011-03-17 19:55:06 +01:00
Johannes Schickel 96979f73fc OPENGL: Slight refactoring.
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-17 19:55:06 +01:00
dhewg 70e2c4266b ANDROID: Get rid of more gfx glitches 2011-03-17 19:35:58 +01:00
dhewg 82bcddf8da ANDROID: Init vars to match with the defaults
The feature flags are set too late, so lets fix that here
2011-03-17 19:35:58 +01:00
dhewg f4fd9e8b50 ANDROID: Fix cursor visibility 2011-03-17 19:35:58 +01:00
dhewg 23213d23dc ANDROID: Log ASCII code of invalid keycodes 2011-03-17 19:35:57 +01:00
dhewg 2ea6380040 ANDROID: Plug RGB cursor memleak 2011-03-17 19:35:57 +01:00
Johannes Schickel 42d3b8fcbd OPENGL: Fix compilation when USE_OSD is not defined. 2011-03-17 18:35:32 +01:00
Johannes Schickel 372af10a7b OPENGL: Update the OSD texture when visible while the output mode changes.
This fixes annoying graphics glitches, which occured sometimes when resizing
the Window.
2011-03-17 18:35:32 +01:00
Johannes Schickel 3c656916f1 OPENGL: Always properly set the overlay dimensions in loadGFXMode. 2011-03-17 18:35:32 +01:00
Johannes Schickel 019aa63b15 OPENGL: Fix "Original" mode by setting up the corret screen dimensions. 2011-03-17 18:35:18 +01:00
Johannes Schickel e08683d939 OPENGL: Refactor warpMouse.
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-03-17 17:37:42 +01:00
Johannes Schickel cb6f02f7ef Merge branch 'sdl-focus-rect' of https://github.com/lordhoto/scummvm
Conflicts:
	backends/graphics/sdl/sdl-graphics.cpp
2011-03-17 16:48:55 +01:00
dhewg 093b74e405 ANDROID: Disable game/overlay blending
Doesn't work on some drivers, need to do it differently
2011-03-16 23:57:00 +01:00
dhewg adef4c3f42 ANDROID: Input system overhaul
Rewritten input system with many new feature.
Fixed related bugs and shortcomings on the way.
2011-03-16 20:54:49 +01:00
dhewg e71c2cf850 ANDROID: Constify getDrawRect() 2011-03-16 20:54:25 +01:00
dhewg 6b346c1fe0 ANDROID: Cleanup and extend chooseEglConfig
Add more checks and log all possible configs
2011-03-16 20:54:25 +01:00
dhewg 6e4af65be1 ANDROID: Add missing cases to getFeatureState() 2011-03-15 00:06:00 +01:00
dhewg 7b850c18c7 ANDROID: Cleanup 2011-03-15 00:05:59 +01:00
dhewg 9e7ee4953e ANDROID: Halve the audio buffer size
Also, run into the blocking audio write without sleep. This hopefully
fixes audio hickups on slow devices.
2011-03-14 20:26:35 +01:00
dhewg f706b1568d ANDROID: Cleanup
Removed not required checks since we now buffer texture contents
2011-03-14 20:10:41 +01:00
dhewg d060b597c3 ANDROID: Fade out the game screen when the overlay is visible 2011-03-14 19:35:36 +01:00
dhewg 6389e70e45 ANDROID: Remove clearBuffer()
Not required. Why did i add that again?
2011-03-14 19:35:36 +01:00
dhewg 5b94159f40 ANDROID: Clear fake palette after allocating
Gets rid of funky gfx artifacts on the overlay
2011-03-14 19:35:36 +01:00
dhewg f587b6ee04 ANDROID: Implement grabOverlay() 2011-03-14 19:35:36 +01:00
dhewg e1575e57f8 ANDROID: Extend clearScreen to take care of all cases
Hopefully that'll help me to not forget about the double buffering.
This fixes some gfx leftovers when not running games in fullscreen
mode.
2011-03-14 19:35:35 +01:00
dhewg 57635fe75c ANDROID: Update screen rects on surface changes
Fixes regression introduced with 4267011e
2011-03-14 19:35:35 +01:00
dhewg 4b6e5e7b06 ANDROID: Clip mouse coordinates 2011-03-13 23:45:52 +01:00
dhewg f82121d2a2 ANDROID: Don't merge mouse move events
Breaks more than it solves
2011-03-13 23:31:07 +01:00
dhewg ecd265b539 ANDROID: Center mouse on overlay visibility changes 2011-03-13 23:31:04 +01:00
dhewg df9167c6b3 ANDROID: Add graphics mode for linear filtering 2011-03-13 23:30:17 +01:00
dhewg c63c2a9e59 ANDROID: Fix texture clear color 2011-03-13 23:30:17 +01:00
dhewg 2dd669d808 ANDROID: Remove leftover TODO
Resolved with a93229c and 2721e28
2011-03-13 23:30:17 +01:00
dhewg 79d991081d ANDROID: Add support for video feature flags
kFeatureFullscreenMode and kFeatureAspectRatioCorrection are supported
now. The former prevents scaling to the full display - it scales one
axis and keeps the game AR.
2011-03-13 23:30:16 +01:00
dhewg 4267011e3a ANDROID: Some texture convinience functions 2011-03-13 23:30:15 +01:00
dhewg 787b27a4b1 ANDROID: Add missing updateScreen() calls 2011-03-13 16:50:48 +01:00
dhewg fa51d82639 ANDROID: Prevent unnecessary reallocs 2011-03-13 16:50:48 +01:00
dhewg 2721e287e5 ANDROID: Buffer 16bit texture contents
Same issue as in the last commit: glTexSubImage2D is slow, so cache
all copyRect*() calls in a buffer, and update the dirty rect once
when drawing. Reduces CPU usage on 16bit games significantly.
Also, lockScreen() returns now pixel data for non-CLUT8 games instead
of asserting.
2011-03-13 16:50:47 +01:00
dhewg a93229cae5 ANDROID: Don't use compressed textures for the game screen
Some GLES drivers suck so much that uploading data to the GPU takes
ages. CLUT8 games now use a faked paletted texture, which internally
uses a RGB565 hardware texture (Android's native pixel format).
This seems to be the only way to efficiently implement constant
changing textures with GLES1 - at the cost of extra buffers.
Then again, we can now use glTexSubImage2D to only update the dirty
rects, which wasn't possible before because glCompressedTexSubImage2D
is only usable on GLES2. This commit does exactly that.
Overall, the CPU usage is massively reduced for CLUT8 games.
2011-03-13 16:50:43 +01:00
dhewg 429b091ed1 ANDROID: Convinience make target for testing 2011-03-12 09:36:23 +01:00
dhewg 0cdaff65c1 ANDROID: Use 16bit pixel formats on CLUT8 textures
This reduces the CPU usage on 640x480 games by ~5% on my droid when
reuploading the textures to the GPU
2011-03-12 09:36:23 +01:00