diff --git a/Source/Engine/Physics/Colliders/SplineCollider.cpp b/Source/Engine/Physics/Colliders/SplineCollider.cpp index d924d0011..62516a954 100644 --- a/Source/Engine/Physics/Colliders/SplineCollider.cpp +++ b/Source/Engine/Physics/Colliders/SplineCollider.cpp @@ -15,7 +15,6 @@ #include #include #endif - #include SplineCollider::SplineCollider(const SpawnParams& params) diff --git a/Source/Engine/Physics/Physics.cpp b/Source/Engine/Physics/Physics.cpp index 61845660a..e51d0c6d8 100644 --- a/Source/Engine/Physics/Physics.cpp +++ b/Source/Engine/Physics/Physics.cpp @@ -323,7 +323,7 @@ bool PhysicsService::Init() } #endif - Physics::DefaultScene = new PhysicsScene(String("Default"), settings); + Physics::DefaultScene = Physics::FindOrCreateScene(TEXT("Default")); Physics::Scenes.Add(Physics::DefaultScene); // Create default resources @@ -508,7 +508,7 @@ void Physics::RemoveJoint(Joint* joint) scene->RemoveJoint(joint); } -PhysicsScene* Physics::FindOrCreateScene(String name) +PhysicsScene* Physics::FindOrCreateScene(const String& name) { auto scene = FindScene(name); @@ -516,14 +516,14 @@ PhysicsScene* Physics::FindOrCreateScene(String name) { auto& settings = *PhysicsSettings::Get(); - scene = new PhysicsScene(name, settings); + scene = New(name, settings); Scenes.Add(scene); } return scene; } -PhysicsScene* Physics::FindScene(String name) +PhysicsScene* Physics::FindScene(const String& name) { for (auto scene : Scenes) { diff --git a/Source/Engine/Physics/Physics.h b/Source/Engine/Physics/Physics.h index 2cbc0a4ec..903737c08 100644 --- a/Source/Engine/Physics/Physics.h +++ b/Source/Engine/Physics/Physics.h @@ -116,12 +116,12 @@ public: /// /// Finds an existing or creates it if it does not exist. /// - API_FUNCTION() static PhysicsScene* FindOrCreateScene(String name); + API_FUNCTION() static PhysicsScene* FindOrCreateScene(const String& name); /// ///Finds an existing scene. /// - API_FUNCTION() static PhysicsScene* FindScene(String name); + API_FUNCTION() static PhysicsScene* FindScene(const String& name); public: /// diff --git a/Source/Engine/Physics/PhysicsScene.cpp b/Source/Engine/Physics/PhysicsScene.cpp index bcb4b6daa..fcc935b51 100644 --- a/Source/Engine/Physics/PhysicsScene.cpp +++ b/Source/Engine/Physics/PhysicsScene.cpp @@ -128,7 +128,7 @@ PhysicsScene::PhysicsScene(const String& name, const PhysicsSettings& settings) #define CHECK_INIT(value, msg) if(!value) { LOG(Error, msg); return; } mName = name; - mPhysxImpl = new PhysicsScenePhysX(); + mPhysxImpl = New(); // Create scene description PxSceneDesc sceneDesc(CPhysX->getTolerancesScale()); diff --git a/Source/Engine/Physics/PhysicsScene.h b/Source/Engine/Physics/PhysicsScene.h index 4993f216e..fa0e0303d 100644 --- a/Source/Engine/Physics/PhysicsScene.h +++ b/Source/Engine/Physics/PhysicsScene.h @@ -11,7 +11,6 @@ class WheeledVehicle; #endif - struct ActionData; class FixedStepper; class PhysicsSettings;