Vincent Pelletier
6519558046
GRIM,EMI: Drop Grim::Component::setupTexture
...
This method is never implemented, so drop its declaration and callers.
2016-07-05 23:13:11 +00:00
Joni Vähämäki
70b65cb45f
EMI: Return playing chores of all costumes from GetActorChores.
2014-08-20 01:37:28 +03:00
Joni Vähämäki
3adbd1fdcf
EMI: Implement head tracking.
2014-07-02 22:43:50 +03:00
Joni Vähämäki
b5cdd1240f
EMI: Only draw models for actors inside the view frustum.
...
This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
2014-06-16 15:42:18 +03:00
Joni Vähämäki
8f9f541f17
EMI: Implemented dynamic lighting for models.
...
Lighting is done by calculating vertex colors in software, since the attenuation model used in EMI cannot be simulated with OpenGL fixed function lighting. The original game does the lighting this way as well. Ideally for the modern shader-based renderer a shader would be used for this instead.
2014-06-16 15:41:06 +03:00
Joni Vähämäki
de3c68d89c
GRIM: If ActorLookAt is called with an actor as the target, look towards the actor's head instead of their origin. Fixes #887
2014-05-31 15:59:55 +03:00
Joni Vähämäki
3e322b67ba
Revert "EMI: Fix missing hold chores"
...
This reverts commit 863b33e803f17503d5983a9f99cdd8dd71ec7543.
Conflicts:
engines/grim/actor.cpp
engines/grim/actor.h
engines/grim/costume.cpp
engines/grim/costume.h
engines/grim/costume/chore.h
engines/grim/emi/costumeemi.cpp
engines/grim/emi/costumeemi.h
2014-05-31 03:05:30 +03:00
Joni Vähämäki
a180b3b562
EMI: Chore fading fixes.
...
Fading out chores remain in playing state until they have completely faded out. Also using StopChore on a fading out chore will actually stop the chore, unlike in Grim where the chore will keep fading out.
2014-05-31 03:05:17 +03:00
Pawel Kolodziejski
8759900b6a
ALL: synced with ScummVM
2014-04-05 18:18:42 +02:00
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
Ingo van Lil
70520e5ffa
EMI: Fix actor animations
...
The current code for loading EMI costumes contains a special treatment that
expects the skeleton and mesh components in a chore named "wear_default".
This assumption is not valid for costumes that contains multiple wear chores,
most notably for Guybrush who has a different outfit for each island.
The new code considers any chore containing skeleton and mesh components
to be a wear chore. The skeleton from the last played wear chore will be
animated.
2013-12-08 01:06:57 +01:00
Paweł Kołodziejski
175620b62a
ALL: change license headers from LGPL to GPL, and few updates
2012-12-19 23:15:43 +01:00
Dries Harnie
b9fc80b5ee
EMI: Support looping chores
2012-07-12 19:58:55 +02:00
Joel Teichroeb
63938ba499
GRIM: Clean up unneeded includes and fix some trailing whitespace
2012-03-26 20:12:00 -07:00
Dries Harnie
f21f2867fb
EMI: Support strings as walk/rest/mumble/turn chores
2012-03-04 22:52:49 +01:00
Joel Teichroeb
d00ac2d91d
EMI: Implement some more actor opcodes
2012-02-17 15:20:52 -08:00
Joel Teichroeb
7ff91c5817
GRIM: Various cleanups to code
2012-02-04 18:07:24 -08:00
Joel Teichroeb
1226e45ac3
EMI: Initial work on getting costumes to draw animations.
...
Also, an initial split-off for EMI from the costume-class,
now uses it as a base class. (somaen)
2012-02-02 22:01:09 +01:00
Paweł Kołodziejski
e350c7f777
renames
2012-01-06 23:29:45 +01:00
Andrea Corna
49071ee661
GRIM: Make Costume and TextSplitter load from a stream instead of a data Block
2011-12-30 17:17:08 +01:00
Joel Teichroeb
3a61eaee8c
EMI: Make chores actually work and fix compile error. Also fix a warning
2011-12-23 11:58:35 -08:00
Joel Teichroeb
f94533e228
EMI: More work on getting EMI to do stuff
2011-12-21 20:35:37 -08:00
Giulio Camuffo
c55abd8980
GRIM: Pass around the frame time as a uint, not a float.
2011-12-16 15:22:02 +01:00
Giulio Camuffo
98716036cd
GRIM: Fix compilation.
2011-12-14 17:03:57 +01:00
Joel Teichroeb
5fa7a5e990
GRIM: Made head a pointer so costume.h does not need to include head.h
2011-12-13 11:45:57 -08:00
Joel Teichroeb
a45b112fea
GRIM: Removed dependancy from costume.h on chore.h
2011-12-13 11:35:27 -08:00
Joel Teichroeb
80d1f8fc32
GRIM: Split classes out of costume.
2011-12-13 09:05:31 -08:00
Giulio Camuffo
e6ccad7657
GRIM: Better handling of the bounding boxes for the actors' text objects.
2011-12-12 18:57:17 +01:00
Giulio Camuffo
c62424bfcb
GRIM: Moved the head functions inside the head class. Fix #413
...
The lookAtRate is per costume, not per actor.
2011-11-04 16:41:09 +01:00
Giulio Camuffo
fdafbda3e2
GRIM: Reset the fade mode when starting a chore.
2011-10-10 17:28:03 +02:00
Giulio Camuffo
8fb5b6e002
GRIM: Some minor fixes.
2011-09-18 17:10:12 +02:00
Giulio Camuffo
d036ca27dc
GRIM: Use the new Math::Angle class.
2011-09-18 16:24:08 +02:00
Giulio Camuffo
0083c8619c
MATH: Move the math classes to their own math/ dir and Math namespace.
2011-09-14 23:05:52 +02:00
Giulio Camuffo
9b8f540ccd
GRIM: Properly implemented the costume marker callback function.
2011-09-03 18:27:53 +02:00
Giulio Camuffo
e40734303b
GRIM: Removed the g_currentUpdatedActor hack.
2011-08-24 16:51:44 +02:00
Giulio Camuffo
8c8587eabc
The last modifications about Costume::reset() weren't necessary.
...
Revert 8ea3e3 and d3b15c
2011-07-29 16:47:47 +02:00
Giulio Camuffo
8ea3e3776d
GRIM: Don't reset the components of a chore if it was started right after stopping it.
2011-07-29 16:30:19 +02:00
Giulio Camuffo
d3b15cfa17
GRIM: When stopping a chore reset the components at the next update, not immediately.
2011-07-29 16:13:46 +02:00
Giulio Camuffo
54e1478e85
GRIM: Calculate the bounding box of the meshes only if necessary.
2011-07-25 23:42:07 +02:00
Giulio Camuffo
784f9ce5b9
GRIM: Move Model::HierNode, Mesh and Face outside of Model.
2011-07-22 22:09:49 +02:00
Joni Vähämäki
9f98fccdd9
GRIM: Handle animation fading in KeyframeComponent instead of in Chore. Allows fades to continue even if the chore is stopped, like in the original game.
2011-07-20 22:32:10 +03:00
Giulio Camuffo
b96f6de526
GRIM: Call resetColormap() on all the children of a component whose cmap was set.
...
Fix #268 Fix #269
2011-07-19 18:38:27 +02:00
Giulio Camuffo
f6d30ca6dd
GRIM: Cleanup. Remove Costume::cleanupChore().
2011-07-17 16:19:48 +02:00
Giulio Camuffo
1db7e0de31
GRIM: Don't reset all the components when stopping the talking chore. Fix #253
2011-07-08 17:41:13 +02:00
Joel Teichroeb
013fb385cb
Implemented some more functionality for EMI.
2011-06-02 15:34:34 -07:00
Giulio Camuffo
6bca067e57
Merge pull request #187 from Akz-/master
...
GRIM: Some animation fixes.
2011-06-01 13:02:38 -07:00
Joni Vähämäki
39d149b8bb
GRIM: Ignore talk chores in IsActorChoring().
2011-06-01 20:23:29 +03:00
Giulio Camuffo
94c9c7a38c
GRIM: Make sure we don't try to stop a non-existant chore. Thanks to Klusark.
...
Fix #191
2011-05-31 16:23:58 +02:00
Joni Vähämäki
ca178ac724
GRIM: Update chores in the order in which they are played.
2011-05-27 23:10:27 +03:00