我是 THREE.js 的新手。 当我在浏览器中打开这段代码时,它只显示黑屏而不是三 Angular 形。 请帮我找出代码中的问题。
<!DOCTYPE html>
<html>
<head>
<title>First Line Object</title>
<style>
body{ margin: 0; }
canvas { width: 100%; height: 100%; }
</style>
</head>
<body>
<script src="js/three.js"></script>
<script>
var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
var lineGeom = new Geometry();
lineGeom.vertices = [
new THREE.Vector3(-2,-2, 0),
new THREE.Vector3(2, -2, 0),
new THREE.Vector3(0, 2, 0),
new THREE.Vector3(-2,-2, 0)
];
var lineMat = new THREE.LineBasicMaterial({
color: 0xA000A0,
linewidth: 2
});
var line = new THREE.Line(lineGeom, lineMat, THREE.LineStrip);
scene.add(line);
camera.position.z = 5;
var render = function() {
requestAnimationFrame(render);
renderer.render(scene, camera);
}
render();
</script>
</body>
</html>
上面的代码应该根据数组中给定的顶点显示一个三 Angular 形。但它只显示黑屏,没有其他内容。
最佳答案
Geometry 的初始化有问题。你必须像这样使用构造函数
new THREE.Geometry()
这将解决你的问题
关于javascript - THREE.js 行对象未在浏览器中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41076578/