基本上,我使用带有node.js的three.js模块生成一个静态场景。
不幸的是,由于在没有浏览器的情况下渲染场景,我无法使用THREE.ImageUtils.loadTexture
。
我在使用时遇到错误 - 我知道document
不存在,因为我正在渲染服务器端。
var materials = [
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here'')}),
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here'')}),
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here'')}),
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here'')}),
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here'')}),
new THREE.MeshLambertMaterial({map: THREE.ImageUtils.loadTexture('url here')})
];
返回
/usr/src/node-v0.10.40/node_modules/three/three.js:13028
var image = document.createElement( 'img' );
^
ReferenceError: document is not defined
总而言之 - 我需要在three.js中使用SoftwareRenderer将纹理加载到多维数据集上,但是问题是我用节点渲染它,而不是在浏览器中加载它。我该怎么做呢?