博客
关于我
顶点坐标和纹理坐标之纹理变换
阅读量:146 次
发布时间:2019-02-28

本文共 1471 字,大约阅读时间需要 4 分钟。

顶点坐标变换与纹理调整

顶点坐标定义

顶点坐标的定义遵循反N字形顺序,确保绘制的形状是矩形。具体顶点坐标如下:

float vertices[] = {    -1.0f,  1.0f, 1.0,  0,  0, // 0 左上    -1.0f, -1.0f, 1.0,  0,  1, // 1 左下    1.0f,  1.0f, 1.0,  1,  0, // 2 右上    1.0f, -1.0f, 1.0,  1,  1  // 3 右下};

左右翻转方法

为了实现左右翻转,只需交换纹理坐标的左右值,顶点坐标顺序保持不变。变换后坐标如下:

float vertices[] = {    -1.0f,  1.0f, 1.0,  1,  0, // 0 左上    -1.0f, -1.0f, 1.0,  1,  1, // 1 左下      1.0f,  1.0f, 1.0,  0,  0, // 2 右上    1.0f, -1.0f, 1.0,  0,  1  // 3 右下};

上下翻转方法

如果需要上下翻转,可以通过调整纹理坐标的上下值来实现。变换后坐标如下:

float vertices[] = {    -1.0f,  1.0f, 1.0,  0,  1, // 0 左上    -1.0f, -1.0f, 1.0,  0,  0, // 1 左下      1.0f,  1.0f, 1.0,  1,  1, // 2 右上    1.0f, -1.0f, 1.0,  1,  0  // 3 右下};

变换前的和变换后的对比

变换前:

float vertices[] = {    -1.0f,  1.0f, 1.0,  0,  0, // 0 左上    -1.0f, -1.0f, 1.0,  0,  1, // 1 左下      1.0f,  1.0f, 1.0,  1,  0, // 2 右上    1.0f, -1.0f, 1.0,  1,  1  // 3 右下};

变换后(左右翻转):

float vertices[] = {    -1.0f,  1.0f, 1.0,  1,  0, // 0 左上    -1.0f, -1.0f, 1.0,  1,  1, // 1 左下      1.0f,  1.0f, 1.0,  0,  0, // 2 右上    1.0f, -1.0f, 1.0,  0,  1  // 3 右下};

变换前(上下翻转):

float vertices[] = {    -1.0f,  1.0f, 1.0,  0,  1, // 0 左上    -1.0f, -1.0f, 1.0,  0,  0, // 1 左下      1.0f,  1.0f, 1.0,  1,  1, // 2 右上    1.0f, -1.0f, 1.0,  1,  0  // 3 右下};

变换后(上下翻转):

float vertices[] = {    -1.0f,  1.0f, 1.0,  0,  0, // 0 左上    -1.0f, -1.0f, 1.0,  0,  1, // 1 左下      1.0f,  1.0f, 1.0,  1,  1, // 2 右上    1.0f, -1.0f, 1.0,  1,  0  // 3 右下};

通过上述方法,可以轻松实现顶点坐标的左右翻转和上下翻转,确保纹理坐标与顶点坐标的反N字形连线相匹配。

转载地址:http://nfld.baihongyu.com/

你可能感兴趣的文章
pythonweb django的学习
查看>>
pythonweb网站开发基础django安装
查看>>
pythonweb网站开发基础创建django项目
查看>>
pythonweb网站开发基础添加应用
查看>>
Python_015 多线程
查看>>
python_73_pickle序列化(接72)
查看>>
python_code_418
查看>>
python_day10 协程 GEVENT
查看>>
python_day1作业
查看>>
Python接口自动化测试必备基础之http协议详解!
查看>>
python_IDE开发环境使用_建立Python源文件---python工作笔记011
查看>>
Python_web框架解析
查看>>
Python__Enter__/__Exit__vs__init__(或__new__)/__del__
查看>>
python_对象的基本组成和内存示意图---python工作笔记016
查看>>
python_开发环境介绍_交互模式使用_IDE介绍和使用---python工作笔记010
查看>>
python_引用的本质_栈内存和堆内存_内存示意图---python工作笔记017
查看>>
python_标识符_帮助系统的使用_命名规则---python工作笔记018
查看>>
python_海龟绘图_坐标系问题_画笔各种方法---python工作笔记013
查看>>
python_海龟绘图_画出奥运五环图---python工作笔记014
查看>>
Python_生产者消费者模型、管道、数据共享、进程池
查看>>