Java glReadPixel不';不能在OnPick函数中工作

Java glReadPixel不';不能在OnPick函数中工作,java,android,opengl-es-2.0,Java,Android,Opengl Es 2.0,我尝试在android应用程序中实现3D拾取。我使用OpenGL ES2.0 现在我想读取深度缓冲区(写在FBO中),但glReadPixels只返回0。 代码是正确的,因为我在调用RenderTexture函数后尝试了相同的代码,它返回了正确的值。 在OnPick函数中调用renderTexture,然后调用glReadPixels,也会返回0 有什么问题? 难道不能在OnPick事件中读取帧缓冲区,或者我必须设置一些变量吗 感谢您的帮助。是否在主(UI)线程上调用OnPick?可能有两个线程

我尝试在android应用程序中实现3D拾取。我使用OpenGL ES2.0

现在我想读取深度缓冲区(写在FBO中),但glReadPixels只返回0。 代码是正确的,因为我在调用RenderTexture函数后尝试了相同的代码,它返回了正确的值。 在OnPick函数中调用renderTexture,然后调用glReadPixels,也会返回0

有什么问题? 难道不能在OnPick事件中读取帧缓冲区,或者我必须设置一些变量吗


感谢您的帮助。

是否在主(UI)线程上调用OnPick?可能有两个线程,opengl渲染线程和发送事件的主应用程序线程。尝试在onpick方法中存储onpick坐标,并在opengl线程中进行计算

希望有帮助