У меня есть перспективная камера, смотрящая вниз по оси Z.Я хочу найти положение X, Z пола на заданном расстоянии (скажем, 100) перед камерой (по оси Y).
Порядок поворота камеры - «YXZ», поэтомуY описывает рыскание.
camera = new THREE.PerspectiveCamera(45, window.app.width / window.app.height, 1, 10000);
camera.rotation.order = "YXZ";
camera.position.z = 0;
camera.position.y = 50;
Я пытаюсь затем вычислить XZ области прямо перед тем, куда смотрит камера:
const inFrontOfCamera = {
x: camera.position.x + (Math.cos(camera.rotation.y) * 100),
z: camera.position.z + (Math.sin(camera.rotation.y) * 100),
}
Это работает, когда яЯ смотрю в одних направлениях, но не в других.Я чувствую, что я очень близок, но в моем понимании есть пробел!
Любые указатели и решения высоко ценятся.
Спасибо.