diff --git a/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp b/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp index 1cb25da673..2ebaa31641 100644 --- a/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp +++ b/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp @@ -882,8 +882,9 @@ void CameraCullingDemo::update(float dt) void CameraCullingDemo::reachEndCallBack() { _cameraFirst->stopActionByTag(100); - auto inverse = (MoveTo*)_moveAction->reverse(); + auto inverse = MoveTo::create(4.f, Vec2(-_cameraFirst->getPositionX(), 0)); inverse->retain(); + _moveAction->release(); _moveAction = inverse; auto rot = RotateBy::create(1.f, Vec3(0.f, 180.f, 0.f)); @@ -902,7 +903,7 @@ void CameraCullingDemo::switchViewCallback(Ref* sender) _cameraFirst->setCameraFlag(CameraFlag::USER8); _cameraFirst->setPosition3D(Vec3(-100,0,0)); _cameraFirst->lookAt(Vec3(1000,0,0)); - _moveAction = MoveTo::create(4.f, Vec2(100, 0)); + _moveAction = MoveTo::create(4.f, Vec2(-_cameraFirst->getPositionX(), 0)); _moveAction->retain(); auto seq = Sequence::create(_moveAction, CallFunc::create(CC_CALLBACK_0(CameraCullingDemo::reachEndCallBack, this)), nullptr); seq->setTag(100);