anaglyph test
HTML
<script src="http://humankibble.com/other/three.js"></script>
<script src="http://humankibble.com/other/AnaglyphEffect.js"></script>
<body>
</body>
CSS
body{background-color:#000; overflow:hidden;}
JavaScript
//initial setup of scene qualities
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);
var anaglyph = new THREE.AnaglyphEffect(renderer);
anaglyph.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
//for controls
var xrot = 0;
var yrot = 0;
var it = 0;
var mouseisheld = false;
//make shapes
var magicnumber = 50;
var geometry = new THREE.PlaneGeometry(magicnumber, magicnumber, 1, 1);
var material = new THREE.MeshNormalMaterial({});
material.side = THREE.DoubleSide;
var group = new THREE.Object3D;
var planes = [];
for(var i=0; i< magicnumber; i++){
for(var j=0; j <magicnumber; j++){
var plane = new THREE.Mesh(geometry, material);
plane.position.x = magicnumber*i - magicnumber*magicnumber/2;
plane.position.y = magicnumber*j - magicnumber*magicnumber/2;
plane.position.z = 0;
plane.rotation.y = (j/magicnumber)*2*Math.PI;
plane.rotation.x = (i/magicnumber)*2*Math.PI;
planes.push(plane);
group.add(planes[planes.length-1]);
}
}
scene.add(group);
//set camera position and direction
camera.position.z = -magicnumber*5;
camera.position.y = 0;
var origin = new THREE.Vector3(0, 0, 0);
camera.lookAt(origin);
// create a point light, ambient light, and particles
var point = new THREE.PointLight(0xFFFFFF);
scene.add(point);
point.position.x = camera.position.x;
point.position.y = camera.position.y;
point.position.z = camera.position.z;
animate();
///////////////////////////////////////////functions
function animate(){
requestAnimationFrame(animate);
render();
}
function render() {
anaglyph.render(scene, camera);
group.rotation.x += xrot;
group.rotation.y += yrot;
it += 0.01;
planes.forEach(function(obj){
obj.rotation.y += 0.01;
...