Léo Lam
adad4553d6
ksys/phys: Add more RigidBody functions
2022-01-17 19:27:49 +01:00
Léo Lam
ddef936b26
ksys/phys: Add RigidBody::isEntity to make certain checks clearer
...
The pattern we want to use is:
```
if (isEntity())
do entity stuff (e.g. get entity motion accessor)
```
or
```
if (!isEntity())
return;
do entity stuff
```
That's clearer than
```
if (isSensor())
return;
do entity stuff
```
because the fact that !isSensor() is equivalent to isEntity() is not
always immediately clear.
2022-01-17 17:22:27 +01:00
Léo Lam
a2cba75b19
ksys/phys: Rename MotionAccessor classes to reflect entity/sensor split
2022-01-17 17:16:43 +01:00
Léo Lam
8dd5608b79
ksys/phys: Rename RigidBody "isMassScaling" mode to "isSensor"
...
That also explains the comparison against 1 (ContactLayerType::Sensor)
in the constructor.
2022-01-17 17:02:11 +01:00
Léo Lam
392c0973c7
ksys/phys: Add a bunch of easy RigidBody functions
2022-01-17 16:58:22 +01:00
Léo Lam
05abdf7e77
ksys/phys: Add easy RigidBodyRequestMgr functions
2022-01-17 01:52:21 +01:00
Léo Lam
4eb07ca88c
ksys/phys: Start adding RigidBodyRequestMgr
2022-01-16 23:29:48 +01:00
Léo Lam
71fda30853
ksys/util: Add LockFreeQueue
2022-01-16 23:21:52 +01:00
Léo Lam
cba2a5b8b0
ksys: Declutter Utils by creating new Utils/Container folder
2022-01-16 22:24:00 +01:00
Léo Lam
99b913f86d
ksys/phys: Move RigidBodyRequestMgr to its own header
2022-01-16 15:55:42 +01:00
Léo Lam
2a8dc8ad25
ksys/phys: Add two RigidBody init functions (and prerequisites)
2022-01-16 15:50:56 +01:00
Léo Lam
2ed36c7dc0
ksys/phys: Add prerequisites for RigidBody (RigidBodyParam fixes)
...
Seems to have fixed _ZN4ksys4phys11InstanceSet14sub_7100FBB00CEPNS0_9RigidBodyEPNS0_14RigidBodyParamE
2022-01-16 13:00:35 +01:00
Léo Lam
544c33e2eb
ksys/phys: Finish RigidBodyMotionProxy
2022-01-16 02:36:36 +01:00
Léo Lam
a5b87ccf97
ksys/phys: Fix #include type for Havok header
2022-01-15 19:59:06 +01:00
Léo Lam
cee7b169af
ksys/phys: Finish RigidBodyMotion
2022-01-15 19:57:59 +01:00
Léo Lam
c6f0a3cb4c
ksys/phys: Rename flags for clarity in RigidBody
2022-01-15 18:37:35 +01:00
Léo Lam
7fbd3a0e8d
ksys/phys: Remove useless semicolon
2022-01-15 18:15:03 +01:00
Léo Lam
b298ec2b28
ksys/phys: Add remaining RigidBodyMotionProxy functions (except one)
2022-01-15 18:13:27 +01:00
Léo Lam
ea9cc90f29
ksys/phys: Fix indirect <cstring> include in RigidBodyMotion
2022-01-14 13:14:24 +01:00
Léo Lam
97938cc48e
ksys/phys: Start adding RigidBodyMotion
2022-01-14 13:04:25 +01:00
Léo Lam
359fb2685b
ksys/phys: Rename getMotionInfo to getMotionType for clarity
2022-01-13 19:10:11 +01:00
Léo Lam
5831b9581d
ksys/phys: Make MotionAccessor's getMotion less ambiguous
...
RigidBodyMotion has its own hkpMotion so we should make it clearer that
getMotion returns the rigid body's own internal motion.
2022-01-13 18:01:23 +01:00
Léo Lam
2b83356056
ksys/phys: Start adding RigidBodyMotionProxy
2022-01-13 16:32:27 +01:00
Léo Lam
cd75ca724a
ksys/phys: Rewrite toMtx34 without using intrinsics
...
Doing the assignments in this specific pattern of assignments is
sufficient to get the desired (bad) codegen when combined with
hkVector4f's operator() (which was added recently).
2022-01-13 12:53:28 +01:00
Léo Lam
278b088bd1
ksys/phys: Rename RigidBodyParamView to RigidBodyInstanceParam for clarity
2022-01-13 12:14:05 +01:00
Léo Lam
bcbc8bd2ea
ksys/phys: Fix a nasty typo in toHkQuat
2022-01-13 02:47:07 +01:00
Léo Lam
d37e60d7e8
ksys/phys: Rename two MotionAccessor functions for clarity
2022-01-12 22:59:51 +01:00
Léo Lam
88921dbd7a
ksys/phys: Add 3 easy RigidBody functions and fix some types
2022-01-11 22:13:55 +01:00
Léo Lam
51c3397965
ksys/phys: Rename RigidBody::Flag1 to RigidBody::Flag
...
There's no flag enum named "Flag"
2022-01-11 17:28:25 +01:00
Léo Lam
6ef3bb9327
ksys/phys: Add RigidBodyAccessor
2022-01-10 01:38:20 +01:00
Léo Lam
5a958d10aa
Havok: Add more hkVector4f functions
2022-01-09 11:58:59 +01:00
Léo Lam
17a5192490
ksys/phys: Remove obsolete comment
2022-01-07 19:59:33 +01:00
Léo Lam
16ae321058
Havok: Add hkpResponseModifier
2022-01-07 18:57:06 +01:00
Léo Lam
d7a6dbcf8a
ksys/phys: Fix RigidBody ctor matching issues
2022-01-07 17:15:52 +01:00
Léo Lam
15741ce3ae
Havok: Add stubs for hkpRigidBody parent classes
2022-01-07 17:09:00 +01:00
Léo Lam
b4bbaf141f
ksys/phys: Add MemSystem::initSystemData
2022-01-07 01:51:13 +01:00
Léo Lam
53c5d03420
ksys/phys: Move RagdollControllerKeyList to Ragdoll folder
2022-01-07 01:33:26 +01:00
Léo Lam
5ffa9564ca
ksys/phys: Add TeraMeshRigidBodyResource
2022-01-07 01:33:26 +01:00
Léo Lam
8a9fb5d10c
ksys/phys: Add RagdollResource
2022-01-07 00:31:20 +01:00
Léo Lam
9a3016d4a9
ksys/phys: Add RigidBodyResource
2022-01-07 00:26:56 +01:00
Léo Lam
293b231fd8
ksys/phys: Add ClothResource stub
2022-01-07 00:25:38 +01:00
Léo Lam
423eb84362
ksys/phys: Implement more StaticCompound functions
...
The other functions require RE'ing BodyGroup, which in turn requires
RigidBody stuff
2022-01-06 23:51:07 +01:00
Léo Lam
2d1ffdf6d2
ksys/phys: Add StaticCompoundInfo
2022-01-06 12:13:25 +01:00
Léo Lam
2359ce6fb4
ksys/phys: Start adding StaticCompound (very incomplete)
2022-01-05 23:57:04 +01:00
Léo Lam
3f33ba5d59
ksys/phys: Implement ContactMgr contact point pool functions
2022-01-04 19:20:41 +01:00
Léo Lam
8cf2def97c
ksys/phys: Rename RigidContactPointsEx::Point to ContactPoint
...
It's not just used in RigidContactPointsEx::Point.
2022-01-04 18:39:46 +01:00
Léo Lam
6511ecd711
ksys/phys: Match CapsuleShape::init
2022-01-04 02:19:10 +01:00
Léo Lam
7791352833
ksys/phys: Match CapsuleBody::setRadius
2022-01-04 00:25:37 +01:00
Léo Lam
64cc3c5856
ksys/phys: Match CapsuleBody::getVolume
2022-01-04 00:18:40 +01:00
Léo Lam
eb16cbaf55
ksys/phys: Add MaterialMask
2022-01-03 23:53:40 +01:00