[ODE] BSP and ODE's collision system
Mohammad Bilal
prettyh8machine at mail.com
Mon Apr 21 07:30:02 2003
Ok naturally I never meant to say that ode has anything to do the way Im rendering..but..since I load a .bsp file into the memory, I have the geometry only binary space partitioned...but this is what Im gonna do and I want you to correct me since I am not too sure if this is the right way:
Im gonna create geometries for all the convex areas of the BSP geometry (in the same like while rendering you get to the current convex area and find all the convex areas visible from that point) and add them to a single geometry and then add that geometry to ode's collision space. Now if I add any other geometry (say, an entity) into this space, the collision will be done perfectly well.
I hope that this would do enough hierarchical geometry addition and would save ode from calculating collisions of one entity to the whole geometry (bsp world). Please comment.
Thanks,
Bilal
----- Original Message -----
From: "Aras Pranckevicius" <nearaz@interamotion.com>
Date: Mon, 21 Apr 2003 16:59:07 +0200
To: <ODE@q12.org>
Subject: Re: [ODE] BSP and ODE's collision system
> > partitioned geometries. What I understood is that ODE needs to get
> > all the geometry (heirarchically or otherwise) and maintains a
> > collision space.
>
> Yes.
>
> > Everytime you're about to draw, you check the collision etc.
>
> Not exactly "every time you draw" - more precisely, "every time you need" :)
> This can coincide with the rendering, or it may not. ODE doesn't care about
> your rendering in any way.
>
> >While drawing with BSP involves only finding the node you're in and
> > then after calculating some regular visibility tests, you just draw
> > what's needed.
>
> Yes, but, again, ODE doesn't care about your rendering, so your BSP for
> visibility tests and ODE's collision system aren't and shouldn't be aware of
> each other. Unless, of course, you would want to re-use your BSP for
> collision _also_ (not only for visibility). In that case - ODE has no BSP
> collision system (it's hash space is more like grid/octtree approach). You
> possibly could implement, say, "bsp collision space"...
>
> > Since BSPs are precompiled, how would you create a collision space
> > at the load time of your program manually, in the first place ? Any
> > thoughts ?
>
> Again - just pretend that you don't have the BSP. Just tell ODE about the
> collidables, and that's all. You have your geometry information somewhere
> else, not only in the BSP, right (at least you would need that for rendering
> purposes)?
>
>
>
> Aras Pranckevicius aka NeARAZ
> http://www.gim.ktu.lt/nesnausk/nearaz/
>
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode
--
__________________________________________________________
Sign-up for your own FREE Personalized E-mail at Mail.com
http://www.mail.com/?sr=signup