2013-07-27 15 views
7

この質問は簡単で簡単です。 LibGDXで分割スクリーンエフェクトを作成するにはどうすればいいですか?私が2台のカメラを作成すると、どこかにあるものを描き、次のカメラを上書きして前のカメラを上書きします。私は複数の画面を使用すると考えましたが、サイズ変更とウィンドウ内での再配置をサポートしていないため、動作しないように見えます。私はまた、ShapeRendererと同様にBox2DDebugRendererも使用していますので、分割スクリーンの限界でそれらをカットする必要もあります。 LibGDXサイトには何も書かれていないようです。LibGDXの分割画面

答えて

18

#libgdx IRCのビットを尋ねたところ、Gdx.gl.glViewport(int x, int y, int width, int height)が私に指摘されました。だからあなたは1台のカメラが必要です。画面の左側のビューポートを設定してから描画コマンドを実行し、画面の右側のビューポートを設定してもう一度描画します。このように:

@Override 
public void render(float delta) 
{ 
    /*Wipe Screen to black*/ 
    Gdx.gl.glClearColor(Color.BLACK); 
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); 

    /*Left Half*/ 
    Gdx.gl.glViewport(0,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()); 
    //Set up camera with viewport in mind 
    draw(delta); 

    /*Right Half*/ 
    Gdx.gl.glViewport(Gdx.graphics.getWidth()/2,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()); 
    //Set up camera again with other viewport in mind 
    draw(delta); 
} 

カメラ全体が画面の代わりに望むように配置され、変換されるようにカメラを設定するだけです。 2番目のカメラを使用する可能性もあります。

関連する問題