You have to be precise here.
You can calculate the visible rectangular region given the camera's field-of-view, camera.fov
, and a given distance, dist
, from the camera.
Since the object presumably has depth, you have to pick one plane through the mesh, and do the calculation at that distance.
Here is how to calculate the visible height
and width
for a given distance dist
from the camera.
var vFOV = THREE.MathUtils.degToRad( camera.fov ); // convert vertical fov to radians
var height = 2 * Math.tan( vFOV / 2 ) * dist; // visible height
var width = height * camera.aspect; // visible width
three.js r.117
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…