On Wed, Jul 2, 2008 at 1:43 PM, David Spilling <[EMAIL PROTECTED]> wrote: > 1) I can't quite understand all of the BufferObject code, but just to check, > it looks like all three arrays are dumped into one large contiguous buffer > (i.e. one single bufferID). Is that correct? > > If(1) is true, and it's just one large buffer:
osg::Geometry uses one VBO for all vertex arrays associated with it, and one VBO for the primitive data associated with it. > 2) Am I right in thinking that limiting the upload to one of the arrays > would involve extending BufferObject to use glBufferSubData, as it isn't > currently supported? I should already work in 2.4 onwards. > 3) Can you set the stride of each buffer object (i.e. to support > interleaving the arrays)? I can't see anything like glVertexPointer > anywhere. The OSG doesn't support interleaving of vertex arrays, it doesn't offer much benefit these days - interleaving was useful in the days of CPU vertex processing. > 4) More generally, is there any (easy) way to attach several BufferObjects > to a Drawable, such that you could separately dirty() vertex, texcoord or > normal without having to upload the others? > > If (1) is false, and each array has a different buffer object/ID, This should be a moot point now. > 5) Is there an obvious way that I've missed for dirtying just one of the > arrays in the VBO space? Each Array now has its own dirty() method. Robert. _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

