Sign in to follow this  
rewolfer

non power-of-2 textures in the VS

Recommended Posts

Hi all I've searched the glspec and glsl spec, but couldn't really find an answer to my question. I was wondering if texture fetching in the Vertex Shader is still limited to textures with dimensions as powers of two. If non-power-of-2 textures ARE now supported in the VS, for what GL versions and what architectures? Or if you can tell me where to find this information I'd appreciate it. Thanks a lot rewolf

Share this post


Link to post
Share on other sites
GL doesn't have a limit and you can't unfortunately know what the GPU supports with GL. With DX10 GPUs, all limits are removed so you can sample whatever you want in the VS. Fortunately, they made GL 3.0 available on DX10 GPUs so you can use a version check to know.

Share this post


Link to post
Share on other sites
Thanks for the reply, though I'm a little confused by your response. Are you saying that GL3.0 and DX10 capable GPUs have no limit on what can be sampled, but that it is not easy to verify support on previous architectures?

I am targeting DX10 cards and above with a project, and thus am interested in limitations. Where did you find such technical information? Surely there official documentation somewhere.

Thanks again for the help

Share this post


Link to post
Share on other sites
I haven't seen that specific info but if you read
http://en.wikipedia.org/wiki/Microsoft_Direct3D

===========which says
"Texture Sampling - sample_c and sample_c_lz instructions are defined to work with both Texture2DArrays and TextureCubeArrays, use the Location member (the alpha component) to specify an an array index."

http://msdn.microsoft.com/en-us/library/bb694530%28VS.85%29.aspx

===========which says
"Unlike prior versions of the API, Direct3D 10 no longer uses "capability bits" (or "caps") to indicate which features are supported on a given graphics device. Instead, it defines a minimum standard of hardware capabilities which must be supported for a display system to be "Direct3D 10 compatible". This is a significant departure, with the goal of streamlining application code by removing capability-checking code and special cases based on the presence or absence of fine-grain capabilities."

basically, DX10 gpus are fairly "capable".
I'm sure they can handle NOPT textures in the VS.
Also, GL 3.0 is only available for DX10 GPUs.

Quote:
Where did you find such technical information?

Probably somewhere on msdn there is a really good and detailed information but it is not easy to find it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this