0

数日前、「すべてを再描画せずに 2 番目のビューポートに表示する方法」について質問しました。答えの 1 つは、「renderTarget2D を使用して Rectangle ソースをスプライトバッチに与える必要がある」というものでした。このソリューションはMatrixカメラなしです。

spriteBatch.Draw(
    TheRenderTarget2D, 
    TheViewportTarget.Bounds, 
    TheRectangleSourceFromTheRenderTarget2D, 
    Color.White);

それは非常にうまく機能しますが、レンダリングの品質が大幅に低下します (ゲームのズームやその他の理由により)。

camera.transform()問題は、ズームを使用して、品質を維持するために2番目のビューポートに描画する方法です。

お役に立てれば幸いです。

4

1 に答える 1

1

それでおしまい :

    Graphics.Device = viewport1;
    spriteBatch.Begin(,,,,,Camera1.transformation);
    DrawScene();
    spriteBatch.End();

    Graphics.Device = viewport2;
    spriteBatch.Begin(,,,,,Camera2.transformation);
    DrawScene();
    spriteBatch.End();
于 2013-02-01T12:20:59.960 に答える