使用tween创建动画

three中,你也可以使用TWEEN这个动画插件来创建动画。(关于TWEEN的基础知识, 你可以浏览这里 :http://blog.csdn.net/qq408896436/article/details/53866240

例子 :
 

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>THREE + TWEEN DEMO</title>
	<style>
		body{ margin: 0; padding: 0; overflow: hidden;  }
	</style>
</head>
<body>
<script src='js/three.js'></script>
<script src='js/Tween.js'></script>
<script>
	var scene = new THREE.Scene();   
	var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);    
	camera.position.set(0,0,10);  
	camera.lookAt(scene.position);  
	var renderer = new THREE.WebGLRenderer();   
	renderer.setSize(window.innerWidth, window.innerHeight);  
	renderer.setClearColor('#000');   
	document.body.appendChild(renderer.domElement);    
	var cube = new THREE.Mesh(new THREE.CubeGeometry(1,2,3), new THREE.MeshBasicMaterial({  
	    color : 'green'  
	}));  
	scene.add(cube);  

	//tween 动画 (下面的写法只能改变cube的某个属性,比如只能改变cube的position)
	var tween = new TWEEN.Tween(cube.position)
			.to({x : 3, y : 3, z : 3}, 1000)
			.easing(TWEEN.Easing.Elastic.InOut)
			.onUpdate(function(){
			})
			.repeat(Infinity)
			.yoyo(true)
			.start();

	//tween 动画 (能修改多个属性)
	// var config = {x : 0, y : 0, z : 0, scaleX : 1, rotationX : 0}
	// var tween = new TWEEN.Tween(config)
	// 		.to({x : 3, y : 2, z : 3, scaleX : 4, rotationX : 20}, 1000)
	// 		.easing(TWEEN.Easing.Elastic.InOut)
	// 		.onUpdate(function(){
	// 			cube.position.set( config.x, config.y, config.z );
	// 			cube.scale.x = config.scaleX;
	// 			cube.rotation.x = config.rotationX;
	// 		})
	// 		.repeat(Infinity)
	// 		.yoyo(true)
	// 		.start();


	function updata(){  
	    TWEEN.update();
	    renderer.render(scene, camera);  
	    requestAnimationFrame(updata);  
	}  
	updata();  

</script>
</body>
</html>

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值