行业协会网站建设的方案,怎么做淘宝客优惠劵网站,wordpress前端ajax登录 注册,罗湖附近公司做网站建设概要 本文通过示例的方式#xff0c;着重解释以下几个内置变量#xff1a; gl_WorkGroupSizegl_NumWorkGroupsgl_LocalInvocationIDgl_WorkGroupIDgl_GlobalInvocationID 基本概念
局部工作组与工作项
一个3x2x1的局部工作组示例如下#xff0c;每个小篮格子表示一个工作项…概要 本文通过示例的方式着重解释以下几个内置变量 gl_WorkGroupSizegl_NumWorkGroupsgl_LocalInvocationIDgl_WorkGroupIDgl_GlobalInvocationID 基本概念
局部工作组与工作项
一个3x2x1的局部工作组示例如下每个小篮格子表示一个工作项每个工作项会执行计算着色器 gl_WorkGroupSize表示局部工作组的三维大小在这里gl_WorkGroupSize (3,2,1) 此外在glsl中使用如下代码设置gl_WorkGroupSize
layout (local_size_x 3, local_size_y 2, local_size_z 1) in;默认值为1也可这样设置
layout (local_size_x 3, local_size_y 2) in;全局工作组
一个2x3x1的全局工作组示例如下由局部工作组组成 gl_NumWorkGroups表示工作组的三维数量在这里gl_NumWorkGroups (2,3,1) 在opengl中使用如下方法设置工作组数量
glDispatchCompute(2,3,1);执行中的工作组与工作项
一个2x3x1的全局工作组示例如下橙色表示当前正在执行的工作组绿色表示当前正在执行的工作项 gl_LocalInvocationID表示在执行的工作项在局部工作组中的位置gl_LocalInvocationID (0,1,0) gl_GlobalInvocationID表示在执行的工作项在全局工作组中的位置gl_GlobalInvocationID (3,3,0)计算公式如下 g l _ G l o b a l I n v o c a t i o n I D g l _ W o r k G r o u p I D × g l _ W o r k G r o u p S i z e g l _ L o c a l I n v o c a t i o n I D gl\_GlobalInvocationID gl\_WorkGroupID \times gl\_WorkGroupSize gl\_LocalInvocationID gl_GlobalInvocationIDgl_WorkGroupID×gl_WorkGroupSizegl_LocalInvocationID gl_WorkGroupID表示执行的工作组中全局工作组中的位置gl_WorkGroupID (1,1,0) gl_LocalInvocationIndex表示在执行的工作项在局部工作组中的索引gl_LocalInvocationIndex 3计算公式如下 g l _ L o c a l I n v o c a t i o n I n d e x g l _ L o c a l I n v o c a t i o n I D . z × g l _ W o r k G r o u p S i z e . x × g l _ W o r k G r o u p S i z e . y g l _ L o c a l I n v o c a t i o n I D . y × g l _ W o r k G r o u p S i z e . x g l _ L o c a l I n v o c a t i o n I D . x \begin{align*} gl\_LocalInvocationIndex gl\_LocalInvocationID.z \times gl\_WorkGroupSize.x \times gl\_WorkGroupSize.y \\ gl\_LocalInvocationID.y \times gl\_WorkGroupSize.x \\ gl\_LocalInvocationID.x \end{align*} gl_LocalInvocationIndexgl_LocalInvocationID.z×gl_WorkGroupSize.x×gl_WorkGroupSize.ygl_LocalInvocationID.y×gl_WorkGroupSize.xgl_LocalInvocationID.x
参考文章
使用计算着色器Compute Shader模拟粒子效果【OpenGL】【GLSL】OpenGL 计算着色器OpenGL学习-高级OpenGL-ComputeShader