Commit Graph

39368 Commits

Author SHA1 Message Date
Alejandro Marzini
37f7748a4a OPENGL: Fix crash on Broken Sword 2 when refreshing screen.
I must admit that I do not know why it does crash, but it seems that updating row by row is safer and does not makes problems.

svn-id: r51491
2010-07-30 02:58:35 +00:00
Alejandro Marzini
ffb5868ac5 SDL: Add SDL backend subfolders paths to makefile MODULE_DIRS.
This should fix subfolders sources not recompiling after a header change.

svn-id: r51489
2010-07-30 00:48:10 +00:00
Max Horn
691d7cff28 Fix warnings about cast removing constness, and about implict conversion from float to int
svn-id: r51352
2010-07-27 09:34:11 +00:00
Alejandro Marzini
2636ac4f36 OPENGL: Implement aspect ratio support and toggling. Improve fullscreen switching. Fix cursor scaling bug.
Now the hotkey Ctrl-Alt-Enter will switch between all available fullscreen modes. Alt-Enter will only switch to the best mode available, and exit fullscreen mode if already on it.
The different aspect ratios can be switched with Ctrl-Alt-A. The normal mode will stretch the contents to the screen, while other modes will stretch only one dimension to the screen size, and maintain the aspect ratio for the other dimension.

svn-id: r51346
2010-07-27 07:30:56 +00:00
Alejandro Marzini
591b371f2b OPENGL: Add shake effect.
svn-id: r51344
2010-07-27 03:16:10 +00:00
Alejandro Marzini
126fe84d3d OPENGL: Fix cursor scaling in overlay.
svn-id: r51339
2010-07-27 00:31:36 +00:00
Alejandro Marzini
f7220cfea7 OPENGL: Commenting.
svn-id: r51338
2010-07-27 00:30:37 +00:00
Alejandro Marzini
141e101841 Formatted spaces.
svn-id: r51300
2010-07-26 06:58:33 +00:00
Alejandro Marzini
738a9e78d8 OPENGL: Implement saveScreenshot().
svn-id: r51299
2010-07-26 06:52:58 +00:00
Alejandro Marzini
856c6a18af OPENGL: Add OSD message.
svn-id: r51295
2010-07-26 06:03:55 +00:00
Alejandro Marzini
37cdff9277 OPENGL: Do not allow changing to a not supported scale while on fullscreen.
svn-id: r51292
2010-07-26 04:40:00 +00:00
Alejandro Marzini
19ce960868 OPENGL: Add cursor scaling.
svn-id: r51291
2010-07-26 04:17:37 +00:00
Alejandro Marzini
c5037d7c6c OPENGL: Fixed alpha problem with overlay RGBA5551 format.
svn-id: r51290
2010-07-26 02:16:10 +00:00
Alejandro Marzini
b89412d7e4 OPENGL: Redesign blitting system. Add basics for aspect correction.
Removed the extra surface in GLTexture. Now there are copies of the texture data in their original format (so engine can get the original data when lockScreen or grabOverlay is called). This copies will be updated when the engine calls a function that modifies the game screen/overlay, and the textures will be marked as dirty. When updating screen, the textures will be updated from the copies data if they are dirty.

svn-id: r51234
2010-07-24 05:54:51 +00:00
Alejandro Marzini
bbdb87a831 OPENGL: Add basic game screen drawing. Changed Overlay PixelFormat to RGBA5551.
svn-id: r51193
2010-07-23 06:57:23 +00:00
Alejandro Marzini
ef880dd5da OPENGL: Add antialiasing, hotkey: ctrl+alt+f. Fixed minor bugs.
svn-id: r51146
2010-07-22 15:36:50 +00:00
Max Horn
0c2d90f090 Fix warning about float->int conversion
svn-id: r51051
2010-07-20 07:11:17 +00:00
Max Horn
5b626533cd Change CHECK_GL_ERROR to not take a 'call statement' as parameter
Passing a 'call statement' to CHECK_GL_ERROR has various issues.
For once, it confuses code parsers in many editors and other
tools that work with C++ source directly.
Moreover, this can lead to subtle bugs if a mistake is
made with the definition of CHECK_GL_ERROR.
It also causes incorrect warnings if CHECK_GL_ERROR is
used with an "empty" call statement.

