2017-09-30 15 views
0

私はレンダリングメソッドで描画するスプライトを持っています。また、描画中にスクリーン上の位置(xとy)を設定します。x軸(libgdx)に沿ってスプライトデバイスに依存しない方法

(TRYと協力し、以下のキャッチし、それがデバイスに依存しないだろうしない)方法が私のために次のようになりレンダリング:私はXを設定し、クラスのconsructorで

@Override 
public void render(float delta) { 
    game.batch.begin(); 
    game.batch.draw(backgroundgame, 0, 0, Gdx.graphics.getWidth(), 
      Gdx.graphics.getHeight()); 
    game.batch.draw(car.sprite, xcar, 
      (ycar)); 
    game.batch.end(); 
    /*try { 
     xcar++; 
     this.wait(50); 
     game.batch.end(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    }*/ 
} 

とスプライトのy位置。

x軸に依存しないスプライトをどのように動かすことができますか?私はレンダリングメソッドでそれを行うことはできますか、スプライトのための新しいスレッドが必要ですか?

ご協力いただきありがとうございます。

+0

ようこそstackoverflow。注意深くhttps://stackoverflow.com/help/how-to-askを読んで、それに応じて質問を更新してください。 – Xoppa

答えて

0

フレームごとに、あなたはx軸に沿ってスプライトを移動したい場合は、ん:

sprite.setposition(lastx + 1*Gdx.graphics.getdeltatime(), some y) 
lastx = sprite.getX() 

そして( batch.drawをしない)の代わりにsprite.draw(バッチ)を使用します。 Batch.drawはスプライトを位置なしのダムテクスチャとして使用します。 sprite.drawを使うと、すべての位置とサイズの描画ができます。

ゲームでスレッディングをするのは悪いことです。絶対に必要がない限り、スレッドを使用しないでください。 I. E.何かをロードする

ゲームのすべてが各フレーム(メインスレッドを使用)で実行されます。そうしないと、他のスレッドと同期の問題が発生し、混乱することになります。

フレームあたりのすべてのコマンドを処理する時間が顕著になるため、ハードウェアで実行できない場合は、ゲームでfpsが低下して遅れることがあります。

+0

ありがとうございました! –

+0

質問を正しいawnserとしてマークできますか?小さなチェックマークをクリックすると緑色に変わります。 –

関連する問題