three.js所:使用图像的纹理使其它物体消失(Three.js: using an image

2019-10-19 04:53发布

我试图想象空间时间立方。 作为参考,我借此形象我在谷歌发现: http://www.intechopen.com/source/html/38305/media/image7.jpeg 。 其实我设法做到这一点,但只要我开始使用一个纹理立方体的底部(这是在我的情况的平面)有一个奇怪的错误。 这是刚下飞机上面的东西是一些如何并不总是可见,图像有时变形。 这是很难解释的,所以你可能检查出来jfiddle我创建:

http://jsfiddle.net/fGwsB/

我现在用的是CanvasRenderer并载入纹理folows:

texturemat = new THREE.MeshLambertMaterial({
    side: THREE.DoubleSide,
    map: THREE.ImageUtils.loadTexture(background)});

其中的背景是包含链接的图像文件的字符串。

控制有效,所以你可能需要缩放和旋转位为来出现的错误。

Answer 1:

在“消失”的几何形状由的限制引起CanvasRenderer由于其处理深度排序的方式。

虽然WebGLRenderer排序在像素水平上,CanvasRenderer排序以多边形层级。

你能做的最好是增加你的几何体,你已经在做的镶嵌。

var geometry = new THREE.PlaneGeometry(width, height, 10, 10 );

此外,加入更多的点你的行会有所帮助。

至于失真推移,也由增加的镶嵌改善。 见ThreeJS立方织构奇特的视觉 。

three.js所r.64



文章来源: Three.js: using an image texture causes other objects to disappear