diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2025-01-14 15:50:04 -0500 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2025-01-14 15:50:04 -0500 |
| commit | 80a67230fe192287503092a3d256aea3a494409c (patch) | |
| tree | 187f2e7a41e0cd206d9969284a3abce4028d89f5 /src/camera.hpp | |
| parent | 46d814de510d0a7753c3e49eed3b3440d1c7c681 (diff) | |
pke: camera can track a given target
Diffstat (limited to 'src/camera.hpp')
| -rw-r--r-- | src/camera.hpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/camera.hpp b/src/camera.hpp index f4cc986..82712fe 100644 --- a/src/camera.hpp +++ b/src/camera.hpp @@ -33,21 +33,22 @@ struct PkeCamera : public Entity_Base { PkeCameraView view = PkeCameraView_MAX; PkeCameraStaleFlags stale = PkeCameraStaleFlags_MAX; struct Phys { - CompInstance *inst = nullptr; - CompInstance *targetInst = nullptr; + InstanceHandle instHandle; + InstanceHandle targetInstHandle; btTypedConstraint *constraint = nullptr; } phys; bool isPrimary = false; }; extern PkeCamera NullCamera; +extern CompInstance NullCameraInstance; extern PkeCamera *ActiveCamera; void PkeCamera_Init(); PkeCamera &PkeCamera_Register(const InstPos &instPos); PkeCamera *PkeCamera_Get(CameraHandle handle); PkeCamera *PkeCamera_Get(EntityHandle handle); -void PkeCamera_AttachToInstance(CameraHandle cameraHandle, CompInstance *inst); -void PkeCamera_DetachFromInstance(CameraHandle cameraHandle, CompInstance *inst); +void PkeCamera_TargetInstance(CameraHandle cameraHandle, CompInstance *inst); +void PkeCamera_UntargetInstance(CameraHandle cameraHandle, CompInstance *inst); int64_t PkeCamera_GetBucketCount(); PkeCamera *PkeCamera_GetCameras(int64_t bucketIndex, int64_t &count); void PkeCamera_SetPrimary(CameraHandle handle); |
