【发布时间】:2014-07-03 08:34:45
【问题描述】:
我的项目中有一个奇怪的视觉效果(不知道怎么称呼它)。我制作了一个立方体并使其可以旋转。下面我得到了创建立方体的代码。
另见图片。如果我升级我的segmentsWidth 和segmentsHeight,它的侧面看起来会更好,但前面的线条不会是直的。该图像是使用下面显示的代码制作的。我想看到的是前面的直线和侧面的线条不应该有V。
如果我有overdraw = false,我会看到我不想要但没有乱七八糟的图片的白线。但是当我将它设置为 true 时,我会得到一个凌乱的画面。
这可能吗?
container = document.createElement( 'div' );
document.body.appendChild( container );
camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 1, 1000 );
camera.position.y = 150;
camera.position.z = 250;
scene = new THREE.Scene();
// Cube
var geometry = new THREE.CubeGeometry( 100, 200, 8, 1, 1 );
cube = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial([
new THREE.MeshBasicMaterial({ color: 0xefefef }),
new THREE.MeshBasicMaterial({ color: 0xefefef }),
new THREE.MeshBasicMaterial({ color: 0xefefef }),
new THREE.MeshBasicMaterial({ color: 0xefefef }),
new THREE.MeshBasicMaterial({
map: THREE.ImageUtils.loadTexture('img/door.jpg'),
overdraw: false
}),
new THREE.MeshBasicMaterial({
map: THREE.ImageUtils.loadTexture('img/door.jpg'),
overdraw: false
})
]));
cube.position.y = 150;
scene.add( cube );
【问题讨论】:
-
可能增加了多边形的数量:THREE.CubeGeometry( 100, 200, 8, 4, 4 );
-
这确实让它变得更好,但我放的越多,前面就越模糊。这是一条直线,里面会有很多S线。
-
这还记得我 PS1 的图形 :)
标签: javascript three.js