3 Code Snippets
Colin McMillen edited this page 2 years ago
public static class Geometry {
  public static bool PointInCone(
  float visionRangeSq, float fovCos, Vector2 eyePos, Vector2 direction, Vector2 test) {
    Vector2 delta = Vector2.Subtract(test, eyePos);
    if (delta.LengthSquared() > visionRangeSq) {
      return false;
    }
    float dot = Vector2.Dot(Vector2.Normalize(direction), Vector2.Normalize(delta));
    return dot > fovCos;
  }
}
// Make a 1x1 white texture:
Texture2D whiteTexture = new Texture2D(GraphicsDevice, 1, 1);
whiteTexture.SetData(new Color[] { Color.White });
// When done with it, in UnloadContent or similar:
whiteTexture.Dispose();