3D基础--Vertex

来源:互联网 发布:mac怎么升级系统版本 编辑:程序博客网 时间:2024/05/20 20:18

一个3D图形通常是由一些小的基本元素(顶点,边,面,多边形)构成。

Vertex (顶点)

顶点是3D建模时用到的最小构成元素,顶点定义为两条或是多条边交会的地方。在3D模型中一个顶点可以为多条边,面或是多边形所共享。一个顶点也可以代表一个点光源或是Camera的位置。在Android系统中可以使用一个浮点数数组来定义一个顶点,浮点数数组通常放在一个Buffer(java.nio)中来提高性能。

Shader 

Vertex Shader 会被GPU 执行多次,确定顶点的最后的位置,相机和镜头和所在位置也对其有影响,换负责向Fragment shader准备和提供一些变量。通常我们可以在vertex shader中定义变量,而不是在Fragment shader。

Fragment Shader

假如立方体。在特定的位置和角度,我们只能看到部分面和组成这些面的顶点,这就是FragmentShader做的,它会负责所有可见面上所有像素点的绘制(根据 材料 效果,光影,折射,反射,纹理,所有我们想要的效果均会在这里处理)。最后都是RGBA的的像素颜色做为输出给

注意并非真正的像素,因为渲染器和最后呈现在屏幕上的图片,会根据设备的分辨率等 和 渲染器的配置 缩小或放大。

OPENGL 通过ShaderProgram将会成对编译Vertex Shader 和Fragment Shader,保证强制的一对一协同工作

0 0
原创粉丝点击