Commit Graph
156 Commits
Author SHA1 Message Date
Le Philousophe 1e4696f6d0 OPENGL: Rework renderer selection code
Add a class to group all renderer related (static) functions.
This allows to have getBestMatchingAvailableType inline in all engines.

The matching code is now shared between all engines but allows
customization for engines needing it (Grim, WME3D).

The new code takes runtime availability of features to select the
best renderer.
It avoid crashes when user choosed OpenGL but GLES2 is used.
2022-04-03 22:17:19 +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
Cameron Cawley f01c5321c4 STARK: Don't exit immediately if modded assets are enabled but not supported 2021-12-20 23:18:36 +01:00
Paweł Kołodziejski 50f9fa3df6 STARK: Fixed minor coverity warnings 2021-12-20 19:22:39 +01:00
Paweł Kołodziejski bd72851697 STARK: Preliminary support for software renderer 2021-11-20 17:33:57 +01:00
Paweł Kołodziejski 862bd7d05f GRAPHICS: Move FrameLimiter from engines to common graphics code 2021-10-27 23:11:20 +02:00
Paweł Kołodziejski 565cb7c7cb STARK: Added initial TinyGL renderer 2021-10-20 22:26:49 +02:00
Thunderforge 35c3668275 COMMON: Fixing misspellings "occured" -> "occurred"
Fixing this misspelled word across multiple parts of the codebase.
2021-09-25 21:36:42 +03:00
Thierry Crozat 3e06dd3630 STARK: Fix in-game quit option not respecting the Always RTL option
This was due to the engine both exiting immediately from the game loop
and pushing a QUIT_EVENT (through the call to quitGame()). This meant
that that QUIT_EVENT was processed only after the game had already
returned to the launcher, causing the launcher to close.

