如何从 gwt-g3d ( http://code.google.com/p/gwt-g3d/ ) 中的 JSON 字符串创建网格 (StaticMesh 的实例)?
问问题
893 次
1 回答
1
如果 JSON 字符串是静态的,您可以将其作为 ExternalMeshResource 加载(参见http://code.google.com/p/gwt-g3d/source/browse/trunk/gwt-g3d-test/src/gwt/g3d/ test/client/Lesson14Demo.java关于如何使用这个资源)。
如果没有,您可以使用JSONParser.parse(jsonString)
获取 JSON 值对象,然后执行类似的操作
Float32Array.create(jsonObj.get(fieldName).isArray().getJavaScriptObject().<JsArrayNumber>cast());
to 得到一个TypeArray
你可以传递给StaticMesh
. fieldName
以上取决于您的 json 字符串对象。例如,如果您的 json 看起来像:
{
"vertexPositions" : [0, 1, 2, ...]
"vertexNormals" : [0, 1, 0, ...]
"indices" : [0, 1, 2, ...]
}
那么你fieldName
可以是“vertexPositions”、“vertexNormals”和“indices”。(请注意,索引数组通常是 typeUint16Array
而不是Float32Array
)。有关更多信息,请参见AbstractMeshResource 的实现
于 2011-04-16T17:23:55.937 回答