我需要在我的node.js 服务器上使用 Three.js 来控制玩家的位置和碰撞(我尝试制作一个视频游戏)。
要在nodejs上使用三个,我已经使用“npm install Three”进行安装,并且它可以工作。
但是当我想调用 JSONLoader 时,我不能。
我是我的类(class),我添加:
var THREE =require('three'); //or require('three/three.js');
var JSON=require('three/src/loaders/JSONLoader.js');
或
require('three'); //or require('three/three.js');
var JSON=require('three/src/loaders/JSONLoader.js');
同样,我有一个错误,“未定义三个”,我不明白为什么?
为了解决此错误,我将 JSON 代码放入 Three.js 文件中,但在加载 json 时发现了另一个问题:
var loader = new THREE.JSONLoader();
loader.load(__dirname + '/public/js/essai/test.dae',function ( collada ){
...
});
Error : XMLHttpRequest is not defined.
我想,我没有正确使用,但我不明白我的错在哪里?
你能帮我吗?
非常感谢。
最佳答案
您不需要第二行,即
var JSON = require('three/src/loaders/JSONLoader.js');
如果您正确加载 Three.js
,例如
var THREE = require('three/three.js')
JSONLoader
已经存在,因此 THREE.JSONLoader
应该可以正常工作。
顺便说一句,您收到此错误的原因是 JSONLoader.js
的代码取决于全局范围内 THREE
对象的存在。但是,它不存在,因为您的 THREE
对象是本地的。
关于node.js - 三个在 Node.js 上使用 JSONLoader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19455087/