Bounding box

From Valve Developer Community

This article is a stub. You can help by adding to it (http://developer.valvesoftware.com/w/index.php?title=Bounding_box&action=edit).

The Bounding Box is a simple, rectilinear box that should enclose all the Solid and Visible parts of a model; ie. both its Render geometry and Collision geometry.

  • Any geometry outside the Bounding Box (eg a Viewcone) will be regarded as NotSolid to Bullets, Line of Sight and Solid Objects.
  • It is used only for crude proximity tests so that no sophisticated (expensive) collision tests need to be performed against objects which do not enter the Bounding Box.
  • Image:Todo.png confirm: The bounding box does rotate when the entity changes orientation: it is, like a hitbox, an Oriented-Bounding-Box (http://en.wikipedia.org/wiki/Bounding_volume#Common_types_of_bounding_volume), whereas NPC Hulls, etc do not rotate.

See Also

  • Anatomy of a Model
  • Surrounding Bounds section CollisionProperty article.
  • $bbox is the QC command for defining a Model's Bounding Box.
  • The BoundingBox Constructor (http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.boundingbox.boundingbox.aspx) is a method for defining cuboid vertices. By specifying only the "min" and "max" 3D coordinates - representing two diagonally opposed corners of the box relative to a point origin - the other six vertices are implied. This method is used to define Axis Aligned Bounding boxes, Hit boxes, NPC Hulls and Player Hull in code, and is obviously a great deal simpler than listing SMD mesh triangles.