Joshua Ashton
50cef39716
vpc: Fix SSE4.2/AVX2 leaking into other builds
...
continuous-integration/drone/push Build is passing
Details
Closes : #138
Closes : #182
2023-08-01 02:59:22 -07:00
Joshua Ashton
17b5e73799
environment, spring: Use StiffnessAndDamping for springs
...
continuous-integration/drone/push Build encountered an error
Details
Should improve springs significantly.
2023-08-01 02:27:27 -07:00
Joshua Ashton
2242614d4a
vehicle: Use StiffnessAndDamping for spring
...
Removes my todo here, and improves vehicles a lot.
2023-08-01 02:27:21 -07:00
Joshua Ashton
457a95fca5
Rebase against latest JoltPhysics w/ CCD fix
...
Closes : #1
Closes : #28
Closes : #86
2023-08-01 02:27:16 -07:00
Josh Dowell
562458200c
If we fail to create a convex hull from the supplied points, substitute it for a small sphere.
...
continuous-integration/drone/push Build encountered an error
Details
I found exactly one model in a single map for gmod that causes this to happen, a better solution would be to re-calculate a valid hull from the supplied points, but this'll do since it's such a rare case.
2023-04-11 07:15:10 +01:00
Joshua Ashton
ae995e24bf
compat: Support for GMod mini-source-sdk
continuous-integration/drone/push Build encountered an error
Details
2023-04-10 01:24:51 +01:00
Joshua Ashton
a7fece4d4e
player: Only push objects if the normal < -0.7 (grounded)
...
continuous-integration/drone/push Build encountered an error
Details
Improves: #3
Closes : #118
2023-03-29 19:04:23 +01:00
Joshua Ashton
be6b64b31e
all: Rebase against latest VPhysics Jolt
...
continuous-integration/drone/push Build encountered an error
Details
Bump submodule to 172a99c718bded5faa169ac440517286684fa2f0 and fixup our code to support the latest version.
Additionally, some water changes/fixes.
2023-03-29 18:31:20 +01:00
Jeremy Lorelli
6c3e224561
object: Convert sphere radius to Source units
continuous-integration/drone/push Build encountered an error
Details
2022-12-31 07:18:35 +00:00
JJL772
860c66d09a
environment: Fix GetBroadPhaseLayerName BroadPhaseLayers -> string mapping
continuous-integration/drone/push Build is passing
Details
2022-09-28 17:28:12 +01:00
Magnus Larsen
0c55d0082d
collide: Deconstruct CPhysCollide properly
...
It is necessary to dispatch the correct JPH::Shape dtor, even though
it's stored as a a CPhysCollide*.
This should fix #58
2022-09-21 19:26:07 +01:00
Joshua Ashton
6c1ec77980
environment: Add stub for Get/SetPerformanceSettings
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/tag Build is passing
Details
2022-09-09 02:22:04 +01:00
Joshua Ashton
23bbdea910
util: Remove our impls of popcnt and tzcnt
continuous-integration/drone/push Build is passing
Details
2022-09-09 02:00:43 +01:00
Joshua Ashton
6636409b10
listener_contact: Use JPH CountTrailingZeros
2022-09-09 02:00:33 +01:00
Joshua Ashton
cfae6a7997
constraints: Use JPH CountBits and CountTrailingZeros
2022-09-09 02:00:20 +01:00
Joshua Ashton
6767ca8f32
object: Unmark body as dirty when destroyed
...
Fixes some crashes since this was introduced.
2022-09-09 01:59:56 +01:00
Joshua Ashton
954d301a2b
constraints: Fix refcountning of constraint pt
...
continuous-integration/drone/push Build is failing
Details
Closes : #17
2022-09-09 01:42:31 +01:00
Josh Dowell
327a96ca54
all: Add multiple builds for different CPU feature sets and a wrapper DLL to go along with them
...
Closes : #46
2022-09-08 23:43:01 +01:00
Joshua Ashton
08c0934acc
cbase: Undef offsetof if present
...
Fixes Linux builds in SDK.
2022-09-02 18:28:19 +01:00
Joshua Ashton
d923d9a5b5
misc: Add compat defines for Alien Swarm
2022-09-02 10:59:04 +01:00
Joshua Ashton
b01f9f5c0c
environment: Use std::vector for m_pPhysicsControllers
2022-09-02 10:56:58 +01:00
Joshua Ashton
ae9b5dcc8e
controller_motion: Use std::vector for m_pObjects
2022-09-02 10:56:21 +01:00
Joshua Ashton
143b5b166c
environment: Add list of dirty static bodies
...
Adds a vector of objects that were awake, and changed their
motion type from Dynamic -> Static, so that they can be
retrieved in GetActiveObjects, and have their visuals updated.
If we don't do this, objects that get moved, woken, and their
movement type changed to static will not get their transforms
updated on the game side.
Closes : #59
Closes : #63
2022-09-02 10:09:30 +01:00
Joshua Ashton
36711271be
constraints: Use Erase helper in RemoveConstraint
2022-09-02 10:09:30 +01:00
Joshua Ashton
52ff0b3629
fluid: Use new Erase helper
2022-09-02 10:09:30 +01:00
Joshua Ashton
bdd5b2ca9b
objectpairhash: Use Contains helper
2022-09-02 10:09:30 +01:00
Joshua Ashton
9946d6847c
util: Add Contains helper
...
Useful!
2022-09-02 10:09:30 +01:00
Joshua Ashton
cb10f30fd8
util: Add Erase and EraseIf helpers
...
No std::erase_if in C++17 which is handy to have!
2022-09-02 10:09:30 +01:00
Joshua Ashton
2812b58680
collide: Use std::swap instead of Swap
...
Swap is something that was added to Desolation's basetypes.h, not present in SDK 2013.
Just use std::swap from STL.
2022-09-01 12:29:36 +01:00
Joshua Ashton
c6c1a6dba1
collide: Flip triangle winding in CreateDebugMesh
...
Closes : #44
2022-09-01 07:34:12 +01:00
Joshua Ashton
db13ffba6e
environment: Use resize when updating m_CachedObjects
...
This was a typo, otherwise the size is always 0.
2022-08-31 15:39:23 +01:00
Joshua Ashton
d6e1214a19
listener: Re-target pInternalData on JoltPhysicsCollisionEvent copy/move
...
Needs this to match the parent structure, not some other object that
may be going to be destroyed.
Closes : #51
2022-08-31 15:39:15 +01:00
Jeremy Lorelli
347e78d122
state_recorder: Prefix call to move with std:: to silence warning
2022-08-30 06:11:40 +01:00
Joshua Ashton
25eecb1f35
collide: Support legacy style .phy files
...
These legacy style .phy files are literally just serialized compact surfaces
and nothing else, with some misc. data shoved into some dummy compartment.
Some props in shipping HL2 still use this format, as they have a .phy, even after their
.qc had the $collisionmodel removed, as they didn't get the stale .phy in the game files deleted.
Closes : #35
2022-08-30 06:06:58 +01:00
Joshua Ashton
d75827b05e
parse: Add dummy fallback KV for when parsing fails
...
There are lots of really broken models floating about, with complete garbage KV contents.
If we fail to parse the KV, use a dummy fallback instead of returning a NULL parser, which always just crashes.
2022-08-30 04:32:01 +01:00
Josh Dowell
c9604f710f
listener: Fix a typo causing collision damage to be applied in full
...
There was a typo in vjolt_listener_contact.h where it would get the velocity of the first object twice, which was wrong, and this was causing damage to be applied in full
2022-08-29 23:34:20 +01:00
Joshua Ashton
6d81c04454
pch: Use correctly cased KeyValues.h per-branch
2022-08-29 08:24:44 +01:00
Arthurdead
457b9923f5
build: Fix compiling with C++17 on Linux
2022-08-29 08:23:11 +01:00
Joshua Ashton
65bc5bd2fd
vehicle: Implement per-wheel brake torque
...
Based upon the same calculations that regular VPhysics does, calculate the per-wheel brake torque.
Improves vehicle feel and matches it more closely.
2022-08-29 08:02:10 +01:00
Joshua Ashton
a7209f3766
compat: Add GAME_L4D2_OR_NEWER define
2022-08-29 07:57:31 +01:00
Joshua Ashton
11adbb57bd
Initial commit
2022-08-29 00:21:50 +01:00