在OPENGL屏幕上添加按钮

sum*_*dey 3 android opengl-es

我已经在Android的OPENGL的帮助下创建了一个旋转的CUBE现在我想添加一个监听器来处理多维数据集的旋转,即当我点击按钮然后CUBE必须开始旋转,反之亦然..如何在一个按钮上添加一个按钮OPENGL屏幕?

Rob*_*ani 6

这里有两个选项:

  1. 创建一个包含GLSurfaceView您想要的按钮/设置的布局.使用OnClickListener按钮的标准并让侦听器在渲染器中调用方法来执行旋转.这是实现此功能的最简单方法,但按钮的样式将根据操作系统版本和供应商而改变.如果您想要更多地控制按钮,可以尝试其他选项.
  2. 使用OpenGL绘制按钮.渲染立方体后,将投影矩阵切换为glOrtho与屏幕尺寸相同的正投影(),并使用按钮图像绘制带纹理的矩形(您还可以使用9个矩形来缩放按钮图像,如使用9个矩形来保持角落和边缘锐利,只是缩放图像的内部,通常是渐变或纯色.您必须将渲染器设置为接收触摸输入并执行简单的包含检查,以确保按下的点位于按钮的范围内.如果是,则可以调用处理旋转的方法.

如果你想要一个完整的用户界面库,我确信在Android上有几个适用于OpenGL ES的存在,而且大多数都可能是大型游戏引擎的一部分,它可以为你处理大部分工作.如果您只想要单个按钮,我会推荐第一个选项,因为它是最简单的.