Commit Graph
137148 Commits
Author SHA1 Message Date
Bastien Bouclet 287f97228f BACKENDS: Make suggestSideTextures go through GraphicsManager 2016-07-14 12:02:55 +02:00
Bastien Bouclet 911e0e3915 BACKENDS: Remove launcherInitSize from GraphicsManager 2016-07-14 12:02:55 +02:00
Bastien Bouclet f9a7f37579 SDL: Remove the OpenGL suffix from some method names 2016-07-14 12:02:55 +02:00
Bastien Bouclet 52f2dfc869 SDL: Split the GraphicsManager into Surface and OpenGL 2016-07-14 12:02:51 +02:00
Paweł Kołodziejski 863548efeb Merge pull request #1261 from vpelletier/tinygl_texture_matrix
Tinygl texture matrix
2016-07-14 09:57:52 +02:00
Paweł Kołodziejski ca64a5677d Merge pull request #1258 from vpelletier/shader_lighting
GRIM, SHADERS: Toggle light inside drawMesh.
2016-07-14 09:55:55 +02:00
Paweł Kołodziejski 18fc8cb336 Merge pull request #1257 from vpelletier/drop_setuptexture
GRIM,EMI: Drop Grim::Component::setupTexture
2016-07-14 09:52:46 +02:00
Eugene Sandulenko 48f99d0b93 Merge pull request #783 from bgK/create-project-cmake-builder
DEVTOOLS: Add a CMake project generator to create_project
2016-07-13 18:56:36 +02:00
Bastien Bouclet 6cb71cd52a MYST3: Add a frame limiter for better framerate control 2016-07-13 07:39:34 +02:00
Eugene Sandulenko 30e0592162 GUI: Regenerate built-in theme 2016-07-12 22:43:55 +02:00
Eugene Sandulenko 3359abbe5f Merge pull request #784 from Tkachov/tabwidget-height-fix
GUI: Fix TabWidget height issues
2016-07-12 22:42:18 +02:00
Colin Snover a9b7b40c66 SCI32: Disable kernel call 0x23 on LSL6hires
LSL6hires calls 0x23 (Graph/Robot) from game scripts, but it is a
null function in the game's interpreter.
2016-07-12 14:43:56 -05:00
Colin Snover e133c74403 SCI32: Fix unnecessary palette updates
Some games load palettes that include color 255, but this is
hardcoded to white in SSCI, so just ignore it during merges since
it is ignored when the hardware palette is updated anyway.
2016-07-12 14:43:56 -05:00
Colin Snover efc12ffc5c SCI32: Avoid flash of incorrect colour when palettes are changed
Avoid forcing the screen to refresh after a palette change if the
screen is also about to be drawn to, as the palette change + draw
is intended to be an atomic operation.
2016-07-12 14:41:17 -05:00
Alexander Tkachev 64a79fd1ab GUI: Fix TabWidget height issues
Changes theme stx files to specify TabWidget's type. That fixes wrong TabWidget height.

Changes TabWidget's getHeight() to return not only "children" height, but also tabs height. That fixes wrong clipping area.

Changes Widget's findWidget to use getHeight(). That fixes bug when widgets in the bottom of TabWidget were not reacting to the mouse events.
2016-07-12 22:37:57 +06:00
Bastien Bouclet 6b266a9179 OPENGL: Unbind the active program when destroying the active shader
Fixes switching renderers from Shaders to OpenGL in Grim with SDL2
2016-07-12 06:29:32 +02:00
Bastien Bouclet 14b5763408 GRIM: Fix memory leaks related to EMI models 2016-07-12 06:16:36 +02:00
Bastien Bouclet 420f19d6de GRIM: Remove useless assignments to g_driver 2016-07-12 06:16:35 +02:00
Bastien Bouclet 62bf521944 GRIM: Fix memory leaks related to the emergency built-in font 2016-07-12 06:16:35 +02:00
Bastien Bouclet 73e6ae888d GRIM: Fix a memory leak in "SetShadow::loadBinary" 2016-07-12 06:06:37 +02:00
Colin Snover 53ab0b2805 SCI32: Fix broken background volume in Torin during speech 2016-07-11 16:23:46 -05:00
Colin Snover b37ebb61eb Revert "SCI32: Add blackline option to KQ7 2.00b DOS"
This reverts commit 1ab87e3f8f.

VMD and DUK are the formats that get blacklined, not Robot.
2016-07-11 14:27:57 -05:00
Colin Snover 1cf1b88c7d SCI32: Add ADGF_DEMO flag to Hoyle 5 detection 2016-07-11 13:55:17 -05:00
Colin Snover 1ab87e3f8f SCI32: Add blackline option to KQ7 2.00b DOS
KQ7 DOS uses Robot video in place of AVI.
2016-07-11 13:55:17 -05:00
Martin Kiewitz d5dfd41ed1 SCI: Update script patch comments 2016-07-11 20:45:19 +02:00
Colin Snover 593560e876 SCI32: Add detection for Hoyle 5 demo 2016-07-11 13:02:27 -05:00
Martin Kiewitz 9dd5ee988b SCI32: Improve kq7 subtitle script patch
Subtitle box should now always use color 255, which should be
white all the time. Normally it uses color 7, which is white
most of the time, but for example pink/purple at the start of
chapter 5.
2016-07-11 19:04:18 +02:00
Colin Snover 08821cf4e3 SCI32: Give planes a default type
With the addition of the transparent pic type code, the _type
property would be read uninitialised by setType if _pictureId was
set to kPlanePic.

