【发布时间】:2011-12-21 01:38:28
【问题描述】:
我目前正在使用 SDL 开发一个项目。它基本上在屏幕上绘制和移动图像(表面)。
要移动图像而不留下痕迹,您必须首先清除 屏幕表面,这与 glClear() 非常相似,我目前正在使用一个简单的 for 循环遍历表面的像素(也在表面或 memset 上绘制一个黑框)。
虽然以前的解决方案适用于小表面,但随着表面变大,它们会变得越来越慢,所以我一直在寻找可以清除(零)内存块的最快方法。
另外,一位朋友指出,使用 SIMD 指令可以非常快地完成工作,但我上次使用 ASM 是在 8085 上,对此的任何见解也可能有用。
【问题讨论】: