aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/android/gfx.cpp
AgeCommit message (Collapse)Author
2014-03-31ANDROID: Make transparent cursor pixels all 0 in 16bit cursor mode.Johannes Schickel
Since the Android backend uses glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA) we need to make the transparent cursor pixels all 0 otherwise we might get artifacts from blending.
2014-03-26ANDROID: Fix color key handling for 16bit mouse cursors.Johannes Schickel
This should fix a issue similarly to bug #6108: "WII: Zak FM-TOWNS mouse cursor encased in blue box".
2014-02-18ANDROID: Make GPL headers consistent in themselves.Johannes Schickel
2014-01-23ANDROID: Add 32bpp support.Alyssa Milburn
We still prefer 16bpp for performance reasons.
2014-01-10ANDROID: Set correct blending functionMarcus Comstedt
Overlays with alpha channel in ScummVM use pre-multiplied alpha. Thus, is it necessary to set the source blend function to ONE, not SOURCE_ALPHA. While there is no firm decision on the texture format to be used to cursors, make sure to set the key color to R=G=B=A=0.0, so that it can be used with either pre-multiplied or non-pre-multiplied blending.
2013-08-06ANDROID: Do not access Surface::pixels directly.Johannes Schickel
2012-06-20ANDROID: Fix compilation broken with changes to grabOverlay.Johannes Schickel
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.
2011-08-07JANITORIAL: Remove trailing empty lines.Christoph Mallon
2011-06-04BACKENDS: Replace OSystem::disableCursorPalette by setFeatureState callsMax Horn
2011-05-25ALL: initialise -> initializeMatthew Hoops
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-05-03ANDROID: Fix various forbidden symbol clashesMax Horn
2011-04-17BACKENDS: Adapt various backends code to set up Surface::format correctly.Johannes Schickel
Note that this change is not tested at all (not even compile wise!).
2011-04-06ANDROID: Allow linear texture filtering on the cursordhewg
2011-04-05ANDROID: Remove commented workarounds for Nexus 1dhewg
Reports suggest that its working and not required
2011-04-04ANDROID: Fix non-fullscreen corruption on HTC devices.Alyssa Milburn
HTC's drivers don't preserve the color buffer between frames (as allowed by the spec, apparently), so we have to force-clear it every frame when we're not rendering a texture over the whole screen.
2011-04-03ANDROID: Always use the surface size for the overlaydhewg
When coming back from standby, there might be an indermediate surface change
2011-04-02ANDROID: Attempt at working around some HTC faildhewg
2011-03-24ANDROID: Fix cursor's keycolordhewg
Don't wipe the RGB bits, fixes wrong colors on BASS cursors
2011-03-24ANDROID: Cleanupdhewg
2011-03-17ANDROID: Get rid of more gfx glitchesdhewg
2011-03-17ANDROID: Fix cursor visibilitydhewg
2011-03-17ANDROID: Plug RGB cursor memleakdhewg
2011-03-16ANDROID: Disable game/overlay blendingdhewg
Doesn't work on some drivers, need to do it differently
2011-03-16ANDROID: Input system overhauldhewg
Rewritten input system with many new feature. Fixed related bugs and shortcomings on the way.
2011-03-15ANDROID: Cleanupdhewg
2011-03-14ANDROID: Fade out the game screen when the overlay is visibledhewg
2011-03-14ANDROID: Remove clearBuffer()dhewg
Not required. Why did i add that again?
2011-03-14ANDROID: Implement grabOverlay()dhewg
2011-03-14ANDROID: Extend clearScreen to take care of all casesdhewg
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-14ANDROID: Update screen rects on surface changesdhewg
Fixes regression introduced with 4267011e
2011-03-13ANDROID: Center mouse on overlay visibility changesdhewg
2011-03-13ANDROID: Add graphics mode for linear filteringdhewg
2011-03-13ANDROID: Fix texture clear colordhewg
2011-03-13ANDROID: Add support for video feature flagsdhewg
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-13ANDROID: Some texture convinience functionsdhewg
2011-03-13ANDROID: Buffer 16bit texture contentsdhewg
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-13ANDROID: Don't use compressed textures for the game screendhewg
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-12ANDROID: Use 16bit pixel formats on CLUT8 texturesdhewg
This reduces the CPU usage on 640x480 games by ~5% on my droid when reuploading the textures to the GPU
2011-03-12ANDROID: Cleanupdhewg
2011-03-12ANDROID: Cleanup paletted texturesdhewg
2011-03-12ANDROID: Get rid of ugly castsdhewg
2011-03-07ANDROID: Move misplaced assertdhewg
Leftover from the recently introduced 16bit support
2011-03-07ANDROID: Move the overlay initializationdhewg
There's no point in doing that in initSize() every time
2011-03-05ANDROID: Fix 16bit cursorsdhewg
I hate this code
2011-03-05ANDROID: Proper fillBuffer() for non CLUT8 colorsdhewg