/// <summary>
 /// Hashes and entity's transform and it's collider shape settings
 /// </summary>
 /// <param name="collider"></param>
 /// <returns></returns>
 public static int HashEntityCollider(StaticColliderComponent collider)
 {
     int hash = 0;
     hash = (hash * 397) ^ collider.Entity.Transform.WorldMatrix.GetHashCode();
     hash = (hash * 397) ^ collider.CollisionGroup.GetHashCode();
     foreach (var shape in collider.ColliderShapes)
     {
         hash = (hash * 397) ^ shape.GetType().GetHashCode();
         hash = (hash * 397) ^ shape.GetHashCode();
     }
     return hash;
 }