4596 Commits

Author SHA1 Message Date
Christian Krause
b35bdd2ddf EMI: Don't stop looping chores in StopAllChores
Some chores need to stay active even after a call to
StopAllChores(). E.g. the hold chores should stay active
even after changing the set (which calls StopAllChores()).

It looks like that the previously unknown boolean paramter
of StopAllChores() controls that behavior. If set to TRUE,
stop only the non-looping chores.

This patch fixes:
- hold chore was lost when switching sets
- blue painting did not show the ultimate insult when opening
the inventory
2014-02-21 20:13:11 +01:00
Christian Krause
863b33e803 EMI: Fix missing hold chores
The hold chore was always lost after e.g. turning left or right.
Although that chore was still in _playingChores, it was not shown.

The patch uses the following order for drawing the chores:
- wear chores
- rest chores
- walk/turn chores
- other chores (in order of the playChore calls)
2014-02-21 20:13:05 +01:00
Pawel Kolodziejski
9f54d1a56e JANITORIAL: cleanup licences 2014-02-16 17:57:34 +01:00
Pawel Kolodziejski
728dc1f746 JANITORIAL: cleanup after post sync 2014-02-16 16:03:31 +01:00
Pawel Kolodziejski
0782a557c2 JANITORIAL: typo, sync debian rules 2014-02-16 15:27:43 +01:00
Pawel Kolodziejski
1d612eb865 ALL: synced with ScummVM 2014-02-16 15:01:08 +01:00
Pawel Kolodziejski
6f2a9151e9 BUILD: disable scalers option by default, it's not used here and only confuse 2014-02-16 13:36:29 +01:00
Pawel Kolodziejski
e588cb65e2 BUILD: fix typo 2014-02-16 12:04:06 +01:00
Christian Krause
03bc169e51 GRIM/EMI: Fix compile issue with mingw32
- don't use glMultTransposeMatrixf since it is not available on all
  platforms (better transpose matrix in residualvm and use
  glMultMatrixf)
