Mitchell Richters
fc8c0b80aa
- Clean up chase cam backwards scaling since we're now using floats of the same scale.
2022-10-25 07:07:14 +02:00
Mitchell Richters
3db6a38b4b
- Make dragpoint()
inline since its a wrapper for another function anyway.
2022-10-25 07:07:14 +02:00
Mitchell Richters
9dd27ee3a2
- Remove old integer dragpoint()
interface that was used by floats in lots of places.
...
* Cannot wait until all the narrowing warnings can be re-enabled...
2022-10-25 07:07:14 +02:00
Mitchell Richters
5cc9774873
- Apply same signedness fix from - fixed signedness issue with slope sprite coefficient.
to spriteGetSlope()
.
2022-10-25 07:07:14 +02:00
Mitchell Richters
2e8e5f99e7
- Fix mixed X/Y pos subtraction in spriteGetZOfSlopef()
and use a bit more of the backend.
...
* Confirmed coordinate mix-up when reviewing commit `- added spriteGetZOfSlopeF for the backend`.
2022-10-25 07:07:14 +02:00
Christoph Oelckers
310eff6e71
- clean out many wrappers.
2022-10-25 07:07:10 +02:00
Christoph Oelckers
1a03c56eec
- floatifying player::slope, part 1
2022-10-25 07:07:09 +02:00
Christoph Oelckers
f0dc95597b
- deleted several unused wrappers and overloads.
2022-10-25 07:07:05 +02:00
Christoph Oelckers
fd3ca33aea
- deleted set_int_bvel inlines
2022-10-25 07:07:04 +02:00
Mitchell Richters
789fa71a14
- Use g_atan2()
within maphoriz()
so consistent math is used throughout engine.
2022-10-25 07:07:03 +02:00
Mitchell Richters
5d8cc1b4fc
- Store all input speed constants as DAngle to avoid calling DAngle::fromDeg()
all the time.
2022-10-25 07:07:02 +02:00
Christoph Oelckers
3c3af06413
- deleted getincangle.
2022-10-25 07:07:02 +02:00
Christoph Oelckers
2ba68df27f
- eliminate int_floorz / int_ceilingz in the backend.
2022-10-25 07:07:00 +02:00
Christoph Oelckers
0655db77b9
- delete set_int_floorz and set_int_ceilingz.
2022-10-25 07:07:00 +02:00
Christoph Oelckers
5e2e53d684
- more CanMove fixes, plus salvaging the rest of the old commit.
...
CanMove twice uses the texel-based nRange as a Build-unit value, this caused strange problems with the initial floatification.
2022-10-25 07:06:57 +02:00
Christoph Oelckers
6b579156aa
- Blood HitScan fixes
...
- changed target parameter of hitscan to a double to simplify its handling.
- HitScan's nRange parameter may be an int, but it is in texel units, not Build units.
2022-10-25 07:06:56 +02:00
Mitchell Richters
2baf35ed2d
- Slightly tidy up PlayerHorizon::applyinput()
.
2022-10-25 07:06:55 +02:00
Mitchell Richters
1e19b32b59
- Add CVAR to allow unclamping the player's view pitch.
2022-10-25 07:06:55 +02:00
Mitchell Richters
8d3f3c6025
- Cut over to DAngle
from fixedhoriz
and remove the latter.
2022-10-25 07:06:55 +02:00
Mitchell Richters
0d8b2ba59d
- Tidy up all constants in gameinput.cpp
and convert to native degrees/pitch where appropriate.
2022-10-25 07:06:55 +02:00
Mitchell Richters
41bbbd9df5
- Remove all remaining uses of fixedhoriz::asbuild()
.
2022-10-25 07:06:55 +02:00
Mitchell Richters
a952c35669
- SW: Convert DoPlayerDeathHoriz()
to work on pitch and remove now-unused buildhoriz()
.
2022-10-25 07:06:55 +02:00
Mitchell Richters
92798b5a07
- Remove most buildhoriz()
calls.
2022-10-25 07:06:55 +02:00
Mitchell Richters
293a71ed55
- Remove horizon from gi->WarpToCoords()
since we don't even print the horizon in our stats.
2022-10-25 07:06:54 +02:00
Mitchell Richters
eedcfb46c6
- Convert calcviewpitch()
to work with a temporary DAngle so we can eliminate the temporary tanhoriz()
friend.
2022-10-25 07:06:54 +02:00
Mitchell Richters
ca8f8d6d36
- Remove all remaining q16horiz()
calls, also correcting a long-standing Duke bug.
2022-10-25 07:06:54 +02:00
Mitchell Richters
8697e5f054
- Replace all q16horiz(0)
calls.
2022-10-25 07:06:54 +02:00
Mitchell Richters
22a9f89b64
- Remove all uses of fixedhoriz::asq16()
.
2022-10-25 07:06:54 +02:00
Mitchell Richters
5bf23f0642
- Develop new scaled horizon return to centre with initial return from full articulation scaled by the pitch's sine.
...
* When coming back from a full view pitch using the original algorithm, the initial snap-back from 90 degrees is very aggressive.
* Return to centre speed retuned to be 1:1 to the ms with the tangent at Duke/SW's clamped pitch.
2022-10-25 07:06:54 +02:00
Mitchell Richters
d923ef9a8c
- Perform horizon's return to centre using pitch instead of tangent.
...
* Return to centre speed tuned to be 1:1 to the ms with the tangent at Duke/SW's clamped pitch.
2022-10-25 07:06:53 +02:00
Mitchell Richters
5851c0f2c6
- Clean up some q16horiz usage and how the view pitch is clamped.
2022-10-25 07:06:53 +02:00
Mitchell Richters
4ef9ec93ea
- Remove fixedhoriz::asbuildf()
and associated buildf friend.
...
* The new friend `tanhoriz()` is just for the input code for now.
2022-10-25 07:06:53 +02:00
Mitchell Richters
d8a6471680
- Add fixedhoriz::Tan()
and replace most asbuildf()
calls with it.
2022-10-25 07:06:53 +02:00
Mitchell Richters
fcdb360b92
- Add fixedhoriz::Sgn()
.
2022-10-25 07:06:53 +02:00
Mitchell Richters
e4ae726015
- Rename fixedhoriz::aspitch()
to Degrees()
to match DAngle
objects.
2022-10-25 07:06:53 +02:00
Mitchell Richters
5e11fc1a15
- Remove unused fixedhoriz
methods and friends.
2022-10-25 07:06:52 +02:00
Christoph Oelckers
c94a361788
- deleted int_hitpos.
2022-10-25 07:06:48 +02:00
Christoph Oelckers
427e41d388
- allow 'sw...' cheats from the chat in Shadow Warrior.
2022-10-24 23:30:16 +02:00
Christoph Oelckers
38998f36b5
- minor int_* replacements in the backend.
2022-10-23 18:47:17 +02:00
Christoph Oelckers
a409e03570
- deleted set_int_ang
2022-10-23 18:47:17 +02:00
Christoph Oelckers
0eacc8e68e
- add_int_z is gone.
2022-10-23 18:47:16 +02:00
Christoph Oelckers
e2d0cbf772
- allow entering cheats in the chat editor without using '#'.
2022-10-23 18:46:18 +02:00
Christoph Oelckers
f1514bbc52
- alternative math for slope planes in hitscan.
2022-10-22 20:41:27 +02:00
Christoph Oelckers
74cf9a2ff2
- hitscan fully rewritten.
...
No traces of Build code left here! :)
2022-10-22 20:41:27 +02:00
Christoph Oelckers
2991bc752b
- split out the pure math stuff from gamefuncs.h into a utility header in 'common'.
...
Also did a bit of reshuffling on gamefuncs.h to group content better.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
116ba340b2
- further hitscan overhaul.
...
* added floating point sprite intersect handlers for all sprite types. Hopefully this code is more understandable than Build's original variant.
* cleaned up intersectSprite a bit and moved the geometry math into the utility header.
* made some minor corrections to neartag.
* moved SW's testpointinquad to the backend because it was useful here.
2022-10-22 20:41:26 +02:00
Mitchell Richters
6ca42dc08c
- Slightly clean up calcChaseCamPos()
.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
e6cfb165f8
- converted all remaining add_int_bvel* calls.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
e00eda6cb8
- Blood: floatified VectorScan.
...
The texture checks in here definitely need some more verification, though.
Doing a quick test looked ok, but I do not think this was enough.
2022-10-22 20:41:25 +02:00
Christoph Oelckers
044b9e555b
- floatified a bit more of nnExtProcessSuperSprites
2022-10-22 20:41:25 +02:00
Christoph Oelckers
09d66914f4
- LinePlaneIntersect
...
This is for calculating intersections with slope sprites later.
2022-10-22 12:17:04 +02:00
Christoph Oelckers
243c071834
- got rid of bsinf and bcosf.
2022-10-22 12:17:04 +02:00
Christoph Oelckers
6dd7fac902
- eliminated the sine table and moved tilehasmodelorvoxel to a different file to delete engine.cpp.
2022-10-22 12:17:04 +02:00
Christoph Oelckers
ef2f781e09
- rewrite from scratch of neartag.
2022-10-22 12:17:04 +02:00
Christoph Oelckers
20043f6223
- use symbolic constants in neartag calls.
2022-10-22 12:17:03 +02:00
Christoph Oelckers
dcd4ee133b
- use a simpler method to calculate the intersection point in intersectSprite and fixed the distance check.
2022-10-22 12:17:03 +02:00
Christoph Oelckers
9c564db015
- replaced try_facespr_intersect with something independently written.
2022-10-22 12:17:03 +02:00
Christoph Oelckers
28a169d02d
- cansee floating point rewrite using backend utilities.
2022-10-22 12:17:02 +02:00
Christoph Oelckers
14a8dd451e
- redid lintersect with backend utilities.
...
I left out EDuke32's new handling for collinear traces because it not only was never active but also makes really no sense with neartag which is lintersect's only caller.
2022-10-22 12:17:02 +02:00
Mitchell Richters
95cd74bdc0
- renamed slope functions so that the int versions get a special name.
2022-10-22 12:17:02 +02:00
Christoph Oelckers
9172ab27ca
- move all deprecated functions to the bottom in gamefuncs.h.
2022-10-22 12:17:02 +02:00
Christoph Oelckers
ac2a3c443f
- got rid of all deprecated updatesector variants.
...
This required a few changes in the map loader and render interface.
2022-10-22 12:17:02 +02:00
Christoph Oelckers
e4ca397898
- corrected sector check output in validateSprite.
2022-10-22 12:17:02 +02:00
Mitchell Richters
2e4996e8fc
- floatified nnextCanMove and deleted most deprecated updatesector variants.
2022-10-22 12:17:02 +02:00
Christoph Oelckers
c5a5e3cef5
- deleted some unused deprecated functions.
2022-10-22 12:17:01 +02:00
Christoph Oelckers
2cc81d0165
- floating point version of rintersect, based on GZDoom's P_InterceptVector.
2022-10-22 12:17:01 +02:00
Christoph Oelckers
b7ddd9e784
- added InterceptVector from GZDoom.
...
This will be useful for some backend stuff.
2022-10-22 12:17:01 +02:00
Christoph Oelckers
335df86213
- output floating point coordinates in validateSprite
2022-10-22 12:17:00 +02:00
Christoph Oelckers
a8ae8babe2
- cleanup of updatesector.h
...
Mainly not routing the float variants through the integer variants anymore and deprecating those.
FindSector was also moved into DoUpdateSector because both always need to be used together.
2022-10-22 12:17:00 +02:00
Mitchell Richters
85f716e49b
- floatify calcviewpitch
2022-10-22 12:17:00 +02:00
Christoph Oelckers
6a1ff029b7
- floatified getslopeval and all related code.
2022-10-22 12:17:00 +02:00
Christoph Oelckers
ece8663f5e
- floatified calcSlope and cleaned up the get*slope interface
2022-10-22 12:17:00 +02:00
Christoph Oelckers
bd9dfadf6d
- use REPEAT_SCALE ih the wall/floorsprite getter functions.
2022-10-22 12:16:57 +02:00
Christoph Oelckers
e6807964ae
- don't use Build utilities in the render backend.
2022-10-22 12:16:57 +02:00
Christoph Oelckers
b2d1988e50
- use engine utilities for the section builder’s inside check
2022-10-22 12:16:57 +02:00
Christoph Oelckers
f5e6503b26
- merge NearestPointLine into NearestPointOnWall
2022-10-22 12:16:57 +02:00
Christoph Oelckers
c44fd07f37
- floatified the portal displacement
2022-10-22 12:16:57 +02:00
Christoph Oelckers
c87b4a581b
- got rid of the WallStart/End macros
...
They never got much use and the places where they were used work just as well without them
2022-10-22 12:16:56 +02:00
Christoph Oelckers
cbfc9a8252
- added spriteGetZOfSlopeF for the backend
2022-10-22 12:16:56 +02:00
Christoph Oelckers
fd4f04b5fd
- eliminated fixed point GetSoundPos variants
2022-10-22 12:16:56 +02:00
Christoph Oelckers
ab23f6b114
- floatify clipangle math in HWLineToLinePortal::Setup
2022-10-22 12:16:56 +02:00
Christoph Oelckers
375d346ae8
- pass a vector to the processSprites interface.
2022-10-22 12:16:56 +02:00
Christoph Oelckers
bbf77c908b
- pass a floating point view position to the bunch drawer
2022-10-22 12:16:56 +02:00
Christoph Oelckers
0b8f7f6a9f
- deleted add_int_pos
2022-10-22 12:16:53 +02:00
Christoph Oelckers
fb2c4efa2f
- eliminated the last place where tspritetype’s add_int_z was used
2022-10-22 12:16:53 +02:00
Christoph Oelckers
ca8b9e9793
- overhauled getzrangepoint to use backend utilities
2022-10-22 12:09:54 +02:00
Christoph Oelckers
c511e5dca9
- eliminated int_xvel
2022-10-22 11:33:16 +02:00
Christoph Oelckers
671e75ba5f
- eliminate the last int_zvel call
2022-10-22 09:34:16 +02:00
Christoph Oelckers
666f768413
- deleted set_int_xvel and set_int_zvel.
2022-10-22 09:34:15 +02:00
Christoph Oelckers
9cfd56a912
- mathutil is not needed anymore.
2022-10-22 09:34:13 +02:00
Christoph Oelckers
1111251887
type safe CVAR declaration.
2022-10-22 09:25:27 +02:00
Mitchell Richters
db5fcde0db
- Fix issues with startup on fresh config following CVAR overhaul.
2022-10-22 14:42:12 +11:00
Mitchell Richters
4e8331b16b
- Fix broken wrap-around in the double version of BobVal()
.
...
* My first time actually witnessing this, but was only a problem with GCC...
2022-10-22 13:51:31 +11:00
Christoph Oelckers
479616a80f
- got new CVar system from GZDoom.
2022-10-22 00:12:17 +02:00
Christoph Oelckers
e224abb949
- silenced warnings.
2022-10-21 00:00:07 +02:00
Christoph Oelckers
1814274124
- eliminated all of add_int_zvel.
2022-10-21 00:00:05 +02:00
Christoph Oelckers
0432930e5b
- converted all dist() calls to vector math and deleted the utilities
2022-10-21 00:00:04 +02:00
Christoph Oelckers
3c9a94dba8
- consolidated Duke’s ‚away from wall‘ check in the backend
...
This was also very useful in SW to avoid spawning ‚floating‘ footprints due to lack of an equivalent check in the original.
2022-10-21 00:00:02 +02:00
Christoph Oelckers
19bca44f37
- added a float version of BobVal.
...
We will need this later.
2022-10-20 23:59:27 +02:00
Christoph Oelckers
5eb9af1e00
- Backend update from GZDoom
...
IQM model support and a few bugfixes.
2022-10-20 22:24:25 +02:00
Mitchell Richters
bfafe4e21c
- Tidy up some of the spaces on SetValueForKey()
calls.
...
* Although I hate the spaces and have no idea why anyone would do this, there's too many such calls in the document so easiest to just stick with it :/
2022-10-21 00:35:59 +11:00
Mitchell Richters
8d2e022250
- Fix broken paths in default configuration on Unix how I asked for it to be fixed.
2022-10-21 00:35:58 +11:00
Unrud
8459ee1cb2
Fix broken paths in default configuraiton on Unix
...
The default paths for **FileSearch.Directories** and **SoundfontSearch.Directories** are somewhat broken.
`SHARE_DIR` is defined as just `/usr/local/share/`.
The paths `…/games/raze` are not added to **FileSearch.Directories**.
`GAME_DIR` is defined as `.config/raze` on Unix. Combining it with the prefix `…/share/` is wrong.
Excerpt from the default configuration:
```ini
[FileSearch.Directories]
…
Path=/usr/local/share/
…
[SoundfontSearch.Directories]
…
Path=/usr/local/share/.config/raze/soundfonts
Path=/usr/local/share/games/.config/raze/soundfonts
Path=/usr/share/.config/raze/soundfonts
Path=/usr/share/games/.config/raze/soundfonts
```
2022-10-20 23:54:46 +11:00
Mitchell Richters
8bfcb8c939
- Floatify InputPacket::fvel
and InputPacket::svel
.
...
* Since all velocities are floated, we can now take each game's keymove scaling into its ticker and use a consistent keymove size, making non-mouselook and controller input truly identical across the games without having to try and fudge any values.
2022-10-20 00:48:09 +02:00
Mitchell Richters
def2b9d483
- Flip svel
around in the input code so we can use proper anti-clockwise vector math.
2022-10-20 00:48:09 +02:00
Christoph Oelckers
b0b5dbc55b
- eliminated add_int_ceilingz
2022-10-19 18:26:16 +02:00
Christoph Oelckers
23c529589e
- eliminated add_int_xvel
2022-10-19 18:26:16 +02:00
Mitchell Richters
bc018dd946
- Use getCorrectedScale()
in conjunction with looking keys like scaletozero()
functions.
2022-10-18 19:52:02 +02:00
Mitchell Richters
bdc6a5cf69
- Remove fudging from I_GetInputFrac()
and correct getPushBuild()
.
2022-10-18 19:52:02 +02:00
Christoph Oelckers
72dc3d5da9
- use mapangle in more places, mainly constants and random values using special formula
2022-10-18 19:01:45 +02:00
Christoph Oelckers
0e1a566d62
- added mapangle function for converting angles from map data.
...
This is just a wrapper around DAngle::fromBuild, its purpose is to clearly highlight data that cannot be refactored and needs to be converted
2022-10-18 19:01:45 +02:00
Christoph Oelckers
559fe495fb
- floatified movesprite and the thrust vector.
2022-10-18 18:34:24 +02:00
Christoph Oelckers
8137718133
- floatified movespritez
2022-10-18 18:34:24 +02:00
Mitchell Richters
9eec69d810
- Blood: Floatify position drawing code and clean up now-unused wrappers.
...
* Still work to be done on bob/sway/zView variables.
2022-10-18 18:29:09 +02:00
Christoph Oelckers
fdc6a49a97
- another movesprite wrapper to get rid of int_yvel and int_xvel
2022-10-17 17:25:59 +02:00
Christoph Oelckers
47ad4fccdc
- convert all set/add_int_x/yvel calls
2022-10-17 17:25:59 +02:00
Christoph Oelckers
1ba20c7dce
- wrapped most clipdist assignments
2022-10-17 17:03:53 +02:00
Christoph Oelckers
ef47040630
- renaming stuff for search purposes
2022-10-17 17:03:53 +02:00
Christoph Oelckers
3fc592c505
- wrap clipdist copy
2022-10-17 17:03:53 +02:00
Christoph Oelckers
16f0d15cdc
- wrapper for literal assignments to clipdist
2022-10-17 17:03:52 +02:00
Christoph Oelckers
3e36b5627b
- wrap clipdist << 2
2022-10-17 17:03:52 +02:00
Christoph Oelckers
cf8b650446
- floatify Bullet::x,y,z
2022-10-17 17:03:52 +02:00
Christoph Oelckers
5efc032a4c
- increase angular threshold for aligning wall sprites.
...
With full precision angles the old threshold is simply too low.
2022-10-16 10:59:04 +02:00
Christoph Oelckers
9d1edf9cc5
- clean up angle math in wall drawer.
2022-10-16 10:59:04 +02:00
Christoph Oelckers
7a9f89b95d
- removed obsolete scripting exports.
2022-10-16 10:59:04 +02:00
Christoph Oelckers
6de279282e
- marked integer dragpoint function deprecated.
2022-10-16 10:19:40 +02:00
Christoph Oelckers
b53e4b824e
- handle the portals in Duke and Blood.
2022-10-16 09:40:29 +02:00
Christoph Oelckers
0e628ed222
- floatified CollectPortals and its helpers
2022-10-16 09:40:28 +02:00
Christoph Oelckers
7f3c5ae18d
- added a 'dot' function to DVector2 because using the '|' operator is not intuitive.
2022-10-15 17:52:07 +02:00
Christoph Oelckers
dfabdff553
- set_int_hitpos is not used anymore
2022-10-15 17:49:34 +02:00
Christoph Oelckers
b202cf7a12
- added option to show the level stats on the automap.
2022-10-15 17:14:34 +02:00
Mitchell Richters
53b32ea161
- Leverage walltype
's delta()
method in chase cam code.
2022-10-15 13:32:04 +02:00
Mitchell Richters
3019f9effc
- Floatify smoothratio
for GameInterface::processSprites()
.
...
* Exhumed is now completely free of any Q16.16 interpolation scaling.
2022-10-15 13:32:03 +02:00
Mitchell Richters
8f2d6f0779
- Floatify smoothratio
for render_drawrooms()
and `render_camtex().
2022-10-15 13:32:03 +02:00
Mitchell Richters
01d185dc6b
- Floatify smoothratio
for DrawOverheadMap()
.
2022-10-15 13:32:03 +02:00
Mitchell Richters
5e410ff738
- Eliminate most uses of DAngle::Buildfang()
.
2022-10-15 13:32:03 +02:00
Mitchell Richters
b05b98826b
- Rename some smoothratio
variables to indicate that they've been processed.
2022-10-15 13:32:03 +02:00
Mitchell Richters
6716d0f2e9
- Floatify smoothratio
for calcChaseCamPos()
.
2022-10-15 13:32:02 +02:00
Mitchell Richters
953364b96b
- Rename a smoothratio
variable to interpfrac
to show that it's not Q16.16.
2022-10-15 13:32:02 +02:00
Mitchell Richters
45d4d3e41a
- Eliminate __interpvalue()
and clean up Q16.16 smoothratio values where it made sense to do so.
...
* Also eliminates a now empty header.
2022-10-15 13:32:02 +02:00
Mitchell Richters
f02035b15a
- Eliminate __interpvaluef()
and clean up Q16.16 smoothratio values where it made sense to do so.
2022-10-15 13:32:01 +02:00
Mitchell Richters
2c8cb8f052
- Rename DCoreActor
method interpolatedvec3()
to interpolatedpos()
.
2022-10-15 13:32:01 +02:00
Mitchell Richters
f5dda2909a
- Remove now-unused interpolation methods from DCoreActor
class.
2022-10-15 13:32:01 +02:00
Mitchell Richters
39ac3b44b0
- Add scaler operators to fixedhorizon
class and eliminate class-specific interpolatedhorizon()
inlines.
2022-10-15 13:32:01 +02:00
Mitchell Richters
74167e1a7c
- Remove interpolators for TVector and TAngle objects, replacing with single generic version.
2022-10-15 13:32:01 +02:00
Mitchell Richters
06e772b44b
- Rename interpolatedvalue()
in preparation for replacement.
2022-10-15 13:32:01 +02:00
Mitchell Richters
8fd6452baf
- Rename interpolatedvaluef()
in preparation for replacement.
2022-10-15 13:32:01 +02:00
Christoph Oelckers
057d2a565a
- floatified Blood's velFloor and velCeil
2022-10-15 13:31:59 +02:00
Christoph Oelckers
38bb103cdd
- renamed velFloor and velCeil.
2022-10-15 13:31:59 +02:00
Christoph Oelckers
92379863f1
- don't use DAngle for calculating bobbing amplitudes.
...
It makes more sense here to have a dedicated function since this is not really angular math.
2022-10-15 13:31:59 +02:00
Christoph Oelckers
6b0b8f944c
- floatified the height parameter of nextsectorneighborptr
2022-10-15 12:42:30 +02:00
Mitchell Richters
f72d42bb8e
- Uplift renderer entry point to DVector3
and provide wrappers for old setups.
2022-10-15 12:16:53 +02:00
Mitchell Richters
056bb9b0cd
- Floatify chase cam code, providing an inline interface for legacy setup.
2022-10-15 12:16:53 +02:00
Mitchell Richters
977d8f8109
- Convert gi->chaseCamPos()
to return a floating point DVector3
object.
2022-10-15 12:16:53 +02:00
Mitchell Richters
db5db7d9b3
- Turn DVector2
rotatepoint()
into an inline using the vector's methods.
2022-10-15 12:16:53 +02:00
Mitchell Richters
18f97c3d7e
- SW: Move player sprite loop out of sector loop, and eliminate goto crap.
2022-10-15 12:16:52 +02:00
Mitchell Richters
f236cc8728
- Consolidate some duplicated automap code between Duke and SW.
2022-10-15 12:16:52 +02:00
Mitchell Richters
ef56d00d78
- Pass automap angle vector as an actual vector.
...
* Also reconfigure setup so that angle requires zero pre-processing or setup in the automap code, have it all handled in `OutAutomapVector()`.
2022-10-15 12:16:52 +02:00
Christoph Oelckers
1dcb03e530
- got rid of set_int_bvel
2022-10-15 11:35:38 +02:00
Christoph Oelckers
712d28ff40
- clean out some stuff
2022-10-15 11:35:38 +02:00
Christoph Oelckers
3e76d49b6e
- removed the mul vel wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
6fd8dae380
- removed the non-Blood float_* access wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
62ba753585
- remove vel clear wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
b924569755
- started removing trivial vel wrappers
2022-10-15 10:15:20 +02:00
Christoph Oelckers
64e8a369ec
- floatified velocity storage
2022-10-15 10:15:20 +02:00
Christoph Oelckers
e361abb96d
- added some utilities
2022-10-14 23:55:32 +02:00
Christoph Oelckers
0c146e7ccb
- Unify the velocity vectors of all games
...
spritetype’s former vel fields are only being retained for alternative use - yvel -> yint as generic parameter in Duke and zvel -> inittype for Blood.
2022-10-14 23:55:31 +02:00
Christoph Oelckers
c45ecdae73
- wrapped all velocity access in Blood, except the places where an address of vel is taken
2022-10-14 23:55:30 +02:00
Christoph Oelckers
7a7a2cdb39
- various replacements of vel
2022-10-14 23:55:30 +02:00
Christoph Oelckers
1999340c8a
- add_int_bvel_z
2022-10-14 23:52:43 +02:00
Christoph Oelckers
12e5fd133c
- add_int_bvel_x
2022-10-14 23:52:43 +02:00
Christoph Oelckers
49f0e9c57d
- batch 3 of vel.
2022-10-14 23:52:43 +02:00
Christoph Oelckers
193d20bb4d
- wrapped more xvels
2022-10-14 23:52:43 +02:00
Christoph Oelckers
e3758d6adc
- started wrapping vel
2022-10-14 23:52:42 +02:00
Christoph Oelckers
e7b09dbaac
- renamed vel.
2022-10-14 23:52:42 +02:00
Christoph Oelckers
cb81a50752
- Blood vel wrappers.
2022-10-14 23:52:42 +02:00
Christoph Oelckers
a5a04b1123
- moved Blood's velocity vector to DCoreActor.
2022-10-14 23:52:42 +02:00
Christoph Oelckers
9ba03ac53f
- renamed yvel to yint in Duke.
...
It's never used as velocity, but as an auxiliary parameter so name it appropriately.
2022-10-14 23:17:45 +02:00
Christoph Oelckers
b0e67ab88d
- clear_yvel
2022-10-14 23:13:34 +02:00
Christoph Oelckers
f8ba5bb660
- final xvel cleanup.
2022-10-14 23:13:33 +02:00
Christoph Oelckers
aa22e48036
- preparations for xvel wrapping.
...
Mainly providing alternative names for the spritetype members and redirecting all relevant access to those.
2022-10-14 23:02:11 +02:00
Christoph Oelckers
9f08abc90e
- eliminate the only use of zvel in tspritetype.
...
Since this never gets manipulated on the tsprite size, better get it directly from the actor so that the final velocity vector does not need to be in spritetype et.al.
2022-10-14 20:31:57 +02:00
Christoph Oelckers
05f488ce3c
- add more wrappers and use 'inittype' where the actual zvel member of spritetype is wanted.
...
This will avoid problems with search&replace later.
2022-10-14 20:31:56 +02:00
Christoph Oelckers
8946a66350
- handle zvel multiplications with a wrapper.
...
This completes wrapping of zvel.
2022-10-14 20:31:56 +02:00
Christoph Oelckers
8bfedc327f
- add_int_zvel
2022-10-14 20:31:56 +02:00
Christoph Oelckers
81fc066a5e
- use zvel's alias inittype where it's not being used for velocity.
2022-10-14 20:31:55 +02:00
Christoph Oelckers
70d0d0622b
- wrapped 0 assignments to zvel
2022-10-14 20:31:55 +02:00
Christoph Oelckers
3f7b423a4a
- zvel wrapping, part 1.
2022-10-14 20:31:55 +02:00
Mitchell Richters
d63fb33dd0
- Pass DVector2
objects directly through to F2DDrawer::AddLine()
and F2DDrawer::AddThickLine()
.
...
* Since all the external code calling through to these methods are built on vectors, makes sense to pass them around by reference.
2022-10-14 18:19:04 +02:00
Mitchell Richters
5407de6924
- Use MaxSmoothRatio
everywhere so refactoring is easier later on.
2022-10-14 18:19:03 +02:00
Christoph Oelckers
463e1a8047
- account for stupid GCC limitation.
2022-10-14 18:19:03 +02:00
Mitchell Richters
681bd640ed
- Make drawlinergb()
use twod->AddThickLine()
for when am_linethickness
is greater than 1, not 2.
2022-10-14 18:19:02 +02:00
Mitchell Richters
7d85acac13
- Clean up remaining automap interfaces to finish the floatification.
...
* Even though we pre-calculate the sine/cosine needed in `DrawOverheadMap()`, Duke and SW require the full angle for their more mature automaps.
2022-10-14 18:19:02 +02:00
Mitchell Richters
986466de67
- Commence updating gi->DrawAutomapPlayer()
for floatification, beginning with Duke's CSTAT_SPRITE_ALIGNMENT_FACING
code.
2022-10-14 18:13:49 +02:00
Mitchell Richters
d9f8ac4d2a
- Convert automap's follow_x
/follow_y
variables into a proper vector.
...
* Should have done this from the start, but anyhow...
2022-10-14 18:13:49 +02:00
Mitchell Richters
059f15c786
- Refactor floatified vector math to use inline wrapped around TVector2's Rotated()
method.
...
* This will be used extensively in Duke and the other game as we finalise this conversion.
2022-10-14 18:13:49 +02:00
Mitchell Richters
e9d5cd2a3a
- Flatten automap's zoom values from Q20.10 to floating point.
2022-10-14 18:13:49 +02:00
Christoph Oelckers
2838fa3e72
- floatified sectortype::ang
2022-10-14 17:17:37 +02:00
Christoph Oelckers
3ac4e7ed2d
- eliminated player_int_ceiling_dist, player_int_floor_dist wrappers
2022-10-14 00:06:30 +02:00
Christoph Oelckers
81c7e7671f
- fixed Clang warnings
2022-10-13 22:54:43 +02:00