是否有一种方法,可以通过像素坐标来设置特定像素的颜色,而不是使用由gl_FragColor预设的坐标作为输出?
我目前正在尝试通过着色器实现Mean Shift算法。我的输入是一个黑白纹理,其中白点表示要聚类的点,黑色表示无数据。
在计算邻域内所有点位置的加权平均值之后,我必须将结果位置中的像素设置为表示聚类的新颜色。
例如,如果我查看以与fragcoord相关的像素为中心的18x18邻域,并找到3个白色像素: Fragcoord = 30,33 Pixel 1: coordinate (30,33) Pixel 2: coordinate (27,33) Pixel 3: coordinate (30,30)
在计算它们位置的平均值之后,我将得到(29,32)。是否有一种方法可以在具有不同fragcoord(例如30,33)的着色器单元中设置29,32处的像素颜色?
例如:gl_FragColor(vec2(29,32)) = vec4(1.0,1.0,1.0,1.0);?
我目前正在尝试通过着色器实现Mean Shift算法。我的输入是一个黑白纹理,其中白点表示要聚类的点,黑色表示无数据。
在计算邻域内所有点位置的加权平均值之后,我必须将结果位置中的像素设置为表示聚类的新颜色。
例如,如果我查看以与fragcoord相关的像素为中心的18x18邻域,并找到3个白色像素: Fragcoord = 30,33 Pixel 1: coordinate (30,33) Pixel 2: coordinate (27,33) Pixel 3: coordinate (30,30)
在计算它们位置的平均值之后,我将得到(29,32)。是否有一种方法可以在具有不同fragcoord(例如30,33)的着色器单元中设置29,32处的像素颜色?
例如:gl_FragColor(vec2(29,32)) = vec4(1.0,1.0,1.0,1.0);?