所以我想将我的 PC 游戏转换为在 Xbox 360 上运行。它在 PC 上运行得非常好,配备 Intel Core 2 Quad @ 2.40Ghz 和 Radeon 4850 512MB。
我将它移植到 Xbox 上,马上就发现列表导入的不变性和继承存在一些问题,所以我简单地使用了称为 .Cast<>() 的 LINQ 方法。
如果这种方法开销很大,请告诉我,因为由于某种原因我无法在 360 上部署性能分析,很可能是因为它在 360 上播放。
然后另一个问题来了,这是一个很好的 System.OutOfMemoryException。我的天空盒纹理是 4096x4096,因此将它们减少一半可以消除该错误。奇怪的是,它们只有 3MB x 6,所以它不应该使用那么多可用的 512MB。
因此,当所有这些问题都被清除后,每 2 秒 1 帧的效果就被引入了。然后它在玩 1 分钟后崩溃,无论这意味着什么,它都是“代码 4”。
它像幻灯片一样播放。以下是来自 PC 游戏的一些性能分析图像。他们还不错。
CPU: http: //i.imgur.com/JYx7Z.png RAM: http: //i.imgur.com/C29KN.png 72% = 150MB 请注意。
我希望这里的任何人都对这个问题有一些经验。坦率地说,我全神贯注。