私はcocos2dでゲームを作成しています。
連続スクロールする視差レイヤーを作りたいです。たとえば、私のシナリオは次のとおりです。
バックグラウンドで移動する雲のカップル。右の画面の終わりに達するとすぐに、画面の左側から再び来るはずです。または視差を終わらせないような効果。何かアイデアはありますか?
私はcocos2dでゲームを作成しています。
連続スクロールする視差レイヤーを作りたいです。たとえば、私のシナリオは次のとおりです。
バックグラウンドで移動する雲のカップル。右の画面の終わりに達するとすぐに、画面の左側から再び来るはずです。または視差を終わらせないような効果。何かアイデアはありますか?
このために視差ノードを作成する必要はありません。
クラウドスプライトを作成します。
CCSprite *blackCloud;//set it's image and position it:
//code for init
blackCloud.position = ccp(580,300);
//call selector (don't unscheduled it)
[self schedule:@selector(blackCloudMovement) interval:1/30];
-(void)blackCloudMovement
{
if (blackCloud.position.x == -100)
{
[blackCloud setPosition:ccp(580,300)];
[blackCloud runAction:[CCMoveTo actionWithDuration:6 position:ccp(-100,300)]];
}
}
2D ゲームで視差を実現するには、レイヤーの「深さ」に応じて、カメラまたはメイン キャラクターを動かす速度の倍数でレイヤーを移動します。たとえば、プレイヤーが 1 単位の距離を移動すると、深さ 1 のレイヤーは 0.5 移動し、深さ 2 のレイヤーは 0.25 移動し、深さ 3 のレイヤーは 0.125 移動します。