Commit Graph

4250 Commits

Author SHA1 Message Date
Christoph Oelckers 33fd8270b1 - text update 2023-01-22 20:19:21 +01:00
Hugo Locurcio 2fa88aa5a7 Implement antialiasing for automap lines
This implements a bruteforce approach for 2D line antialiasing.
It's not perfect by any means, but it seems to do its job well enough.
Since it draws 9 lines instead of 1 line per segment, it's significantly
more expensive but should still be usable on modern hardware (except
on very complex maps).

Automap line antialiasing is disabled by default and can be enabled
with the `am_lineantialiasing 1` cvar.
2023-01-21 11:40:25 -05:00
Ricardo Luís Vaz Silva 698bd251ea Mark non-modifying map functions as const 2023-01-21 16:40:47 +01:00
Ricardo Luís Vaz Silva decba68225 Map::GetIfExists and Map::CheckValue 2023-01-21 16:40:47 +01:00
Blue Shadow 4c0b5cbb32 - alt HUD: use `NewSmallFont` for drawing player's coordinates if `ui_generic` is enabled 2023-01-18 18:18:13 +01:00
Hugo Locurcio bf39002515 Increase slider precision for mouse sensitivity settings
On mice with high DPI settings, low values such as 0.1-0.3 typically
need to be used to get a comfortable effective mouse sensitivity.
2023-01-16 16:54:25 +01:00
Hugo Locurcio 1c45890c5a Use a slider to allow specifying max FPS with more precision
The minimum value was increased from 30 to 35 to reflect the lowest
value you can actually use in `vid_maxfps`. Values lower than 35
are silently clamped to 35.

The maximum value is chosen to cater to the fastest commercially
available display as of writing (500 Hz).

Being able to specify maximum FPS with a more precise slider has
several benefits:

- This adds support for monitors with less common refresh rates
  (138 Hz, 165 Hz, ...).
- This adds support for monitors with very high refresh rates
  (240 Hz or more).
- This allows catering to variable refresh rate setups with a FPS cap
  chosen to avoid V-Sync input lag, while also avoiding tearing.
  For example, choosing a FPS cap of 117 on a 120 Hz display will prevent
  the display from reaching its maximum refresh rate.
  More information: https://blurbusters.com/howto-low-lag-vsync-on/
- The value no longer displays a "Unknown" if customized in the console
  using the `vid_maxfps` cvar.
