我已经阅读了很多教程并且还在 OpenGL 中实现了一些小应用程序。我对 OpenGL 坐标系统到 android 视图坐标系统的映射感到困惑。我在尝试将纹理显示为全屏时遇到了这个问题。不知何故,通过 hit&trial 方法,我能够将纹理显示为全屏,但有很多疑问,我无法快速进行。
在 OpenGL 坐标系中从左下角(作为原点)开始,而在设备左上角作为原点。事物如何正确映射到设备。
在 OpenGL 中,我们指定顶点范围从 -1 到 1。这些范围如何映射到范围从 0 到宽度和高度的设备。
顶点能否以与设备坐标完全相同的方式进行映射。就像具有 0,100 的顶点映射到具有 0,100 的设备坐标一样。
在尝试将纹理显示为全屏时,我根据一些博客更改了代码并且它有效。这是更改。
glOrtho(0, width, height, 0, -1, 1); from glOrtho(0, width, 0, height, -1, 1);
& vertices[] = {
0, 0,
width, 0,
width, height,
0, height
};
from {-1,-1,
1,-1,
-1,1,
1,1}
请帮助我理解坐标映射。