假设我有3个在视口中可见的任意位置/旋转的立方体。如果我触摸(或点击模拟器)一个特定的立方体,我希望能够检测到哪个立方体被触摸过。如果我只是触摸空白区域,而不是立方体,这也应该被正确检测到。我知道有一个onTouchEvent回调,你可以在视图上覆盖它,但它只给我提供了触摸发生位置的x,y坐标。我正在寻找基于OpenGL-ES的解决方案,尤其是基于Java的Android应用程序。
发布于 2011-02-18 18:51:18
THere可以是x/y坐标上的几个对象(也可以是无对象)。您应该找到它们,然后如果有的话,检查z坐标,看看哪个离视口最近(也就是被触摸的那个)。
发布于 2011-02-18 18:57:27
经常想知道在没有glSelect()的情况下做这件事的最佳方法...这个答案看起来不错:iPhone OpenGL ES - How to Pick
(您可以忽略这是一个iOS问题的事实...OpenGL ES应用程序接口在两个平台上是相同的。
https://stackoverflow.com/questions/5040349
复制相似问题