回答:
各レイヤーの位置を、カメラからの「距離」で割ります。
たとえば、次のようにカメラの位置を表すための変数のカップルを作成し、cameraX
そしてcameraY
。これらをキャラクターの位置と等しくなるように設定し、おそらく移動方向にもう少し追加します。
メインレイヤーは
mainLayer.x = -cameraX;
中間層のようなもの
middleLayer.x = -cameraX * 0.5;
そして遠い層で
farLayer.x = -cameraX * 0.2;
必要に応じて定数を変更します。
これを行う最善の方法は、スプライトを3Dでビルボード表示されたクワッドとして単純にレンダリングすることです。「ゲームプレイ」はすべて1つの平面で発生しますが、背景と前景は3D空間により近くまたはより遠くに配置できます。そうすれば、特別なコーディングをしなくても視差効果が処理されます:-)