From ae17b5d203677ff99cf0c3ee9d9ec9309600b568 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Mon, 14 Nov 2016 03:21:07 +0000 Subject: reduce calls to physics world cast rays for camera collision check --- OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'OpenSim/Region/ClientStack/Linden/UDP') diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 99c9049..46c6a19 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -6263,7 +6263,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP bool movement = CheckAgentMovementUpdateSignificance(x); bool camera = CheckAgentCameraUpdateSignificance(x); - + // Was there a significant movement/state change? if (movement) { @@ -6274,6 +6274,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP m_thisAgentUpdateArgs.HeadRotation = x.HeadRotation; m_thisAgentUpdateArgs.State = x.State; + m_thisAgentUpdateArgs.NeedsCameraCollision = !camera; + UpdateAgent handlerAgentUpdate = OnAgentUpdate; UpdateAgent handlerPreAgentUpdate = OnPreAgentUpdate; @@ -6282,7 +6284,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP if (handlerAgentUpdate != null) OnAgentUpdate(this, m_thisAgentUpdateArgs); - + } // Was there a significant camera(s) change? @@ -6293,6 +6295,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP m_thisAgentUpdateArgs.CameraLeftAxis = x.CameraLeftAxis; m_thisAgentUpdateArgs.CameraUpAxis = x.CameraUpAxis; + m_thisAgentUpdateArgs.NeedsCameraCollision = true; + UpdateAgent handlerAgentCameraUpdate = OnAgentCameraUpdate; if (handlerAgentCameraUpdate != null) -- cgit v1.1