threejs:第一个3D程序

threejs四大组件:场景、几何体、相机、渲染器。下图为第一个程序,详解见注释。

<!DOCTYPE html>
<html>
<head>
	<title>第一个threejs</title>
	<script src="three.js"></script>
</head>
<body>

</body>

<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 geometry = new THREE.BoxGeometry();
	var material = new THREE.MeshBasicMaterial({color:0x00ff00});
        //创建一个立方体,以及创建一个材质
	var cube = new THREE.Mesh(geometry,material);
        //将材质和立方体组合,得到一个cube
	scene.add(cube);
        //将几何体加入场景
	camera.position.z = 10;//近大远小
        //设置相机距离原点的距离,相机距离原点越小,那么见到的原点处的几何体越大
        //相机距离原点的距离越大,几何体越小
	function render(){
		requestAnimationFrame(render);

		cube.rotation.y += 0.01;
		cube.rotation.x += 0.01;

		renderer.render(scene,camera);
	}
        //重复渲染,使几何体旋转
	render();
</script>

</html>

上图是相机距离原点为10时见到的几何体,理论上应该比距离为1时小,实际也如此。

距离为10
距离为1

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章