今天突发奇想。想到这个情况:给定一个位置,这个位置是不断运动的,怎样将精灵移动到这个运动的位置上去,不出现偏差?百思不得其解,所以来请教各位打打~
我也在想这个问题,位置的话可以重写一个update方法得到,移动到这个位置就不知道怎么办。
这个不断移动的位置可以看成是一个node,给node设置坐标就好,让精灵移动到这个位置上就是获得node的坐标然后设置精灵的坐标。不知道你说的是不是这个意思。
— Begin quote from ____
引用第2楼小塔于2014-08-25 14:52发表的 回 楼主(kyleljj) 的帖子 :
这个不断移动的位置可以看成是一个node,给node设置坐标就好,让精灵移动到这个位置上就是获得node的坐标然后设置精灵的坐标。不知道你说的是不是这个意思。 http://www.cocoachina.com/bbs/job.php?action=topost&tid=225580&pid=1037776
— End quote
精灵在移动的过程中,位置也在移动的,那么第一次获取的坐标在精灵到达的时候,实际上原来的位置已经移走了。。。估摸着node的位置也要实时获取
如果要使用action怎么办,我用贝塞尔曲线做抛物线运动。可以实时更新终点坐标吗?或者有没有其他抛物线实现方法
恩,node的位置应该是实时获取的,不过没有去试验,你可以试验一下。
直接设置位置不就可以了吗?
— Begin quote from ____
引用第6楼hezijian于2014-08-25 15:56发表的 :
直接设置位置不就可以了吗? http://www.cocoachina.com/bbs/job.php?action=topost&tid=225580&pid=1037860
— End quote
位置也在移动中,直接设置时不能运动到最初指定的那个位置上去的
直接设置位置是不可以的,你设置位置之后引擎在下一帧才会去更新坐标这就会导致坐标偏差。
真心没太明白你的确切意思, 你是要做:
变动的点显示在哪, 精灵就显示在哪;
还是说,
精灵会跟随变动的点移动, 当点停下后, 精灵最后会跟点重合?
如果是一, 在一个循环中, 保证, 先设置变动点坐标, 绘制变动点, 获取变动点坐标, 设置精灵坐标, 绘制精灵
如果是2, 自己写一个moveto 实现, 这个实现的target point 是变动的,
但是对于每次在update的时候计算本次移动的时候的target point都是已知并确定的点