CCMoveByはCCMoveToを継承し、deltaPosition(フレームごとのポジション移動量?)が指定されている。
deltaはどうやら、frameの差分の様子。
参考1 (どこかの質疑応答)
参考2「Unity におけるフレームと Update」
00134 @interface CCMoveTo : CCIntervalAction <NSCopying> 00135 { 00136 CGPoint endPosition; 00137 CGPoint startPosition; 00138 CGPoint delta; 00139 } 00141 +(id) actionWithDuration:(ccTime)duration position:(CGPoint)position; 00143 -(id) initWithDuration:(ccTime)duration position:(CGPoint)position; 00144 @end 00145 00150 @interface CCMoveBy : CCMoveTo <NSCopying> 00151 { 00152 } 00154 +(id) actionWithDuration: (ccTime)duration position:(CGPoint)deltaPosition; 00156 -(id) initWithDuration: (ccTime)duration position:(CGPoint)deltaPosition; 00157 @end
CCMoveToは、特定地点(絶対位置)への移動。一度移動したら、そこで終了。
CCMoveByは、現在地からの相対的移動。絶対位置の指定ではなく。どんどん移動できる。現在地から、次の地点へ、同量の距離を。
ということらしい。
どんどんSpriteを動かす場合には、CCMoveByが便利。
0 件のコメント:
コメントを投稿