2015-07-04 4 views
0

Я пробую с недель до raycast от центра perspectivecamera. без event.client.x и у, потому что я использовать ориентацию устройства:Three.js raycast от центра камеры

var raycaster = new THREE.Raycaster(); 
var vector = new THREE.Vector3(0, 0, 0); // instead of event.client.x and event.client.y 
var direction = new THREE.Vector3(0, 0, -1).transformDirection(camera.matrixWorld); 
raycaster.set(vector, direction); 
var intersects = raycaster.intersectObjects(objects); 

У меня есть PerspectiveCamera на (0,0,0) ... я использовать ориентацию устройства вместо клавиатуры и мыши, чтобы получить вращение ... и хотите поразить куб с помощью raycast, отправленного из центра моей камеры. Я стараюсь много примеров для tr.js raycast, но без успеха.

Что, черт возьми, неправильно с моим raycast ????

ответ

1

Для вашего вектора raycast и направления использовать камеры мировых векторов:

raycaster.set(camera.getWorldPosition(), camera.getWorldDirection());