Christoph Oelckers
aedb17e539
Merge commit 'a5ed7ba8a3eb26d3e3aa46bc87044608eacba57f' into whaven
2021-04-10 17:00:43 +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
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
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
2084c53538
- fixed extended music lookup again.
2021-04-09 21:21:53 +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
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
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
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
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
4cdc39c9b9
Merge branch 'master' into newrenderer2
2021-04-08 08:55:41 +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
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
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
Christoph Oelckers
f9f1d591b3
- must set up fog before textures.
...
Otherwise the PickTexture callback won't get all needed info.
2021-04-07 10:30:49 +02:00
Christoph Oelckers
3d846f341a
- fixed a major clipping issue with the new renderer.
...
* the bunch drawer can at most process an angular range of 180°. If this gets exceeded it can run into wraparound issues that may cause holes in the geometry.
* there was no clipping to the current field of view so it always checked the full 360°.
2021-04-07 00:02:36 +02:00
Christoph Oelckers
d823ae255e
- fixed view clipping for portal sectors.
...
All lines within the portal must neither be added to the clipper nor checked for obstruction by other parts of the map.
2021-04-06 19:25:40 +02:00
Christoph Oelckers
5c2335bbeb
- encapsulate setuptile(range) parsing in separate functions.
2021-04-06 16:22:24 +02:00
Christoph Oelckers
0b79649dc2
Merge branch 'master' into newrenderer2
2021-04-06 16:14:21 +02:00
Christoph Oelckers
d193e199f1
- reorganized hightile offset storage.
2021-04-06 15:55:33 +02:00
Christoph Oelckers
424c0ce3f4
- testing some script parser improvements.
2021-04-06 15:07:12 +02:00
Christoph Oelckers
fc314b6616
- allow loading Zips where all content is in a subdirectory.
...
The same logic as in GZDoom applies: The root must not have any other content and the subdirectory must contain identifiable game content.
Some handling was also added to strip out macOS resource fork folders because they can contain data that can confuse file detection.
2021-04-06 01:06:03 +02:00
Mitchell Richters
5984fda8a1
- PlayerAngle: Repair issues with addadjustment()
method following changes in 4ffe004483
that were affecting negative input.
2021-04-06 06:01:54 +10:00
Christoph Oelckers
16ad5f0cc8
- fixed sky rendering in palette emulation mode.
...
The sky dome drawer cannot work with indexed textures, but since they are fullbright anyway we can just temporarily disable it.
2021-04-05 21:53:19 +02:00
Christoph Oelckers
e098e0ca2e
- added VR mode init code as this is actually functional with the new renderer.
...
Also moved a few things out of gl_texture.cpp as this file is scheduled to go away with Polymost.
2021-04-05 20:12:11 +02:00
Christoph Oelckers
7c4e9ea87e
- moved palette manager for indexed textures out of glbackend
2021-04-05 20:00:21 +02:00
Christoph Oelckers
9a46fa7ef0
Merge branch 'master' into newrenderer2
2021-04-05 19:20:56 +02:00
Christoph Oelckers
869433ee2e
- fixed invalidation of programmatic textures.
...
This is only relevant for Vulkan because it stores the descriptor sets with the material, not the hardware texture.
2021-04-05 19:18:57 +02:00
Christoph Oelckers
f6b46e9f63
- added a few missing init calls.
2021-04-05 18:05:44 +02:00