繁体   English   中英

将图像加载到多维数据集three.js

[英]load image to a cube three.js

嗨,我尝试将图像加载到多维数据集,但我不知道这是什么问题。 多维数据集很好,但是图像不行。 这是链接: http : //diegoddox.bitbucket.org/loadimage/

var scene, camera, renderer;
renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setClearColorHex(0xeeeeee);
renderer.clear();
document.body.appendChild(renderer.domElement);
scene = new THREE.Scene();
camera = new THREE.PerspectiveCamera( 70, window.innerWidth/window.innerHeight, 0.1, 5000 );
camera.position.z = 800;
camera.lookAt(scene.position);
scene.add(camera);
var material = new THREE.MeshBasicMaterial({
    map: THREE.ImageUtils.loadTexture("img.jpg")
});
material.map.needsUpdate = true; 
var cube = new THREE.Mesh(new THREE.CubeGeometry(300, 300, 300), material);
cube.overdraw = true;
cube.position.x = 0;
cube.rotation.x = -20;
cube.rotation.z = -2;
scene.add(cube);
renderer.render(scene, camera);

图像加载是异步的。

发生的情况是您的单个render()调用是在图像完成加载之前发生的。

输入

renderer.render(scene, camera);

进入控制台,您将看到纹理渲染。

您需要将回调添加到loadTexture()函数,然后从那里调用render() ,或者,您也可以使用requestAnimationFrame()添加动画循环。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM