Archived

This topic is now archived and is closed to further replies.

MENTAL

Multitexture and Vertex Blending with Vertex Programs

Recommended Posts

Right then. I''ve barely done any stuff with vertex programs (apart from basic transformations), but I''ve had the idea to try vertex blending with it (seeing as nVidia dropped the EXT_vertex_weighting extension and doesn''t support ARB_vertex_blend yes). The only way I can see of getting my vertex co-ords to the program is by using up another texture unit (fortunatly i''m using 3 at the moment with a geforce4ti, so i''ve got one left) and pass them as 3D texture co-ordinates. Once i''ve passed the 3 texture-coordinates to the vertex program output along with the blended vertex, i''m left with the final texture slot which is waiting for some texture co-ordinates. Obviously, I don''t have some. so, what i''m looking for is a way to input 4 texture co-ordinates to the vertex program and output 3 (0, 1, 2) and disable the 4th unit. Possible solutions: 1) disable texturing on the 4th unit not sure if this would block the second set of vertex positions to the vertex shader). 2) bind texture zero to the 4th unit would have to pass 0, 0, 0 for the 4th texture unit in the vertex program. Might add another texture stage in the fragment processing. 3) ask you lot for help will most probably get the correct answer. best solution or, if you know of any plans to put ARB_vertex_blend on the geforce4ti let me know and i''ll postpone vertex blending until then

Share this post


Link to post
Share on other sites
Using Vertex Program, you specify Vertex Attributes via :
glEnableVertexAttribArrayARB and glVertexAttribPointerARB

So you don''t need to use a Texture Unit at all.
Just feed VertexAttrib x with the data, and access it from the VP.



-* So many things to do, so little time to spend. *-

Share this post


Link to post
Share on other sites
quote:
Original post by Ingenu
Using Vertex Program, you specify Vertex Attributes via :
glEnableVertexAttribArrayARB and glVertexAttribPointerARB

So you don''t need to use a Texture Unit at all.
Just feed VertexAttrib x with the data, and access it from the VP.



-* So many things to do, so little time to spend. *-



thanks, i always wondered what vertex attribs were used for

Share this post


Link to post
Share on other sites