diff --git a/cocos/2d/CCFastTMXLayer.cpp b/cocos/2d/CCFastTMXLayer.cpp index 08bca725b583..7841b2c6acb8 100644 --- a/cocos/2d/CCFastTMXLayer.cpp +++ b/cocos/2d/CCFastTMXLayer.cpp @@ -141,8 +141,8 @@ void TMXLayer::draw(Renderer *renderer, const Mat4& transform, uint32_t flags) { Size s = Director::getInstance()->getVisibleSize(); const Vec2 &anchor = getAnchorPoint(); - auto rect = Rect(Camera::getVisitingCamera()->getPositionX() - s.width * anchor.x, - Camera::getVisitingCamera()->getPositionY() - s.height * anchor.y, + auto rect = Rect(Camera::getVisitingCamera()->getPositionX() - s.width * (anchor.x == 0.0f ? 0.5f : anchor.x), + Camera::getVisitingCamera()->getPositionY() - s.height * (anchor.y == 0.0f ? 0.5f : anchor.y), s.width, s.height);