C# 如何在XNA中隐藏或消失元素?

C# 如何在XNA中隐藏或消失元素?,c#,xna,C#,Xna,我想在一个元素与另一个元素接触时显示或隐藏它 if (player.rectangle.isOnTopOf(object.rectangle)) { //Here I have to put the code } isOnTopOf()是一个检测矩形之间碰撞的函数。如果只需要使其不可见,只需在绘制(游戏时间)方法中忽略它即可。 if (!player.rectangle.isOnTopOf(object.rectangle)) { //If not touching, d

我想在一个元素与另一个元素接触时显示或隐藏它

if (player.rectangle.isOnTopOf(object.rectangle))
{
      //Here I have to put the code
}

isOnTopOf()
是一个检测矩形之间碰撞的函数。

如果只需要使其不可见,只需在
绘制(游戏时间)方法中忽略它即可。

if (!player.rectangle.isOnTopOf(object.rectangle))
{
     //If not touching, draw
     player.Draw(); //Or whatever
}
如果您想更进一步,请将
IsVisible
属性添加到您的玩家类(
public bool IsVisible
),并在
update(GameTime GameTime)
方法中进行更新,如下所示:

player.IsVisible = player.rectangle.isOnTopOf(object.rectangle)

如果要检测矩形之间的交点,可以使用Rectangle.Intersect方法。