• Advertisement
Sign in to follow this  

d3d12: texture barrier equivalent?

This topic is 906 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi,

In gl 4.5 the texture barrier extension became part of core spec.

Basically this extension allow to fetch texel from a texture being bound as render target, either by using scissor test not to overlap read and write region, or by ensuring that every fragment shader invocation is reading the same location it's writing to.

Is the functionality available with d3d12? As far as I know resource can only have a single state at a given time. The aliasing barrier is only meant to deal with tiled texture as far as I can tell. And I think the debug layer won't accept a rtt state for a shader resource view or a generic read state for a rtt...

Regards, Vincent.

Share this post


Link to post
Share on other sites
Advertisement

Probably Rasterizer Order Views, which means you'd bind the texture as a UAV (SSBO in GL terms) rather than as a RTV (FBO).

 

The semantics are a bit different though... ROV's do allow multiple overlapping triangles within a single draw call.

Edited by Hodgman

Share this post


Link to post
Share on other sites

Actually it doesn't use ROV, maybe my description wasn't clear, fragment shader invocation doesn't overlap ; so there is at most one fragment program executed on a fragment, and this fragment program can fetch the texel value of the bound render target texture.

In general case reading to a bound render target texture is an undef operation but under these constraints the extension ensure that the operation is well defined.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement