当前位置: 首页 > news >正文

OpenGL ES (OpenGL) Compute Shader 计算着色器是怎么用的?

OpenGL ES (OpenGL) Compute Shader 是怎么用的?

Compute Shader 是 OpenGL ES(以及 OpenGL )中的一种 Shader 程序类型,用于在GPU上执行通用计算任务。与传统的顶点着色器和片段着色器不同,Compute Shader 被设计用于在 GPU 上执行各种通用计算任务,而不是仅仅处理图形渲染。

Compute Shader 使用场景广泛,除了图像处理之外,还可以用于物理模拟计算、数据加密解密、机器学习、光线追踪等。

OpenGL ES 是 3.1 版本开始支持 Compute Shader (OpenGL 是 4.3 版本开始支持),引入头文件或者 import package 时需要注意下。

计算空间

用户可以使用一个称为工作组定义计算着色器正在运行的空间。这个空间是三维(X,Y,Z)的,用户可以将任意维度设置为 1 ,以此在一维或二维空间中执行计算。

工作组是用户可以(从主机应用程序)执行的最小计算操作量,在计算着色器执行期间,工作组顺序可能会任意变化。在下图中,每个绿色立方体都是一个工作组。

在这里插入图片描述

每个 Compute shader 都运行在单个工作单元上,这个工作单元称为工作项,一个工作组包含一个或个多个工作项。

如下图所示,一个工作组可以在三维空间中被划分成若干个工作项。

http://www.lryc.cn/news/306065.html

相关文章:

  • Python爬虫进阶:爬取在线电视剧信息与高级检索
  • Floor报错原理详解+sql唯一约束性
  • Arduino中安装ESP32网络抽风无法下载 暴力解决办法 python
  • Linux基础命令—系统服务
  • qt-动画圆圈等待-LED数字
  • SpringBoot3整合Swagger3,访问出现404错误问题(未解决)
  • Django配置文件参数详解
  • Docker+Kafka+Kafka-ui安装与配置
  • 单例模式的介绍
  • JavaSec 基础之 XXE
  • AI:137-基于深度学习的实时交通违法行为检测与记录
  • 【深度学习笔记】3_14 正向传播、反向传播和计算图
  • Jenkins详解
  • Java8 Stream API 详解:流式编程进行数据处理
  • 【机器学习】特征选择之过滤式特征选择法
  • C#_扩展方法
  • LeetCode 热题 100 | 二叉树(一)
  • k8s之nodelocaldns与CoreDNS组件
  • Java中的访问修饰符
  • 【论文解读】transformer小目标检测综述
  • springboot215基于springboot技术的美食烹饪互动平台的设计与实现
  • Rust核心:【所有权】相关知识点
  • 单片机05__串口USART通信__按键控制向上位机传输字符串
  • 实习日志30
  • 【MySQL】探索表结构、数据类型和基本操作
  • 解决采集时使用selenium被屏蔽的办法
  • stream流-> 判定 + 过滤 + 收集
  • 人工智能在测绘行业的应用与挑战
  • 四、分类算法 - 随机森林
  • pytorch -- DataLoader