Jump to content
  • Advertisement
Sign in to follow this  
Darkbouncer4689

max and maya bounding volume creation

This topic is 2553 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey all, before I make BV creation algorithms I was wondering if 3dstudiomax and Maya have built in support for computing and exporting bounding volumes, especially best fitting OBBs. Thanks in advance.

Share this post


Link to post
Share on other sites
Advertisement
Um, may I ask why? Creating an OBB or whatever oriented BB is a very simple and straightforward thing.

Share this post


Link to post
Share on other sites

Um, may I ask why? Creating an OBB or whatever oriented BB is a very simple and straightforward thing.


Creating a best fitting OBB is a very straightforward and simple thing? Either you are a math genius or you do not understand what it takes to compute a best fitting OBB. I'm assuming you've computed an AABB (which is very simple) and you believe that an OBB is that same thing.

Share this post


Link to post
Share on other sites

Both 3ds max and maya have bounding boxes on every transform. You can simply query them.


Interesting. So I'm assuming it has options for different types of BVs such as spheres, AABB, OBB, k-dops etc.
Does it compute best fitting OBBs? (i would assume so)

Also, when you say it can compute an OBB on every transform, do you mean the artist can choose how to compute multiple OBB's per object? Is this something artists have complete control over, or is there some type of setting for how many OBBs will be used on the object?

Thanks for all of the help. I don't want to waste a lot of time reinventing the wheel if the artists can easily export bounding volumes =)

Share this post


Link to post
Share on other sites

[quote name='szecs' timestamp='1311143902' post='4837819']
Um, may I ask why? Creating an OBB or whatever oriented BB is a very simple and straightforward thing.


Creating a best fitting OBB is a very straightforward and simple thing? Either you are a math genius or you do not understand what it takes to compute a best fitting OBB. I'm assuming you've computed an AABB (which is very simple) and you believe that an OBB is that same thing.
[/quote]

You are right, I misunderstood. Sorry for that. I'd guess that RobTheBloke misunderstand it too, I couldn't find any modifiers or anything that compute the best fitting BB. I believe 3ds Max only has the object oriented bounding box (object's AABB )

Share this post


Link to post
Share on other sites
Darn. So you're saying that they will compute AABB for you but not OBB? That's a bummer. I guess I'll have to implement my own best fitting OBB constructor =(

Share this post


Link to post
Share on other sites
I'm not sure. Look for plugins or scripts on the net. Or maybe you'll find a library too. How precise does it have to be? How fast (real time)? If neither of them, you could compute several AABB:s for several different axes (dunno, rotate axes with 5° increment pitch/yawn for example), and choose the smallest.

Share this post


Link to post
Share on other sites

Darn. So you're saying that they will compute AABB for you but not OBB? That's a bummer. I guess I'll have to implement my own best fitting OBB constructor =(

They won't compute OBB*, but the bone hierarchy will inherently provide you with an OBB tree. They may not be best fitting, but they won't be far off (unless your modeller is a lunatic!). Obviously if you are using the OBB trees for a single high poly mesh, they won't be of any use to you (you might have to generate some form of tree for that data). But assuming your modeller is using sensible hierarhies of objects, they will be more than adequate for things such as visibility testing etc.

* They are actually computed as a result of modelling operations. How good they are, then depends on how your modeller likes to work.

Share this post


Link to post
Share on other sites

Interesting. So I'm assuming it has options for different types of BVs such as spheres, AABB, OBB, k-dops etc.


No. Just OBB.


Does it compute best fitting OBBs? (i would assume so)


Both Maya and Max require OBB trees for their selection and visibility algorithms. The basic premise is that the Max/Maya scene is split into 2 types of objects (ish), Shapes and Transforms. Shapes are simply local space geometry data, and an AABB is computed for that object (in local space). Transforms simply position shapes within the scene, and they also have their own OBBs (generated from any AABBs from child shapes, and any OBB's from child transforms). The result is a usable OBB tree.

They cannot be computed as 'best fitting' because this makes no sense for Maya/Max (i.e. the location of the actual transform is always important for things like scale/rotate/translate/select tools). The result will either be a tree that is nowhere near best fitting (blame the artist), or a tree that is quite accurate.


Also, when you say it can compute an OBB on every transform, do you mean the artist can choose how to compute multiple OBB's per object?

The bounding boxes are computed. Things that are computed in Max/Maya cannot be controlled by artists.


Is this something artists have complete control over, or is there some type of setting for how many OBBs will be used on the object?


Artists have no direct control over how the tree is generated. Well, that's not quite true. A tree will always be generated that's a best fit for their model data. If they like to work by combining hundreds of small meshes into a single mesh blob, then the tree that is generated will be fairly useless. If however they prefer working with lots of grouped/parented objects, the tree will be about as accurate as you can get....

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!