2017-04-10 12 views
0

私は視差背景に働いていると私は、スクロールの背景を描画する最適な方法を知っていると思います:2倍のスプライトまたは2倍のスプライトを描く方がよいでしょうか?

は、私はちょうど次の秒に2つのスプライト1を書くべきとの両方の位置を更新または書き込みお互いに2倍の同じ絵が付いた単一のスプライト?

(私は最高のパーフを探しています)

おかげ

+0

なぜ両方の方法を試して結果を比較してみませんか? –

+0

多くの理由:私は学校のプロジェクトに取り組んでいます。私は時間が限られています。実際にテストする方法は分かりません。 – Orionss

+4

最も簡単なオプションを書いてください。それが十分速いかどうか確認してください。そうでない場合は、別のオプションを試してください。 – JeremyP

答えて

1

通常、これに答えるための最善の方法は、それを自分でテストすることですが、これはSFMLのためのFAQにあります:

https://www.sfml-dev.org/faq.php#graphics-xsprite SFMLに描画する最速の方法の

一つ、これは多くのオブジェクトを描画するための唯一の1描画呼び出しであるとして、それはVertexArrayだ使用するように実装を切り替えることです。

SFMLはここVertexArrayを使用する方法の例があります https://www.sfml-dev.org/tutorials/2.4/graphics-vertex-array.php

スプライトを描画する方法を簡単に見て、SFMLにおけるスプライト4 Vertsにを有し、各VERTは、頂点シェーダによって形質転換されなければなりませんOpenGLでしたがって、同じスプライトを描いている場合、8頂点を変形しています。サイズを2倍にすると、4つの節が描画されます。フラグメントシェーダのコストは比較的同じでなければなりません。

最後の1つのノートは、今すぐ後で最適化するようにしてください。