我从Kinect相机获得an image that is a combination of the RGB and depth data。
如果可能的话,我想在WebGL中做两件事:
我应该看哪个WebGL JavaScript引擎?是否有类似的例子,使用图像数据构建3D模型?
(提出第一个问题!)
发现Photoshop中的3D工具很简单(3D> New Mesh From Grayscale):http://www.flickr.com/photos/forresto/5508400121/
答案 0 :(得分:1)
我不知道任何WebGL框架可以专门解决您的问题。我认为您可以使用深度数据创建一个网格,从矩形均匀网格开始,根据深度值将每个顶点移动到后面或前面(Z轴)。
一旦你有这个,那么你需要生成纹理数组,并从你在flickr上发布的图像我推断深度图像和纹理之间存在一对一的映射。因此生成纹理数组应该很简单。您只需将纹理上的对应坐标(s,t)映射到相应的顶点即可。因此,对于每个顶点,纹理数组中都有两个坐标。然后绑定它。
最后,您需要确保使用纹理为图像着色。这是一个两步过程:
第一步:将纹理坐标作为“attribute vec2
”传递给顶点着色器,并将其保存到变化的vec2。
第二步:在片段着色器中,阅读您在第一步中创建的varying vec2
并使用它生成gl_FragColor
。
我希望它有所帮助。