【发布时间】:2012-10-18 23:47:04
【问题描述】:
我不知道如何检测它是否会离开屏幕,有人可以帮忙吗?我正在使用 WebGL 和 Three.js。
【问题讨论】:
标签: javascript graphics position webgl three.js
我不知道如何检测它是否会离开屏幕,有人可以帮忙吗?我正在使用 WebGL 和 Three.js。
【问题讨论】:
标签: javascript graphics position webgl three.js
可以使用Frustum测试,有点像这样:
// Create a new Frustum object (for efficiency, do this only once)
var frustum = new THREE.Frustum();
// Helper matrix (for efficiency, do this only once)
var projScreenMatrix = new THREE.Matrix4();
// Set the matrix from camera matrices (which are updated on each renderer.render() call)
projScreenMatrix.multiply( camera.projectionMatrix, camera.matrixWorldInverse );
// Update the frustum
frustum.setFromMatrix( projScreenMatrix );
// Test for visibility
if ( !frustum.contains( object ) ) {
// It's off-screen!
}
这是从WebGLRenderer sources复制的。
【讨论】: