Jump to content

  • Log In with Google      Sign In   
  • Create Account


OpenGL 4.4 spec is published


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
22 replies to this topic

#21 gboxentertainment   Members   -  Reputation: 766

Like
0Likes
Like

Posted 07 September 2013 - 11:51 PM

Has anyone tried to implement the sparse textures? I've placed glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_SPARSE_ARB, GL_TRUE) into my code and it compiles fine but there does not seem to be anything shader specific written in the specs (similar to the AMD versions where you use sparseTexture(sampler, coord)).



Sponsor:

#22 phantom   Moderators   -  Reputation: 6785

Like
1Likes
Like

Posted 09 September 2013 - 12:40 AM

Ah, yes, that omission... it took me a while to spot it as well (mostly because I couldn't believe it WAS missing); but yes, as it stands ARB_sparse_texture lacks the GLSL extension for shader -> cpu feedback loops.

While annoying this doesn't render the extension useless it just means you have to manage things via corser CPU side controls rather than using a shader feedback loop (which, to be honest, for a streaming solution you'll want anyway so no foul there really).

Part of me wonders if this omission is due to an NV or Intel GPU weakness where their current hardware can do the virtual texturing bit just fine but can't do the feedback loop; probably because it pretty much requires a writable buffer to be bound to any pipeline stage to be completely viable for all situations something AMD can do but it seems NV can't/won't expose on some/all of their hardware (see D3D11.1 'uav on all pipeline stages' issue for NV)... and god knows about Intel.

Truth be told however this extension, and the more powerful AMD varient get more intresting once the tiled resource extension comes into play; I don't have a link to the pdf handy but basically you'll be able to reserve a buffer (say 128meg) and then allocate out of that tile sized resources to your sparse textures rather than relying on the driver's best guess as it currently stands. (edit: and now I have the link to hand! Hardware Virtual Textures has the details.)

Combine sparse, memory controls and bindless and you've got one hell of a powerful set of features going forward.

Edited by phantom, 09 September 2013 - 12:56 AM.


#23 MJP   Moderators   -  Reputation: 10210

Like
1Likes
Like

Posted 13 September 2013 - 05:10 PM

Part of me wonders if this omission is due to an NV or Intel GPU weakness where their current hardware can do the virtual texturing bit just fine but can't do the feedback loop;

Indeed, Nvidia supports the general virtual memory framework but not the shader feedback. Hence DX11.2 having two tiers for tiled resources, with the second tier having the shader extensions.


Edited by MJP, 13 September 2013 - 05:10 PM.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS