Commit Graph
59 Commits
Author SHA1 Message Date
Christoph Mallon 23a0f5318c JANITORIAL: Remove trailing empty lines. 2011-08-07 13:53:33 +02:00
Max Horn ce32745d9c BACKENDS: Replace OSystem::disableCursorPalette by setFeatureState calls 2011-06-04 11:55:56 +02:00
Matthew Hoops 9539017ee3 ALL: initialise -> initialize 2011-05-25 11:17:11 -04:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn a50c36d138 ANDROID: Fix various forbidden symbol clashes 2011-05-03 14:29:01 +02:00
Johannes Schickel 877004dbdd BACKENDS: Adapt various backends code to set up Surface::format correctly.
Note that this change is not tested at all (not even compile wise!).
2011-04-17 21:14:19 +02:00
dhewg 4f09018b00 ANDROID: Allow linear texture filtering on the cursor 2011-04-06 21:15:15 +02:00
dhewg 0adfe72966 ANDROID: Remove commented workarounds for Nexus 1
Reports suggest that its working and not required
2011-04-05 15:16:07 +02:00
Alyssa Milburn 449e9cf339 ANDROID: Fix non-fullscreen corruption on HTC devices.
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-04 12:23:12 +02:00
dhewg ea4223d941 ANDROID: Always use the surface size for the overlay
When coming back from standby, there might be an indermediate surface
change
2011-04-03 20:34:24 +02:00
dhewg bceab2656b ANDROID: Attempt at working around some HTC fail 2011-04-02 13:32:03 +02:00
dhewg e6080087c8 ANDROID: Fix cursor's keycolor
Don't wipe the RGB bits, fixes wrong colors on BASS cursors
2011-03-24 18:56:59 +01:00
dhewg 397fd31a17 ANDROID: Cleanup 2011-03-24 18:56:54 +01:00
dhewg 70e2c4266b ANDROID: Get rid of more gfx glitches 2011-03-17 19:35:58 +01:00
dhewg f4fd9e8b50 ANDROID: Fix cursor visibility 2011-03-17 19:35:58 +01:00
dhewg 2ea6380040 ANDROID: Plug RGB cursor memleak 2011-03-17 19:35:57 +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 7b850c18c7 ANDROID: Cleanup 2011-03-15 00:05:59 +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 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 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 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 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 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
dhewg caf21a357b ANDROID: Cleanup 2011-03-12 09:36:22 +01:00
dhewg 99c0d82541 ANDROID: Cleanup paletted textures 2011-03-12 09:36:22 +01:00
dhewg 4afa2c62b9 ANDROID: Get rid of ugly casts 2011-03-12 09:36:22 +01:00
dhewg 905d5e76b4 ANDROID: Move misplaced assert
Leftover from the recently introduced 16bit support
2011-03-07 23:42:20 +01:00
dhewg e71fb5b0eb ANDROID: Move the overlay initialization
There's no point in doing that in initSize() every time
2011-03-07 23:42:20 +01:00
dhewg 12fb817751 ANDROID: Fix 16bit cursors
I hate this code
2011-03-05 23:08:42 +01:00
dhewg 53ee7c5513 ANDROID: Proper fillBuffer() for non CLUT8 colors 2011-03-05 23:08:41 +01:00
dhewg a2c02367f7 ANDROID: Rename function for less confusion 2011-03-05 23:08:41 +01:00
dhewg d2dd614996 ANDROID: Clear screen on initSize() 2011-03-05 18:47:05 +01:00
dhewg 94db3403a3 ANDROID: Add initial 16bit gfx support
Supported pixel formats: 565, 5551, 4444
Missing: 555 (doesn't exist on GLES)
2011-03-05 18:47:05 +01:00
dhewg a913d360f2 ANDROID: Clear game texture on initSize()
Gets rid of leftovers
2011-03-04 21:41:55 +01:00
dhewg f639466ab2 ANDROID: Cleanup 2011-03-04 21:36:48 +01:00
dhewg 1b0d4724f4 ANDROID: Fix slightly off while loop
CursorMan allows to push cursors with a width/height of zero. If such a
cursor is restored, we don't need to call glTexSubImage2D() 0xffffffff
times... This fixes delays of multiple minutes when closing GMM
on groovie and sword.
Also, I want that last hour of my life back.
2011-03-04 21:35:30 +01:00
dhewg 7157454e9b ANDROID: Implement surface resizes
Split surface code into helper functions to avoid code duplication, and
distinguish between screen resizes and surface recreation. The former
happens when toggling the softkeyb, where we just have to reset the
viewport. Fixes garbled textures in those cases.
2011-03-03 21:29:15 +01:00
dhewg 2d4a64d184 ANDROID: Properly release texture resources
When calling glDeleteTextures() we need a valid surface.
2011-03-02 23:18:36 +01:00
dhewg ccfe427eb5 ANDROID: Check for a surface in updateScreen() 2011-03-02 23:18:35 +01:00
dhewg 82a9beff2b ANDROID: Move swapBuffers to the native side 2011-03-02 23:18:34 +01:00
dhewg bd7e3e9bb2 ANDROID: cleanup 2011-03-02 23:18:34 +01:00