【发布时间】:2009-09-29 00:30:46
【问题描述】:
所以目前我正在创建一个 1000x1000 位图,它只需调用 Bitmap.SetPixel() 函数就花费了大约 0.3 秒。
我实际上只绘制了大概 50% 的像素,所以它更像是对 setpixel 的 500,000 次调用。虽然这看起来确实有很多电话,但 OTOH 视频游戏做得更多,并推动了更多像素(其中一些是通过程序生成的)。
显然 Bitmap.SetPixel 并未针对速度进行优化,但如果我需要以每秒 20-30 次的速度更新位图以获得良好的动画效果,那么这会很慢,那么我有什么选择?
【问题讨论】:
-
我会使用您自己的缓冲区,然后将其“blit”到位图。抱歉,我自己实际上并不知道代码解决方案,但我不会在每个像素上设置像素,我会写入自己的缓冲区(或访问其缓冲区)