This is a base object for any separate object on the track, which might also have a skeletal animation.
More...
|
| TrackObject (const XMLNode &xml_node, scene::ISceneNode *parent, ModelDefinitionLoader &model_def_loader, TrackObject *parent_library) |
| A track object: any additional object on the track.
|
|
| TrackObject (const core::vector3df &xyz, const core::vector3df &hpr, const core::vector3df &scale, const char *interaction, TrackObjectPresentation *presentation, bool is_dynamic, const PhysicalObject::Settings *physicsSettings) |
|
virtual | ~TrackObject () |
| Destructor.
|
|
virtual void | update (float dt) |
| This updates once per physics time step.
|
|
virtual void | updateGraphics (float dt) |
| This updates all only graphical elements.
|
|
virtual void | resetAfterRewind () |
| This reset all physical object moved by 3d animation back to current ticks.
|
|
void | move (const core::vector3df &xyz, const core::vector3df &hpr, const core::vector3df &scale, bool updateRigidBody, bool isAbsoluteCoord) |
|
virtual void | reset () |
| Initialises an object before a race starts.
|
|
const core::vector3df & | getPosition () const |
|
const core::vector3df | getAbsolutePosition () const |
|
const core::vector3df | getAbsoluteCenterPosition () const |
|
const core::vector3df & | getRotation () const |
|
const core::vector3df & | getScale () const |
|
bool | castRay (const btVector3 &from, const btVector3 &to, btVector3 *hit_point, const Material **material, btVector3 *normal, bool interpolate_normal) const |
| Does a raycast against the track object.
|
|
TrackObject * | getParentLibrary () |
|
virtual void | onWorldReady () |
| To finish object constructions.
|
|
virtual void | handleExplosion (const Vec3 &pos, bool directHit) |
| Called when an explosion happens.
|
|
void | setID (std::string obj_id) |
|
const std::string & | getLodGroup () const |
|
const std::string & | getType () const |
|
const std::string | getName () const |
|
const std::string | getID () const |
|
const std::string | getInteraction () const |
|
bool | isEnabled () const |
|
bool | isSoccerBall () const |
|
const PhysicalObject * | getPhysicalObject () const |
|
PhysicalObject * | getPhysicalObject () |
|
const core::vector3df | getInitXYZ () const |
|
const core::vector3df | getInitRotation () const |
|
const core::vector3df | getInitScale () const |
|
template<typename T > |
T * | getPresentation () |
|
template<typename T > |
const T * | getPresentation () const |
|
scene::IAnimatedMeshSceneNode * | getMesh () |
| Should only be used on mesh track objects.
|
|
TrackObjectPresentationParticles * | getParticleEmitter () |
| Should only be used on particle emitter track objects.
|
|
TrackObjectPresentationSound * | getSoundEmitter () |
| Should only be used on sound emitter track objects.
|
|
TrackObjectPresentationLight * | getLight () |
| Should only be used on sound emitter track objects.
|
|
ThreeDAnimation * | getIPOAnimator () |
| Should only be used on TrackObjects that use curve-based animation.
|
|
PhysicalObject * | getPhysics () |
| Get the physics representation of an object.
|
|
void | setEnabled (bool mode) |
| Hide or show the object.
|
|
void | moveTo (const Scripting::SimpleVec3 *pos, bool isAbsoluteCoord) |
|
void | resetEnabled () |
|
ThreeDAnimation * | getAnimator () |
|
const ThreeDAnimation * | getAnimator () const |
|
bool | hasAnimatorRecursively () const |
|
void | setPaused (bool mode) |
|
void | setInitiallyVisible (bool val) |
|
bool | isDriveable () const |
| Returns if a kart can drive on this object.
|
|
void | addMovableChild (TrackObject *child) |
| Used along the "extract movable nodes out of library objects" hack, used to still preserve the parent-child relationship.
|
|
void | addChild (TrackObject *child) |
|
std::vector< TrackObject * > & | getMovableChildren () |
|
std::vector< TrackObject * > & | getChildren () |
|
void | movePhysicalBodyToGraphicalNode (const core::vector3df &xyz, const core::vector3df &hpr) |
|
bool | joinToMainTrack () |
|
TrackObject * | cloneToChild () |
|
This is a base object for any separate object on the track, which might also have a skeletal animation.
This is used by objects that have an IPO animation, as well as physical objects.