簡易なパーティクル表示

学内ネタからなのですが、2061:Maxオデッセイで取り上げているパーティクルの描画(p.848-850)は、球体を用いているので、結構処理が重いようです。球体は多数のポリゴンから成っているからですね。従って、処理能力(特にGPUパワー)によっては、数十個のパーティクルを描こうとするとフレーム・レートが落ちてしまいます。

そこで、できるだけ処理負荷が少ないような簡易なパーティクル表示に変更してみました。このパッチでは単純な点でパーティクルを描きます。実際の処理としては、レンダーの描画方法(primitiveアトリビュート)をpointsにして、各点の座標(ジオメトリー・データ)を納めたマトリックスをレンダーに送るだけです。これは、パーティクル関係のヘルプ・パッチで使われる表示方法と同じですね。

06-13-01-simple-1_m.gif

この方法の欠点は、一定の大きさの点(正方形)で描画するので、奥行きによって点の大きさが変わらず、奥行き感の表現に欠けることです。とは言え、処理負荷はかなり低くなりますので、G4クラスでも2〜3万個のパーティクルを使ってもヘッチャラですね。この場合、emitも大きな値にしなければ意味がないですけどね。

06-13-01-simple-2.gif

ついでに、パラメータの設定をひとつのサブ・パッチにまとめ、jit.pwindowではなくjit.windowで表示するようにしています。パッチのダウンロードはこちらからどうぞ。06-13-01-simplepat.zip

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA