-
Notifications
You must be signed in to change notification settings - Fork 0
/
helloWorld.html
70 lines (52 loc) · 1.83 KB
/
helloWorld.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<html>
<head>
<title>My first Three.js app</title>
<style>
body { margin: 0; }
canvas { width: 100%; height: 100% }
</style>
</head>
<body>
<script src="js/three.min.js"></script>
<script>
var z = 0;
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 );
document.body.appendChild( renderer.domElement );
var geometry = new THREE.BoxGeometry(100, 32, 32);
var material = new THREE.MeshLambertMaterial({color: 0x999900});
var cube = new THREE.Mesh(geometry, material);
scene.add(cube);
var material2 = new THREE.MeshBasicMaterial({color: 0x999900});
var cube2 = new THREE.Mesh(geometry, material2);
cube2.position.set(Math.sin(z), 0, 0);
//scene.add(cube2);
var dir = new THREE.Vector3( 1, 0, 0 );
var origin = new THREE.Vector3( 0, 0, 0 );
var length = 100;
var hex = 0xffff00;
var arrowHelper = new THREE.ArrowHelper( dir, origin, length, hex );
//scene.add( arrowHelper );
camera.position.y = 160;
camera.position.z = 400;
camera.lookAt(cube.position);
var skyboxGeometry = new THREE.CubeGeometry(10000, 10000, 10000);
var skyboxMaterial = new THREE.MeshBasicMaterial({ color: 0x000000, side: THREE.BackSide });
var skybox = new THREE.Mesh(skyboxGeometry, skyboxMaterial);
scene.add(skybox);
var light = new THREE.PointLight(0xffffff);
light.position.set(0,0,300);
scene.add(light);
function render () {
requestAnimationFrame( render );
cube.rotation.x += 0.01;
cube.rotation.y += 0.01;
cube2.rotation.y = Math.PI * 45 / 180;
renderer.render(scene, camera);
};
render();
</script>
</body>
</html>