android - 检测用户在 OpenGL 正方形上的触摸

标签 android opengl-es touch

<分区>

Possible Duplicate:
How do I determine what is touched in 3D space from the screen?

我正在开发 Android 应用程序。我也在使用 OpenGL 图形。

我在屏幕上画了一个正方形,我想让用户在触摸它时移动它。换句话说,当用户将手指放在正方形上时,用户应该能够移动正方形。如果他触及广场外,则什么也不会发生。

我如何检测用户何时触摸了正方形?

谢谢。

最佳答案

可以使用光线拾取来实现检测触摸。我遇到了同样的问题,我在此页面上使用了代码:Android OpenGL ES ray picking .方法 getViewRay() 计算光线的方向。如果您知道从 [0,0,0] 到射线 [x,y,z] 的方向,就可以很容易地模拟射线转换并检测与边界对象的碰撞。

关于android - 检测用户在 OpenGL 正方形上的触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4154272/

相关文章:

java - Android:当没有互联网连接时,如何将应用程序添加到 “Share via” 列表以获取相机图片

android - Xamarin Targetframework版本

iphone - 在 OpenGL ES (iPhone) 中绘制到离屏渲染缓冲区

android - OpenGL ES VBO 奇怪的内存影响

linux - OpenGL ES 2 控制台帧缓冲区光标

c# - 如何为我的应用程序实现触摸事件?

java - Android Volley - HTTP 代码 401 的奇怪错误 - java.io.IOException : No authentication challenges found

android - 从 android.view.GLES20DisplayList 释放位图

python - 无法使用 python-uinput 将触摸事件写入 uinput

ios - 如何在不增加ios中按钮大小的情况下扩大可点击区域