私はゲームをコーディングしています。私はの背景をからまで繰り返して、を何度も繰り返しています。水平タイリングの背景
これは私がカメラのXが正の場合、カメラのXは 負の第三のとき最初のdrawImageは、画像を描画
xOffset = (int) (camera.getX() % WIDTH);
g.drawImage(bgInv, xOffset - WIDTH, 0, WIDTH, HEIGHT, null);
g.translate(xOffset, 0);
g.drawImage(bg, 0, 0, WIDTH, HEIGHT, null);
g.translate(-xOffset, 0);
g.drawImage(bgInv, xOffset + WIDTH, 0, WIDTH, HEIGHT, null);
を使用しているコードです。
- BGが
- bgInvは、私が動いてるとxOffsetプロパティが0にWIDTHからなるとき、それはの影響を与えるということである
問題反転バックグラウンドで通常の背景です「テレポート」。
コンソールはxOffsetプロパティ
私はxOffsetプロパティを取得するためにモジュロを使用していますが、私はより良い方法を把握していないので、それは知っているが出力されて ...
ありがとうございます。
剰余は負の数を示します。 'if(xOffset <0)xOffset + = WIDTH;'を2行目として試してみてください。 – Marco13
@ Marco13 xOffsetsは否定的なことはありませんが、ur if文を使用してそれをwhileに変更しようとしましたが、まだ動作しません – L3n
この投稿が役立つかもしれません:http://stackoverflow.com/questions/16138363/infinite-background -for-game/16138735#16138735 – camickr