CID 1357230, 1357231.
2016-07-11 10:39:50 -05:00
Colin Snover f171db965c SCI32: Guard against no split count
CID 1357229.
2016-07-11 10:39:50 -05:00
Colin Snover e4588a7134 SCI32: Silence non-monitored channels while monitoring is active 2016-07-11 10:39:50 -05:00
Colin Snover 60c3663142 SCI32: Fix incorrect logic of cycler overflow 2016-07-11 10:39:50 -05:00
Colin Snover bc362e5b7c SCI32: Minor cleanup of GfxPalette32 2016-07-11 10:39:50 -05:00
Colin Snover 8fb55564a6 SCI32: Fix bad output caused by missing palette copies
Sometimes, games accidentally use palette entries that are not
marked as used and expect them to be a particular colour, like the
Phantasmagoria title screen, or the white palette entry (always
255 in DOS/Win).
2016-07-11 10:39:50 -05:00
Colin Snover 6a13adb638 SCI32: Fix sign comparison warning 2016-07-11 10:39:50 -05:00
Colin Snover 4cfc387602 SCI32: Split GfxPalette and GfxPalette32 + HunkPalette 2016-07-11 10:39:50 -05:00
Colin Snover 7f53a26d9e SCI32: Split kPalCycle into subop functions 2016-07-11 10:39:50 -05:00
Colin Snover ec73fa1e4a SCI32: Fix audio deadlocks
Several functions in Audio32 would call into the mixer to pause
or resume the audio handle, which would cause a deadlock if the
mixer's mixCallback timer fired while one of these functions was
running on the main thread.

To address this, calls to mixer to pause/unpause the digital audio
handle have been removed. Since this was just an optimisation to
prevent unnecessary calls to fill the audio buffer, the only
problem now is that a tiny amount of CPU is wasted on unnecessary
callbacks to read from the empty SCI mixer.
2016-07-11 10:39:50 -05:00
Colin Snover 1714cf8aa5 SCI32: Minor Audio32 cleanup 2016-07-11 10:39:50 -05:00
Vincent Pelletier 84859619f1 GRIM: Use [T]GL_LINE_LOOP to display an empty rectangle.
Reduces vertex redundancy.
In TinyGL, fixes checkbox border on Copal computer (actually, works around
yet another discrepancy between OpenGL and TinyGL on 1-pixel-thick
[T]GL_QUADS).
2016-07-11 14:52:36 +00:00
Vincent Pelletier 46fa5eb373 TINYGL: Fix off-by-one in TGL_LINE_LOOP/TGL_LINE_STRIP .
Also, draw last line from last point to first instead of first point to
last as the latter leaves an unpainted pixel for some reason.
2016-07-11 14:52:36 +00:00
Torbjörn Andersson 11ec5ad5a3 GRAPHICS: Fix copy/paste error in blitAlphaBitmapClip() (CID 1357410) 2016-07-11 05:43:24 +02:00
Torbjörn Andersson 6eabc887e1 GRAPHICS: Fix copy/paste error in blitSurfaceClip (CID 1357411) 2016-07-11 05:41:04 +02:00
Vincent Pelletier 98696865df TINYGL: Fix TGL_QUADS with more than one quad.
Fixes checkbox border on Copal's computer.
2016-07-11 00:30:58 +00:00
Vincent Pelletier 4c41a1e4a5 GRIM: Reduce direct framebuffer drawing with TinyGL.
Before this change, drawRectangle, drawLine and drawPolygon directly drew
to framebuffer, bypassing all TinyGL dirty-region detection and handling.
As a result, these drawings would only be visible when forcing TinyGL to
refresh the entire window.
Copy code from OpenGL renderer and do minor tweaks to make TinyGL happy.
There are still glitches (checkboxes on Domino's computer, ticket
printer digits) but something decent (correct position & size) gets
rendered.
2016-07-11 00:09:39 +00:00
Vincent Pelletier e72db42ef0 TINYGL: Fix tglOrtho matrix definition.
As per glOrtho documentation, bottom-right must be 1.
Also, in TinyGL, matrices are row-major, so m._m[0][3] is r[3], not
r[12].
2016-07-11 00:00:30 +00:00
Vincent Pelletier 6f1e46d6b4 TINYGL: Implement tglColor3ub. 2016-07-11 00:00:30 +00:00
Martin Kiewitz eeafe230b9 SCI32: Fix an issue with the KQ7 subtitles script patch
Volume was lowered, but not raised afterwards for certain cases
Original script patch was commited in
b676530528
2016-07-11 00:26:05 +02:00
Martin Kiewitz b676530528 SCI32: Add script patch to fix/improve KQ7 subtitles
Needs lots of testing of course
Applies to 1.51 and 2.00
2016-07-10 23:40:29 +02:00
Paul Gilbert 76b61324de TITANIC: Renaming for normalized input line 2016-07-10 16:39:38 -04:00
Paul Gilbert 69134c66cc TITANIC: Implemented parser normalizeContraction 2016-07-10 16:39:37 -04:00