hi dev team. I've just started using this great engine from about a
month. I was using version 3.4, and I just migrated to 3.5. and wen I
compiled my project, wasn't working well.
the problem: I have a class named Entity that extends from
ObjectContainer3D, this class also implements OnEnterFrame
functionallity. when User drags an instance of Entity, the
onEnterFrame method, handles the rotation of the object acroding the
mouse's x and y positions.
I use this method to rotate te object:
onEnterFrame(event:Event)
{
///some code that calculates dx and dy....
this.rotateTo(0,dx,dy);
}
now, this code worked just fine in 3.4, but in 3.5 just didin't, doing
some research on the source, I found some changes in the Object3D
class since 3.4, I saw this method: notifySceneTransformChange(); on
each set Rotation methods (rotationX, rotationY, rotationZ).
but I didn't saw that line in the rotateTo method. so I added and it
worked.
this is the rotateTo method, before and after the "fix".
before
public function rotateTo(ax:Number, ay:Number, az:Number):void
{
_rotationX = ax*toRADIANS;
_rotationY = ay*toRADIANS;
_rotationZ = az*toRADIANS;
_rotationDirty = false;
_transformDirty = true;
}
after
public function rotateTo(ax:Number, ay:Number, az:Number):void
{
_rotationX = ax*toRADIANS;
_rotationY = ay*toRADIANS;
_rotationZ = az*toRADIANS;
_rotationDirty = false;
_transformDirty = true;
notifySceneTransformChange();
}
was that a bug? or I'm just missing something?