一、学习opengl需要的一些概念
GLEW 是一个开放源代码的跨平台扩展加载库,具有对多个渲染上下文的线程安全支持和自动代码生成功能。 GLEW提供了易于使用且高效的方法来检查OpenGL扩展和核心功能。

OpenGL Mathematics (GLM) 是基于OpenGL阴影语言(GLSL)规范的3D软件的C ++数学库。

Simple DirectMedia Layer(SDL)是一个跨平台开发库,旨在通过OpenGL和Direct3D提供对音频,键盘,鼠标,操纵杆和图形硬件的低级访问。 视频播放软件,仿真器和受欢迎的游戏(包括Valve屡获殊荣的目录和许多Humble Bundle游戏)都使用它。
SDL正式支持Windows,Mac OS X,Linux,iOS和Android。 在源代码中可以找到对其他平台的支持。

windows的两种库:lib dll
一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。
一种是LIB包含函数代码本身,在编译时直接将代码加入程序当中,称为静态链接库static link library。
共有两种链接方式:
动态链接使用动态链接库,允许可执行模块(.dll文件或.exe文件)仅包含在运行时定位DLL函数的可执行代码所需的信息。
静态链接使用静态链接库,链接器从静态链接库LIB获取所有被引用函数,并将库同代码一起放到可执行文件中。

图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是图像和图形相关运算工作的微处理器。

二、opengl的一些相关流程图

(1)、SDL的数据发送给操作系统,cpu调用opengl的api,gpu不能直接调用窗口,需要调用SDL_GL_CreateContext让操作系统通过gpu显示窗口
opengl需要的库和渲染管道的知识
(2)、缓冲区图
opengl需要的库和渲染管道的知识
(3)、缓冲区交换图
opengl需要的库和渲染管道的知识
(4)、GPU渲染管道图
opengl需要的库和渲染管道的知识
processing:处理过程
vertex shader:顶点着色器(处理顶点)
rasterization:光栅化
fragment shader:片段着色器(处理三角形中的每一个点,生成颜色信息)
output:最终生成图像
最终展现在电脑屏幕中

相关文章:

  • 2021-07-03
  • 2021-12-14
  • 2021-12-29
猜你喜欢
  • 2021-09-17
  • 2021-11-28
  • 2021-08-26
  • 2022-01-05
  • 2021-09-22
  • 2021-07-20
  • 2021-09-18
相关资源
相似解决方案