From 157de213324ab9c139ee827bee519577c9651dd1 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Fri, 20 Jun 2025 04:08:20 +0100 Subject: [PATCH] cosmetics --- .../ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 11 ++++++----- .../Tools/pCampBot/Behaviours/PhysicsBehaviour2.cs | 5 +++-- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index b866e12afe..c5d039ac0d 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -15935,10 +15935,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api private ContactResult[] ObjectIntersection(Vector3 rayStart, Vector3 rayEnd, bool includePhysical, bool includeNonPhysical, bool includePhantom) { - Ray ray = new(rayStart, Vector3.Normalize(rayEnd - rayStart)); - List contacts = new(); - Vector3 ab = rayEnd - rayStart; + Ray ray = new(rayStart, Vector3.Normalize(ref ab)); + List contacts = new(); World.ForEachSOG(delegate(SceneObjectGroup group) { @@ -15997,7 +15996,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api if (d2 > 0) return; - ray = new Ray(rayStart, Vector3.Normalize(rayEnd - rayStart)); + ray = new Ray(rayStart, Vector3.Normalize(ref ab)); EntityIntersection intersection = group.TestIntersection(ray, true, false); // Miss. if (!intersection.HitTF) @@ -16995,7 +16994,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api // Transform hit and normal to region coordinate system Vector3 posHit = rayTrans.PositionPart + (posHitProj * rayTrans.ScalePart) * rayTrans.RotationPart; - Vector3 normal = Vector3.Normalize((normalProj * rayTrans.ScalePart) * rayTrans.RotationPart); + + Vector3 normal = (normalProj * rayTrans.ScalePart) * rayTrans.RotationPart; + normal.Normalize(); // Remove duplicate hits at triangle intersections float distance = Vector3.Distance(rayTrans.Position1Ray, posHit); diff --git a/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour2.cs b/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour2.cs index 54782c118c..d7d5e282e0 100644 --- a/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour2.cs +++ b/OpenSim/Tools/pCampBot/Behaviours/PhysicsBehaviour2.cs @@ -75,8 +75,9 @@ namespace pCampBot private void MyTurnToward(Vector3 target) { - Quaternion between = Vector3.RotationBetween(Vector3.UnitX, Vector3.Normalize(target - Bot.Client.Self.SimPosition)); - Quaternion rot = between ; + Vector3 localtarget = target - Bot.Client.Self.SimPosition; + localtarget.Normalize(); + Quaternion rot = Vector3.RotationBetween(Vector3.UnitX, localtarget); Bot.Client.Self.Movement.BodyRotation = rot; Bot.Client.Self.Movement.HeadRotation = rot;