Commit Graph
82 Commits
Author SHA1 Message Date
Paweł Kołodziejski 20cb0ae228 ALL: Cleanup ResidualVM -> ScummVM 2021-12-26 21:19:38 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Cameron Cawley f01c5321c4 STARK: Don't exit immediately if modded assets are enabled but not supported 2021-12-20 23:18:36 +01:00
Bastien Bouclet 6e0f5c1c3f STARK: Fix the position of some items beoing incorrect in the game files
Based on a list provided by Faberman
2019-05-16 20:02:30 +02:00
Bastien Bouclet 479fc65e32 STARK: Remove superfluous warnings 2019-02-06 20:44:25 +01:00
Bastien Bouclet ef87472cc8 STARK: Change animation scripts to use the script suspend system
Animation scripts now work the same way as video and skeleton animations
now.

Fixes #1517.
2019-02-01 08:58:56 +01:00
Bastien Bouclet 0dc8726136 STARK: Game view user interface refinements
* Implement the mouse item description delay
* Implement inventory auto close
* Implement action menu auto close
* Implement the action menu item description
2019-01-25 21:02:02 +01:00
Bastien Bouclet e3c6748a7f STARK: Rework skeletal animation blending control
The previous animation blending system had some flows. The
AnimationHandler was owned by the model which was incorrect, since it's
possible to change models during an animation sequence. The
AnimationHandler is now owned by the item, ensuring there is only one
per character instance.

We now ignore animation change requests for one frame. This is because
the scripts often cause an animation change, and request another one the
very next frame. This used to cause issues because we were blending the
latest animation with the previous one which was only active for one
frame, causing a discontinuity. This new solution is kind of a hack.
Hopefully it is good enough and there is no need to implement animation
blending for more than two animations at once.
2019-01-25 09:48:31 +01:00
Bastien Bouclet 5885634c60 STARK: Rework how scripts wait for action animations to complete
Previously scripts were paused for the duration of the animation. This
could lead to issues where scripts would wake up one frame too late or
too early, resulting in animation glitches.

Now, scripts are suspended until the animation is done playing. This
makes sure scripts select the new animation in the same frame as the one
they were waiting for.

