<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>three.js从入门到精通系列教程011 - three.js创建旋转球体</title>
<script src="ThreeJS/three.js"></script>
<script src="ThreeJS/jquery.js"></script>
</head>
<body>
<center id="myContainer"></center>
<script>
var myWidth = 480, myHeight = 320, k = myWidth / myHeight, s = 120;
//创建渲染器
var myRenderer = new THREE.WebGLRenderer();
myRenderer.setSize(myWidth, myHeight);
myRenderer.setClearColor("white", 1);
$("#myContainer").append(myRenderer.domElement);
var myScene = new THREE.Scene();
var myLight = new THREE.PointLight("white");
myLight.position.set(400, 800, 300);
myScene.add(myLight);
var myCamera = new THREE.OrthographicCamera(-s * k, s * k, s, -s, 1, 1000);
myCamera.position.set(400, 300, 200);
myCamera.lookAt(myScene.position);
//创建球体
/*
THREE.SphereGeometry(radius, segmentsWidth, segmentsHeight, phiStart, phiLength, thetaStart, thetaLength)
radius:是半径;
segmentsWidth:经度上的切片数,相当于经度被切成了几瓣;
segmentsHeight:纬度上的切片数,相当于纬度被切成了几层;
phiStart:经度开始的弧度;
phiLength:经度跨过的弧度;
thetaStart:纬度开始的弧度;
thetaLength:纬度跨过的弧度。
*/
var myGeometry = new THREE.SphereGeometry(80, 32, 32);
var myMaterial = new THREE.MeshNormalMaterial({
wireframe: true, transparent: true
});
var myMesh = new THREE.Mesh(myGeometry, myMaterial);
myScene.add(myMesh);
//渲染(旋转)球体
animate();
function animate() {
myMesh.rotateY(0.01); //每次绕y轴旋转0.01弧度
myRenderer.render(myScene, myCamera);
requestAnimationFrame(animate);
};
</script>
</body>
</html>
three.js从入门到精通系列教程011 - three.js创建旋转球体
最新推荐文章于 2024-07-03 18:05:52 发布