Android中涉及OpenGL坐标知识

在使用OpenGL ES2.0渲染图像到时候,经常需要跟坐标系打交道,由于目前主要还是研究二维的坐标,所有我们就先忽略三围的z轴。
1、安卓屏幕坐标系,如下图:


image.png

2、OpenGL中顶点坐标系,如下图:


image.png

3、OpenGL中纹理坐标系,如下图:
image.png

利用上面三个坐标系,简单实现一张图片的纹理坐标和顶点坐标。

因为OpenGL ES2.0,只能支持绘制点、线、和三角形,所有其余的一些简单形状需要利用前面的几种去拼接。


image.png

如上图,我们需要拼接成一个矩形需要使用,abc,bcd连个三个形去完成。
所以就能得到顶点坐标为:
//顶点数据
private float[] vertexData = {
        -1f, 1f,
        -1f, -1f,
        1f, 1f,
        -1f, -1f,
        1f, 1f,
        1f, -1f

};

纹理坐标是:

//纹理坐标
private final float[] textureData = {

        1f, 0,
        1, 1,
        0f, 0f,
        1, 1,
        0f, 0f,
        0f, 1f

};

总结下,纹理坐标是通过顶点坐标的位置,在纹理坐标中找到该点斜对角的点坐标即可。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容