2023-01-16 16:53:59 +01:00
Boondorl dd7cb8649f Exported LinePortals
Added helper functions for lines related to portals
2023-01-15 22:01:37 +01:00
Christoph Oelckers 5b7826f68b - set lightblendmode to 0 when setting up a 2D viewpoint.
2D never uses dynamic lights so this should always be 0 - and eliminates another place in the backend referencing game data.
2023-01-15 09:21:01 +01:00
Christoph Oelckers 34e2e77f9e - tab cleanup in shader code. 2023-01-15 08:54:54 +01:00
Ricardo Luís Vaz Silva 5e464d3e93 expose WallMask and ignore actor, allow disabling Actor Tracing for LineTracer::Trace 2023-01-14 11:33:22 -05:00
inkoalawetrust 458142eb8b Added flags to SetPlayerProperty.
Added all of the missing player cheats to the SetPlayerProperty special.
2023-01-14 11:32:21 -05:00
Major Cooke aed72f58f3 Converted A_Quake(Ex) intensity parameters from ints to doubles. 2023-01-14 11:30:00 -05:00
Ricardo Luís Vaz Silva 8e7897233e Add Alternate Light Blending Options 2023-01-14 11:29:12 -05:00
Boondorl 3dce874621 Exported bounce functions 2023-01-12 17:44:28 +01:00
nashmuhandes 2fa2533982 - enable DM support for sv_noplayerclip
- fixed voodoo dolls with sv_noplayerclip
- fixed autoaim working incorrectly with sv_noplayerclip
2023-01-08 22:55:10 +08:00
nashmuhandes 3d6cc47dc1 Add sv_noplayerclip to allow players to walk through and shoot each other (only in coop) 2023-01-08 19:10:49 +08:00
Boondorl 0d23816179 Added FlyBob Multiplier for Player 2023-01-02 08:14:24 +01:00
Boondorl 73159dac3e Added WaterClimbSpeed Property to Players 2023-01-02 08:13:13 +01:00
Magnus Norddahl 8bcdbc230d Adds soft shadows to vk_raytrace 2022-12-31 03:51:33 -05:00
Marisa the Magician 6f8901ea87 Rename ValidLock to IsLockDefined (more descriptive). 2022-12-23 22:48:01 +01:00
Marisa the Magician b85add01c7 Additional lock-related ZScript functions.
* Key.ValidLock: returns whether a lock number is valid (can be unlocked) or belongs to a "does not work" door.
* Key.GetMapColorForLock: returns the automap color for a lock number (or -1 if the lock isn't valid).
* Key.GetMapColorForKey: likewise, but for a specific key.
2022-12-23 17:47:31 +01:00
Rachael Alexanderson f816eb68ae - fix linedef index for heretic e2m7 fix 2022-12-19 15:55:52 -05:00
Ricardo Luís Vaz Silva 43880bbbe1 Expose StripLeft and StripLeftRight to ZScript 2022-12-19 14:00:09 +01:00
Boondorl 0d4d5587b5 Added FOV Interpolation 2022-12-18 08:23:19 +01:00
Rachael Alexanderson a0cd1ba04a - move flight viewbob to misc menu 2022-12-17 01:23:22 -05:00
Rachael Alexanderson b08295e7e1 - fix spacing 2022-12-16 20:40:05 -05:00
CandiceJoy 0fdb740ac7
Added toggle control for weapon bob while flying 2022-12-16 17:12:03 -06:00
Ricardo Luís Vaz Silva de65d1b96f Misc Fixes for BobWeapon3D
- Fix inverted Y axis for offset/old BobWeapon
- finish adding PSPF_MIRROR
- fix missing pivot
2022-12-12 15:23:12 +01:00
Ricardo Luís Vaz Silva 46d36cf5c7 add BobWeapon3D 2022-12-09 21:49:38 +01:00
Boondorl 9a1e666303 Exposed Box and PointOnLineSide 2022-12-08 20:33:11 +01:00
Boondorl b1cb044a15 Fixed IsActorPlayingSound's default argument
Now properly passes the invalid sound id.
2022-12-06 12:16:29 +01:00
Magnus Norddahl 6a005e3a2a Switch vulkan backend to use the zvulkan library 2022-12-05 07:49:43 +01:00
Christoph Oelckers 5b3f597438 - text update. 2022-12-04 15:34:47 +01:00
Mitchell Richters 6629944d39 - Make the new scaled angle changes at frame rate opt-in behind new flag `SPF_SCALEDNOLERP`.
* This will still test whether the game needs to lerp and will force `SPF_INTERPOLATE` if needed.
2022-12-04 15:11:17 +01:00
Mitchell Richters 9f9c1eb18a - Make view angles interpolate on a separate flag to the one that forces interpolation for the entire frame.
* As view angles are an offset, there's no reason why these cannot lerp separately.
2022-12-04 15:11:17 +01:00
Ricardo Luís Vaz Silva 8b6a714d41 Map<K,V> and MapIterator<K,V> for ZScript 2022-12-04 15:11:00 +01:00
Christoph Oelckers 1e5e65546d Revert "- add support for not localizing some text functions, and modify menu text fields to use this"
This reverts commit 91d3c4b606.

This completely breaks the menus, so it needs to go.
2022-12-04 08:13:04 +01:00
Ricardo Luís Vaz Silva cd46f97dcc Structified A_SpawnParticle/Ex 2022-12-03 23:54:52 +01:00
Gutawer 91d3c4b606 - add support for not localizing some text functions, and modify menu text fields to use this 2022-12-03 23:30:38 +01:00
Ricardo Luís Vaz Silva f666edc60c Allow Disabling of XY Billboard for Particles 2022-12-03 23:27:46 +01:00
Boondorl 964534f4b0 Added Method For Getting Portal Group Count 2022-12-03 23:27:01 +01:00
Boondorl ad80593cb7 Allow Getting Portal Group Offsets 2022-12-03 23:27:01 +01:00
Ricardo Luís Vaz Silva 58a64e4f5d Remove leftover variable in CustomMessageBox 2022-11-25 00:39:35 +01:00
Boondorl f322792783 Added animation support for OptionMenus
Adds Animated and AnimatedTransition MENUDEF instructions for OptionMenus. Added DontDim and DontBlur MENUDEF instructions for all menus.
2022-11-25 00:39:05 +01:00
Christoph Oelckers 419e593a4c - allow SNDINFO to declare sound mappings by using 'sounda = soundfle'.
This works similar to MAPINFO: The first definition in a file declares the format, all later ones must be the same.
This change in syntax increases robustness significantly because it avoids the problems with the original syntax not being able to detect badly formatted names.
2022-11-24 23:52:51 +01:00
Gutawer 9f0c518be9 - add remaining quaternion function implementations 2022-11-21 07:20:43 +01:00
RaveYard 540f778047 Quaternion structure and math ops 2022-11-21 07:20:43 +01:00
Boondorl d3bcc769f5 Clearscoped getters for map data 2022-11-19 09:16:24 +01:00
Ricardo Luís Vaz Silva 0f7e7744b0 CustomMessageBox Formatting 2022-11-18 07:42:45 +01:00