public static float sdTorusX(Vector3 p, Vector2 t) { return (float)Math.Sqrt(Math.Pow((float)Math.Abs(Math.Sqrt(p.Y * p.Y + p.Z * p.Z)) - t.X, 2.0f) + p.X * p.X) - t.Y; //Vector2 q = new Vector2(, p.X); //return q.Length() - t.Y; }