1

我在 XNA 中有问题宽度绘制的层深度。我有两个 GameComponents:ScreenManager 和 Ball。ScreenManager 具有屏幕:BackgroundScreen、GamePlayScreen 和 PauseScreen...

我需要在 PauseScreen 之前绘制球并在球之前绘制 BackgroundScreen,目前...

在 Ball GameComponent 中,我在绘制球的精灵之后尝试调用 base.Draw(),在 ScreenManager 中,我在绘制屏幕之前尝试调用 base.Draw(),但两者都不起作用。

我该怎么做?感谢帮助。

4

1 回答 1

2

您无法在当前设置中实现这一点,因为 GameComponents 只能更改它们彼此之间的“Draw-Order”。

这是一张可视化的图片:

在此处输入图像描述

如您所见, Ball 和 ScreenManager 在同一平面/层中,因此重新排列并不能解决您的问题。

要解决您的问题,您也可以制作 Screens GameComponents,或者将球的逻辑移动到单独的屏幕中。

于 2012-10-18T15:26:03.507 回答