VTF / Displacment Mapping
Hello Community...
I have few questions about a topic iam working on last days and
iam not sure how to solve it.
Iam working a an procedural pixel shader based on a tutorial and it works so far.
( Simplex noise + fbm etc... )
My problem is now that i want to bind the texture to the vertex shader to
manipulate ( displace ) vertices.
After some google seassions and some tutorials i found that with
vertex texture fetches it should work when using vertex/pixel shader model 3.
But i read that VTF doesnt work correctly on some video cards even if they
support vertex / pixel shader 3.
I heard also that ATI doesnt support this correctly because this is to slow
and nobody really use this feature.
( I read this comment somewhere during my google seassion about this topic. )
( Not sure if this is really true. )
What i really want to do is:
1. Generate a texture in pixel shader. ( works so far ).
2. Bind the generated texture to the vertex shader to displace vertices.
My goal is to have a simply textured planet with the generated texture on it and the vertices displaced with the texture height informations.
To map the texture on the planet is really not a problem.
But iam not sure in which direction i should go now to solve the
problem with VTF/Displacment Mapping.
I don't want to start implmenting something with VTF/Displacment Mapping
and finding out some weeks/month later that some cards not like it or are
buggy on this feature.
What i want to avoid is to lock the generated texture and generate new
vertices and push them back to the gpu.
Some more informations.
API : DirectX 9.c + Shaders with HLSL.
I could move to DirectX 10/10.1.
But iam not sure if this really helps with the problem i have atm.
Thanks for any respond.
Here's the deal with VTF:
-It is supported on Nvidia 6 and 7-series, but it's very slow and you're limited to 32-bit floating-point formats (R32F, R32G32F, R32G32B32A32F).
-It is not supported on Nvidia 5-series or lower, or ATI X1000-series and lower
-It is supported and works quite well on Nvidia 8-series and up, as well as ATI HD 2000-series and up (even if you're doing it in D3D9 through SM3.0).
-It is supported on Nvidia 6 and 7-series, but it's very slow and you're limited to 32-bit floating-point formats (R32F, R32G32F, R32G32B32A32F).
-It is not supported on Nvidia 5-series or lower, or ATI X1000-series and lower
-It is supported and works quite well on Nvidia 8-series and up, as well as ATI HD 2000-series and up (even if you're doing it in D3D9 through SM3.0).
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement