相机无法正确追踪路径

时间:2016-04-25 07:17:34

标签: javascript three.js

我遵循了three.js中的this示例。 在示例中,摄像机和曲线网格被添加到对象3d。

在我的情况下,没有这样做,因为我需要将网格精确地放在动态创建的纹理上。

我面临的问题是,曲线成功添加到场景中,但摄像机没有正确跟踪路径。 我已经在动画函数中复制了动画splineCamera的代码并进行了一些更改。请看看 my code

动画功能中的部分代码是

var time = Date.now();
var looptime = 20 * 1000;
var t = (time % looptime) / looptime;
var pos = tube.parameters.path.getPointAt(t);
 pos.multiplyScalar(2);
var segments = tube.tangents.length;
 var pickt = t * segments;
 var pick = Math.floor(pickt);
 var pickNext = (pick + 1) % segments;
binormal.subVectors(tube.binormals[pickNext], tube.binormals[pick]);
binormal.multiplyScalar(pickt - pick).add(tube.binormals[pick]);
var dir = tube.parameters.path.getTangentAt(t);

 var offset = 15;

 normal.copy(binormal).cross(dir);
 pos.add(normal.clone().multiplyScalar(offset));

 splineCamera.position.copy(pos);
 var lookAt = tube.parameters.path.getPointAt((t + 30 /tube.parameters.path.getLength()) % 1).multiplyScalar(2);
 if (!lookAhead)
  lookAt.copy(pos).add(dir);
splineCamera.matrix.lookAt(splineCamera.position, lookAt, normal);
splineCamera.rotation.setFromRotationMatrix(splineCamera.matrix,splineCamera.rotation.order);
 Renderer.render(Scene, splineCamera);

是否缺少任何东西

0 个答案:

没有答案