1

cnc シミュレータに SDL (pygame) を使用しています。最初は、ペインターのアルゴリズムを使用して画面の更新が行われます (すべてを後ろから前に描画するだけです) が、大きなサーフェスではすぐに遅くなります。

再描画を高速化するために、特定の瞬間に変化する画面の部分のみを更新しているため、数値がその値を変更すると、その表面と、衝突するすべての表面の対応するサブ表面のみが再描画されます。

現時点では、衝突面を検出するために画面上のすべてに対してクリッピング テストを行っていますが、画面上のすべての面のテストを回避するためのデータ構造やアルゴリズムが必要だと思います。

4

1 に答える 1

0

四分木を使用して、各サーフェスの境界を格納することを検討する必要があります。これにより、衝突面を見つける際の操作が最適化されます。

質問/回答が役立つ場合があります。

于 2013-01-17T20:51:41.277 に答える