Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.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
Android 这个项目不工作。。。如果对象的Z=-1.0f,并且它被缩放为(0.01f,0.01f,0.0f),那么我必须将哪些参数传递给项目?_Android_Opengl Es - Fatal编程技术网

Android 这个项目不工作。。。如果对象的Z=-1.0f,并且它被缩放为(0.01f,0.01f,0.0f),那么我必须将哪些参数传递给项目?

Android 这个项目不工作。。。如果对象的Z=-1.0f,并且它被缩放为(0.01f,0.01f,0.0f),那么我必须将哪些参数传递给项目?,android,opengl-es,Android,Opengl Es,到目前为止,我一直在使用gluProject、透视投影和一个位于屏幕中心的可缩放正方形,该正方形具有左下顶点(-1,-1,0)。我通过调整Z轴缩放正方形 例如,我将正方形缩放到Z=-5,并使用openGL对象参数(-1,-1,0)调用gluProject,以了解正方形顶点的窗口像素X,Y位置。它很好用 但是现在,我改变了我的架构,现在我不是用Z来缩放,而是缩放来缩放。在Z=-1.0f处有一个正方形,最初它被缩放为(0.01f,0.01f,0.0f),是一个小正方形 哪些X、Y、Z值必须传递到gl

到目前为止,我一直在使用
gluProject
、透视投影和一个位于屏幕中心的可缩放正方形,该正方形具有左下顶点(-1,-1,0)。我通过调整Z轴缩放正方形

例如,我将正方形缩放到Z=-5,并使用openGL对象参数(-1,-1,0)调用
gluProject
,以了解正方形顶点的窗口像素X,Y位置。它很好用

但是现在,我改变了我的架构,现在我不是用Z来缩放,而是缩放来缩放。在Z=-1.0f处有一个正方形,最初它被缩放为(0.01f,0.01f,0.0f),是一个小正方形


哪些X、Y、Z值必须传递到
gluProject
?我一次又一次地传递-1,-1,0,
gluProject
给了我错误的x,y输出坐标值,(-101.774124,-226.27419)

一次又一次:
gluProject
做了与OpenGL转换管道完全相同的事情(当然,如果用OpenGL的矩阵和视口调用的话)。因此,无论您发送到OpenGL的顶点是什么,这些都是您必须放入
gluProject
中的顶点

如果使用顶点(-1,-1,0)渲染多边形,则必须使用该顶点调用
gluProject
。其他变换(无论是平移、缩放、旋转还是其他)都来自变换矩阵。但如果确实使用顶点(0.01、0.01、0)渲染多边形,则必须将其放入
gluProject


在继续使用OpenGL转换管道之前,请确保您完全了解OpenGL转换管道(的答案可能会有所帮助)以及
gluProject
的工作原理,并针对您认为会产生错误结果的每个小输入提出问题。

显示转换代码可能有助于解决您的问题。您是在使用
glScale
还是真的在使用(0.01,0.01,0)渲染多边形?在前一种情况下,请记住不要使用值0进行缩放。