diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2025-01-14 18:17:54 -0500 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2025-01-14 18:17:54 -0500 |
| commit | 5a7b4a65a1d93744e4a5e6cc6df4244f61b81f68 (patch) | |
| tree | 4b59cb1d6e513c1caefdc7e4c35955741bcfe206 /src/camera.cpp | |
| parent | 80a67230fe192287503092a3d256aea3a494409c (diff) | |
chore: fix compiler warnings + extra includes
Diffstat (limited to 'src/camera.cpp')
| -rw-r--r-- | src/camera.cpp | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/src/camera.cpp b/src/camera.cpp index 7ee9408..eadea85 100644 --- a/src/camera.cpp +++ b/src/camera.cpp @@ -8,18 +8,8 @@ #include "physics.hpp" #include <glm/ext/quaternion_geometric.hpp> -PkeCamera NullCamera { - .camHandle = CameraHandle_MAX, - .type = PKE_CAMERA_TYPE_ORTHOGONAL, - .view = PKE_CAMERA_VIEW_TARGET, - .stale = PKE_CAMERA_STALE_ALL, - .phys = { - .instHandle = InstanceHandle_MAX, - .targetInstHandle = InstanceHandle_MAX, - .constraint = nullptr, - }, -}; -CompInstance NullCameraInstance; +PkeCamera NullCamera {}; +CompInstance NullCameraInstance{}; PkeCamera *ActiveCamera = &NullCamera; const pk_handle_item_index_T MAX_CAMERAS_PER_BUCKET = 32; @@ -93,8 +83,7 @@ void PkeCamera_TargetInstance(CameraHandle cameraHandle, CompInstance *inst) { CompInstance *selfInstance = ECS_GetInstance(cam.phys.instHandle); if (cam.phys.constraint != nullptr && cam.phys.constraint != CAFE_BABE(btTypedConstraint)) { - CompInstance *activeInst = reinterpret_cast<CompInstance *>(cam.phys.constraint->getRigidBodyB().getUserIndex()); - PkeCamera_UntargetInstance(cameraHandle, activeInst); + PkeCamera_UntargetInstance(cameraHandle); } btVector3 cameraOffset(0.f, -10.f, -10.f); @@ -137,7 +126,7 @@ void PkeCamera_TargetInstance(CameraHandle cameraHandle, CompInstance *inst) { cam.stale = PKE_CAMERA_STALE_POSROT; } -void PkeCamera_UntargetInstance(CameraHandle cameraHandle, CompInstance *inst) { +void PkeCamera_UntargetInstance(CameraHandle cameraHandle) { assert(cameraHandle != CameraHandle_MAX); auto &cam = Camera_BucketContainer.buckets[cameraHandle.bucketIndex][cameraHandle.itemIndex]; BtDynamicsWorld->removeConstraint(cam.phys.constraint); @@ -187,7 +176,7 @@ int64_t PkeCamera_GetBucketCount() { return Camera_BucketContainer.pkeHandle.bucketIndex + 1; } -PkeCamera *PkeCamera_GetCameras(int64_t bucketIndex, int64_t &count) { +PkeCamera *PkeCamera_GetCameras(pk_handle_bucket_index_T bucketIndex, pk_handle_item_index_T &count) { if (Camera_BucketContainer.pkeHandle.bucketIndex == bucketIndex) { count = Camera_BucketContainer.pkeHandle.itemIndex; } else { @@ -198,8 +187,11 @@ PkeCamera *PkeCamera_GetCameras(int64_t bucketIndex, int64_t &count) { void PkeCamera_Init() { Buckets_Init(Camera_BucketContainer, MAX_CAMERAS_PER_BUCKET); - memset(&NullCameraInstance, 0, sizeof(NullCameraInstance)); + NullCamera.type = PKE_CAMERA_TYPE_ORTHOGONAL; + NullCamera.view = PKE_CAMERA_VIEW_TARGET; + NullCamera.stale = PKE_CAMERA_STALE_ALL; InstPos instPos{ + .posRot = {}, .scale = btVector3(1.f, 1.f, 1.f), .mass = 1.f, }; @@ -226,6 +218,7 @@ void PkeCamera_Tick(double delta) { * could be that removing pos and rot from the camera would make this unnecessary? * See the camera serializer for more. */ + (void)delta; for (pk_handle_bucket_index_T b = 0; b <= Camera_BucketContainer.pkeHandle.bucketIndex; ++b) { auto &bkt = Camera_BucketContainer.buckets[b]; long itemCount = Camera_BucketContainer.pkeHandle.bucketIndex == b ? Camera_BucketContainer.pkeHandle.itemIndex : Camera_BucketContainer.limits.itemIndex; |
