Revision 59,
1.3 KB
checked in by mattausch, 20 years ago
(diff) |
completely changed file structure plus software design
|
Rev | Line | |
---|
[59] | 1 | #ifndef _SolidHalfBoundingBox_H__
|
---|
| 2 | #define _SolidHalfBoundingBox_H__
|
---|
| 3 |
|
---|
| 4 | #include "OgreWireBoundingBox.h"
|
---|
| 5 |
|
---|
| 6 | namespace Ogre {
|
---|
| 7 |
|
---|
| 8 | /** Allows the rendering of one half of a solid bounding box.
|
---|
| 9 | @remarks
|
---|
| 10 | This class builds a wireframe renderable from a given aabb. A pointer to this class can be
|
---|
| 11 | added to a render queue to display the bounding box of an object.
|
---|
| 12 | */
|
---|
| 13 | class SolidHalfBoundingBox : public WireBoundingBox
|
---|
| 14 | {
|
---|
| 15 | public:
|
---|
| 16 |
|
---|
| 17 | SolidHalfBoundingBox(bool isFirstHalf);
|
---|
| 18 | void setupBoundingBox(const AxisAlignedBox& aabb);
|
---|
| 19 | /** Override this method to prevent parent transforms (rotation,translation,scale)
|
---|
| 20 | and to make it public.
|
---|
| 21 | */
|
---|
| 22 | void getWorldTransforms(Matrix4* xform) const;
|
---|
| 23 |
|
---|
| 24 | protected:
|
---|
| 25 |
|
---|
| 26 | /** Builds the wireframe line list.
|
---|
| 27 | @param aab the axis aligned bounding box for setting up the list.
|
---|
| 28 | */
|
---|
| 29 | void setupBoundingBoxVertices(const AxisAlignedBox& aab);
|
---|
| 30 | /**
|
---|
| 31 | Sets the material used for occlusion queries.
|
---|
| 32 | @remark the material is called "OcclusionQuery" and
|
---|
| 33 | uses no lighting, no depth write, and no colours
|
---|
| 34 | */
|
---|
| 35 | void setOcclusionQueryMaterial();
|
---|
| 36 | /** Whether this half box is the first or the second half of the bounding box.
|
---|
| 37 | */
|
---|
| 38 | bool mIsFirstHalf;
|
---|
| 39 | };
|
---|
| 40 |
|
---|
| 41 | }// namespace Ogre
|
---|
| 42 |
|
---|
| 43 | #endif // SolidHalfBoundingBox
|
---|
| 44 |
|
---|
| 45 |
|
---|
Note: See
TracBrowser
for help on using the repository browser.