2014-02-16 11:57:15 +01:00
Dries Harnie
6ed13c9dd0 JANITORIAL: Store size_t offsets in vertex attributes 2014-02-16 11:51:50 +01:00
Pawel Kolodziejski
b595389de3 BUILD: remove specific Android case which is not used anymore 2014-02-16 11:44:56 +01:00
Pawel Kolodziejski
298e1b3eb4 BUILD: replace toms with unix2dos 2014-02-16 11:43:19 +01:00
Pawel Kolodziejski
7fd21d7620 allow build mac os x dmg with shaders enabled 2014-02-16 10:16:56 +01:00
Pawel Kolodziejski
aa74f1c610 GLES2: avoid direclty cast uint32 to 64bit pointer 2014-02-16 09:10:23 +01:00
Bastien Bouclet
07b69c93cf MYST3: Don't use copysign.
Some compilers don't support plenty-years-old C99
2014-02-16 08:59:24 +01:00
Pawel Kolodziejski
702739d1cd MYST3: make clang happy 2014-02-16 08:48:50 +01:00
Pawel Kolodziejski
2dd5c24ab1 GRIM: shut up compiler warnings 2014-02-16 08:43:33 +01:00
Pawel Kolodziejski
847cf56f83 MYST3: fix compiler warning 2014-02-16 08:37:57 +01:00
Pawel Kolodziejski
d8a1136565 JANITORIAL:
- remove some ResidualVM specific entries
- make OpenGL part as ResidualVM specific
- added more detection checks in OpenGL part
- allow only detect OpenGL ES2
2014-02-16 08:03:17 +01:00
Bastien Bouclet
019e7970f9 MYST3: Uncomment mistakenly commented line 2014-02-15 21:18:25 +01:00
Bastien Bouclet
fa12f7e35e MYST3: Implement the water effect
The effect looks similar enough to the original but not exactly the same.
This is CPU intensive. Once well tested it may be worth reimplementing it
as a shader.
2014-02-15 21:13:27 +01:00
Christian Krause
5577bd71b7 Merge pull request #833 from chkr-private/compiler-warning-fixes
EMI/GRIM/TINYGL: fix compile warnings and coverity issues
2014-02-15 18:50:59 +01:00
Christian Krause
07e22b6734 GRIM/EMI: Fix compile warning
- the pixel data retrieved via getPixels() is stored as non-const
data in pixebuffer, so the original object can't be const
2014-02-15 18:40:35 +01:00
Christian Krause
344d86bf45 TINYGL: Fix coverity and compile warning
- change void* to byte*, otherwise delete[] is undefined
2014-02-15 18:40:30 +01:00
Christian Krause
6acf4984d0 GRIM/EMI: Use proper GL constants 2014-02-15 18:40:30 +01:00
Christian Krause
446f56eb67 GRIM/EMI: Fix compile warnings 2014-02-15 18:40:19 +01:00
Dries Harnie
4717436b43 Merge pull request #836 from salty-horse/include_guards
GRIM: Fix typos in include guards
2014-02-14 15:28:02 +01:00
Ori Avtalion
eed8769412 GRIM: Fix typos in include guards 2014-02-14 16:21:42 +02:00
Pawel Kolodziejski
3008cade01 update credits 2014-02-13 23:30:11 +01:00
Dries Harnie
30e3f5b019 Merge pull request #822 from chkr-private/item-drawing-fixes
EMI: Rotation of (attached) actors
2014-02-12 00:13:41 +01:00
Dries Harnie
d54ddfe957 MYST3: Clamp cube textures in the ES2 renderer
This effectively implements GL_CLAMP_TO_EDGE in the shader
for 3D objects, solving the issue described in 61968c6.
2014-02-11 22:32:19 +01:00
Bastien Bouclet
61968c6341 MYST3: Explain the texture size workaround used in the ES2 renderer 2014-02-11 20:11:23 +01:00
Bastien Bouclet
2d37561276 Merge pull request #834 from Botje/myst-es2
MYST3: ES2 backend
2014-02-11 20:04:01 +01:00
Dries Harnie
32a232fd3e EMI: Update shader for actors and sprites [OpenGLS] 2014-02-11 02:30:29 +01:00
Dries Harnie
bd07459667 Merge pull request #825 from PoulpiFr/running-manny
ANDROID: Quick changement to the touchcontrols to let Manny run + Overlay buttons on screen
2014-02-09 23:02:21 +01:00
Dries Harnie
0c7d08cf1a MYST3: Reset viewport in menus 2014-02-08 18:39:57 +01:00
Bastien Bouclet
9d1cfd28c6 MYST3: Don't needlessly center the mouse when changing nodes 2014-02-08 16:48:51 +01:00
Bastien Bouclet
60c2765346 MYST3: Dialog movies are also localized 2014-02-08 16:42:04 +01:00
Dries Harnie
98d04e3516 MYST3: Support Text rendering [OpenGLS] 2014-02-08 11:40:21 +01:00
Dries Harnie
94882742d5 JANITORIAL: Remove g_ prefix from instance variables 2014-02-07 22:41:34 +01:00
Dries Harnie
ac913880be MYST3: Separate renderers into separate classes 2014-02-07 22:41:34 +01:00
Dries Harnie
c13a6613e6 GRAPHICS: Update system_headers.h for regular OpenGL 2014-02-06 18:56:11 +01:00
Dries Harnie
f5549e86a1 MYST3: Move OpenGLTexture into separate file 2014-02-06 18:56:11 +01:00
Dries Harnie
522ef90830 MYST3: Introduce shader-based renderer 2014-02-06 18:56:11 +01:00
Dries Harnie
3accc56e31 BUILD: Conditionally include shaders 2014-02-06 18:56:11 +01:00
Christian Krause
f12647cdca EMI: Fix position of attached actor
When attaching an actor to another one, set its local position
so that its final position (position of the parent actor + the
local position) remains the same as the final position before
it was attached.
2014-02-05 21:35:08 +01:00
Christian Krause
58d7bf116c EMI/GRIM: Fix rotation of attached actors
Use matrix multiplications to fix the rotation for attached actors:
- calculate the final transformation matrix recursively for attached
  actors (instead of using getWorldPos and getWorldRot)
- use a different order for building the quaternions out of the Euler
  angles
- changed handling of camera position (just apply the rotation of the
  camera, the (inverted) position of the camera and the position of the
  actor
- no functional changes for GRIM
- no changes for drawing in overworld

Code simplification for GRIM:
- no need to use _currentPos in calculations for GRIM since it is
always (0, 0, 0)

This fixes:
- the rotation of any items Guybrush is holding in his hands
- the handling of the pole when using the raft in the swamps
- getting the bananas with the banana picker
2014-02-05 21:35:02 +01:00
Joel Teichroeb
dbfd0efab6 GRIM: Don't bother checking if the value returned from new is nulll
It can never be null and will throw an exception if it can't allocate the
memory
2014-02-04 13:07:17 -08:00
Christian Krause
95bceeb216 EMI: Handling of invalid bone names
Two animations (guy_puton_cap, guy_holdstickystuff) contain bone names
which which don't match any joints. To avoid that the holding actor is
drawn with a wrong orientation, ingore the unknown bone names when
running the animations.

Skeleton::getJointNamed() will now return null for unknown names.
The original behaviour for Actor::getWorldPos and
Actor::getRotationQuat is kept.

This patch fixes the problem, that Guybrush is "lying down" once he
holds the bottle of glue.
2014-02-02 14:26:12 +01:00
Dries Harnie
e65d98801e ANDROID: Factor event pushing into pushEvent 2014-02-02 14:25:06 +01:00