Ricky,

AFAIK, OSG doesn't maintain VBO/EBO bindings as part of its sortable state.
So I believe they will be bound and unbound for each Geometry, even if they
are shared. Somebody correct me if I'm wrong. (See
Geometry::drawImplementation.)

Glenn Waldron / Pelican Mapping / @glennwaldron


On Thu, May 5, 2011 at 11:40 AM, Riccardo Corsi
<[email protected]>wrote:

> Hi All,
>
> I revamp this thread as my question is strictly related, as I'm trying to
> pack multiple geometries into shared VBO.
>
> I'm creating a shared osg::Vec3Array for vertices,
> same for as many vertex attribute as I need,
> and then assigning these shared arrays to the different geometries
> (pGeom->setVertexArray() and pGeom->setVertexAttribArray() )
> and telling the geometry to use VBO and not display lists.
>
> Then I create a new DrawElements for each geometry, with the correct vertex
> indices offset,
> and as I want them to share the same EBO underneath,
> I'm trying with:
> pDrawElemsUInt->setElementBufferObject(pSharedEBO);
> pGeom->addPrimitiveSet(pDrawElemsUInt);
>
> But I think I' missing something because, with gDebugger, I see that there
> are as many bindBuffer calls as num-geom * num-shared-buffers.
>
> Am I wrong in the way I try to share the drawElems EBO? Or missing
> something else?
> Thank you!
>
> Ricky
>
>
>
>
> On Mon, Jan 3, 2011 at 19:31, Jason Beverage <[email protected]>wrote:
>
>> Hi Terry,
>>
>> I was generating all my geometry in code so I wrote some custom code
>> to pack them tightly into a single vertex array.
>>
>> Jason
>>
>> On Mon, Jan 3, 2011 at 1:05 PM, Terry Welsh <[email protected]> wrote:
>> > Hi Jason,
>> > Thank you for the suggestion.  I feel like I'm missing something
>> > still.  Is there an Optimizer feature or something that combines
>> > Arrays for you?  Or did you write a bunch of custom code that
>> > processes your models after you load them?
>> > --
>> > Terry Welsh
>> > mogumbo 'at' gmail.com
>> > www.reallyslick.com
>> >
>> >
>> >
>> >> Message: 3
>> >> Date: Sun, 2 Jan 2011 21:28:12 -0500
>> >> From: Jason Beverage <[email protected]>
>> >> To: OpenSceneGraph Users <[email protected]>
>> >> Subject: Re: [osg-users] large VBOs for multiple Drawables
>> >> Message-ID:
>> >>        <[email protected]>
>> >> Content-Type: text/plain; charset=ISO-8859-1
>> >>
>> >> Hi Terry,
>> >>
>> >> You can pack the verts of your small objects into a single
>> >> osg::Vec3Array and share that array across multiple osg::Geometry
>> >> objects then use DrawElements for each geometry with the correct
>> >> indices.  I've just recently done this actually for a project I'm
>> >> working on and it's worked out great.
>> >>
>> >> Thanks,
>> >>
>> >> Jason
>> >>
>> >> On Sat, Jan 1, 2011 at 6:21 PM, Terry Welsh <[email protected]> wrote:
>> >>> I found some email threads that hinted at this a little, but nothing
>> >>> seemed very specific. ?I have scenes where display lists perform a bit
>> >>> better than VBOs. ?My best guess is because my objects have relatively
>> >>> small vertex counts (usually between 20 and 200). ?Is there any way in
>> >>> OSG to use one large VBO to store the date for multiple Drawables in
>> >>> order to minimize buffer state changes?
>> >>> --
>> >>> Terry Welsh
>> >>> mogumbo 'at' gmail.com
>> >>> www.reallyslick.com
>> >>> _______________________________________________
>> >>> osg-users mailing list
>> >>> [email protected]
>> >>>
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>> > _______________________________________________
>> > osg-users mailing list
>> > [email protected]
>> >
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>> >
>> _______________________________________________
>> osg-users mailing list
>> [email protected]
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to