OpenGL Chan视频学习-6 How Shaders Work in OpenGL

bilibili视频链接:

【最好的OpenGL教程之一】https://www.bilibili.com/video/BV1MJ411u7Bc?p=5\&vd_source=44b77bde056381262ee55e448b9b1973

一、知识点整理

1.1 着色器

1.1.1 阐述

  • 实际上是代码。需要告诉GPU发送数据要干啥,也是着色器的本质。
  • 可以写成文本或者字符串给OpenGL,可以发送给显卡,然后像别的程序一样编译、链接和运行
  • 在GPU上运行。一般CPU发送数据,GPU处理。GPU并行做和图形有关的事情会运行更快。

1.1.2分类

  1. 顶点着色器(常见)
  2. 片段着色器/像素着色器(常见)
  3. 细分着色器
  4. 几何着色器

1.1.3顶点着色器

获取想渲染的顶点的调用,告诉OpenGL想要的顶点你在显示器/窗口的位置。顶点着色器会带有值定在缓冲里面的顶点的属性。

1.1.4片段/像素着色器

可以认为是像素,窗口可以看成一个像素数组。片段着色器会为每个像素运行一次去光栅化(这里说的是画在屏幕上),其基本目的是决定像素的颜色,根据光照、环境、纹理以及提供给表面的材料。

顶点着色器调用3次,片段着色器调用成百上千次

1.2渲染管线

1.2.1过程

在CPU写数据(发送一个调用),发给GPU。进入着色阶段,GPU处理调用,并在屏幕绘制图形。

相关推荐
A9better2 小时前
嵌入式开发学习日志31——stm32之外部中断与定时器中断的差别与选择
stm32·单片机·学习
zhangrelay2 小时前
ROS2学习研究版本推荐:Jazzy Jalisco(LTS长期支持版)AI版本251001
笔记·学习
xyx-3v3 小时前
已知三极管的类型(NPN/PNP)和基极引脚,如何区分集电极(c)和发射极(e)
单片机·嵌入式硬件·学习
大白的编程日记.3 小时前
【Linux学习笔记】线程概念和控制(二)
linux·笔记·学习
半夏知半秋4 小时前
skynet-socket.lua源码分析
服务器·开发语言·学习·架构·lua
低代码布道师4 小时前
学习低代码,需要什么基础?
学习·低代码
西猫雷婶4 小时前
random.shuffle()函数随机打乱数据
开发语言·pytorch·python·学习·算法·线性回归·numpy
随机惯性粒子群4 小时前
STM32控制开发学习笔记【基于STM32 HAL库】
笔记·stm32·嵌入式硬件·学习
一條狗5 小时前
学习日报 20250930|多优惠券叠加核销及场景互斥逻辑
学习·核销
Nan_Shu_6145 小时前
学习:uniapp全栈微信小程序vue3后台-额外/精彩报错篇
前端·学习·微信小程序·小程序·uni-app·notepad++