我将 XNA 用于 2D 项目。我有一个问题,我不知道用什么方法来解决它。我有一个被绘制到屏幕上的纹理(图像),例如:
|+++|+++|
|---|---|
|+++|+++|
现在我希望能够破坏该结构/图像的一部分,使其看起来像:
|+++|
|---|---|
|+++|+++|
所以现在的碰撞也适用于新图像。
哪种方式会更好地解决这个问题:
- 用另一个纹理交换整个纹理,在它被破坏的地方是透明的。
- 对 spriteBatch.Draw(sourceRectangle,destinationRectangle) 使用一些技巧来绘制所需的矩形,并以某种方式对此进行碰撞检查。
- 将纹理拆分为 4 个较小的纹理,每个纹理将负责其自己的绘图/碰撞检测。
- 使用我不知道的其他一些聪明的方法。
任何帮助,将不胜感激。如果您需要更多说明/示例,请告诉我。
编辑:为了澄清,我将为此提供一个使用示例。想象一堵 4x4 的墙,当被射击时,它的一小部分 1x1 被摧毁。