|
Neo
0.5.0
Developer Documentation
|
Represents a 3D mesh in the scene. More...
#include <OEntity.h>
Inheritance diagram for Neo::OEntity:Public Member Functions | |
| OEntity (MeshRef *meshRef) | |
| ~OEntity (void) | |
| OEntity (const OEntity &entity) | |
| Material * | getMaterial (size_t idx=0) |
| Retrieves the material with the given index. More... | |
| size_t | getMaterialsNumber () |
| Returns the number of materials attached to this entity. More... | |
| bool | hasWireframe () |
| Checks if the entity has the wireframe mode enabled. More... | |
| void | enableWireframe (bool v) |
| Enables/Disable the wireframe of the entity. More... | |
| bool | hasTransparency () |
| Checks if the entity has any transparent material. More... | |
| PhysicsProperties * | enablePhysics (Scene *scene) |
| Sets up the OEntity to become a physical active object in the given scene. More... | |
| PhysicsProperties * | enablePhysics () |
| Sets up the OEntity to become a physical active object in the current scene. More... | |
| bool | isColliding (OEntity *entity) |
| Checks if the object is colliding with the other object. More... | |
| bool | isColliding () |
| Checks if the object has any collision with any other object. More... | |
| void | enableOccluder (bool value) |
| Sets if this object is a occluder or not. More... | |
| bool | isOccluder () |
| Checks if the OEntity is an occluder. More... | |
| virtual int | getType (void) |
| Returns the type of the object. More... | |
| virtual void | setActive (bool active) |
| Changes if the object is being active or inactive. More... | |
| void | setInvisible (bool invisible) |
| Changes if the OEntity is invisible or not. More... | |
| bool | isInvisible (void) |
| Checks if the OEntity is invisible. More... | |
| Mesh * | getMesh (void) |
| Returns the Mesh of the OEntity. More... | |
| void | setMeshRef (MeshRef *meshRef) |
| Sets the MeshRef of the OEntity. More... | |
| MeshRef * | getMeshRef (void) |
| Returns the MeshRef of the OEntity. More... | |
| void | changeAnimation (unsigned int animationId) |
| Changes the currently running animation to the one with the given ID. More... | |
| bool | isAnimationOver (void) |
| Checks if the currently running animation has finished. More... | |
| void | setAnimationSpeed (float animationSpeed) |
| Changes the animation speed. More... | |
| void | setCurrentFrame (float currentFrame) |
| Changes the current frame in the current animation. More... | |
| unsigned int | getAnimationId (void) |
| Returns the animation ID of the currently running animation. More... | |
| float | getAnimationSpeed (void) |
| Returns the animation speed of the currently running animation. More... | |
| float | getCurrentFrame (void) |
| Returns the animation current frame in the currently running animation. More... | |
| void | deletePhysicsProperties (void) |
| Disables physics and deletes the physics properties. More... | |
| PhysicsProperties * | createPhysicsProperties (void) |
| Enables physics and creates a new PhysicsProperties object. More... | |
| PhysicsProperties * | getPhysicsProperties (void) |
| Returns the physics properties object. More... | |
| Box3d * | getBoundingBox (void) |
| Returns the bounding box. More... | |
| bool | hasShadow () |
| Checks if the OEntity has a shadow. More... | |
| void | enableShadow (bool shadow) |
| Enables or disables shadows for the OEntity. More... | |
| virtual void | update (void) |
| Updates the object. More... | |
| virtual void | updateVisibility (OCamera *camera) |
| Recalculates visibility for the given camera. More... | |
Public Member Functions inherited from Neo::Object3d | |
| Object3d (void) | |
| virtual | ~Object3d (void) |
| Object3d (const Object3d &object) | |
| AdditionalData * | getAdditionalData () |
| void | setAdditionalData (AdditionalData *d) |
| void | updateMatrix (void) |
| Recalculates the internal matrix relative to the parent object. More... | |
| void | computeLocalMatrix (void) |
| Calculates the local matrix without respecting the parent. More... | |
| Matrix4x4 * | getMatrix (void) |
| Returns the current matrix. More... | |
| void | unlinkChildren (void) |
| Unlinks all children from this object and sets their parent to NULL. More... | |
| void | computeChildrenMatrices (void) |
| Calculates the matrix of every child object. More... | |
| void | setAttribute (const char *name, NeoVariable variable) |
| Sets the value of the attribute with the given name. More... | |
| NeoVariable | getAttribute (const char *name) |
| Returns the value of the attribute variable with the given name. More... | |
| Vector3 | getUniformRotatedVector (const Vector3 &vector) |
| Rotates the given vector while preserving its length and returns the result. More... | |
| Vector3 | getInverseRotatedVector (const Vector3 &vector) const |
| Calculates the inverse rotated vector. More... | |
| Vector3 | getRotatedVector (const Vector3 &vector) const |
| Rotates the given vector and returns the result. More... | |
| Vector3 | getInversePosition (const Vector3 &position) const |
| Multiplies the inverse matrix with the given vector and return the result. More... | |
| Vector3 | getTransformedVector (const Vector3 &vector) const |
| Transforms the given vector using the internal matrix. More... | |
| void | setPosition (const Vector3 &position) |
| Changes the position. More... | |
| void | translate (const Vector3 &vec, bool local=false) |
| Translates the object. More... | |
| void | rotate (const Vector3 &axis, float angle, bool local=false) |
| Rotates the object. More... | |
| Vector3 | getTransformedPosition (void) const |
| Returns the transformed position directly from the internal matrix. More... | |
| Vector3 | getPosition (void) const |
| Returns the position as a Vector3. More... | |
| void | setEulerRotation (const Vector3 &euler) |
| Changes the Euler rotation. More... | |
| void | setAxisAngleRotation (const Vector3 &axis, float angle) |
| Changes the angle of the specified axis. More... | |
| void | addAxisAngleRotation (const Vector3 &axis, float angle) |
| Changes the angle of the specified axis by adding the given value. More... | |
| void | setRotation (const Quaternion &rotation) |
| Sets the rotation or the object. More... | |
| Vector3 | getTransformedRotation (void) const |
| Returns the transformed rotation. More... | |
| Vector3 | getEulerRotation (void) const |
| Returns the Euler rotation in a Vector3 in degrees. More... | |
| Quaternion | getRotation (void) const |
| Returns the rotation of the object. More... | |
| void | setScale (const Vector3 &scale) |
| Changes the scale of the object. More... | |
| Vector3 | getTransformedScale (void) const |
| Returns the transformed scale of the object. More... | |
| Vector3 | getScale (void) const |
| Returns the scale of the object. More... | |
| void | linkTo (Object3d *parent) |
| Links the object to another object. More... | |
| void | unLink (void) |
| Removing the link to the parent object. More... | |
| void | setParent (Object3d *object) |
| Sets the parent object. More... | |
| void | addChild (Object3d *child) |
| Adds an Object3d to the list of children. More... | |
| bool | hasParent (void) |
| Checks if the object has a parent. More... | |
| unsigned int | getChildrenNumber (void) |
| Returns the number of children. More... | |
| Object3d * | getParent (void) |
| Returns the parent object. More... | |
| Object3d * | getChild (unsigned int id) |
| Returns the child with the given ID. More... | |
| unsigned long | getId () |
| Returns the ID of the object. More... | |
| void | setId (unsigned long id) |
| Changes the ID of the object. More... | |
| void | updateBehaviors (void) |
| Updates all behaviors. More... | |
| void | drawBehaviors (void) |
| Draws all behaviors. More... | |
| void | deleteBehavior (unsigned int id) |
| Deletes the Behavior with the given ID. More... | |
| void | invertBehavior (unsigned int idA, unsigned int idB) |
| Switches the IDs of the given behavior IDs. More... | |
| void | changeBehavior (unsigned int id, Behavior *behavior) |
| Replaces the behavior with the given ID with the given Behavior. More... | |
| void | addBehavior (Behavior *behavior) |
| Adds a new behavior to the list of behaviors. More... | |
| unsigned int | getBehaviorsNumber (void) |
| Returns the number of registered Behaviors. More... | |
| Behavior * | getBehavior (unsigned int id) |
| Returns the Behavior with the given ID. More... | |
| bool | needToUpdate (void) |
| Checks if the object needs to be updated. More... | |
| bool | isActive (void) |
| Checks if the object is active. More... | |
| void | setVisible (bool visible) |
| Changes if the object is visible or not. More... | |
| bool | isVisible (void) |
| Checks if the object is visible. More... | |
| void | setName (const char *name) |
| Change the object name. More... | |
| const char * | getName (void) |
| Returns the object name. More... | |
Additional Inherited Members | |
Protected Types inherited from Neo::Object3d | |
| typedef unordered_map< string, NeoVariable >::iterator | AttributeIterator |
| typedef map< string, NeoVariable >::iterator | AttributeIterator |
Protected Member Functions inherited from Neo::Object3d | |
| void | clearObject3d (void) |
Protected Attributes inherited from Neo::Object3d | |
| String | m_name |
| The name of the object. More... | |
| Vector3 | m_position |
| The positopm. More... | |
| Vector3 | m_scale |
| The scale. More... | |
| Quaternion | m_rotation |
| The rotation. More... | |
| Matrix4x4 | m_matrix |
| The matrix. More... | |
| vector< Object3d * > | m_children |
| List of children. More... | |
| unordered_map< string, NeoVariable > | m_attributes |
| map< string, NeoVariable > | m_attributes |
| bool | m_isActive |
| bool | m_isVisible |
| bool | m_needToUpdate |
| unsigned long | m_id |
| Object3d * | m_parent |
| vector< Behavior * > | m_behaviors |
| List of behaviors. More... | |
Represents a 3D mesh in the scene.
How to create a new OEntity
| Neo::OEntity::OEntity | ( | MeshRef * | meshRef | ) |
| Neo::OEntity::~OEntity | ( | void | ) |
| Neo::OEntity::OEntity | ( | const OEntity & | entity | ) |
| void Neo::OEntity::changeAnimation | ( | unsigned int | animationId | ) |
Changes the currently running animation to the one with the given ID.
| animationId | The animation ID. |
| PhysicsProperties* Neo::OEntity::createPhysicsProperties | ( | void | ) |
Enables physics and creates a new PhysicsProperties object.
| void Neo::OEntity::deletePhysicsProperties | ( | void | ) |
Disables physics and deletes the physics properties.
|
inline |
Sets if this object is a occluder or not.
An occluder is used by the renderer to do occlusion culling.
| value | A boolean value. |
| PhysicsProperties* Neo::OEntity::enablePhysics | ( | Scene * | scene | ) |
Sets up the OEntity to become a physical active object in the given scene.
| scene | The scene the object operates in. |
| PhysicsProperties* Neo::OEntity::enablePhysics | ( | ) |
Sets up the OEntity to become a physical active object in the current scene.
|
inline |
Enables or disables shadows for the OEntity.
| shadow | The enable value. |
|
inline |
Enables/Disable the wireframe of the entity.
| v | A boolean value. |
|
inline |
Returns the animation ID of the currently running animation.
|
inline |
Returns the animation speed of the currently running animation.
|
inline |
|
inline |
Returns the animation current frame in the currently running animation.
|
inline |
Retrieves the material with the given index.
| idx | The index to retrieve from. |
|
inline |
Returns the number of materials attached to this entity.
|
inline |
|
inline |
Returns the physics properties object.
|
inlinevirtual |
|
inline |
Checks if the OEntity has a shadow.
|
inline |
Checks if the entity has any transparent material.
|
inline |
Checks if the entity has the wireframe mode enabled.
| bool Neo::OEntity::isAnimationOver | ( | void | ) |
Checks if the currently running animation has finished.
| bool Neo::OEntity::isColliding | ( | OEntity * | entity | ) |
Checks if the object is colliding with the other object.
| entity | The other object. |
| bool Neo::OEntity::isColliding | ( | ) |
Checks if the object has any collision with any other object.
|
inline |
Checks if the OEntity is invisible.
|
inline |
Checks if the OEntity is an occluder.
|
virtual |
Changes if the object is being active or inactive.
| active | The new activity value. |
Reimplemented from Neo::Object3d.
|
inline |
Changes the animation speed.
| animationSpeed | The new animation speed. |
|
inline |
Changes the current frame in the current animation.
| currentFrame | The new frame to display. |
|
inline |
Changes if the OEntity is invisible or not.
This value is not used for culling.
| invisible | A boolean value. |
| void Neo::OEntity::setMeshRef | ( | MeshRef * | meshRef | ) |
|
virtual |
Updates the object.
Reimplemented from Neo::Object3d.
|
virtual |
Recalculates visibility for the given camera.
Used for culling.
| camera | The camera to check visibility for. |
Reimplemented from Neo::Object3d.