![]() |
Om
1.0.0
A universal framework for multimedia simulation
|
A class that represents an abstract renderable object. More...
#include <omGraphicsShape.h>
Public Member Functions | |
| ShapeTypeID | getShapeTypeID () const |
| Return an integer identifying the sub type of this shape. More... | |
| const ShapeType & | getShapeType () const |
| Return a reference to an object representing the type of this Shape. More... | |
| Sphere3 | getBoundingSphere () const |
| Return a bounding sphere for this transformable in its parent coordinate space. More... | |
| const AABB3 & | getBoundingBox () const |
| Return an axis-aligned bounding box that encompases this entire transformable in its parent coordinate space. More... | |
| virtual void | updateBoundingBox () |
| Update the shape's bounding box based on its current geometric representation. More... | |
| virtual void | intersectRay (GraphicsRay &ray) const |
| Trace a ray against this shape and compute the closest intersection. More... | |
| virtual void | testRay (GraphicsRay &ray) const |
| Trace a ray against this shape and determine if any intersection exist along the ray. More... | |
Public Member Functions inherited from om::graphics::base::Renderable | |
| Renderable () | |
| Create a new renderable object with the default renderable flags. More... | |
| Renderable (const RenderableFlags &newFlags) | |
| Create a new renderable object with the specified renderable flags. More... | |
| RenderableFlags & | getFlags () |
| Return a reference to an object that contains boolean parameters of the renderable. More... | |
| const RenderableFlags & | getFlags () const |
| Return an object that contains boolean parameters of the renderable. More... | |
| void | setFlags (const RenderableFlags &newFlags) |
| Set an object that contains boolean parameters of the renderable. More... | |
| Bool | flagIsSet (RenderableFlags::Flag flag) const |
| Return whether or not the specified boolan flag is set for this renderable. More... | |
| Bool | flagsAreSet (const RenderableFlags &otherFlags) const |
| Return whether or not all of the specified boolan flags are set for this renderable. More... | |
| void | setFlag (RenderableFlags::Flag flag, Bool newIsSet=true) |
| Set whether or not the specified boolan flag is set for this renderable. More... | |
| Bool | getIsVisible () const |
| Get whether or not the renderable and its children are visible in the scene. More... | |
| void | setIsVisible (Bool newIsVisible) |
| Set whether or not the renderable and its children are visible in the scene. More... | |
| Bool | getShadowsEnabled () const |
| Return whether or not this renderable can cast shadows. More... | |
| void | setShadowsEnabled (Bool newCanCastShadows) |
| Set whether or not this renderable can cast shadows. More... | |
| virtual void | getRenderables (const shapes::RenderRequest &request, const Transform3 &worldTransform, shapes::RenderQueue &outputQueue) const =0 |
| Process the renderable and add all child renderable objects to the output render queue. More... | |
Public Member Functions inherited from om::graphics::devices::GraphicsContextObject | |
| virtual | ~GraphicsContextObject () |
| Destory this graphics context object. More... | |
| GraphicsContext * | getContext () const |
| Return a pointer to the graphics context this context object is using to do rendering. More... | |
| virtual void | setContext (GraphicsContext *newContext) |
| Set a pointer to the graphics context this context object should use to do rendering. More... | |
| void | clearContext () |
| Clear the previous context from this object. More... | |
| void | upload () |
| Upload this resource's CPU representation to the GPU device. More... | |
| virtual void | upload (UploadRequest &request) |
| Upload this resource's CPU representation to the GPU device. More... | |
| void | download () |
| Upload this resource's CPU representation to the GPU device. More... | |
| virtual void | download (DownloadRequest &request) |
| Download the resource's GPU representation to CPU memory. More... | |
| virtual Bool | isUploaded () const |
| Return whether or not this graphics resource has been successfully created and uploaded to the device. More... | |
| virtual Bool | isDownloaded () const |
| Return whether or not this graphics resource has a copy of its data stored in CPU-side memory. More... | |
| virtual Bool | isValid () const |
| Return whether or not the state of this graphics resource is valid (either on CPU or GPU) and able to be used for rendering. More... | |
Static Public Attributes | |
| static const ResourceType | RESOURCE_TYPE |
| The resource type for a graphics shape. More... | |
Protected Member Functions | |
| GraphicsShape (const ShapeType *newType) | |
| Create a new shape with the specified type. More... | |
| void | setBoundingBox (const AABB3 &newBoundingBox) |
| Set the local axis-aligned bounding box for this shape. More... | |
Protected Member Functions inherited from om::graphics::devices::GraphicsContextObject | |
| GraphicsContextObject () | |
| Create a new graphics context object that doesn't have an associated graphics context. More... | |
| GraphicsContextObject (GraphicsContext *newContext) | |
| Create a new graphics context object that uses the specified context for rendering. More... | |
Additional Inherited Members | |
Protected Attributes inherited from om::graphics::base::Renderable | |
| RenderableFlags | flags |
| An object containing boolean configuration flags for this renderable. More... | |
Protected Attributes inherited from om::graphics::devices::GraphicsContextObject | |
| GraphicsContext * | context |
| A pointer to the graphics context this object is using. More... | |
A class that represents an abstract renderable object.
A shape object contains whatever information is necessary to render it to the screen. Every shape has a transformation which orients it relative to its parent coordinate frame.
|
inlineprotected |
Create a new shape with the specified type.
|
inline |
Return an integer identifying the sub type of this shape.
|
inline |
Return a reference to an object representing the type of this Shape.
|
inline |
Return a bounding sphere for this transformable in its parent coordinate space.
|
inline |
Return an axis-aligned bounding box that encompases this entire transformable in its parent coordinate space.
|
virtual |
Update the shape's bounding box based on its current geometric representation.
Reimplemented in om::graphics::shapes::BoxShape, om::graphics::shapes::CapsuleShape, om::graphics::shapes::CylinderShape, om::graphics::shapes::SkyBoxShape, om::graphics::shapes::GridShape, om::graphics::shapes::LODShape, om::graphics::shapes::TorusShape, om::graphics::shapes::MeshShape, om::graphics::shapes::SphereShape, om::graphics::shapes::TransformControl, and om::graphics::shapes::SphericalFunctionShape.
|
virtual |
Trace a ray against this shape and compute the closest intersection.
Reimplemented in om::graphics::shapes::BoxShape, om::graphics::shapes::CapsuleShape, om::graphics::shapes::CylinderShape, om::graphics::shapes::LODShape, om::graphics::shapes::MeshShape, om::graphics::shapes::TransformControl, om::graphics::shapes::SphereShape, and om::graphics::shapes::SubdivisionShape.
|
virtual |
Trace a ray against this shape and determine if any intersection exist along the ray.
Reimplemented in om::graphics::shapes::BoxShape, om::graphics::shapes::CapsuleShape, om::graphics::shapes::CylinderShape, om::graphics::shapes::LODShape, om::graphics::shapes::MeshShape, om::graphics::shapes::TransformControl, om::graphics::shapes::SphereShape, and om::graphics::shapes::SubdivisionShape.
|
inlineprotected |
Set the local axis-aligned bounding box for this shape.
Shape subclasses should call this method to set the bounding box of their geometry in their local coordinate frames.
|
static |
The resource type for a graphics shape.
1.8.11