using mh; using System.Collections; using System.Collections.Generic; using UnityEngine; /// /// 不经常改变位置和大小的collider认为是静态collider,不会每帧重建 /// public partial class PhysicsManager : Singleton { private PhysicsQuadtree m_StaticCollisionQuadtree; public Vector4 staticCollisionQuadtreeRange { set { m_StaticCollisionQuadtree.quadtreeRange = value; } } public void AddStaticCollider(IQuadTreeObject collider) { m_StaticCollisionQuadtree.AddObject(collider); } public void RemoveStaticCollider(IQuadTreeObject collider) { m_StaticCollisionQuadtree.RemoveObject(collider); } public bool RetriveStaticColliders(ref List returnObjs, IQuadTreeObject obj) { return m_StaticCollisionQuadtree.Retrive(ref returnObjs, obj); } public bool RetriveStaticColliders(ref List returnObjs, Vector4 bound) { return m_StaticCollisionQuadtree.Retrive(ref returnObjs, bound); } public bool RetriveStaticColliders(Vector4 bound) { m_SharedRetriveResults.Clear(); return m_StaticCollisionQuadtree.Retrive(ref m_SharedRetriveResults, bound); } }