actionMoveを記述するときの Cocos2d -x チュートリアルのサンプル
CCFiniteTimeAction* actionMove =
CCMoveTo::create( (float)actualDuration,
ccp(0 - target->getContentSize().width/2, actualY) );
ポイント ccp(0 - target->getContentSize().width/2, actualY) を設定します。幅が 20 のターゲットがある場合、ポイント (-10、実際の Y) があり、半分のターゲットが表示されている必要がありますが、そうではありません。なんで?
初期目標位置
target->setPosition(
ccp(winSize.width + (target->getContentSize().width/2),
actualY) );
ここでも 2 で割りますが、それは理解できます (winSize.width + 任意の数値で、ターゲットが画面の外で見えなくなります)。