three.js ~ spinning plane and mesh example
by Thanos Saringelos
JavaScript
var camera, scene, renderer, geometry, material, mesh;
var width = 2000, height = 2000;
var tileX = 50, tileY = 50;
var time = 0;
init();
animate();
function init() {
scene = new THREE.Scene();
camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 1, 10000 );
camera.position.x = 0;
camera.position.y = 550;
camera.position.z = 2000;
scene.add(camera);
renderer = new THREE.WebGLRenderer( );
renderer.setSize(window.innerWidth, window.innerHeight);
geometry = new THREE.PlaneGeometry(width, height, tileX, tileY);
material = new THREE.MeshPhongMaterial();
material.map = THREE.ImageUtils.loadTexture("http://i.imgur.com/Ba11mjd.png");
material.map.wrapS = material.map.wrapT = THREE.RepeatWrapping;
material.map.repeat.set(tileX, tileY);
material.side = THREE.DoubleSide;
mesh = new THREE.Mesh(geometry, material);
mesh.receiveShadow = true;
mesh.rotation.x = -0.5 * Math.PI;
mesh.rotation.z = 0.8;
scene.add(mesh);
var ambientLight = new THREE.AmbientLight(0x114488);
scene.add(ambientLight);
var spotLight = new THREE.SpotLight(0x441188);
spotLight.position.set(0, 10000, 0);
spotLight.castShadow = true;
scene.add(spotLight);
document.body.appendChild(renderer.domElement);
}
function animate() {
time = new Date().getTime();
render();
requestAnimationFrame(animate);
}
function render() {
var x = camera.position.x;
var z = camera.position.z;
var rotSpeed = 0.001;
mesh.rotation.x += 0.1 ;
mesh.rotation.y += 0.1 ;
mesh.rotation.z += 0.1 ;
camera.lookAt(scene.position);
console.log(mesh)
renderer.render(scene, camera);
}