在OpenFL中有效地渲染每像素单字节数据?

时间:2018-02-17 02:47:41

标签: haxe openfl

我有一个字节数组,它使用一个字节来表示一个像素。为了呈现它,目前我使用BitmapData和一个循环来填充它:

bitmapData.lock();
for(y in 0...height) for(x in 0...width) {
    var v = data[y * width + x];
    bitmapData.setPixel(x, y, v << 16 | v << 8 | v); // grayscale
}
bitmapData.unlock();

但它非常耗费CPU。我想知道是否有更有效的方法,比如在着色器中进行?

1 个答案:

答案 0 :(得分:0)

您可以查看Lime项目中的“TextRendering”示例,以查看仅从alpha纹理渲染的示例。在编写时,这并不是OpenFL渲染器本身的支持,但欢迎提出这种效果的拉动请求。

替代方法是使用OpenGLView代码,类似于“TextRendering”示例。