我目前正在使用SDL开发一个项目,它基本上在屏幕上绘制和移动图像(表面)。
要移动图像而不留下轨迹,您必须首先清除屏幕表面,就像glClear()一样,我目前是用一个简单的for循环来迭代表面的像素(还在表面上画一个黑色框或memset)来做到这一点。
虽然以前的解决方案对于小表面效果良好,但随着表面变得越来越大,它们变得越来越慢,因此我正在寻找最快的方法来清除(零)一个内存块。
此外,一个朋友指出使用SIMD指令可以非常快地完成工作,但我上一次做ASM是在8085上,任何关于此的见解也可能有用。