public virtual void Update()
{
if ( this.parentNode != null )
{
if ( !this.localTransformDirty
&& this.parentNode.DerivedOrientation == this.lastParentOrientation
&& this.parentNode.DerivedPosition == this.lastParentPosition )
{
}
else
{
// we are out of date with the scene node we are attached to
this.lastParentOrientation = this.parentNode.DerivedOrientation;
this.lastParentPosition = this.parentNode.DerivedPosition;
this.derivedDirection = this.lastParentOrientation * this.direction;
this.derivedPosition = ( this.lastParentOrientation * this.position ) + this.lastParentPosition;
}
}
else
{
this.derivedPosition = this.position;
this.derivedDirection = this.direction;
}
this.localTransformDirty = false;
}