2016-10-04 88 views
0

我正在使用three.js並獲取相機和渲染工作的掛起。目前,我正在構建拖動和調整three.js繪製的畫布的功能。調整窗口大小,但保持縮放級別

我希望能夠拖動和調整畫布的大小,而不會讓場景變大。所以更大的畫布顯示更多的場景,而不是更大的場景。

回答

1

如果你還在尋找一個解決方案,這裏是一個小提琴做你想要達到的:http://jsfiddle.net/psyrendust/8nbpehj3/(我並不擁有這個小提琴)

您需要的視場發揮:

// remember these initial values 
var tanFOV = Math.tan(((Math.PI/180) * camera.fov/2)); 
var windowHeight = window.innerHeight; 

// Event Listeners 
window.addEventListener('resize', onWindowResize, false); 

function onWindowResize(event) { 

    camera.aspect = window.innerWidth/window.innerHeight; 

    // adjust the FOV 
    camera.fov = (360/Math.PI) * Math.atan(tanFOV * (window.innerHeight/windowHeight)); 

    camera.updateProjectionMatrix(); 
    camera.lookAt(scene.position); 

    renderer.setSize(window.innerWidth, window.innerHeight); 
    renderer.render(scene, camera); 

} 

希望這會有所幫助。

相關問題