android - 如何使用 opengl es 在 android 中的屏幕周围移动特定纹理?

标签 android opengl-es

我是 OpenGL ES 的新手。我正在实现一些演示应用程序以在屏幕上加载多个纹理。出于演示目的,我使用 glTranslatef() 和 glBindTextures() 两次在屏幕上的 2 个不同位置加载了 2 个纹理。

现在我可以在屏幕上看到 2 个不同的图像。现在我想使用鼠标在屏幕上移动一个特定的纹理。

我知道这可能是个愚蠢的话题,但请在这方面帮助我..

提前致谢..

最佳答案

如上所述,您需要转换表面的坐标。

如果您使用的是正交 (2D) 投影,通过将投影定义为与屏幕大小相同,可以轻松地将像素/坐标比设置为 1:1。例如:

 glOrthof(0.0f, screenWidth, -screenHeight, 0.0f, -1.0f, 1.0f);

应该在左上角定义一个投影 (0,0) 并且与您的屏幕大小相同。

如果您使用的是 3D 投影,您可能会发现此链接很有帮助: http://www.mvps.org/directx/articles/rayproj.htm

关于android - 如何使用 opengl es 在 android 中的屏幕周围移动特定纹理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227621/

相关文章:

android - 仅为一个应用程序禁用声音

c++ - OpenGL ES3 FrameBuffer 对象错误

android - 适用于 Android 的 C++ 中的基本 OpenGLES 教程?

java - 绘图后随机出现 GL_OUT_OF_MEMORY 错误

android - 在 android 中使用 openstreetMap

java - 使用 maven 和 IntelliJ 创建 apklibs

android - 如何以编程方式将 View 添加到 View

android - 如何取消 Google Play Developer Console 上的待定发布?

java - 更新 OpenGL libGDX 中的边界框

windows - 基于 OpenGL ES 的桌面硬件加速 OpenVG 实现