1

我正在屏幕上绘制多个圆圈(未填充),我对所有圆圈使用相同的精灵,但比例值不同。问题是,当它们大约有 6-10 个时,它会滞后很多。纹理本身是 400x400 png 图片。请注意,当使用spritebatch.Draw()参数最少的方法时,性能会显着提高。我在通过包含比例值的列表循环时进行绘图。值得一提的是,我正在为 WP7 平台开发,并且延迟仅发生在速度较慢的设备上。

这是我正在使用的代码:

for (int i = 0; i < active_triangles.Count; i++)
                {                        
                    spriteBatch.Draw(circle, circle_origin, null, Color.White, 0, circle_pivot, scales[i], SpriteEffects.None, 0);
                    active_triangles[i].Draw(spriteBatch);
                }

三角形的绘制方法:

public void Draw(SpriteBatch spriteBatch)
    {
        spriteBatch.Draw(texture, position, frame, Color.White * alpha, rotation, pivot, 1, SpriteEffects.None, 0);
    }
4

0 回答 0