Jump to content

  • Log In with Google      Sign In   
  • Create Account

XNA 4.0 Bounding Boxes


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
6 replies to this topic

#1 Xardov   Members   -  Reputation: 112

Like
0Likes
Like

Posted 04 February 2012 - 05:37 AM

So I'm a beginner with XNA 4.0 and programming in general, and i'm just trying to create a Bounding Box for a small cube I have. Problem is, I have absolutely no idea where to even start, because as far as I know, there isn't a BoundingBox stored in ModelMesh like there is a BoundingSphere. Also, I don't know what the min and max values are.... So, how would I go about creating a Bounding Box?

Sponsor:

#2 Net Gnome   Members   -  Reputation: 769

Like
0Likes
Like

Posted 04 February 2012 - 06:44 AM

in this case, your BB is your cube (since BBs are boxes, and cubes are a type of a box). you can either test your current shape itself, or just clone it for a data structure.

#3 blackbook   Members   -  Reputation: 110

Like
1Likes
Like

Posted 04 February 2012 - 07:31 AM

Here is the Bounding Box help.

http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.boundingbox.boundingbox.aspx

The Min and Max values are Vector3's.

In your case you would create a Bounding Box like this.

BoundingBox cubeBox = new BoundingBox(new Vector3(cube.Position.X - cube.Origin.X, cube.Position.Y - cube.Origin.Y, 0), new Vector3(cube.Position.X + cube.Origin.X, cube.Position.Y + cube.Origin.Y, 0);

Bounding boxes are easy to create once you are familiar.

I normally use rectangles for 2D work.

Just go through the help system and you can easily learn about a subject.

If you highlight a word such as BoundingBox or Vector3 and press F1 then the help screen will open.

#4 Xardov   Members   -  Reputation: 112

Like
0Likes
Like

Posted 04 February 2012 - 08:12 AM

Thanks! I do have one more question however. Your code sets the bounding box's size, but how would I set it's position so that it envelops the model?

And @NetGnome - How would I test for a shape? Sorry, but i'm really a newb at this 3D stuff.

#5 Net Gnome   Members   -  Reputation: 769

Like
0Likes
Like

Posted 04 February 2012 - 12:17 PM

And @NetGnome - How would I test for a shape?


Which, BB shape or the shape you're creating the BB for?

#6 blackbook   Members   -  Reputation: 110

Like
0Likes
Like

Posted 04 February 2012 - 12:53 PM

Thanks! I do have one more question however. Your code sets the bounding box's size, but how would I set it's position so that it envelops the model?

And @NetGnome - How would I test for a shape? Sorry, but i'm really a newb at this 3D stuff.


The bounding box constructor sets two Vector3's. They are effectively minimum position and maximum position.

As these positions are relative to the Box's Position they would naturally envelope the box.

If you dont understand what a Vector3 is then I suggest you look it up.

Also take a look at rectangle the principal is very similiar.

If you dont know how to make a rectangle do that first.

Then you can improve to the 3D Bounding Box.

#7 Xardov   Members   -  Reputation: 112

Like
0Likes
Like

Posted 07 February 2012 - 12:10 AM

Thanks guys for your responses. So, just to clear things up, where is the origin of a model? I assume top left corner?




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS