Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios opengles中最接近摄像机顶点的检测_Ios_Objective C_Opengl Es - Fatal编程技术网

Ios opengles中最接近摄像机顶点的检测

Ios opengles中最接近摄像机顶点的检测,ios,objective-c,opengl-es,Ios,Objective C,Opengl Es,我有一个存储为顶点数组的网格,用于绘制它的索引数组。其中四个顶点也使用着色器重新绘制以高亮显示点,并且这些顶点的索引存储在另一个数组中 用户可以使用触摸旋转模型,这会影响modelViewMatrix: modelViewMatrix=GLKMatrix4Multiply(modelViewMatrix,_rotMatrix) 我的问题是,当用户进行旋转时,我需要检测四个突出显示的点中哪一个离屏幕最近 我认为最好的方法是计算从视锥台的近剪辑到该点的距离,但首先我如何计算这些点?您可以从相机/眼睛

我有一个存储为顶点数组的网格,用于绘制它的索引数组。其中四个顶点也使用着色器重新绘制以高亮显示点,并且这些顶点的索引存储在另一个数组中

用户可以使用触摸旋转模型,这会影响modelViewMatrix:

modelViewMatrix=GLKMatrix4Multiply(modelViewMatrix,_rotMatrix)

我的问题是,当用户进行旋转时,我需要检测四个突出显示的点中哪一个离屏幕最近


我认为最好的方法是计算从视锥台的近剪辑到该点的距离,但首先我如何计算这些点?

您可以从相机/眼睛空间[1]轻松完成这项工作,其中所有内容都与相机相关(因此,相机将位于(0,0,0)并向下看负z轴)

使用modelViewMatrix将顶点变换为摄影机空间,例如顶点。那么顶点到摄影机(平面)的距离就是-顶点_cs.z

--
1.