• LearnOpenGL Note 1.基础


    本系列中使用 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。摄像机的描述属于基础三维向量应用在此不做赘述。

  • 相关阅读:
    js的元素对象
    js实现在末尾添加节点
    js实现点击增加文本输入框
    js的DOM对象
    js其它
    js实现99乘法表
    js
    http的六种请求方法
    11.进制
    10.Debug
  • 原文地址:https://www.cnblogs.com/mollnn/p/14724292.html
Copyright © 2020-2023  润新知