0

我在three.js 有一个项目,我需要在窗口调整大小时更新轨迹球控件。我需要这样做来更新使用新输入变量调用函数的整个控件。重新创建控件会导致崩溃,我不想删除控件并创建新的一个可能导致垃圾的原因。我有一个类似的问题如何在 javascript 中更新 createControls 的函数输入变量?但我认为这是更完整的问题。

4

1 回答 1

2

如果要TrackballControls在调整窗口大小时更新,可以使用以下模式:

window.addEventListener( 'resize', onWindowResize, false );

function onWindowResize() {

    camera.aspect = window.innerWidth / window.innerHeight;
    camera.updateProjectionMatrix();

    renderer.setSize( window.innerWidth, window.innerHeight );

    controls.handleResize(); // for TrackballControls

    render();

}

您必须根据画布的大小来修改此模式。

请参阅http://threejs.org/examples/misc_controls_trackball.html

三.js r.70

于 2015-02-20T09:23:24.983 回答