diff options
| author | MegaMech <MegaMech@users.noreply.github.com> | 2025-12-13 11:50:28 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-13 11:50:28 -0700 |
| commit | b934e98fc34964970ab5efacb2fb7c3372ae0b1a (patch) | |
| tree | cd96e5fabec7fdcc098d0de33b3b7e2754fb6cd5 /src/engine/editor/ObjectPicker.cpp | |
| parent | e6acb59ef4797ce27ddc9e21982c3f4e40824b52 (diff) | |
Refactor Track Class To Instantiate On Track Load (#587)
* Initial Commit
* First compilation of Registry template
* Further changes
* wip changes
* Impl TrackBrowser and Registry Info
* Remove const from TInfo
* Prep GetWorld
* Name refactor
* Refactor gWorldInstance to GetWorld()
* wip
* Should work now
* Data menu work again
* Fix editor staying open after program close
* Rename LoadLevel to LoadTrackDataFromJson
* More changes
* Add statue
* Add search to content browser using tags
* Fix statue pos and register tags
* Fix actor loading
* Fix delete all bug which deleted cameras
* reduce some boiler plate in actor and object
* Remove unused rulesets
* Search bar for all tabs
* fix data screen
* fix actor spawning
* temp editor fix
* Clean up
* improve extra mode transformation
* fix podium crash
* Fix editor clicking
* Fix editor clicking 2
* fix extra in custom track
* Fix FI for three actors
* Fix divide by zero error
* Ids managed by Registry
* Add scary comment
---------
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
Co-authored-by: coco875 <pereira.jannin@gmail.com>
Diffstat (limited to 'src/engine/editor/ObjectPicker.cpp')
| -rw-r--r-- | src/engine/editor/ObjectPicker.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/engine/editor/ObjectPicker.cpp b/src/engine/editor/ObjectPicker.cpp index 0d88db35c..cbce7dd09 100644 --- a/src/engine/editor/ObjectPicker.cpp +++ b/src/engine/editor/ObjectPicker.cpp @@ -35,7 +35,7 @@ void ObjectPicker::Tick() { } void ObjectPicker::SelectObject(std::vector<GameObject*> objects) { - Camera* camera = gEditor.eCamera; + Camera* camera = gScreenOneCtx->camera; Ray ray; ray.Origin = FVector(camera->pos[0], camera->pos[1], camera->pos[2]); @@ -59,7 +59,7 @@ void ObjectPicker::SelectObject(std::vector<GameObject*> objects) { } void ObjectPicker::DragHandle() { - Camera* camera = gEditor.eCamera; + Camera* camera = gScreenOneCtx->camera; Ray ray; ray.Origin = FVector(camera->pos[0], camera->pos[1], camera->pos[2]); ray.Direction = ScreenRayTrace(); @@ -136,7 +136,7 @@ void ObjectPicker::Draw() { }, _selected); if (Debug) { - Camera* camera = gEditor.eCamera; + Camera* camera = gScreenOneCtx->camera; Mat4 CursorMtx; IRotator rot = IRotator(0,0,0); FVector scale = FVector(1, 1, 1); @@ -249,7 +249,7 @@ std::pair<AActor*, float> ObjectPicker::CheckAActorRay(Ray ray) { AActor* hitActor = nullptr; float hitDistance = FLT_MAX; - for (auto actor : gWorldInstance.Actors) { + for (const auto& actor : GetWorld()->Actors) { if ((actor->bPendingDestroy) && (!actor->IsMod())) { continue; } @@ -265,7 +265,7 @@ std::pair<AActor*, float> ObjectPicker::CheckAActorRay(Ray ray) { if (IntersectRayTriangleAndTransform(ray, FVector(actor->Pos[0], actor->Pos[1], actor->Pos[2]), tri, t)) { if (t < hitDistance) { hitDistance = t; - hitActor = static_cast<AActor*>(actor); + hitActor = actor.get(); } } } @@ -283,7 +283,7 @@ std::pair<AActor*, float> ObjectPicker::CheckAActorRay(Ray ray) { if (QueryCollisionRayActor(&ray.Origin.x, &ray.Direction.x, boxMin, boxMax, &t)) { if (t < hitDistance) { hitDistance = t; - hitActor = static_cast<AActor*>(actor); + hitActor = actor.get(); } } } |