This fixes bug #12904
2021-09-06 20:00:02 +01:00
Antoniou Athanasios 9fa924c09f STARK: Detect TLJ Steam version to fix missing bg resource (#3318)
STARK: Detect TLJ Steam version to fix missing bg resource

An alternative fix for bug https://bugs.scummvm.org/ticket/12762 that replaces the previous fix.

This fix will set a flag at detection time (when adding the game to ScummVM)
so that the Steam version will skip trying to load a background image resource
from the exe file (game.exe), since that specific version is missing a valid version
of this resource which leads to an assertion fault.

It wont be necessary to re-add (redetect) the game, if it has already been added before this fix. The current AdvancedDetector implementation takes care of setting the flag at game launch. (As explained by sev) we run detection on every run and returning the relevant detection entry.

The previous fix was this commit which was based only on version info of the exe file:
https://github.com/scummvm/scummvm/commit/565a0559ed09660daa83cd529afa4e0efb6949c5

That one also works without having to re-add/re-detect the game, but perhaps just checking
version info is not the best approach.
2021-08-29 14:14:29 +03:00
ysj1173886760 0b070c9f06 STARK: move debug channels to metaEngineDetection 2021-05-22 01:34:57 +02:00
Cameron Cawley 03e8f0ed2d ENGINES: Remove code for toggling fullscreen mode (#2523)
* GRIM: Remove code for toggling fullscreen mode

* MYST3: Remove code for toggling fullscreen mode

* STARK: Remove code for toggling fullscreen mode

* ENGINES: Remove the fullscreen argument from initGraphics3d()
2020-10-14 07:49:28 +02:00
Paweł Kołodziejski 35b9cccbde ALL: Merge ResidualVM 2020-10-09 19:44:13 +02:00
Pawel Kolodziejski 8f4e1c6cf3 Sync with ScummVM rev. 654b8208b8 2020-06-22 08:14:16 +02:00
Bastien Bouclet 8c58441c53 STARK: Update debugger code to match shared code 2020-05-12 19:55:29 +02:00
Bastien Bouclet 72767da72f STARK: Implement the new shared autosave system
Fixes #1633.
2020-05-11 19:32:18 +02:00
Pawel Kolodziejski b586571900 ALL: synced with ScummVM commit 09bf38c120 2020-05-09 20:05:54 +02:00
Bastien Bouclet 332e94f6c0 STARK: Improve save file error handling 2020-01-02 19:49:17 +01:00
Bastien Bouclet 660bf271e4 STARK: Allow using more pages for the save load menu
That way all the saves created using the ResidualVM menu can be loaded
using the in-game menu.
2019-06-26 21:07:25 +02:00
Bastien Bouclet c8dc255bf3 STARK: Add autosave support 2019-02-07 08:20:41 +01:00
Bastien Bouclet 32178ee0dc STARK: Display a warning when the user is missing datafiles 2019-01-29 08:42:55 +01:00
Bastien Bouclet 2b9242c8ea STARK: Delay playing FMVs until all the location change scripts are done
This ensures no sound is started by the scripts after the game has
already been paused. In-game sounds no longer play during FMVs.
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 f95fadd25e STARK: Load replacement files from the mods directory
Each mod should be its own directory in the mods subdirectory
of the game data path. Mods are loaded in alphabetical order.
2019-01-21 09:41:11 +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 189ba0a40d STARK: Rework the services instanciation and move keyboard handling 2019-01-03 07:46:19 +01:00
Bastien Bouclet fee73851f0 STARK: Delay changing screen after a FMV ends
Prevents the game screen from being visible for one frame before scripts
have a chance to update it after a FMV ends.

All user interface screen changes should probably be updated to work
that way. Running the update method of a screen and the render method of
another on the same frame seems really bad.
2018-12-02 19:51:42 +01:00
Bastien Bouclet cf02210729 STARK: Inventory window fixes
* Show an active cursor when hovering the scroll buttons
* Clicking on a inactive scroll button no longer closes the inventory
* Changing the visibility of the inventory window now closes the action
   menu.
* The inventory management hotkeys only work when the game is
   interactive.
* Hide the inventory window when loading a save.
* Hide the action menu when loading a save.
2018-11-25 13:39:57 +01:00
Bastien Bouclet 24eda9e18d STARK: Adjust a few TODOs 2018-11-22 13:35:47 +01:00
Bastien Bouclet aa2075fc48 STARK: Ignore keyboard repeat events 2018-11-22 12:35:05 +01:00
Bastien Bouclet 191113819b STARK: Save and restore the previous location stack
Fixes #1497.
2018-11-17 10:59:07 +01:00
Bastien Bouclet b28d8de2ff STARK: Handle window resizes happening while the engine is paused 2018-10-13 18:33:01 +02:00
Bastien Bouclet 0f3cf3e511 STARK: Introduce a onGameLoop event to stop abusing onRender for updates
Fixes #1492 where rendering the screen to save a screenshot would run
some dialog related script updates.
2018-08-28 21:24:33 +02:00
Bastien Bouclet 238d554a56 STARK: Apply the sound volume settings on startup 2018-08-15 20:08:53 +02:00
Douglas Liu 25d17923be STARK: Add a prompt to the log when the game is paused 2018-07-15 23:25:39 +08:00
Douglas Liu 180294c02f STARK: Bind returning to previous screen to key Esc 2018-07-14 15:57:18 +08:00
Douglas Liu 19bd1092cb STARK: Improve saving with key F2 2018-07-11 22:52:23 +08:00
Douglas Liu f64a186097 STARK: Leave a note of saving screenshot with key F8 2018-07-10 23:45:15 +08:00
Douglas Liu 0587de6c45 STARK: Bugs fixing 2018-07-10 23:41:03 +08:00
Douglas Liu 7fb942f073 STARK: Bind displaying exit locations to key X 2018-07-10 23:33:04 +08:00
Douglas Liu b0e25564cb STARK: Bind dialog options to number keys 2018-07-03 23:06:36 +08:00
Douglas Liu 762a9baab1 STARK: Bind dialog panel to related keys 2018-07-02 23:26:24 +08:00
Douglas Liu 82d818135b STARK: Bind inventory scrolling to related keys 2018-07-02 18:12:19 +08:00
Douglas Liu 1ecb8438e8 STARK: Bind pausing to key P 2018-07-02 16:32:54 +08:00
Douglas Liu 3d5bb3601a STARK: Bind cycling inventory to Key A and S 2018-07-02 13:14:24 +08:00
Douglas Liu 719c2ad09a STARK: Bind toggling subtitles to F9 2018-07-02 11:56:05 +08:00
Douglas Liu 98d2d9e06f STARK: Bind inventory to key I 2018-07-01 23:20:51 +08:00
Douglas Liu 1065800183 STARK: Bind exit to ALT+X and ALT+Q 2018-07-01 23:20:50 +08:00
Douglas Liu 874f468ba0 STARK: Bind quiting to main menu to F10 2018-07-01 23:20:50 +08:00