Fixes incorrect frames sometimes being visible before or after video
animation. Reduces a bit the animation blending issues for skeletal
animations. More work is still needed to improve skeletal animation
blending for the remaining glitches to be fixed.
2019-01-24 12:38:03 +01:00
Bastien Bouclet c02152d006 STARK: Allow loading modded replacements for the Smacker animations
The replacements can be encoded either in Smacker or Bink.
2019-01-24 12:37:42 +01:00
Bastien Bouclet 24eda9e18d STARK: Adjust a few TODOs 2018-11-22 13:35:47 +01:00
Douglas Liu f4cf5ca073 STARK: Remove a useless casting 2018-08-06 22:29:59 +08:00
Douglas Liu 02d7cefb09 STARK: use applyToItem() to set castsShadow 2018-08-05 12:09:30 +08:00
Douglas Liu a16d469231 STARK: Render exit symbols on the screen 2018-07-09 23:49:51 +08:00
Bastien Bouclet 8b5e7433f5 STARK: Change anim hierarchies to override parent animations 2018-05-03 21:04:49 +02:00
Bastien Bouclet 6659c88498 STARK: Use the new stream float read/write methods 2018-04-14 11:19:19 +02:00
Bastien Bouclet 442008040e STARK: Small formatting fix 2018-02-11 07:30:18 +01:00
Bastien Bouclet a7a7b4468a STARK: Add save state serializers to more entities 2017-06-05 09:44:49 +02:00
Bastien Bouclet c8f3068380 STARK: Fix skeletal animations sometimes playing twice
If the game loop occurred exactly at the animation loop point,
the animation would start playing again from the beginning.
2017-05-28 09:30:46 +02:00
Bastien Bouclet aaa56f34ed STARK: Implement opcode Item Set Activity 2017-05-26 14:46:09 +02:00
Bastien Bouclet 5577b3eece STARK: Pause the currently playing videos when ResidualVM pauses the engine
This way, the videos don't play too fast because they try to make up for the
pause time when resuming.
2017-05-25 21:31:21 +02:00
Bastien Bouclet 23f1222eec STARK: Implement the floatScene opcode 2017-05-25 21:31:17 +02:00
Bastien Bouclet 1bd4b2ccf9 STARK: Implement random idle action animations 2017-05-25 21:30:03 +02:00
Bastien Bouclet 74704d522a STARK: Implement lipsync 2017-01-02 19:48:24 +01:00
Bastien Bouclet e72761a05e STARK: Play an anim script when no specific animation handling is provided 2016-11-12 09:18:58 +01:00
Bastien Bouclet 368d71cfd5 STARK: Implement animation triggered sounds
Mainly used for footstep sounds
2016-11-10 07:57:03 +01:00
Bastien Bouclet 5e55813165 STARK: Implement Smacker anim framerate override 2016-04-16 08:58:08 +02:00
Bastien Bouclet f5e082d13a STARK: Implement skeletal animation blending 2016-04-10 11:35:30 +02:00
Bastien Bouclet 7a090fd5e7 STARK: Move the skeletal animation code around 2016-04-09 17:23:07 +02:00
Bastien Bouclet ac0e6b0668 STARK: Name two Smacker animation fields 2016-01-23 07:01:43 +01:00
Bastien Bouclet 400467ef8f STARK: Make sure items dont keep a pointer to freed anims 2016-01-02 18:00:24 +01:00
Bastien Bouclet 8f3d8d7c6a STARK: Rename AnimSub2 to AnimProp 2016-01-01 07:30:12 +01:00
Pawel Kolodziejski f9e78dc731 STARK: formating code - whitespaces 2016-01-01 07:30:11 +01:00
Bastien Bouclet 0bb9d4ca42 STARK: Demote selecting an invalid anim frame to a warning 2016-01-01 07:30:10 +01:00
Pawel Kolodziejski d0383013df STARK: unsigned is always >= 0 2016-01-01 07:30:07 +01:00
Bastien Bouclet 6b2a527289 STARK: Add some rendering code for prop animations
Textures are rendering incorrectly
2016-01-01 07:30:04 +01:00
Bastien Bouclet 17bec93f72 STARK: Anim subtype 2 have a movement speed as well 2016-01-01 07:30:03 +01:00
Bastien Bouclet 1daf6788ab STARK: Load data for animations with subtype 2 2016-01-01 07:30:03 +01:00
Bastien Bouclet a94a119fb5 STARK: Fix animation briefly flashing wrong position before starting 2016-01-01 07:30:02 +01:00
Bastien Bouclet da7cb98206 STARK: Save various animation data to the state 2016-01-01 07:30:01 +01:00
Bastien Bouclet 5791f4f9c9 STARK: Add initial support for script triggered animations 2016-01-01 07:30:00 +01:00
Bastien Bouclet 417fb64e87 STARK: Rename smacker anim loop flag 2016-01-01 07:30:00 +01:00
Bastien Bouclet 56c2b21eed STARK: Name the 'loop' anim field 2016-01-01 07:30:00 +01:00
Bastien Bouclet 7653c5cbf5 STARK: First iteration of actually walking 2016-01-01 07:29:57 +01:00
Bastien Bouclet 38f417e0c6 STARK: Some renaming for consistency 2016-01-01 07:29:57 +01:00
Bastien Bouclet c57b691b71 STARK: Name an animation field 2016-01-01 07:29:57 +01:00
Bastien Bouclet c27c8d2d4e STARK: Remove an unused method parameter 2016-01-01 07:29:57 +01:00
Bastien Bouclet 372c1cc7bc STARK: Enable interaction with smacker anims 2016-01-01 07:29:56 +01:00
Einar Johan Trøan Sømåen 2daa2435a2 STARK: Position AnimVideos according to their position-array, and ignore the x-y coord used when rendering them. 2016-01-01 07:29:56 +01:00
Bastien Bouclet 7e621e13f6 STARK: Add mouse picking for 3D items
This works at the bone bounding box level, whereas the original does
pixel-perfect picking.
2016-01-01 07:29:56 +01:00