02总结--002--OpenGL 专有名词

2020-07-02  本文已影响0人  修_远

[TOC]

这里记录 OpenGL 中用到的一些专有名词、英文释义

OpenGL

OpenGL 相关名称

定义

特性

OpenGL 程序执行的主要操作

  1. 设置数据:从 OpenGL 的几何图元中设置数据,用于构建形状;
  2. 着色器程序:使用不同的着色器(shader)对输入的图元数据执行计算操作,判断它们的位置、颜色,以及其他渲染属性;
  3. 光栅化(resterization):将输入图元的数学描述转换为与屏幕位置对应的像素片元(fragment)。(OpenGL 中的片元若最终渲染为图像,那它就是像素);
  4. 片元着色器:对光栅化过程产生的每个片元,执行片元着色器(fragment shader),从而决定这个片元最终颜色和位置。

C/S 模式的思考

允许服务端和客户端在同一个网络内的不同计算机上运行

OpenGL 上下文 [context]

OpenGL 状态机

GLSL(OpenGL Shading Language)

设置数据阶段 相关名词

顶点数组(VertexArray)和顶点缓冲区(VertexBuffer)

纹理

通过位图来理解纹理

SDWebImageDecoder 里面有这么一段代码,将图片转成位图,这里的位图就是我们说的纹理。

例如,一张120x120的图片,位图大小是多少呢?

120x120=14400(分辨率)* 4(RGBA)= 57600bit(位图)

CGContextRef context = CGBitmapContextCreate(NULL,
        imageSize.width,
        imageSize.height,
        CGImageGetBitsPerComponent(imageRef),
        0,
        colorSpace,
        bitmapInfo);
CGColorSpaceRelease(colorSpace);

// If failed, return undecompressed image
if (!context) return image;

CGContextDrawImage(context, imageRect, imageRef);
CGImageRef decompressedImageRef = CGBitmapContextCreateImage(context);

CGContextRelease(context);

模型(modle)/场景对象

变换矩阵(Transformation)

投影矩阵(Projection)

着色器阶段 相关名词

固定管线/存储着色器

着色器程序 Shader

顶点着色器(VertexShader)

片段着色器程序(FragmentShader)

光栅化阶段 相关名词

光栅化(Resterization)

片元着色器 相关名词

管线

不代表某种具体对象,是一个逻辑状态

A->B->C->D 这个过程称为管线

像素(pixel)

帧缓存(framebuffer)

渲染(Rendering)

混合(Blending)

渲染上屏/交换缓存区(SwapBuffer)

上一篇 下一篇

猜你喜欢

热点阅读