Commit Graph

14025 Commits

Author SHA1 Message Date
Christoph Oelckers 6589222da6 Merge branch 'scriptable_cutscenes' into newrenderer 2021-05-03 18:50:41 +02:00
Christoph Oelckers d206a767b2 - added render workaround for CP07. 2021-05-03 17:48:35 +02:00
Christoph Oelckers d8b808576f - restrict the sky portal shortcut to skies in scenes where there are no other portals.
This entire setup does not work with sector portals, causing various render glitches in Shadow Warrior's portals. This also applies to skies within portals so it is now restricted to single sky setups.
2021-05-03 14:52:23 +02:00
Christoph Oelckers 56fcf904b5 - Backend update from GZDoom. 2021-05-03 14:48:55 +02:00
Christoph Oelckers 389340f97c - use sections for rendering. 2021-05-03 00:15:09 +02:00
Christoph Oelckers 30b1b046e4 - added an intermediate data structure to decouple the rendering from the immediate map data.
This will be needed for sectors consisting of disjoint parts and for providing some help with addressing rendering anomalies
2021-05-03 00:04:36 +02:00
Christoph Oelckers f40e52ab34 - fixed issues with validation of command line specified main game GRP file name. 2021-05-02 22:56:53 +02:00
Christoph Oelckers 8003ab6fa3 Merge branch 'scriptable_cutscenes' into newrenderer 2021-05-02 22:37:46 +02:00
Emile Belanger b83928f437 Clear Viewpointbuffer position so it does not go to infinity 2021-05-02 22:22:43 +02:00
Christoph Oelckers c9791bc148 - renamed PlayerHorizon function to deconflict with the same-named struct 2021-05-02 21:56:45 +02:00
Christoph Oelckers 698d62bbc6 - merged FixMapInfo into loadcons.
No need to delay the remaining content. The reasons for the separate function no longer exist.
2021-05-02 19:41:24 +02:00
Christoph Oelckers 60d007fa93 - Duke: fixed non-scrolling SE24. 2021-05-02 19:32:20 +02:00
Christoph Oelckers a1381c0ff2 - fixed Blood cutscene setup to avoid dependency on the sound code initialization.
It now only stores the sound name or ID but not the internal index which is only looked up when needed.
2021-05-02 18:10:59 +02:00
Christoph Oelckers 575a38d835 - added RMAPINFO handler for Blood's message array. 2021-05-02 18:00:11 +02:00
Christoph Oelckers c1b4fdff83 - added a "clearall" instruction to RMAPINFO.
Since, unlike GZDoom, this format is additive and uses defaults for map progression it would otherwise a bit tricky to compile new episodes without accidentally pulling in some original special features.
2021-05-02 17:42:19 +02:00
Christoph Oelckers dfd47ea33a - migrated SW to RMAPINFO as well.
Also removed the 'definecutscene' code from the .def parser as this was never meant to be more than a temporary solution.
2021-05-02 17:35:25 +02:00
Christoph Oelckers 4b064b9f34 - migrated Exhumed's level setup to RMAPINFO.
This game never had a proper setup so this also fixes the crashes with visiting the multiplayer maps.
2021-05-02 15:54:19 +02:00
Christoph Oelckers bb9d492db6 - migrated RRRA as well. 2021-05-02 14:01:10 +02:00
Christoph Oelckers a28b4ea06a - migrated Route66 and fixed some issues pointed out by this mod. 2021-05-02 13:29:41 +02:00
Christoph Oelckers 6f4e380728 - migrated RR's cutscene definitions.
Also turned several level-specific init options into map flags or map parameters.
2021-05-02 13:12:24 +02:00
Christoph Oelckers 15f9861633 - summary screens, too. 2021-05-02 12:28:32 +02:00
Christoph Oelckers 4458f8c929 - migrated the global cutscenes to RMAPINFO as well. 2021-05-02 12:22:40 +02:00
Christoph Oelckers 2d4e91615f - migrated Duke's cutscene definitions to the new RMAPINFO.txt. 2021-05-02 12:02:55 +02:00
Christoph Oelckers dbd179be5c - RR progression fixes.
* E1L7 abuses an 'end the game' command to progress to E2L1, this needs special treatment.
* handle ENDGAME.MAP more cleanly by injecting an 'engine.con' into the compilation chain to define its map record. The main issue with this is that it needs to be defined before the regular CONs run.
* check the already defined 'clearinventory' and 'clearweapons' flags that are exposed through RMAPINFO (Duke/RR only so far.)
2021-05-02 10:55:22 +02:00
Christoph Oelckers 9bc210fe35 - fixed RR weapon clearing in E2L2 and RRRA E1L3. 2021-05-02 10:37:20 +02:00
Christoph Oelckers 1798380f23 - adapted map transition in Duke/RR.
There's still some issues which will be taken care of by adding map flags.
2021-05-02 10:35:43 +02:00
Christoph Oelckers e9385ed4e8 - adapted Blood to the new level progression features and simplified several parts, particularly the clumsy retrieval of the next level.
Some cheats in Duke will not work correctly with this commit!
2021-05-02 09:08:57 +02:00
Christoph Oelckers 93bfc35ad6 - use the volumes to find the starting maps for the menu and the clusters for the cutscenes. 2021-05-02 01:01:30 +02:00
Christoph Oelckers 825963661b - migrated volumes to the new storage. 2021-05-02 00:35:56 +02:00
Christoph Oelckers 03b9275244 - removed debug printf. 2021-05-01 23:59:45 +02:00
Christoph Oelckers 727244d52d - changed 3 places to call the proper map progression function.
These ignored the explicit settings in the map definition.
2021-05-01 23:10:04 +02:00
Christoph Oelckers f3eb476fbf - minor cleanup. 2021-05-01 23:09:24 +02:00
Christoph Oelckers 13b21d3ed9 - removed script access to variables that no longer contain what they once did. 2021-05-01 23:08:51 +02:00
Christoph Oelckers f732d4ec64 - added MAPINFO parser, based on GZDoom's.
This isn't hooked up yet, but all necessary structures and fields have been added so that selected pieces can be tested.
2021-05-01 22:52:28 +02:00
Emile Belanger 4a05b9cb5b Clear Viewpointbuffer position so it does not go to infinity 2021-05-01 21:29:03 +02:00
Christoph Oelckers 51aeb6dd39 - fixed issues with skipping over an entire cutscene.
This must never destroy the last element of the cutscene because it is still needed to draw something while shutdown is performed.
2021-05-01 20:54:57 +02:00
Christoph Oelckers fa3fd9ac8f - removed unused array. 2021-05-01 20:34:43 +02:00
Christoph Oelckers 4c2266ee88 - fixed incomplete SW ending cutscene. 2021-05-01 20:31:51 +02:00
Christoph Oelckers a2a850ea3c - center the texts on Duke's loading screen. 2021-05-01 20:14:30 +02:00
Christoph Oelckers 512f1d852b - fixed: Blood's summary screen needs to stop it sound when it ends. 2021-05-01 20:11:47 +02:00
Christoph Oelckers e0ec0f24d0 - fixed Blood's HUD time display.
This somehow got lost.
2021-05-01 20:08:51 +02:00
Christoph Oelckers f0bd290801 - corrected speed of RR intro videos. 2021-05-01 20:04:22 +02:00
Christoph Oelckers b21dadeef0 - we need to wait a bit before starting the intro scene.
The game timer actually starts before the main loop is ready so we have to wait with the cutscene until the loop is in sync with the timer.
2021-05-01 19:46:17 +02:00
Christoph Oelckers 27799def63 - rewrote movie player so that the decoder backends only perform the decoding but do not draw the frames themselves.
This caused twq problems:

1. It made it impossible to let the client apply effects to the video.
2. The client had no control when rendering stopped.

Now the backends only provide a texture handle that the client must draw. One immediate benefit is that Blood's fixed viewport scaling is now available to all video formats.
2021-05-01 18:59:16 +02:00
sinisterseed 47a09b4f14 - this line also needs to go.
The file doesn't exist anymore, causing project generation to fail.
2021-05-01 15:58:22 +03:00
Christoph Oelckers 6e0089a10d - deleted blood/credits.cpp from the project file. 2021-04-30 22:03:45 +02:00
Christoph Oelckers 10395688bf - must restore the laptop background of Exhumed's LEV20 cutscene each frame.
Also fixed the variable names in this function.
2021-04-30 20:08:36 +02:00
Christoph Oelckers 4069a5096a - scriptified Exhumed's 2D content (minus the programmatic textures.) 2021-04-30 20:08:36 +02:00
Christoph Oelckers 5b54e9c1ad - removed the 26 factor from Duke's par times.
What were they thinking?
2021-04-30 20:08:36 +02:00
Christoph Oelckers 5959543380 - hooked up SW's intermission handling. 2021-04-30 20:08:36 +02:00