[osg-users] Vertex attribute names ?
Hello !! I'm trying to generate the tangent,binormal,normal base for a GLSL parallax shader. I would need to provide the tangent and binormal vectors as attribute (in GLSL grammar)... I checked OSG source : apparently I need to use the TangentSpaceGenerator class to build the arrays, but then, in osg::Geometry I can only use setVertexAttribArray(unsigned int index,Array* array) I guess, so the array would be associated to an index number and not a name, could someone explain me how to do the following step (link this index number to the wanted name I guess...) ? thanks in advance :-) regards, Emmanuel. ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
Re: [osg-users] Vertex attribute names ?
Hi Emmanuel, The OSG doesn't presently support naming of vertex attributes, only use of indexes. Naming of vertex attributes is a bit of awkward issue as the way the naming is set up in OpenGL prevents one from display listing geometry, and display listing of geometry is what the OSG does by default for performance reasons. This area is a bit of an oddity in OpenGL. Robert. On 4/11/07, Emmanuel Roche [EMAIL PROTECTED] wrote: Hello !! I'm trying to generate the tangent,binormal,normal base for a GLSL parallax shader. I would need to provide the tangent and binormal vectors as attribute (in GLSL grammar)... I checked OSG source : apparently I need to use the TangentSpaceGenerator class to build the arrays, but then, in osg::Geometry I can only use setVertexAttribArray(unsigned int index,Array* array) I guess, so the array would be associated to an index number and not a name, could someone explain me how to do the following step (link this index number to the wanted name I guess...) ? thanks in advance :-) regards, Emmanuel. ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
Re: [osg-users] Vertex attribute names ?
Okay, in this case, is someone aware of a solution to access those attributes in GLSL anyway through their index ? I guess I'm not the first one trying to use attributes no lol ? I think there is one solution at least (and that's the one I'm going to use if I find nothing better...) : I could use to built in attribute variables ( gl_Color, gl_SecondaryColor, gl_MultiTexCoord0 to 7)... which can be assigned with OSG functions (setColorArray, etc...). But I really think this is not a good final solution... regards, Emmanuel. 2007/4/11, Robert Osfield [EMAIL PROTECTED]: Hi Emmanuel, The OSG doesn't presently support naming of vertex attributes, only use of indexes. Naming of vertex attributes is a bit of awkward issue as the way the naming is set up in OpenGL prevents one from display listing geometry, and display listing of geometry is what the OSG does by default for performance reasons. This area is a bit of an oddity in OpenGL. Robert. On 4/11/07, Emmanuel Roche [EMAIL PROTECTED] wrote: Hello !! I'm trying to generate the tangent,binormal,normal base for a GLSL parallax shader. I would need to provide the tangent and binormal vectors as attribute (in GLSL grammar)... I checked OSG source : apparently I need to use the TangentSpaceGenerator class to build the arrays, but then, in osg::Geometry I can only use setVertexAttribArray(unsigned int index,Array* array) I guess, so the array would be associated to an index number and not a name, could someone explain me how to do the following step (link this index number to the wanted name I guess...) ? thanks in advance :-) regards, Emmanuel. ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
Re: [osg-users] Vertex attribute names ?
Hi, See the compactdisc.osg and compactdisc-texcoord.osg examples in osgtoy (http://osgtoy.cvs.sourceforge.net/osgtoy/osgtoy/osgtoy-data/) They differ only in how they send the tangent vectors: the former uses a generic GLSL attribute, the latter sends the tangent in a built-in texcoord. (ATI drivers have (had?) a bug such that any use of generic attributes caused all geometry to vanish! Hence the need for the built-in attribute variation) cheers -- mew Emmanuel Roche wrote: Okay, in this case, is someone aware of a solution to access those attributes in GLSL anyway through their index ? I guess I'm not the first one trying to use attributes no lol ? I think there is one solution at least (and that's the one I'm going to use if I find nothing better...) : I could use to built in attribute variables ( gl_Color, gl_SecondaryColor, gl_MultiTexCoord0 to 7)... which can be assigned with OSG functions (setColorArray, etc...). But I really think this is not a good final solution... regards, Emmanuel. 2007/4/11, Robert Osfield [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]: Hi Emmanuel, The OSG doesn't presently support naming of vertex attributes, only use of indexes. Naming of vertex attributes is a bit of awkward issue as the way the naming is set up in OpenGL prevents one from display listing geometry, and display listing of geometry is what the OSG does by default for performance reasons. This area is a bit of an oddity in OpenGL. Robert. On 4/11/07, Emmanuel Roche [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Hello !! I'm trying to generate the tangent,binormal,normal base for a GLSL parallax shader. I would need to provide the tangent and binormal vectors as attribute (in GLSL grammar)... I checked OSG source : apparently I need to use the TangentSpaceGenerator class to build the arrays, but then, in osg::Geometry I can only use setVertexAttribArray(unsigned int index,Array* array) I guess, so the array would be associated to an index number and not a name, could someone explain me how to do the following step (link this index number to the wanted name I guess...) ? thanks in advance :-) regards, Emmanuel. -- Mike Weiblen -- Austin Texas USA -- http://mew.cx/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
Re: [osg-users] Vertex attribute names ?
Thanks, I guess this means that the function osg::Program::addBindAttribLocation(std::string, index) is what I was looking for :-). regards, Emmanuel. 2007/4/11, Mike Weiblen [EMAIL PROTECTED]: Hi, See the compactdisc.osg and compactdisc-texcoord.osg examples in osgtoy (http://osgtoy.cvs.sourceforge.net/osgtoy/osgtoy/osgtoy-data/) They differ only in how they send the tangent vectors: the former uses a generic GLSL attribute, the latter sends the tangent in a built-in texcoord. (ATI drivers have (had?) a bug such that any use of generic attributes caused all geometry to vanish! Hence the need for the built-in attribute variation) cheers -- mew Emmanuel Roche wrote: Okay, in this case, is someone aware of a solution to access those attributes in GLSL anyway through their index ? I guess I'm not the first one trying to use attributes no lol ? I think there is one solution at least (and that's the one I'm going to use if I find nothing better...) : I could use to built in attribute variables ( gl_Color, gl_SecondaryColor, gl_MultiTexCoord0 to 7)... which can be assigned with OSG functions (setColorArray, etc...). But I really think this is not a good final solution... regards, Emmanuel. 2007/4/11, Robert Osfield [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]: Hi Emmanuel, The OSG doesn't presently support naming of vertex attributes, only use of indexes. Naming of vertex attributes is a bit of awkward issue as the way the naming is set up in OpenGL prevents one from display listing geometry, and display listing of geometry is what the OSG does by default for performance reasons. This area is a bit of an oddity in OpenGL. Robert. On 4/11/07, Emmanuel Roche [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Hello !! I'm trying to generate the tangent,binormal,normal base for a GLSL parallax shader. I would need to provide the tangent and binormal vectors as attribute (in GLSL grammar)... I checked OSG source : apparently I need to use the TangentSpaceGenerator class to build the arrays, but then, in osg::Geometry I can only use setVertexAttribArray(unsigned int index,Array* array) I guess, so the array would be associated to an index number and not a name, could someone explain me how to do the following step (link this index number to the wanted name I guess...) ? thanks in advance :-) regards, Emmanuel. -- Mike Weiblen -- Austin Texas USA -- http://mew.cx/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/ ___ osg-users mailing list osg-users@openscenegraph.net http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/