我试图使用Three.js将obj文件上传到WebGL场景.我看到一些示例代码,如下面的代码很好,但我想知道命令是什么
object.traverse();
Run Code Online (Sandbox Code Playgroud)
做?如果我们不进行遍历会发生什么?谢谢.
// prepare loader and load the model
var oLoader = new THREE.OBJLoader();
oLoader.load('models/chair.obj', function(object, materials) {
// var material = new THREE.MeshFaceMaterial(materials);
var material2 = new THREE.MeshLambertMaterial({ color: 0xa65e00 });
object.traverse( function(child) {
if (child instanceof THREE.Mesh) {
// apply custom material
child.material = material2;
// enable casting shadows
child.castShadow = true;
child.receiveShadow = true;
}
});
object.position.x = 0;
object.position.y = 0;
object.position.z = 0;
object.scale.set(1, 1, 1);
lesson6.scene.add(object);
});
Run Code Online (Sandbox Code Playgroud) 我只是无法理解window.event()
JavaScript 中的内容。它在没有任何定义的情况下使用。同样的事情document.event()
。我也不明白这两者的区别。他们接受任何论据吗?
我的电脑配备了GeForce GTX 960M,NVIDIA声称拥有640个CUDA核心.但是,当我运行clGetDeviceInfo来查找计算机中的计算单元数时,它打印出5(见下图).听起来CUDA核心与OpenCL认为的计算单元有些不同?或者一组CUDA核心可能形成一个OpenCL计算单元?你能解释一下吗?