Camera Unity 3D中的摄影机平截头体平面
我知道Camera Unity 3D中的摄影机平截头体平面,camera,unity3d,plane,frustum,Camera,Unity3d,Plane,Frustum,我知道Unity3D中的calculatefustumplanes()返回一个Plane对象数组,每个对象代表一个不同的平截头体平面,但我找不到任何文档来说明哪个元素是哪个元素 比如说 [0] = Front [1] = Back 等等 对于四叉树系统,我需要计算空间中的一个点(如边界体积的中心点)是否在相机平截头体中。返回数组中的平面的确切顺序没有记录(我也不知道) 不管怎么说,我认为你可以不费吹灰之力就搞定它:你只需要把相机放在一个熟悉的方向,然后检查每个方向的正常值 我需要计算空间中
Unity3D
中的calculatefustumplanes()
返回一个Plane
对象数组,每个对象代表一个不同的平截头体平面,但我找不到任何文档来说明哪个元素是哪个元素
比如说
[0] = Front
[1] = Back
等等
对于四叉树系统,我需要计算空间中的一个点(如边界体积的中心点)是否在相机平截头体中。返回数组中的
平面的确切顺序没有记录(我也不知道)
不管怎么说,我认为你可以不费吹灰之力就搞定它:你只需要把相机放在一个熟悉的方向,然后检查每个方向的正常值
我需要计算空间中的一个点(如
对于四叉树系统,边界体积)位于摄影机平截头体中
对于四叉树系统,我认为平截头体和GameObject
的AABB之间的交集就足够了,所以你甚至不需要知道平面在数组中的确切顺序就可以计算它。您可以直接使用。顺序:左、右、下、上、近、远。也很简单,(中心点)如果视口点x/y在[0,1]之外,点不在平截头体中(或者z为负数)@Jerdak:我认为Camera.WorldToViewPoint在这种情况下可能有更好的性能。当然,可以少划分几个部分。我懒得键入“如果点x/y在[0,0]到[pixelWidth,pixelHeight]之间”。:)