我们有一个像这样的巨大 Json Mesh,我们用 scenejs 渲染:
{"vertices":[
0.0, 0.0, 0.0,
0.0, 0.0, 2.0,
1.0, 0.0, 2.0,
0.0, 2.0, 2.0, //... next object
],
"normals":[
0.0, 0.0, 1.0,
0.0, 0.0, 1.0,
0.0, 0.0, 1.0,
0.0, 0.0, 1.0, //... next object
],
"colors":[
1.0, 0.0, 0.0, 1.0,
0.0, 1.0, 0.0, 1.0,
0.0, 0.0, 1.0, 1.0,
1.0, 1.0, 1.0, 1.0, //... next object
],
"idMapColors":[
0.0, 0.0, 0.0, 0.756,
0.0, 0.0, 0.0, 0.756,
0.0, 0.0, 0.0, 0.756,
0.0, 0.0, 0.0, 0.756, //... next object
]}
idMapColors 对于每个“对象”都是唯一的,可以转换为 id 以提供附加信息。
我们现在想在屏幕上使用普通颜色渲染网格,并在第二个渲染路径中使用 idMapColors。我们不想在特定点(鼠标位置)处读取第二个 FrameBuffer(用于 idMapColors)中的颜色值。
如何在 Scenejs 中执行此操作?我们可以将 idMapColors 渲染到 Framebuffer,但是如何访问它的数据呢?
在https://github.com/xeolabs/scenejs/wiki/frameBuf的 wiki 上,我们发现拣货还在进一步工作中,目前是否有可能这样做?