我使用基本spritebatch,其中正被创建和销毁的粒子基于递减α值直到0XNA粒子系统性能
该系统的性能比较是在PC相当差,和非常差的颗粒系统在xbox上,在显着fps减速之前,屏幕上有大约一百个粒子,我已经阅读了关于如何提高性能的文章,但是没有人有关于如何提示它们的提示,例如,最好的方式是 - 重复使用粒子比杀()?每个粒子的图像大小是否有所不同?如果我不旋转每个粒子,这会有帮助吗?
我玩过这些建议,但没有得到任何重大改进 - 有没有人有任何建议 - 是否值得使用GPU而不是基于CPU?
发表了一些代码。特别是你的'SpriteBatch'调用,特别是'Begin'。 –
所以在我的particleengine.cs中我有这个Draw: particles [index] .Draw(spriteBatch); 在particle.cs我呼吁所有在绘制变量: spriteBatch.Draw(质地,颜色,尺寸的旋转.....我Game1.cs 最后:) ParticleEngine.Draw(spriteBatch; – Paul
你应该编辑你的问题,并将你的问题的代码放在你的粒子'Draw'和粒子引擎'Draw'方法中,每个粒子的方法调用可能是太多的开销,我希望看到你的' –