爆発のエフェクトに関して

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
山崎

爆発のエフェクトに関して

#1

投稿記事 by 山崎 » 15年前

いつもお世話になっております、山崎です。
今回は、皆様が「爆発」を表現するときに、どんな手法を使っているのかお伺いに参りました。

ちょっと前の「DXライブラリで炎を再現するには」の内容と
少しかぶってしまっていたら申し訳ないですが…。

現在、DXライブラリで2Dアクションゲームを作っています。
そこでそろそろ「爆発」する技や武器を作ろうかと考えています。
「爆発の表現の良さはゲーム自体の良さが表れる」のような言葉を聞いたことがあります。
爆発はちょっと凝った迫力のあるものにできればなぁ、と考えています。

そこで皆様にご質問なのですが、
皆さんは2Dのゲームで爆発を表現するときに、どのような手法を使っているのでしょうか。
あるいは、もし爆発を表現するとしたらどんな方法を用いるでしょう。

また、その爆発を表現するときに、どのような素材をどのようなアルゴリズムで用いるのでしょうか。

なお私は、爆発は主に「ミサイルや爆弾の爆発」に用いたいと思っているのですが、
他にも「敵が消滅するときのエフェクト」などにも応用したいなと思っております。

皆様の爆発の表現方法を是非とも紹介して頂きたいと思います。

Justy

Re:爆発のエフェクトに関して

#2

投稿記事 by Justy » 15年前


> もし爆発を表現するとしたらどんな方法を用いるでしょう

 先のスレでも書きましたが爆発といってもどんなデザインの何が爆発するのか、
爆発の規模・長さなどとかによって、作り方とか素材などは変わってきます。

 なので一概にこれ、とはいえませんが、強いていうなら、
発生から収束までのテクスチャアニメを表示でいいのではないでしょうか。
 必要なら拡大させながらでもいいですね。

 もうちょっと本格的に作るなら同じく発生から収束までの小規模な爆発アニメを用意して、
爆発の中心から毎フレームランダムな方向に飛ばし(速度はランダムで)
フレームが進む毎に急速に減速させます。
 但し広範囲で爆発するなら飛ばす代わりにランダムで位置を決め、その場でアニメーションを
します。
(うまく素材を作ればアニメでなくてもいいのかも)

 で、少し遅れて煙も出せばそれっぽくなるのではないでしょうか。

山崎

Re:爆発のエフェクトに関して

#3

投稿記事 by 山崎 » 15年前

Justyさん
いつもご返信誠にありがとうございます。

アドバイスをもとに自分で爆発を作ってみました。
素材もまとめて添付ファイルとして圧縮してあります。

余計なコードも結構あるのでただ爆発を再現するだけにしては長いコードになってしまいました。
・爆発の中心から毎フレームランダムな方向に飛ばす
・飛ばす速度はランダム
・飛ばす速度は毎フレーム急速に減少
この3点を念頭に、自分で素材を作ってアニメーションさせてみました。
ただ、Justyさんの意図した通りかどうかはちょっと自信がないですが…。

煙の表現ですが、どう表現すればいいかすぐに思いつかなかったので
今回は割愛させて頂きました。

アドバイス頂きありがとうございました。

Justy

Re:爆発のエフェクトに関して

#4

投稿記事 by Justy » 15年前

 拝見しました。
 なるほど、こういう状況での爆発ならもう少し爆発範囲を狭くした方がいいですね。
 
 少しだけ手を入れたコードを添付しました。
 どう変えたのかと言いますと、移動をやめてその場で爆発するようにしたのと
爆発は連鎖しておこるものなので、一気に発生させないで時間をずらしながら
出すようにしてみました。

 爆発としては少しおとなしくなっていますが、テクスチャに合わせると
こんな感じでもいいんじゃないのかなと思います。

Justy

Re:爆発のエフェクトに関して

#5

投稿記事 by Justy » 15年前

 ちなみに元々想定していた爆発はこんなかんじでした(avi、要divx)。
 物は3Dですが、爆発部分のやってることは2Dでもあまり違いはないですし、
ネタ的には火と同じです。
(あ、素材の一部に龍神録のボスを借りてます)


 あとこちらに爆発系のテクスチャの作成をサポートするツールが紹介されていました。
 ご参考までに。

ツール―作成ソフト編―
http://tukiken.hp.infoseek.co.jp/muge/c ... ool_A.html

山崎

Re:爆発のエフェクトに関して

#6

投稿記事 by 山崎 » 15年前

Justyさん
ご返信誠にありがとうございます。
添付していただいたコードを実行してみました。
なるほど、画像を徐々に大きくしながらブレンドしていくんですね・・・。
それに、カウンタで1フレームずつ描画を遅らせているんですね。
これだけの差で、見え方は大きく違うものなのですか・・・。

テクスチャに爆発の仕方を合わせる、という感覚も
何となくですが少しわかったような気がします。
何の爆発でも殆ど一緒でもいいのでは、と思ってました。

添付していただいた動画ですが、
私の自宅の環境では再生できませんでしたので、
違う環境で後日拝見させてもらいますね。
わざわざありがとうございます。
また、ご紹介いただいたツールも是非とも参考にさせていただきますので!

本当に、いつも助けていただいてありがとうございます。

閉鎖

“C言語何でも質問掲示板” へ戻る