PerspectiveCamera.getEffectiveFOV()
是 three.js 中的一个函数,用于获取用户设置的视场角以及画布宽高比得到的实际视场角。
在 three.js 中,视场角(field of view,缩写为 FOV)指的是用户能够看到的场景范围,通常使用度数表示,如 45°、60°、90° 等。视场角越大,可以看到的场景范围就越广阔。但是,当视场角过大时,画面可能会出现畸变现象,影响美观和真实感。
PerspectiveCamera
是 three.js 中的一种相机类型,其使用透视投影渲染场景,适用于真实的三维场景。在创建 PerspectiveCamera
时,需要传入一个视场角参数,即 fov
,它会影响到相机的表现效果。
PerspectiveCamera.getEffectiveFOV()
函数可以帮助开发者获取 PerspectiveCamera
中实际应用的视场角,以便进行后续的计算和使用。
PerspectiveCamera.getEffectiveFOV()
getEffectiveFOV()
函数的返回值为一个数字,表示实际视场角(以度数为单位)。
// 创建一个 PerspectiveCamera
const camera = new THREE.PerspectiveCamera(60, window.innerWidth / window.innerHeight, 0.1, 1000);
// 获取实际视场角
const fov = camera.getEffectiveFOV();
console.log(`实际视场角为 ${fov} 度`);
getEffectiveFOV()
函数只能用于 PerspectiveCamera
对象。getEffectiveFOV()
函数需要在相机对象完全初始化之后使用,否则会返回不准确的值。PerspectiveCamera
的渲染循环中,如果用户改变了 fov
,需要重新调用 getEffectiveFOV()
函数获取实际视场角。