svn-id: r51050
2010-07-20 07:10:25 +00:00
Alejandro Marzini
302400a701 OPENGL: Implement fullscreen mode.
svn-id: r51049
2010-07-20 04:32:31 +00:00
Alejandro Marzini
014d7b791c OPENGL: Fix SDL OpenGL context not resizing well on Linux.
svn-id: r51047
2010-07-20 00:21:17 +00:00
Alejandro Marzini
f6e04fe03b OPENGL: Fix adjustment of mouse coordinates when screen is resized and scaled.
svn-id: r51046
2010-07-19 23:58:48 +00:00
Alejandro Marzini
6f70a303bc OPENGL: Add basic scaler handle.
svn-id: r51016
2010-07-19 05:36:10 +00:00
Alejandro Marzini
38b4098f67 SDL: Hack to handle special SDL events.
svn-id: r51015
2010-07-19 05:33:58 +00:00
Alejandro Marzini
6215f2b6d4 OPENGL: Fix issue when GFX changes.
svn-id: r51013
2010-07-19 02:36:43 +00:00
Alejandro Marzini
7ad017bde0 OPENGL: Fix palette issues.
svn-id: r51012
2010-07-19 02:32:36 +00:00
Alejandro Marzini
03d66c4012 Fixed rect size when drawing npot textures. Added OpenGL attr for SDL.
svn-id: r50979
2010-07-18 05:32:44 +00:00
Alejandro Marzini
492569a7a2 Improved cursor drawing.
svn-id: r50976
2010-07-18 03:25:58 +00:00
Alejandro Marzini
0e748c5a97 Added basic cursor drawing.
svn-id: r50954
2010-07-16 23:50:46 +00:00
Joost Peters
3995b2d8f7 change post-increment to pre-increment in return value of nextHighest2(), as some compilers will not return the incremented value otherwise
svn-id: r50946
2010-07-16 22:20:21 +00:00
Alejandro Marzini
cfe85d6b9f Added basic screen drawing (only overlay working).
svn-id: r50930
2010-07-16 04:45:47 +00:00
Alejandro Marzini
fc8b60abda Fixed header for OS X, and added OpenGL feature to configure script. (Patch by clone2727)
svn-id: r50908
2010-07-15 05:04:44 +00:00
Alejandro Marzini
25f1980dad Optimized nextHigher2.
svn-id: r50907
2010-07-15 04:20:21 +00:00
Alejandro Marzini
36583ff888 Fixed problem with OpenGL headers and windows.
svn-id: r50906
2010-07-15 04:05:20 +00:00
Alejandro Marzini
9ef2fc4744 Fixed doing OpenGL calls before a graphical context was created.
svn-id: r50905
2010-07-15 04:01:41 +00:00
Alejandro Marzini
d677ba5a11 Replaced nextHigher2, so CHAR_BIT define is not needed.
svn-id: r50904
2010-07-15 02:49:59 +00:00
Matthew Hoops
69bf70d693 Silence gcc warnings.
svn-id: r50902
2010-07-15 01:48:28 +00:00
Alejandro Marzini
e47c64dd34 Fixed compile error.
svn-id: r50901
2010-07-15 01:46:02 +00:00
Alejandro Marzini
f53028d4a2 Replaced the extra SDL functions added to GraphicsManager with an EventObserver in SdlGraphicsManager.
svn-id: r50900
2010-07-15 01:21:20 +00:00
Alejandro Marzini
84ceae9328 Check if USE_OPENGL is defined for compiling OpenGL code.
svn-id: r50842
2010-07-13 05:38:10 +00:00
Alejandro Marzini
5f86d11275 Added OpenGL feature to Create MSVC tool.
svn-id: r50841
2010-07-13 04:57:31 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00
Max Horn
03c0faa5d7 SCI: Move breakpoint checks into SciEngine methods
svn-id: r50837
2010-07-12 23:21:03 +00:00
Max Horn
1d3a0f6dec SCI: Turn global object g_debugState into SciEngine member var
svn-id: r50836
2010-07-12 23:20:33 +00:00
Max Horn
dcd520ce31 Get rid of yet another global object with constructor
svn-id: r50835
2010-07-12 23:19:56 +00:00
Max Horn
4f914e7a9f TINSEL: Replace global object s_rectList by a TinselEngine member var
svn-id: r50834
2010-07-12 23:19:33 +00:00
Max Horn
e2c1ee853a SDL: Tweak OSystem_SDL::detectSupportedFormats a bit
Previously, the code in OSystem_SDL::detectSupportedFormats
assumed that the arrays RGBList and BGRList had the exact
same length, and that the entries in each mirrored those in
the other 100%. Instead of relying on that, the code now
simply iterates over both lists separately. This changes the
resulting order a bit, but since we never gave any
guarantees on that, this should not matter.

svn-id: r50833
2010-07-12 23:19:08 +00:00
Max Horn
8e9d933658 SDL: Overhaul OSystem_SDL::getSupportedFormats
* Do not use global constructor for the RGBList and BGRList
  tables anymore, by moving them inside a function.
* Update the list of supported formats if the hardware
  screen surface changes. Previously, the list of supported
  pixel formats (and its order) was computed only once and
  then never changed.

svn-id: r50832
2010-07-12 23:18:44 +00:00
Martin Kiewitz
6ff4dd2d91 SCI: changing how savegame ids are handled internally. Using range 0-999 so that scripts are able to signal us to create new slots, using range 1000-1999 for official slots. fixes lsl6 quicksave overwriting wrong save slots
svn-id: r50831
2010-07-12 22:26:48 +00:00
Johannes Schickel
8d7bc0eab5 Some documentation fixes.
svn-id: r50830
2010-07-12 20:17:42 +00:00
Martin Kiewitz
d52a872724 SCI: changing gameid of lsl6 sci2.1 into "lsl6hires". We need to keep workarounds etc. separate, scripts are not compatible
svn-id: r50829
2010-07-12 19:55:42 +00:00