最近在做项目的时候,使用了Moveby动作,以为Moveto和Moveby是一样的,从A点移动到B点,但是得到的结果根本不对。好吧原谅我学艺不精,但是还是要赶紧亡羊补牢一下,于是在网上查找二者之间的区别和详细的解释,但是找到的内容要么是觉得不对,要么就是模糊不清,始终没有解决我的疑惑。直到看到这么一个解释,Moveby:移动到相对的位置。大概就是这样,当时我就灵光一闪,原谅我孤陋寡闻了,这个相对位置是什么意思呢,好像有学到过的样子,于是赶紧去百度一下这个东西的定义。
百度上是这样给出的定义:某一事物与周围地理环境要素和条件的空间关系。看到这里估计好多人跟我一样恍然大悟了啊,by在英语中的解释就有依据的意思啊,原来是这个样子的,我们使用Moveby的时候,是从当精灵所处的坐标算作为坐标原点,也就是(0,0)点的,然后在移动到我们要移动的点上。
如下图中所示,其实二者之间最主要的区别就是B点坐标计算的原点不同。Moveby是以A点为原点,Moveto是以世界坐标中的0,0点为原点。
原文链接:https://www.f2er.com/cocos2dx/344872.html