我正在尝试为我的项目确定最好的 Javascript 3D 库。
我喜欢Three.js
的不止一点,Scene.js,
但似乎更有效的编码风格Scene.js
,因为我需要动态创建大约 100 个对象,这意味着使用Three.js
.
Three.js
似乎对于每个不同的对象,您需要定义变量并将它们添加到场景中,如下所示:
var renderer = new THREE.WebGLRenderer();
var camera =
new THREE.PerspectiveCamera(
VIEW_ANGLE,
ASPECT,
NEAR,
FAR);
var scene = new THREE.Scene();
var sphere = new THREE.Mesh(
new THREE.SphereGeometry(
50,
16,
16),
sphereMaterial);
scene.add(sphere);
在 中Scene.js
,对象以类似 JSON 的结构创建,如下所示:
var scene = SceneJS.createScene({
nodes:[
{
type:"material",
color: { r: 0.3, g: 0.3, b: 1.0 },
nodes:[
{
type: "rotate",
id: "myRotate",
y: 1.0,
angle: 0,
nodes: [
{
type:"geometry",
source:{
type:"teapot"
}
}
]
}
]
}
]
});
现在我的问题是,是否也可以使用更类似于 JSON 的编码风格Three.js
?
我已经发现了THREE.JSONLoader
,但是由于 Three.js 没有很好的文档,我发现很难发现这是否适合我。它似乎更针对从 3D 软件转换的模型,但我真的需要自己构建对象。