エフェクトパーティクル

ページ名:エフェクトパーティクル

演出がゲームになければ、ユーザーは驚かない!!


ゲームを作る私たちは
「プログラムの~ができたからみて!」
「ここの透過の~が凄いでしょ!」
などプレイするユーザーのほどんどは

まtttttttttたく気にしません

ユーザーは見た目面白さを要求します。
客観的に見て、今作っているゲーム、これから作るゲームの見た目がどうなのか
一度振り返ってみましょう。


まずパーティクルとはどのようなものなのか。


このようにランダムに粒子をばらまいて、火、煙、雲などを表現するものです。
表現方法を応用したら無限大の可能性があると思います。


本題に入る前に、前回の三角関数の基本を見ていない人は、
ここを見てください。


エフェクトのパーティクルはとても簡単です。
なので「時間がないから見た目はいいかな、、、」は許されません。


それでは、さっそく作っていきましょう。
まず、このような処理をします。


SetEffect関数はエフェクトを生成する関数だと思ってください。
これに関しては、特に何も考えることなく実行することができます。

しかし、この式は2つ問題点があります。

  • エフェクトが1つしかないこと
  • エフェクトを大量発生させたときに四角になってしまうこと

まず1つめを解決しましょう。


こうなりますが、発生数フレーム後の実行結果はこうです。

これを解決するには前回の三角関数の基本の円を利用しましょう。


まず、角度を-3.14 ~ 3.14を取る式を作りましょう。


訂正:fAngle = float(rand()%314)/100.0f - float(rand()%314)/100.0f;(0~3.14から0~3.14を引く)
訂正理由:0になっちゃうよ!!
発生数フレーム後の実行結果がこちら

綺麗な円状に出ましたか?
以上がエフェクトパーティクルです。


しかし、エフェクトはこれだけでは終わりません。
発生後どう処理(色合い、透過、拡大縮小、重力...)するかでさらに表現の幅が広がります。

言いたいのは見た目に力を入れれば、損はない(むしろ得)ということです。

その中で、デザイン力有無 関わらずだれでも表現できるのはエフェクトなんです。


次「エフェクト応用


シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する
管理人
>> 返信元

この記事はDirectX9を利用しているのでDirectXをインストールして
#include <d3dx9.h>
をインクルードしてください。

返信
2019-12-17 18:33:24

名無し

D3DXVECTOR3が定義されない場合 どのようにすればよいでしょうか

返信
2019-12-15 15:12:23

NG表示方式

NGID一覧