Christoph Oelckers
5c306c61d6
- better fix for shadow rendering.
2021-04-14 14:46:15 +02:00
Christoph Oelckers
bc007d75de
- make map art work.
2021-04-14 14:16:09 +02:00
Christoph Oelckers
f4ec9a1921
- 4 more .def commands ported
2021-04-13 18:14:46 +02:00
Christoph Oelckers
b5dbc3cf29
- allow specifying startup .con files via GAMEINFO.
2021-04-13 18:08:55 +02:00
Christoph Oelckers
4fe3c50c7c
- used the newly added game ID as reference for GAMEINFO to autoselect which game to start a mod with.
...
While in GZDoom this uses the IWAD name, the same approach is a lot more problematic here because of name duplications with far more incompatible content.
So this allows targeting a group of base games instead of one specific version.
2021-04-13 18:08:55 +02:00
Christoph Oelckers
6ad3ac8ef9
- added GameID field to GrpInfo.
...
This is for allowing new features easier referencing of the various records.
2021-04-13 18:08:55 +02:00
Christoph Oelckers
230312e7f3
- re-fixed Blood skill selection.
2021-04-13 18:08:55 +02:00
Mitchell Richters
7b57df3c8f
- Exhumed: Redo player panning code.
...
* Initial implementation from d32dcd5f8e
was not working properly and already had some workarounds for when the player was underwater, etc.
* Re-read implementation in GDX and rebased off of it.
* Fixes #303 .
2021-04-13 21:56:01 +10:00
Christoph Oelckers
eaebcfcd7d
- Exhumed: hotfix for moving on sloped floors
2021-04-13 00:31:50 +02:00
Christoph Oelckers
88fb2185fa
- Blood: default skill is 2, not 3.
2021-04-13 00:31:49 +02:00
Christoph Oelckers
92cdec077d
- fixed some bogus range checks in automap code.
2021-04-12 20:54:12 +02:00
Christoph Oelckers
798cf2f973
Merge branch 'newrenderer2' of https://github.com/coelckers/Raze-private into newrenderer2
2021-04-12 20:25:56 +02:00
Christoph Oelckers
9598b626c9
Merge branch 'master' into newrenderer2
2021-04-12 20:03:50 +02:00
Christoph Oelckers
1e40e93da4
- fixed the vertical offsets of the World Tour skies.
...
They were rendered too low.
2021-04-12 19:47:16 +02:00
Christoph Oelckers
aed7e8166e
- fixed setup of startup title.
2021-04-12 19:39:42 +02:00
Christoph Oelckers
89be30b720
- handle fullbright sprite hackery using negative shade values.
2021-04-12 18:57:10 +02:00
Christoph Oelckers
efe76a6647
- Blood: fixed crash with badly defined drop objects.
...
Got -1 for picnum there, this was causing crashes.
2021-04-12 16:32:42 +02:00
Christoph Oelckers
bf019ac028
- Build must draw the sky for completely closed sectors as well.
2021-04-12 16:31:44 +02:00
Christoph Oelckers
3cc05e5532
- fixed handling of single-tile skies with palette translation.
2021-04-12 16:00:00 +02:00
Christoph Oelckers
26d737c279
- fixed double-add of xoffset for wall sprites.
2021-04-12 15:50:52 +02:00
Christoph Oelckers
10d0de8dbf
Merge branch 'master' into newrenderer2
2021-04-12 15:06:12 +02:00
Christoph Oelckers
a15ac43722
- enable embedding of blood.rff and sounds.rff in mod archives when playing Blood
...
Some mods provide pregenerated resources, this allows loading them without picking them apart first.
2021-04-12 00:31:36 +02:00
Christoph Oelckers
f87e40131f
- Blood: add a dummy sound entry at index 0.
...
Parts of the sound system treat entry 0 as "no sound" so nothing placed there would play.
This made the one custom sound in "The Way of Ira" not play because as the last sound being defined it ended up in the first, invalid slot.
2021-04-12 00:31:36 +02:00
Christoph Oelckers
d25838fe15
- Blood: fixed issue with INI detection when having content added by RFS files.
2021-04-12 00:31:36 +02:00
Christoph Oelckers
135dd1f081
- added PlaySound CCNDs.
2021-04-12 00:31:23 +02:00
Christoph Oelckers
9b977ba96e
- fixed mixup of values 0 and -1 in sound code.
...
0 means 'default', -1 means 'silent'. This caused playback issues for useSoundGen. All other places were passing proper volume values along, this is the only one to read the volume from map data.
2021-04-11 22:42:24 +02:00
Christoph Oelckers
6142f9d795
- added CHANF_FORCE flag for forcing non-looped sounds to start, even when sound is paused.
...
Blood needs this for its PlayerSound controller, which is run right on map load - so without this it wouldn't start the sound when a map is initiated from the console.
2021-04-11 21:14:09 +02:00
Christoph Oelckers
fd6a71cac5
- fixed a random crash with an empty sprite I just experienced.
2021-04-11 21:14:09 +02:00
Christoph Oelckers
ef95754e87
- fixed bad texture checks.
2021-04-11 18:38:26 +02:00
Christoph Oelckers
aebcc13c4a
- migrated voxel parsing stuff.
2021-04-11 18:37:11 +02:00
Christoph Oelckers
c33eea2540
- migrating 'tint .def command.
2021-04-11 15:23:42 +02:00
Christoph Oelckers
42d02834b1
Merge branch 'master' into newrenderer2
...
# Conflicts:
# source/build/include/build.h
# source/build/src/polymost.cpp
# source/build/src/voxmodel.cpp
# source/core/gamecontrol.cpp
# source/core/gamestruct.h
# source/games/blood/src/animatesprite.cpp
# source/games/blood/src/misc.h
# source/games/blood/src/view.cpp
# source/games/duke/src/render.cpp
# source/games/sw/src/draw.cpp
# source/games/sw/src/game.h
# source/games/sw/src/jsector.cpp
# source/glbackend/glbackend.cpp
2021-04-11 14:38:56 +02:00
Christoph Oelckers
0ee28fb45e
- also handle SW's voxels.
2021-04-11 13:38:23 +02:00
Christoph Oelckers
e5e23cd63c
- make sure voxels are being precached.
...
In Blood's case it also needs to check the game-side array to find everything.
2021-04-11 13:19:48 +02:00
Christoph Oelckers
32250f704f
- mograted Blood's precaching to the backend's implementation.
2021-04-11 12:42:59 +02:00
Christoph Oelckers
6342926871
- disabled the QAV preload calls in Blood.
...
Aside from not having been functional, this is ultimately more harmful than useful as it forces loading of a large number of textures at the same time during gameplay instead of spreading them out.
2021-04-11 12:10:52 +02:00
Christoph Oelckers
d663d84596
- changed precaching setup for Exhumed.
...
This looks overly simplistic - I doubt it's enough to catch everything.
2021-04-11 10:54:10 +02:00
Christoph Oelckers
e4cf768fa8
- call StartPrecaching to keep Vulkan happy.
2021-04-11 10:50:04 +02:00
Mitchell Richters
e959226914
- Fix RRRA bike/boat angle adjustments following changes in f343bd8d5e
.
...
* Because we're wrapping a negative number around to be unsigned, we need to do that after we've done our bit-shift operations.
2021-04-11 18:34:07 +10:00
Christoph Oelckers
387c62d584
- rewrote SW's precaching code.
...
* made it palette aware
* use backend facilities to track precached data.
* fixes bug in animation precaching loops - they only precached the base index over and over again.
2021-04-11 10:20:52 +02:00
Christoph Oelckers
9fd3ab6b5e
- fixed texture precaching.
...
After the migration to GZDoom's full backend this never created any textureds when precaching things.
2021-04-11 09:59:55 +02:00
Mitchell Richters
f343bd8d5e
- Fix death camera issues stemming from f254eeb465
.
...
* Adjustment in `__addadjustment()` needs to be signed.
* Output of `bvectangbam()` needs to be signed before Duke/SW left-shift the value.
2021-04-11 17:52:29 +10:00
Mitchell Richters
534271c62a
- PlayerHorizon::interpolatedsum(): Cut over interpolation code to inline functions that was missed when doing e76f63e2c0
.
2021-04-11 17:50:32 +10:00
Mitchell Richters
656705bcd7
- binangle: Add signedrad()
and signeddeg()
methods for consistency with the unsigned methods.
...
* Left out from f254eeb465
.
2021-04-11 17:02:44 +10:00
Mitchell Richters
e76f63e2c0
- Consolidate all game interpolation code into inline functions.
2021-04-11 16:45:35 +10:00
Christoph Oelckers
b3bcedda6c
- moved backend independent HUD code out of glbackend.cpp.
2021-04-11 08:40:18 +02:00
Christoph Oelckers
0bdbf0f1cb
- fixed: alpha was never set for voxels.
...
Fixes #304
2021-04-11 08:26:36 +02:00
Mitchell Richters
f254eeb465
- binaryangle.h: Remove lookangle
class and replace use with binangle
.
...
* Added in fca846272e
to deal with signed adjustments but its just not needed.
* Made better use of `binangle`/`fixedhoriz` class getters and setters than before as well.
2021-04-11 15:45:53 +10:00
Christoph Oelckers
184d9be6b1
- fixed palette setup for duplicate base palettes.
...
Due to some old code it could happen that these weren't fully set up and missed their translations.
Fixes #301 - Blood's invulnerability palette is identical to the base.
2021-04-10 21:42:53 +02:00
Christoph Oelckers
addfe4e904
- activate the progress bar on the startup screen.
2021-04-10 19:28:46 +02:00
Christoph Oelckers
db5fbe3bbb
- make the startup banner in the initial console window work.
2021-04-10 19:14:30 +02:00
Christoph Oelckers
a5ed7ba8a3
- two more simple .def commands.
2021-04-10 16:35:29 +02:00
Christoph Oelckers
6b684e74ba
- migrated 'texture' .def command.
2021-04-10 14:09:08 +02:00
Christoph Oelckers
057b8a7354
- cleanup of bvectan family of functions.
...
This can be greatly simplified to a single bvectangbam function using atan2 directly.
2021-04-10 12:54:29 +02:00
Christoph Oelckers
b4d89cbac3
- got rid of the remaining occurences of gethiq16angle and all related tables.
2021-04-10 12:10:28 +02:00
Christoph Oelckers
35221188db
- inlined Clipper::PointToAngle
2021-04-10 10:56:11 +02:00
Christoph Oelckers
2e191f2742
- consolidated the SetLightAndFog code fragments.
2021-04-10 10:34:20 +02:00
Mitchell Richters
8ebd1a9ebc
- binaryangle.h: Clean up HorizToPitch()
since we're on the new renderer.
2021-04-10 10:06:30 +10:00
Mitchell Richters
28fb752446
- Replace gethiq16angle()
with bvectangbam()
in renderer code. This addresses some observed clipping issues in the new renderer.
2021-04-10 09:23:02 +10:00
Christoph Oelckers
e0dc261dfd
- fixed edge case in wall sorter when the camera is exactly on a line that's being checked.
2021-04-10 00:05:29 +02:00
Christoph Oelckers
02dedaad46
- Blood: undid restriction for original QAV for Guns Akimbo shotgun fix.
2021-04-09 22:48:39 +02:00
Christoph Oelckers
345275db5d
- better handling for portal lines having sloped back sectors.
...
This is a very ugly special case that probably needs a bit more work to get right, for now this should be enough as this combination is rather rare.
2021-04-09 22:48:16 +02:00
Christoph Oelckers
19a4c12e6a
- Blood: undid restriction for original QAV for Guns Akimbo shotgun fix.
2021-04-09 22:11:16 +02:00
Christoph Oelckers
ff0a3df302
- fixed extended music lookup again.
...
# Conflicts:
# source/core/parsefuncs.h
2021-04-09 21:28:23 +02:00
Christoph Oelckers
2084c53538
- fixed extended music lookup again.
2021-04-09 21:21:53 +02:00
Christoph Oelckers
92697686cb
- migrated a few more .def commands.
2021-04-09 19:59:03 +02:00
Christoph Oelckers
333581a084
Merge branch 'master' into newrenderer2
...
# Conflicts:
# source/build/src/defs.cpp
2021-04-09 19:57:56 +02:00
Christoph Oelckers
2820c50f3e
- Blood: let the RFS parser handle forward slashes when cutting out the base directory of a given file name.
2021-04-09 18:25:32 +02:00
alexey.lysiuk
57c7a85d9f
- fixed compilation with Clang
...
source/build/src/defs.cpp:3198:56: error: cannot pass non-trivial object of type 'FString' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs]
2021-04-09 15:55:30 +03:00
Christoph Oelckers
fb02b38279
- better .def loading logic.
...
To allow cumulative loading without interfering with other ports, Raze will now look for files called xxxx-raze.def, where xxxx is the default .def name (e.g. duke3d-raze.def for Duke3D.) and if that is found, cumulatively load all same-named files - it will fall back on the default name if no such thing is found.
-def still overrides both and will not cumulatively load.
2021-04-09 14:30:01 +02:00
Christoph Oelckers
f20acca498
- always default the resource ID to -1, even for dummy entries.
...
Better be safe than sorry, this should never happen in Blood but we never know what people may load...
2021-04-08 22:03:25 +02:00
Christoph Oelckers
778a75c097
- fixed rffdefineid handler passing a bad file name to the backend.
2021-04-08 21:36:52 +02:00
Christoph Oelckers
9f08f9786a
- consolidated a bit of dead content in .def parser.
2021-04-08 20:03:50 +02:00
Christoph Oelckers
c9483353ff
- some more translucency checks.
2021-04-08 19:56:18 +02:00
Christoph Oelckers
1362a7ebc5
- added extended translucency support and did a bit of code consolidation.
2021-04-08 19:45:18 +02:00
Christoph Oelckers
794cab2d54
- removed some dead code.
2021-04-08 18:54:39 +02:00
Christoph Oelckers
a530dfbe35
Merge branch 'master' into newrenderer2
2021-04-08 18:52:54 +02:00
Christoph Oelckers
51c4c47183
- block manual advancing of intermission screens when already fading out.
...
This seems to cause some serious stability issues with how they handle the 2D drawer.
2021-04-08 18:01:42 +02:00
Christoph Oelckers
793d2d99ef
- re-fixed the music lookup.
2021-04-08 17:46:53 +02:00
Christoph Oelckers
a53ed46bae
- fixed item placement on SW minihud.
...
Fixes #295
2021-04-08 17:43:56 +02:00
Christoph Oelckers
fc1fbfe8b3
- fixed .def 'music' parsing.
...
This was incomplete and just ignored Duke's special music, and the levelnum generation used an outdated formula so that it never managed to assign any music to the maps.
2021-04-08 16:35:26 +02:00
Christoph Oelckers
e2f570a70a
- fixed: extended sound lookup must check the sound/ folder.
2021-04-08 16:05:32 +02:00
Christoph Oelckers
1439897b65
- fixed extended music lookup.
...
The logic was inverted for extended lookup which always resulted in failure to find the song.
2021-04-08 15:55:37 +02:00
Christoph Oelckers
cecd34efc7
- moved a bit more script parsing functionality into the backend and tried it out on the 'skybox' command.
2021-04-08 14:00:08 +02:00
Christoph Oelckers
4d29cd2df2
- I shouldn't have used WT's skies as reference - they got front and back faces swapped.
2021-04-08 13:54:58 +02:00
Christoph Oelckers
38ecfc8fa5
- added handling for cubemapped skyboxes.
2021-04-08 12:47:31 +02:00
Christoph Oelckers
b68512ef88
- on closer inspection, do not draw skies on intra-sky lines ever - the renderer already takes care of this elsewhere.
2021-04-08 10:10:15 +02:00
Christoph Oelckers
d348377bd8
- when drawing skies on walls where both sides are sky, use the backside's texture.
...
This fixes a sky anomaly in RR's E1L1.
2021-04-08 09:45:17 +02:00
Christoph Oelckers
e0ee3a6701
- fixed: Vulkan did not define NPOT_EMULATION for its fragment shader.
2021-04-08 09:29:08 +02:00
Christoph Oelckers
4cdc39c9b9
Merge branch 'master' into newrenderer2
2021-04-08 08:55:41 +02:00
Christoph Oelckers
a80c5db02b
- forgot to save the Exhumed part of the last commit
2021-04-07 21:37:01 +02:00
Christoph Oelckers
58fb938aa7
- block opening of the menu in the fade out phase of a screenjob and in Exhumed's map/intermission screens.
...
At these places there's some inteference that can bring the engine into an unstable state.
This is not a real fix, just a quick workaround. The actual problem requires closer examination why these are the only places where this happens.
2021-04-07 19:39:48 +02:00
Christoph Oelckers
68b7628f56
- RRRA: Sector effector type 156 is not supposed to scroll the floor texture.
2021-04-07 18:12:25 +02:00
Christoph Oelckers
7a03967ceb
- fixed clipping info not properly reset when rendering the scene in two passes.
...
We need to reset the gotsector array for that, but since we also need the accumulate result of both passes there's now two such arrays.
2021-04-07 16:52:17 +02:00
Christoph Oelckers
caa8efd3d5
- fixed renderer to avoid bunches of walls that wrap around behind the camera's back.
2021-04-07 16:09:25 +02:00
Christoph Oelckers
3a34043267
Merge branch 'master' into newrenderer2
2021-04-07 15:12:27 +02:00
Christoph Oelckers
4a6a999f89
- SW: fixed interpolation for sector object sprites.
...
When checking for an existing interpolation it needs to check the actual sprite, not just the interpolation type.
2021-04-07 15:08:26 +02:00
Christoph Oelckers
4bd44f9d62
- flat sprites use different visibility rules.
...
Hooray, Build engine, yet another totally nonsensical magic factor with absolutely no reason why...
2021-04-07 12:58:45 +02:00
Christoph Oelckers
6ad0089524
- fixed flat sprites using the sector bit names for checking for being flipped.
...
Thank you, autocompletion... :(
2021-04-07 12:39:12 +02:00
Christoph Oelckers
59f18f5fa7
- ensure that all HWSprites are oriented with z1 > z2.
...
This is required by the sorting code to work as intended.
2021-04-07 12:31:47 +02:00