if (!this.entityLoaded) { return; } if (!this.initialized) { this.initialized = true; } this.mouse.x = (event.offsetX / event.target.width ) * 2 - 1; this.mouse.y = -(event.offsetY / event.target.height) * 2 + 1; this.camera.lookAt.x = this.mouse.x * 20; this.camera.lookAt.y = this.mouse.y * 20; this.camera.lookAt.z = Math.cos(this.mouse.x) + Math.sin(this.mouse.y); this.camera.updateInstance(); this.raycaster.setFromCamera( this.mouse, this.camera ); var distance = - this.camera.position.z / this.raycaster.direction.z; var cursorPosition = this.camera.position.clone().add( this.raycaster.direction.clone().multiply( distance, true ) ); this.cursor.position.x = cursorPosition.x;//this.camera.position.x + this.mouse.x; this.cursor.position.y = cursorPosition.y;//this.camera.position.y + this.mouse.y; this.cursor.position.z = cursorPosition.z;//this.camera.position.z - 1; this.cursor.updateInstance(); //this.cursor.lookAt.x = this.camera.position.x; //this.cursor.lookAt.y = this.camera.position.y; //this.cursor.lookAt.z = this.camera.position.z; //this.cursor.updateInstance(); this.thrower.instance.lookAt( new THREE.Vector3( this.cursor.position.x, this.cursor.position.y, this.cursor.position.z ) ); this.scene.meshes.map( function(mesh) { if (mesh.instance.material instanceof Array) { mesh.instance.material.map( function(material) { material.color.setHex(0xffffff); } ); } else { mesh.instance.material.color.setHex(0xffffff); } } ); var intersects = this.raycaster.getIntersectedObjects(this.scene.meshes); intersects.map( function(intersect) { var mesh = intersect.mesh; if (mesh.instance.material instanceof Array) { mesh.instance.material.map( function(material) { material.color.setHex(0xff0000); } ); } else { mesh.instance.material.color.setHex(0xff0000); } } ); //@ sourceURL=mouseMove.js