Difference between revisions of "Per-Sample Processing/Pixel ownership test"

From OpenGL Wiki
Jump to navigation Jump to search
(Breaking out common data.)
 
m (Bot: Updating section links to use redirects.)
 
Line 1: Line 1:
 
Because the {{pagelink|Default Framebuffer}} is owned by a resource external to OpenGL, it is possible that particular pixels of the default framebuffer are not owned by OpenGL. And therefore, OpenGL cannot write to those pixels. Fragments aimed at such pixels are therefore discarded at this stage of the pipeline.
 
Because the {{pagelink|Default Framebuffer}} is owned by a resource external to OpenGL, it is possible that particular pixels of the default framebuffer are not owned by OpenGL. And therefore, OpenGL cannot write to those pixels. Fragments aimed at such pixels are therefore discarded at this stage of the pipeline.
  
Generally speaking, if the window you are rendering to is partially obscured by another window, the pixels covered by the other window are no longer owned by OpenGL and thus fail the ownership test. Any fragments that cover those pixels will be discarded. This also includes [[Framebuffer#Buffer clearing|framebuffer clearing]] operations.
+
Generally speaking, if the window you are rendering to is partially obscured by another window, the pixels covered by the other window are no longer owned by OpenGL and thus fail the ownership test. Any fragments that cover those pixels will be discarded. This also includes [[Framebuffer Clearing|framebuffer clearing]] operations.
  
 
Note that this test ''only'' affects rendering to the default framebuffer. When rendering to a [[Framebuffer Object]], all fragments pass this test.
 
Note that this test ''only'' affects rendering to the default framebuffer. When rendering to a [[Framebuffer Object]], all fragments pass this test.

Latest revision as of 16:38, 6 May 2015

Because the Default Framebuffer is owned by a resource external to OpenGL, it is possible that particular pixels of the default framebuffer are not owned by OpenGL. And therefore, OpenGL cannot write to those pixels. Fragments aimed at such pixels are therefore discarded at this stage of the pipeline.

Generally speaking, if the window you are rendering to is partially obscured by another window, the pixels covered by the other window are no longer owned by OpenGL and thus fail the ownership test. Any fragments that cover those pixels will be discarded. This also includes framebuffer clearing operations.

Note that this test only affects rendering to the default framebuffer. When rendering to a Framebuffer Object, all fragments pass this test.