1
我希望能够检测到变量缩放级别上的正方形边缘。检测不同缩放级别上的边缘
我的广场是在模型视图的固定位置,我使用gluLookAt放大或缩小。当我以最大值缩小(然后正方形适合屏幕)时,我不需要能够左右/上/下移动相机,但是当我放大(任何缩放级别)时,我需要能够移动相机直到找到方形边缘。
在使用glFrustrum设置矩阵和gluLookAt使我的缩放。
我该如何计算相机的移动区域与相机距我的距离?
我希望能够检测到变量缩放级别上的正方形边缘。检测不同缩放级别上的边缘
我的广场是在模型视图的固定位置,我使用gluLookAt放大或缩小。当我以最大值缩小(然后正方形适合屏幕)时,我不需要能够左右/上/下移动相机,但是当我放大(任何缩放级别)时,我需要能够移动相机直到找到方形边缘。
在使用glFrustrum设置矩阵和gluLookAt使我的缩放。
我该如何计算相机的移动区域与相机距我的距离?
从您的模型视图,投影和视口矩阵,从世界空间项目平方坐标到屏幕空间。然后检查每个点是否在屏幕空间之外。如果它通过,那么你可以允许移动相机。以下是投影示例代码:http://www.flipcode.com/archives/Object_To_Screen_Space.shtml