我有一个使用Orthographic camera
和MapControls
的项目,我的场景正在渲染,因为它应该,
然而,摄影机将渲染场景切成两半,如下所示
我正在像这样初始化正交摄影机
export class OrthoCamera extends THREE.OrthographicCamera {
constructor(
renderingContext: HTMLCanvasElement,
) {
super(
renderingContext.offsetWidth / -2,
renderingContext.offsetWidth / 2,
renderingContext.offsetHeight /2,
renderingContext.offsetHeight / - 2,
0.1,
);
this.move(2, 2, 2);
}
此外,我正在创建 map 控件如下
export class Controls extends MapControls {
constructor(camera: OrthoCamera, renderingContext: HTMLCanvasElement) {
super(camera, renderingContext);
this.enablePan = true;
this.enableRotate = true;
this.target.set(40.0, 3.0, 40.0);
this.update(0.1);
this.maxDistance = 240;
this.maxPolarAngle = Math.PI / 3.2;
this.minPolarAngle = Math.PI / 3.2;
}
}
最后,我把所有的东西都放在一起
this.camera = new OrthoCamera(renderingContext);
this.controls = new Controls(this.camera, renderingContext);