| 
    Neo
    0.5.0
    
   Developer Documentation 
   | 
 
Represents a 3D light in the scene. More...
#include <OLight.h>
 Inheritance diagram for Neo::OLight:Public Member Functions | |
| OLight (void) | |
| ~OLight (void) | |
| OLight (const OLight &light) | |
| virtual int | getType (void) | 
| Returns the type of the object.  More... | |
| void | setLightType (LIGHT_TYPES lightType) | 
| Changes the light type the OLight has.  More... | |
| LIGHT_TYPES | getLightType (void) | 
| Returns the light type.  More... | |
| void | castShadow (bool shadow) | 
| Change if the light should cast shadows.  More... | |
| void | setShadowQuality (unsigned int shadowQuality) | 
| Changes the shadow quality.  More... | |
| void | setShadowBias (float shadowBias) | 
| Changes the shadow bias.  More... | |
| void | setShadowBlur (float shadowBlur) | 
| Changes the shadow blur factor..  More... | |
| bool | isCastingShadow (void) | 
| Checks if the OLight is casting shadows.  More... | |
| unsigned int | getShadowQuality (void) | 
| Returns the shadow quality of the OLight.  More... | |
| float | getShadowBias (void) | 
| Returns the shadow bias.  More... | |
| float | getShadowBlur (void) | 
| Returns the shadow blur.  More... | |
| void | setRadius (float radius) | 
| Changes the light radius in which the OLight object takes effect.  More... | |
| float | getRadius (void) | 
| Returns the light radius.  More... | |
| void | setIntensity (float intensity) | 
| Changes the light intensity.  More... | |
| void | setColor (const Vector3 &color) | 
| Changes the light color.  More... | |
| float | getIntensity (void) | 
| Returns the light intensity.  More... | |
| Vector3 | getColor (void) const | 
| Returns the light color.  More... | |
| Vector3 | getFinalColor (void) const | 
| Returns the light color how it appears with the chosen intensity.  More... | |
| void | setSpotAngle (float angle) | 
| Changes the spot angle.  More... | |
| void | setSpotExponent (float exponent) | 
| Changes the exponent value.  More... | |
| float | getSpotAngle (void) | 
| Returns the spot angle.  More... | |
| float | getSpotExponent (void) | 
| Returns the spot exponent.  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... | |
| virtual void | setActive (bool active) | 
| Changes if the object is being active or inactive.  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... | |
| virtual void | update (void) | 
| Updates the object.  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 light in the scene.
How to create a new OLight:
| Neo::OLight::OLight | ( | void | ) | 
| Neo::OLight::~OLight | ( | void | ) | 
| Neo::OLight::OLight | ( | const OLight & | light | ) | 
      
  | 
  inline | 
Change if the light should cast shadows.
| shadow | The new value. | 
      
  | 
  inline | 
Returns the light color.
      
  | 
  inline | 
Returns the light color how it appears with the chosen intensity.
      
  | 
  inline | 
Returns the light intensity.
      
  | 
  inline | 
Returns the light type.
      
  | 
  inline | 
Returns the light radius.
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Returns the spot angle.
      
  | 
  inline | 
Returns the spot exponent.
      
  | 
  inlinevirtual | 
      
  | 
  inline | 
Checks if the OLight is casting shadows.
      
  | 
  inline | 
Changes the light color.
| color | The new light color. | 
      
  | 
  inline | 
Changes the light intensity.
| intensity | The intensity. | 
      
  | 
  inline | 
Changes the light type the OLight has.
| lightType | The new light type. | 
      
  | 
  inline | 
Changes the light radius in which the OLight object takes effect.
| radius | The radius. | 
      
  | 
  inline | 
Changes the shadow bias.
The shadow bias controls the offset that the shadow uses to prevent self shadowing of an object.
| shadowBias | The new shadow bias value. | 
      
  | 
  inline | 
Changes the shadow blur factor..
| shadowBlur | The new shadow blur value. | 
      
  | 
  inline | 
Changes the shadow quality.
Powers of two like 1024 or 4096 are to be preferred.
| shadowQuality | The new shadow quality. | 
      
  | 
  inline | 
Changes the spot angle.
Values are clamped between 0.0f and 180.0f.
| angle | The angle in degrees. | 
      
  | 
  inline | 
Changes the exponent value.
| exponent | The new exponent value. | 
      
  | 
  virtual | 
Recalculates visibility for the given camera.
Used for culling.
| camera | The camera to check visibility for. | 
Reimplemented from Neo::Object3d.