From 87c2aefe03985703847dc2cf2c9e3143aab70061 Mon Sep 17 00:00:00 2001 From: Iain Mckay Date: Tue, 14 Dec 2021 17:02:33 +0100 Subject: [PATCH] Code review feedback --- Source/Engine/Level/Actor.cpp | 8 +++++--- Source/Engine/Physics/Actors/RigidBody.cpp | 1 - Source/Engine/Physics/Colliders/CharacterController.cpp | 1 - Source/Engine/Physics/Colliders/Collider.h | 1 - Source/Engine/Physics/CollisionData.cpp | 5 ++--- Source/Engine/Physics/Physics.cpp | 2 +- Source/Engine/Physics/Physics.h | 2 +- Source/Engine/Physics/PhysicsScene.cpp | 4 ++-- Source/Engine/Physics/PhysicsScene.h | 5 ++--- 9 files changed, 13 insertions(+), 16 deletions(-) diff --git a/Source/Engine/Level/Actor.cpp b/Source/Engine/Level/Actor.cpp index 8c040cd6c..f2a0a3a62 100644 --- a/Source/Engine/Level/Actor.cpp +++ b/Source/Engine/Level/Actor.cpp @@ -1820,11 +1820,13 @@ void Actor::SetPhysicsScene(PhysicsScene* scene) _physicsScene = scene; if (previous != _physicsScene) + { OnPhysicsSceneChanged(previous); - // cascade - for (auto child : Children) - child->SetPhysicsScene(scene); + // cascade + for (auto child : Children) + child->SetPhysicsScene(scene); + } } PhysicsScene* Actor::GetPhysicsScene() diff --git a/Source/Engine/Physics/Actors/RigidBody.cpp b/Source/Engine/Physics/Actors/RigidBody.cpp index 09a8f7986..a3047889d 100644 --- a/Source/Engine/Physics/Actors/RigidBody.cpp +++ b/Source/Engine/Physics/Actors/RigidBody.cpp @@ -2,7 +2,6 @@ #include "RigidBody.h" #include "PxMaterial.h" -#include #include "Engine/Core/Log.h" #include "Engine/Physics/Utilities.h" diff --git a/Source/Engine/Physics/Colliders/CharacterController.cpp b/Source/Engine/Physics/Colliders/CharacterController.cpp index d15e4c718..40d5c23c2 100644 --- a/Source/Engine/Physics/Colliders/CharacterController.cpp +++ b/Source/Engine/Physics/Colliders/CharacterController.cpp @@ -8,7 +8,6 @@ #include "Engine/Engine/Time.h" #include "Engine/Physics/PhysicalMaterial.h" #include "Engine/Physics/PhysicsScene.h" - #include #include #include diff --git a/Source/Engine/Physics/Colliders/Collider.h b/Source/Engine/Physics/Colliders/Collider.h index d7ef43d21..479b7c288 100644 --- a/Source/Engine/Physics/Colliders/Collider.h +++ b/Source/Engine/Physics/Colliders/Collider.h @@ -232,6 +232,5 @@ protected: void OnParentChanged() override; void OnTransformChanged() override; void OnLayerChanged() override; - void OnPhysicsSceneChanged(PhysicsScene* previous) override; }; diff --git a/Source/Engine/Physics/CollisionData.cpp b/Source/Engine/Physics/CollisionData.cpp index 679694928..95e5a67ca 100644 --- a/Source/Engine/Physics/CollisionData.cpp +++ b/Source/Engine/Physics/CollisionData.cpp @@ -1,14 +1,13 @@ // Copyright (c) 2012-2021 Wojciech Figat. All rights reserved. -#include "CollisionData.h" -#include "PhysicsScene.h" - #include "Engine/Core/Log.h" #include "Engine/Content/Content.h" #include "Engine/Content/Assets/Model.h" #include "Engine/Content/Factories/BinaryAssetFactory.h" #include "Engine/Physics/Physics.h" +#include "Engine/Physics/PhysicsScene.h" #include "Engine/Physics/Utilities.h" +#include "Engine/Physics/CollisionData.h" #include "Engine/Physics/CollisionCooking.h" #include "Engine/Threading/Threading.h" #include diff --git a/Source/Engine/Physics/Physics.cpp b/Source/Engine/Physics/Physics.cpp index 0942cc150..514a8963b 100644 --- a/Source/Engine/Physics/Physics.cpp +++ b/Source/Engine/Physics/Physics.cpp @@ -503,7 +503,7 @@ void Physics::FlushRequestsAll() scene->FlushRequests(); } -void Physics::RemoveJointAll(Joint* joint) +void Physics::RemoveJoint(Joint* joint) { for (auto scene : Scenes) scene->RemoveJoint(joint); diff --git a/Source/Engine/Physics/Physics.h b/Source/Engine/Physics/Physics.h index e532ccc82..2cbc0a4ec 100644 --- a/Source/Engine/Physics/Physics.h +++ b/Source/Engine/Physics/Physics.h @@ -589,7 +589,7 @@ public: /// Marks that joint has been removed (all collision events should be cleared to prevent leaks of using removed object). /// /// The joint. - static void RemoveJointAll(Joint* joint); + static void RemoveJoint(Joint* joint); public: static void BeginPlay(); diff --git a/Source/Engine/Physics/PhysicsScene.cpp b/Source/Engine/Physics/PhysicsScene.cpp index 0a69ffd2e..383623dd7 100644 --- a/Source/Engine/Physics/PhysicsScene.cpp +++ b/Source/Engine/Physics/PhysicsScene.cpp @@ -92,7 +92,7 @@ static PxQueryHitType::Enum WheelRaycastPreFilter(PxFilterData filterData0, PxFi #endif -PhysicsScene::PhysicsScene(String name, PhysicsSettings settings, CPUInfo cpuInfo) +PhysicsScene::PhysicsScene(const String& name, const PhysicsSettings& settings) : PersistentScriptingObject(SpawnParams(Guid::New(), TypeInitializer)) { #define CHECK_INIT(value, msg) if(!value) { LOG(Error, msg); return; } @@ -112,7 +112,7 @@ PhysicsScene::PhysicsScene(String name, PhysicsSettings settings, CPUInfo cpuInf sceneDesc.bounceThresholdVelocity = settings.BounceThresholdVelocity; if (sceneDesc.cpuDispatcher == nullptr) { - mCpuDispatcher = PxDefaultCpuDispatcherCreate(Math::Clamp(cpuInfo.ProcessorCoreCount - 1, 1, 4)); + mCpuDispatcher = PxDefaultCpuDispatcherCreate(Math::Clamp(Platform::GetCPUInfo().ProcessorCoreCount - 1, 1, 4)); CHECK_INIT(mCpuDispatcher, "PxDefaultCpuDispatcherCreate failed!"); sceneDesc.cpuDispatcher = mCpuDispatcher; } diff --git a/Source/Engine/Physics/PhysicsScene.h b/Source/Engine/Physics/PhysicsScene.h index c940ad83b..e470e7531 100644 --- a/Source/Engine/Physics/PhysicsScene.h +++ b/Source/Engine/Physics/PhysicsScene.h @@ -1,7 +1,6 @@ #pragma once -#include "SimulationEventCallback.h" - +#include "Engine/Physics/SimulationEventCallback.h" #include "Engine/Scripting/ScriptingObject.h" #include "Engine/Scripting/ScriptingType.h" #include "Engine/Core/Collections/Array.h" @@ -32,7 +31,7 @@ API_CLASS(NoSpawn) class FLAXENGINE_API PhysicsScene : public PersistentScriptin { DECLARE_SCRIPTING_TYPE_NO_SPAWN(PhysicsScene); - explicit PhysicsScene(String name, PhysicsSettings settings, CPUInfo cpuInfo); + explicit PhysicsScene(const String& name, const PhysicsSettings& settings); ~PhysicsScene(); ///