Cube – Automatic rotation

Example:

var camera, scene, renderer;
var mesh;
init();
animate();
function init() {
    camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 1, 1000 );
    camera.position.z = 400;
    scene = new THREE.Scene();

    var loader = new THREE.TextureLoader();
    var materialArray = [
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_01.jpg") } ),
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_02.jpg") } ),
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_03.jpg") } ),
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_04.jpg") } ),
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_01.jpg") } ),
        new THREE.MeshBasicMaterial( { map: loader.load("images/seasons_02.jpg") } )
    ];

    var geometry = new THREE.BoxBufferGeometry( 200, 200, 200 );
    mesh = new THREE.Mesh( geometry, materialArray );
    scene.add( mesh );
    renderer = new THREE.WebGLRenderer( { antialias: true } );
    renderer.setPixelRatio( window.devicePixelRatio );
    renderer.setSize( window.innerWidth, window.innerHeight );
    document.body.appendChild( renderer.domElement );
    //
    window.addEventListener( 'resize', onWindowResize, false );
}
function onWindowResize() {
    camera.aspect = window.innerWidth / window.innerHeight;
    camera.updateProjectionMatrix();
    renderer.setSize( window.innerWidth, window.innerHeight );
}
function animate() {
    requestAnimationFrame( animate );
    mesh.rotation.x += 0.005;
    mesh.rotation.y += 0.01;
    renderer.render( scene, camera );
}

Reference: