我如何使用一个图像,每当我想在 XNA 中进行碰撞时,它只发生在形状区域而不是它周围。
例如,当我使用下图时,我希望仅在触摸形状箭头时发生碰撞检测。
碰撞检测发生在这张图片中的区域
如何仅对图像区域进行限制?
我如何使用一个图像,每当我想在 XNA 中进行碰撞时,它只发生在形状区域而不是它周围。
例如,当我使用下图时,我希望仅在触摸形状箭头时发生碰撞检测。
碰撞检测发生在这张图片中的区域
如何仅对图像区域进行限制?
您还可以创建两个矩形。这使得重叠区域(图像不是矩形的区域)更小一些。但是,如果您需要精确地执行此像素,则必须使用资源昂贵的 per-pixel-collision。
您不应该尝试限制图像形状,因为无论您如何努力 - 您都会有一个矩形。您需要做的是检测像素碰撞。这是一个相当广泛的主题 - 您可以在此处阅读有关 Windows Phone 特定 XNA 实现的更多信息。