文档章节

opengl顶点坐标的变换

流云1987
 流云1987
发布于 2017/01/21 23:00
字数 330
阅读 108
收藏 0

当定义一个物体后,先做MVP矩阵变换,把最后计算出来的矩阵resultMatrix传递给顶点着色器,顶点着色器把resultMatrix和当前顶点的坐标相乘,得到顶点着色器要输出的gl_Position。

顶点着色器输出的gl_Position中含有一个w值,opengl会根据这个w做空间裁剪,x,y,z都需要在-w到w之间,大于或者小于都将被裁剪掉。

然后opengl会做透视除法,所谓的透视除法,也就是x,y,z这三个值都除以w,然后x,y,z都在[-1,1]的范围内,这也就是归一化坐标。  透视除法是在2D屏幕上显示远小近大的3D效果的关键所在。

 

最后就是将归一化坐标转换为屏幕的坐标了,这个需要用到视口变换,

GLES20.glViewport(0, 0, width, height); //用于指定屏幕左上角的位置,和屏幕的长宽

GLES20.glDepthRangef(zNear, zFar);//深度的范围,这个函数也可以不设置,因为有默认值,在[0,1]之间。

 

 

© 著作权归作者所有

共有 人打赏支持
流云1987
粉丝 1
博文 8
码字总数 5512
作品 0
杭州
私信 提问
OpenGL渲染流水中的处理步骤

显示列表: 不管数据描述的是几何体还是像素,都可以被存储在显示列表中,供现在或以后使用;也可以不将数据存储在显示列表中,而是立刻对数据进行处理,这被称为直接模式.显示列表被执行时,其中存...

wwl33695
06/26
0
0
实验5 OpenGL变换综合练习

1.实验目的: 理解掌握OpenGL程序的投影变换,能正确使用投影变换函数,实现正投影与透视投影。 2.实验内容: (1)使用图a中的尺寸绘制小桌,三维效果图见图b。要求绘制小桌各部件时只能使...

小青_1989
2014/04/08
0
0
OpenGL基础概念(学习记录)

各平台渲染标准: win32 : OpenGL ,DirectX android: Skia/Canvas (安卓SDK,2d) , OpenGL ES +NDK mac/ios :Quartz2D,OpenGL ES Linux: OpenGL wp7:DirectX win8/wp8 : DirectX 游戏引擎基于......

Frank_何益明
11/26
0
0
3D坐标系、矩阵变换、视景体与裁剪

背景 当前3D图形界主要有两个:微软的Direct 3D以及某组织的OpenGL。曾经一度OpenGL几乎占据所有3D图形领域,这在巨人微软面前简直就是屌丝逆袭。曾几何时微软搞IDE borland公式倒闭了,后来...

乐观的vc
2013/04/14
0
0
Android图形---OpenGL(五)

本文译自:http://developer.android.com/guide/topics/graphics/opengl.html 形状的外观和折点 在OpenGL中,形状的外观是由三个或三维空间中更多的点来定义的一个表面。一个三个或更多的三维...

长平狐
2012/10/16
66
0

没有更多内容

加载失败,请刷新页面

加载更多

安卓代码混淆

Proguard是安卓提供的方便开发者对代码和apk进行保护和精简的工具,可在SDK/tools文件夹下找到。 proguard的作用 : 1,代码混淆 2,精简代码,删掉没有用到的代码,减小apk的体积。 使用场景...

whoisliang
16分钟前
0
0
配置Tomcat虚拟主机

12月13日任务 16.4 配置Tomcat监听80端口 16.5/16.6/16.7 配置Tomcat虚拟主机 16.8 Tomcat日志 配置tomcat监听80端口 默认tomcat监听的是8080端口,如果想直接输入ip就访问到网页,就需要进行...

robertt15
22分钟前
1
0
emqtt Qos 0, 1, 2 图解

SimonAt
23分钟前
0
0
基于vue2定义自己的图表echart组件

先安装echarts cnpm i echarts -S,然后定义父组件 <template> <div> <echarts :option="echartOpion"></echarts> </div></template><script> import echarts from './e......

莫沫达
29分钟前
3
0
详解CSS的Flex布局

本文由云+社区发表 Flex是Flexible Box 的缩写,意为"弹性布局",是CSS3的一种布局模式。通过Flex布局,可以很优雅地解决很多CSS布局的问题。下面会分别介绍容器的6个属性和项目的6个属性。每...

腾讯云加社区
41分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部