【发布时间】:2012-02-21 05:31:27
【问题描述】:
我成功地从图像创建了 WebGL 纹理并将其绘制到画布元素中。
function initTexture(src) {
texture = gl.createTexture();
texture.image = new Image();
texture.image.onload = function() {
handleLoadedTexture(texture)
}
texture.image.src = src;
}
我也尝试从其中一种数据类型创建纹理,但没有成功。
- [对象图像数据]
- [对象 CanvasPixelArray]
- [对象 CanvasRenderingContext2D]
是否可以仅使用图像的像素阵列创建纹理? 或者换句话说:是否可以从像素数组中创建 JS Image 对象?
编辑:
像素数组如下所示[r,g,b,a,r,g,b,a,r,g,b,a,...],每个值都在 {0..255} 的范围内。
我想用给定数组中的像素创建一个纹理。
【问题讨论】:
-
抱歉,我的意思可能不太清楚。我更新了 Q。
-
如果您的数据在 ArrayBuffer 中,您可以使用 WebGL 中的一个函数(我现在不记得了)
-
@Chiguireitor 你能给我举个例子来说明如何创建这样一个arrayBuffer吗?
标签: javascript html canvas textures webgl