Pygameでモーションブラー
で、早速モーションブラーを作成。
モーションブラーの原理は、
現在の描画内容をテンポラリに取っておいて、
次回描画時にテンポラリをアルファブレンドする、
だけです。
Pygameを使うとこんな感じ。
// ゲームループ while(True): // 一連の描画処理 … screen.blit(tmpSurface, (0, 0)) // スクリーンに描画 tmpSurface.blit(screen, (0, 0)) // テンポラリに確保 tmpSurface.set_alpha(192) // アルファ値を設定
アルファブレンドが使えれば、なんにでも使えますね。
ただ、使いどころが結構難しいかもしれません。
kenmoがなんとなく思いついた感じでは、、
- シーン切り替え(戦闘シーンに突入するときなどに回転させながら)
- 必殺技発動
とか。
…ありがちですが、、(´Д`;
なんというか、モーションブラーは、やりすぎるとくどいので、
アクションゲームとかだと、
残像を残す(前フレームの座標を保持しておいてアルファブレンドする)
ほうがいいですね。
あと、
- 画面全体に動きがないと意味がない
- 小さいオブジェクトにモーションブラーがかかっていても目立たない
ということがあるので、そういった場合は、モーションブラーは避けたほうがいいかもしれません。