首页 > 其他 > 详细

LearnOpenGL Note 1.基础

时间:2021-05-01 20:52:54      阅读:19      评论:0      收藏:0      [点我收藏+]

本系列中使用 GLFW(GL Framework) 和 GLEW(包含大量函数指针)来完成 OpenGL 程序。

一个顶点在呈现为像素之前经历的过程称为渲染管线,在此通常包含六个主要步骤:Vertex Shader, Shape Assembly, Geometry Shader, Rasterization, Fragment Shader, Tests and Blending。

传输顶点数据的过程中,我们将数据传送到一个 VAO 上,建立关联的 VBO 和 EBO 并分别将顶点数据和索引数据传输到其上,并通过 VAP 的设置来标识如何解析这些顶点数据。

通常我们需要自定义 Vertex Shader 和 Fragment Shader,我们将其分别写在两个文件中,并通过预先编写的 Shader 类加载、编译、链接、使用。着色器采用 GLSL 语言写成,其支持基本数据类型以及向量和矩阵,其灵活的语法可以对分量进行自由地组合。着色器有 in,out,uniform,其中 uniform 是可以在任意位置直接访问和修改的,通常用于主程序向 Shader 传递参数,例如在三维透视系统中我们可以将 MVP 矩阵传递给着色器,由着色器来完成矩乘运算。

加载贴图的过程中,我们借助了 SOIL 库来完成图像的读取,然后设置一些属性并生成 Mipmap。

GLM 库中包含了大量的 3D 相关的数学运算,我们可以用它来进行各种矩阵向量运算,以及根据参数生成 MVP 矩阵等。

通常在渲染三维场景的过程中,可能会出现五种坐标系统:Local, World, View, Clip, Screen,其间的 4 个过渡矩阵分别是 Model, View, Projection, Viewport。摄像机的描述属于基础三维向量应用在此不做赘述。

LearnOpenGL Note 1.基础

原文:https://www.cnblogs.com/mollnn/p/14724292.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!