Jump to content

  • Log In with Google      Sign In   
  • Create Account

#Actualic0de

Posted 10 July 2013 - 09:45 AM

FYI from that page: "Thus the first restriction on early depth tests is that they cannot happen if the fragment shader writes gl_FragDepth​. If the fragment shader modifies the depth, then the depth test must wait until after the fragment shader executes."

 

I'm sorry but you clearly didn't read that entire article, the use of that syntax for forcing early Z requires GL_ARB_shader_image_load_store:

 

More recent hardware can force early depth tests, using a special fragment shader layout qualifier:

layout(early_fragment_tests) in;

This will also perform early stencil tests.

 

...

 

This feature exists to ensure proper behavior when using Image Load Store or other incoherent memory writing.

 

Its mentioned in the spec too:

http://www.opengl.org/registry/specs/ARB/shader_image_load_store.txt

 

An explicit control is provided to allow fragment shaders to enable early

fragment tests. If the fragment shader specifies the
"early_fragment_tests" layout qualifier, the per-fragment tests described
in Section 3.X will be performed prior to fragment shader execution.
Otherwise, they will be performed after fragment shader execution.

#3ic0de

Posted 10 July 2013 - 09:44 AM

FYI from that page: "Thus the first restriction on early depth tests is that they cannot happen if the fragment shader writes gl_FragDepth​. If the fragment shader modifies the depth, then the depth test must wait until after the fragment shader executes."

 

I'm sorry but you clearly didn't read that entire article, the use of that syntax for forcing early Z requires GL_ARB_shader_image_load_store:

 

More recent hardware can force early depth tests, using a special fragment shader layout qualifier:

layout(early_fragment_tests) in;

This will also perform early stencil tests.

 

Its mentioned in the spec too:

http://www.opengl.org/registry/specs/ARB/shader_image_load_store.txt

 

An explicit control is provided to allow fragment shaders to enable early

fragment tests. If the fragment shader specifies the
"early_fragment_tests" layout qualifier, the per-fragment tests described
in Section 3.X will be performed prior to fragment shader execution.
Otherwise, they will be performed after fragment shader execution.

#2ic0de

Posted 10 July 2013 - 09:44 AM

FYI from that page: "Thus the first restriction on early depth tests is that they cannot happen if the fragment shader writes gl_FragDepth​. If the fragment shader modifies the depth, then the depth test must wait until after the fragment shader executes."

 

I'm sorry but you clearly didn't read that entire article, the use of that syntax for forcing early Z requires GL_ARB_shader_image_load_store:

 

More recent hardware can force early depth tests, using a special fragment shader layout qualifier:

layout(early_fragment_tests) in;

This will also perform early stencil tests.

Its mentioned in the spec too:

http://www.opengl.org/registry/specs/ARB/shader_image_load_store.txt

An explicit control is provided to allow fragment shaders to enable early

fragment tests. If the fragment shader specifies the
"early_fragment_tests" layout qualifier, the per-fragment tests described
in Section 3.X will be performed prior to fragment shader execution.
Otherwise, they will be performed after fragment shader execution.

#1ic0de

Posted 10 July 2013 - 09:44 AM

FYI from that page: "Thus the first restriction on early depth tests is that they cannot happen if the fragment shader writes gl_FragDepth​. If the fragment shader modifies the depth, then the depth test must wait until after the fragment shader executes."

 

I'm sorry but you clearly didn't read that entire article, the use of that syntax for forcing early Z requires GL_ARB_shader_image_load_store:

 

 

 

Early Fragment Tests       Core in version 4.3 Core since version 4.2 Core ARB extension ARB_shader_image_load_store

 

More recent hardware can force early depth tests, using a special fragment shader layout qualifier:

layout(early_fragment_tests) in;

This will also perform early stencil tests.

Its mentioned in the spec too:

http://www.opengl.org/registry/specs/ARB/shader_image_load_store.txt

 

 

An explicit control is provided to allow fragment shaders to enable early
fragment tests. If the fragment shader specifies the
"early_fragment_tests" layout qualifier, the per-fragment tests described
in Section 3.X will be performed prior to fragment shader execution.
Otherwise, they will be performed after fragment shader execution.

PARTNERS