在800x600屏幕上随机位置数万次渲染几十张16x16位图的最快方法是什么?
1)使用CopyPixel()将每个精灵blit到800*600的屏幕缓冲区?当然,在屏幕缓冲区上调用unlock(), lock()。
2)使用炼金术?在c++端创建一个uint* screenBuffer = new uint[800*600];并创造更多:uint* spriteBmp = new uint[16*16];并将每个spriteBmp复制到屏幕缓冲区中的数千个(x,y)位置?
3)像素弯曲?
另外,我很好奇哪种方法可以潜在地使用硬件渲染。也就是说,如果1)和3)可以利用用户显卡,它们应该比我用2)创建的任何软件光栅化器快很多。
我不需要在每个bmp上缩放或旋转,但我想知道它们是否会破坏为屏幕对齐位图所做的as3 API优化。
谢谢
你试过Starling吗?这是一个使用GPU的免费库!
你可以使用GPU渲染大量的位图。
btw:如果你使用相同的位图,它会更快!