我是 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/