Commit Graph
119 Commits
Author SHA1 Message Date
Cameron Cawley 5bd0ec43a6 STARK: Fully separate bitmaps and textures 2023-01-15 11:54:11 +02:00
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
Paweł Kołodziejski 7aab569882 STARK: Separated texture usage for 2D or 3D 2021-10-20 22:24:14 +02:00
Paul Gilbert baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Dmitry Gladkov 9487c4bdd3 STARK: Workaround to support Emma's lipsync 2020-10-26 07:12:03 +01:00
Paweł Kołodziejski eef527e227 STARK: Not dot use ellipsis in text for game. 2020-10-16 23:27:18 +02:00
Pawel Kolodziejski 27e12d8a96 ALL: Eliminate LOCAL_PI macro 2020-09-23 23:20:23 +02:00
Bastien Bouclet 308c018141 STARK: Add an engine option to enable font anti-aliasing
Makes use of stem darkening which requires at least FreeType 2.9
2019-06-29 16:42:55 +02:00
Bastien Bouclet b2caa0be9e STARK: Only snap vertices to the pixel grid for text
Fixes a very minor issue with the shake effect where all the scene
elements don't move with the same offset.
2019-05-30 11:44:43 +02:00
Bastien Bouclet f24c2b9f3d STARK: Fix scaling of the flashing and exploding effects
Rendering was incorrect when using hi-resolution replacement graphics.
2019-05-18 11:04:34 +02:00
Bastien Bouclet 80512f30f5 STARK: Faster alpha pre-multiplication for PNGs 2019-04-28 09:21:37 +02:00
Bastien Bouclet 38dd1aa961 STARK: Warn when trying to load indexed PNG images 2019-02-06 20:44:25 +01:00
Bastien Bouclet 9f7fe9b6c0 START: Fix crash when trying to draw empty text visuals 2019-02-03 19:29:17 +01:00
Bastien Bouclet f8203d8b5f STARK: Use the actual font bounding box when rendering text
Prevents parts of characters from being cut off.
2019-02-01 08:58:56 +01:00
Bastien Bouclet 9bbaa69dba STARK: Make the text color endian-safe 2019-01-28 21:23:14 +01:00
Bastien Bouclet 462f087cdb STARK: Add text encoding handling 2019-01-28 18:20:00 +01:00
Bastien Bouclet 282d82df85 STARK: Implement the confirmation dialogs using the original style 2019-01-27 17:53:50 +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 281ecbdc86 STARK: Optionally do alpha pre-multiplication when loading PNGs 2019-01-20 10:52:04 +01:00
Bastien Bouclet b9a1b8eefd STARK: Optionally use linear filtering when rendering backgrounds 2019-01-16 20:20:39 +01:00
Bastien Bouclet 45c5cf0c80 STARK: Add loading of replacement PNG files for the background images
The replacement PNG files can have larger dimensions when compared to
the original XMG images, enabling the creation of a high resolution mod.

The game looks for the replacement files in the game directory and then
in the xarc subdirectory of the directory containing the archive in
which the xmg picture to be replaced is located. For instance:
'1e/00/xarc/fountain_layercenter.png' should be used for the Venice park
background.
2019-01-16 19:43:22 +01:00
Bastien Bouclet 8b3b309200 STARK: Don't display animations that have not been initialized
Prevents a garbage frame from being displayed if the animation is not
updated on the same frame it is started. Happens with the hovercar
animation in April's room and when the subway enters the station.
2019-01-05 16:54:39 +01:00
Bastien Bouclet 3c80722658 STARK: Use the center of item's bounding rect as the scroll target 2018-12-02 19:51:35 +01:00
Bastien Bouclet 036cca6b56 STARK: Implement lighting for props 3d models 2018-12-01 11:25:55 +01:00
orangeforest11 7b637b22c1 STARK: Changed the action menu and cursor to being scaled 2018-08-15 15:08:25 +02:00
Douglas Liu 801fc74713 STARK: Move maxShadowLength from RenderEntry to Scene 2018-08-04 16:11:14 +08:00
Douglas Liu fedd80005a STARK: Move _castsShadow from RenderEntry to VisualActor 2018-08-04 15:43:41 +08:00
Douglas Liu 2d613b6ef0 STARK: Pass the Layer3D::_maxShadowLength to the RenderEntry 2018-07-25 22:07:23 +08:00
Douglas Liu 29ca338624 STARK: Apply AnimSkeleton::castsShadow 2018-07-25 22:07:21 +08:00
Douglas Liu 20d54d788f STARK: Improve on hardcoded parameters 2018-06-09 00:02:45 +08:00
Douglas Liu 10791244f8 STARK: Add SpecialFX comments 2018-05-25 11:19:01 +08:00
Douglas Liu eacc77a898 STARK: Enable special effects setting (unchecked) 2018-05-24 15:50:43 +08:00
Douglas Liu 4bf241d399 STARK: Fix blank text bounding box and implement help text 2018-05-21 15:30:56 +08:00
Douglas Liu e779bc8b1c STARK: Style problems fixed 2018-05-21 15:30:56 +08:00
Douglas Liu 6f740cad70 STARK: Fix the empty text bounding area 2018-05-21 15:30:56 +08:00
Bastien Bouclet f15f8b3996 STARK: Don't show the cursor during FMVs 2018-04-08 20:07:40 +02:00
Bastien Bouclet b80493cc5e STARK: Implement the fish effect 2018-04-08 09:14:37 +02:00
Snejp a09c1c5122 STARK: Implement the flashing image animation
Used when a new entry has been added to the diary.
2018-04-07 11:10:41 +02:00
Bastien Bouclet f5427617fc STARK: Fix some Coverity warnings 2018-03-31 13:41:36 +02:00
Douglas Liu f7697e93bd STARK: Fix the text resized problem on diary index menu
Fix issue #1402
2018-03-28 18:34:06 +02:00
Bastien Bouclet 98cff7b264 STARK: Implement the fireflies effect 2018-03-11 21:22:54 +01:00
Bastien Bouclet c91536bb07 STARK: Add a visual effect for drawing bubbles on top of the scene 2018-03-11 10:50:59 +01:00
Bastien Bouclet 375c89fd54 STARK: Implement the exploding image animation
Used when getting an inventory item
2018-02-26 06:39:38 +01:00
Bastien Bouclet 61576afabf STARK: Use a separate variable for the target width in the text renderer
Fixes the target width value changing due to rounding errors when
refreshing the text.
2018-02-14 19:59:15 +01:00
Bastien Bouclet 94ca015fc1 Merge pull request #1392 from Snejp/master
STARK: Make mouse hints appear more like in the game
2018-02-10 15:38:51 +01:00
Snejp 014d672491 STARK: Fix all stark engine gcc warnings
Fix warnings detected by Jenkins
2018-02-09 11:36:06 +01:00
Snejp 52e999dc51 STARK: Proper align mouse hints 2018-02-09 01:06:46 +01:00