私は、X軸上を前後に移動する複数のオブジェクトを保持する矩形配列を持っています。 Libgdx:オブジェクトを重ならないでX軸上で移動するには?
Iterator<Rectangle> iter = array.iterator();
while (iter.hasNext()) {
Rectangle obj = iter.next();
array.get(i).x += speed * Gdx.graphics.getDeltaTime() ;
if (obj.x + obj.width > 800 || obj.x < 0) {
speed = -speed;
}
}
速度が大きくなっ
は、あなたが他のオブジェクトと重なって、配列内の最初のオブジェクトに気付いし、それらを離れて押し始めます。それを修正するには?は、基本的に、各オブジェクトは、
Rectangle obj = new Rectangle();
obj.x = xpos;
obj.y = ypos;
obj.width = width;
obj.height = height;
xpos += width + 4;
を有し、テクスチャ、画像、sqaure、rectange、三角形...を有し、各オブジェクトは、他とは異なるX位置xpos
で生成されます。彼らがするのは、x = 0から800までのX軸上を移動し続けます。
最初のオブジェクトが0になると、再び速度を上げて他のオブジェクトと重なり合い、時間が経つにつれてすべてのオブジェクトが重なり合って離れます。オブジェクト間の距離をどんな速度でも一定に保ちたい。
コードスニペットは理解しにくいので、質問テキストもあります。あなたが達成しようとしていることを明確にして、コードの重要な部分を投稿して、何が何であるかを推測する必要はありません。 –
@ p.streef better better? – Lynob
実際にはありません。まず、 "array"という名前をもう一度再利用するため、コードサンプルはコンパイルされません。あなたが使用するすべてのオブジェクトが何であるかを私たちが知っているように話します。私たちはまだ推測する必要があります。四角形とは何ですか?配列の内部には何がありますか? objとは何ですか? sidenoteとして。これはiOSやアンドロイドとは関係がないので、それらのタグは属していません。 –