Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opengl 如何获取片段着色器生成的像素/片段列表?_Opengl_Graphics_Opengl Es - Fatal编程技术网

Opengl 如何获取片段着色器生成的像素/片段列表?

Opengl 如何获取片段着色器生成的像素/片段列表?,opengl,graphics,opengl-es,Opengl,Graphics,Opengl Es,片段着色器将绘制到帧缓冲区 但是,如何才能有效地获得执行结果生成的像素/片段 片段着色器的属性?在一般情况下,您不需要 可以让片段着色器将特定颜色值写入图像。然后,您可以从图像中读取并测试该颜色的位置。这会让你得到你想要的信息。如果写入浮点帧缓冲区,甚至可以使用加法混合模式,以便查看写入每个采样位置的量 但仅此而已。在一般情况下,你不需要 可以让片段着色器将特定颜色值写入图像。然后,您可以从图像中读取并测试该颜色的位置。这会让你得到你想要的信息。如果写入浮点帧缓冲区,甚至可以使用加法混合模式,以

片段着色器将绘制到帧缓冲区

但是,如何才能有效地获得执行结果生成的像素/片段
片段着色器的属性?

在一般情况下,您不需要

可以让片段着色器将特定颜色值写入图像。然后,您可以从图像中读取并测试该颜色的位置。这会让你得到你想要的信息。如果写入浮点帧缓冲区,甚至可以使用加法混合模式,以便查看写入每个采样位置的量


但仅此而已。

在一般情况下,你不需要

可以让片段着色器将特定颜色值写入图像。然后,您可以从图像中读取并测试该颜色的位置。这会让你得到你想要的信息。如果写入浮点帧缓冲区,甚至可以使用加法混合模式,以便查看写入每个采样位置的量

但仅此而已。

  • 设置模具蒙版,以便每次绘制片段时,它都会将该蒙版设置为1
  • 使用glReadPixels函数检索模具蒙版和颜色缓冲区
      • 设置模具蒙版,以便每次绘制片段时,它都会将该蒙版设置为1
      • 使用glReadPixels函数检索模具蒙版和颜色缓冲区
      片段着色器将绘制到帧缓冲区

      不直接。尽管更高版本的OpenGL支持片段着色器中的分散操作,但聚集执行对它来说更为自然

      在执行片段处理阶段之前,光栅化阶段首先确定当前处理的原语将写入哪些片段。这是通过扫描线范围估计器之类的方法实现的。即,在执行片段着色器之前确定处理的片段集。然后片段着色器所做的唯一一件事就是计算以下混合阶段用于合并到帧缓冲区中的值

      片段着色器将绘制到帧缓冲区

      不直接。尽管更高版本的OpenGL支持片段着色器中的分散操作,但聚集执行对它来说更为自然


      在执行片段处理阶段之前,光栅化阶段首先确定当前处理的原语将写入哪些片段。这是通过扫描线范围估计器之类的方法实现的。即,在执行片段着色器之前确定处理的片段集。然后片段着色器所做的唯一事情就是计算以下混合阶段用于合并到帧缓冲区中的值。

      获取是什么意思?获取与获取数组或列表中的完整列表一样,或者获取一个指针,指向刚刚更改的像素。获取是什么意思?获取数组或列表中的完整列表,或者获取一个指针,指向刚刚更改的像素