我想创建一个OS X屏幕保护程序来计算每个像素的颜色数据。
现在我正在使用
NSBitmapImageRep *canvas;
但是为每个点调用setPixel
并且每个drawInRect
调用animateOneFrame
只会使它无用。这太慢了。我正在寻找更好的解决方案。
我想做SDL_Surface可以做的事情,就是用双缓冲修改原始屏幕数据。
答案 0 :(得分:1)
您可以直接访问NSBitmapImageRep中的原始内存(通过它的bitmapData属性)。这比使用setPixel方法更快,但您必须确切知道像素数据如何存储在内存中。