cocos2d-x中MoveTo和MoveBy的区别(可引申为To和By的区别,代码为lua)

本文介绍了cocos2d-x中MoveTo和MoveBy的区别,通过实例代码展示了它们在精灵移动上的不同效果:MoveTo执行绝对位置移动,而MoveBy则是相对于当前位置的相对移动。通过理解By和To的概念,有助于更好地掌握这两种动作的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        在了解cocos2d的过程中,看到了MoveTo和MoveBy两个动作 ,刚开始完全有点模糊两个动作所做的事情 ,cocos2d中国官网给出的解释如下:

By 和 To 的区别

        你能注意到,每一个动作都会有两个方法 By 和 To。两种方法方便你在不同的情况使用,By 算的是相对于节点对象的当前位置,To 算的是绝对位置,不考虑当前节点对象在哪。如果你想动作的表现是相对于 Node 当前位置的,就用 By,相对的想让动作的表现是按照坐标的绝对位置就用 To

        其实解释的也比较清楚了,奈何不能形成长久记忆,于是决定用代码来帮助自己记忆这两个动作的区别。

        首先在界面上创建一个精灵:

local sprite = CCSprite:create("ic_launcher.png")
sprite:move(display.cx,display.cy):addTo(self)

        效果如下图,看中间那个小绿人:

        然后,首先调用MoveTo:

local movePathTo = cc.MoveTo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值