提交 02099281 编写于 作者: A alteredq

Fixed reaction and trigger collisions examples.

Terrain still needs to reexport Blender model in new JSON format.
上级 9850695f
......@@ -42,13 +42,9 @@
}
</style>
<script type="text/javascript" src="lib/Three.js">
<script type="text/javascript" src="../build/Three.js">
</script>
<script type="text/javascript" src="lib/RequestAnimationFrame.js">
</script>
<script type="text/javascript" src="src/Physics.js">
</script>
<script type="text/javascript" src="src/PhysicsUtils.js">
<script type="text/javascript" src="js/RequestAnimationFrame.js">
</script>
<script type="text/javascript">
......@@ -118,7 +114,7 @@
cube.position = p;
cube.rotation.y = ry;
scene.addObject(cube);
Physics.colliders.push( PhysicsUtils.MeshOBB(cube) );
THREE.Collisions.colliders.push( THREE.CollisionUtils.MeshOBB(cube) );
cubes.push(cube);
return cube;
}
......@@ -137,13 +133,13 @@
cubes[i].materials[0].color = new THREE.Color(0x003300);
}
var ray = new Ray( sphere.position, new THREE.Vector3(0,0,1) );
var ray = new THREE.Ray( sphere.position, new THREE.Vector3(0,0,1) );
//debugNormal.position = sphere.position;
var c = Physics.rayCastNearest(ray);
var c = THREE.Collisions.rayCastNearest(ray);
if (!c || c.distance > speed) {
sphere.position.z += speed;
......
......@@ -38,10 +38,8 @@ body {
</style>
<script type="text/javascript" src="lib/Three.js"></script>
<script type="text/javascript" src="lib/RequestAnimationFrame.js"></script>
<script type="text/javascript" src="src/Physics.js"></script>
<script type="text/javascript" src="src/PhysicsUtils.js"></script>
<script type="text/javascript" src="../build/Three.js"></script>
<script type="text/javascript" src="js/RequestAnimationFrame.js"></script>
<script type="text/javascript">
......@@ -67,7 +65,7 @@ function init() {
scene = new THREE.Scene();
ray = new Ray();
ray = new THREE.Ray();
ray.origin.y = 10000;
ray.direction = new THREE.Vector3(0, -1, 0);
......@@ -98,10 +96,10 @@ function loadCube(p) {
var onGeometry = function( geometry ) {
var mesh = new THREE.Mesh( geometry, new THREE.MeshLambertMaterial( { color: 0xf3e4b8 } ) );
scene.addObject( mesh );
Physics.colliders.push( PhysicsUtils.MeshColliderWBox(mesh) );
THREE.Collisions.colliders.push( THREE.CollisionUtils.MeshColliderWBox(mesh) );
};
loader.load( { model: "models/terrain.js", callback: onGeometry } );
loader.load( { model: "obj/terrain.js", callback: onGeometry } );
}
function onDocumentMouseMove( event ) {
......@@ -117,7 +115,7 @@ function animate() {
ray.origin.x = radius * Math.cos(theta);
ray.origin.z = radius * Math.sin(theta);
var c = Physics.rayCastNearest(ray);
var c = THREE.Collisions.rayCastNearest(ray);
if(c) {
//info.innerHTML = "Found @ distance " + c.distance;
sphere.position = ray.origin.clone().subSelf( new THREE.Vector3(0, c.distance - sphereSize/2, 0) );
......
......@@ -109,7 +109,7 @@
}));
cube.position = p;
scene.addObject(cube);
THREE.Collisions.colliders.push( THREE.CollisionUtils.MeshOBB(cube) );
THREE.Collisions.colliders.push( THREE.CollisionUtils.MeshOBB(cube) );
cubes.push(cube);
return cube;
}
......@@ -133,7 +133,7 @@
var ray = new THREE.Ray( sphere.position, new THREE.Vector3(0,0,1) );
var c = THREE.Collisions.rayCastNearest(ray);
var c = THREE.Collisions.rayCastNearest(ray);
if (c && c.distance == -1) {
info.innerHTML = "Colliding!";
c.mesh.materials[0].color = new THREE.Color(0xff0000);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册