libro
www.tuyano.com
JavaScriptではじめるUnityプログラミング入門

パーティクル、ハロー、フォグ (2/5)

作成:2014-11-01 09:20
更新:2014-11-01 09:20

■ParticleSystemコンポーネントの操作

では、配置したパーティクルシステムを利用する処理を作成してみましょう。下のリスト欄に、ごく簡単なサンプルコードを挙げておきます。これをJavaScriptのスクリプトファイルに記述し、シーンを実行してみてください。

これは、マウスボタンでパーティクルシステムの実行を行う簡単な例です。左ボタンを押し下げるとパーティクルシステムがスタートし、パーティクルが放出されます。ボタンを離すと放出が止まります。

ここでは、まずParticle Systemのゲームオブジェクトを取り出しています。これは以下のようになりますね。そして、ここからパーティクルシステムのためのオブジェクトを取り出していきます。
var obj:GameObject = GameObject.Find('Particle System');

●ParticleSystemコンポーネント
パーティクルシステムは、ゲームオブジェクト内に「ParticleSystem」という名前のコンポーネントとして組み込まれます。ゲームオブジェクトは、さまざまなコンポーネントが組み込まれています。ParticleSystemが、パーティクルシステムのためのコンポーネントで、パーティクルシステムの機能はすべてこの中にあるのです。そこで、まずこのコンポーネントを取り出す必要があります。
var 変数:ParticleSystem =《GameObject》.GetComponent('ParticleSystem');

GameObjectオブジェクトの「GetComponent」というメソッドを使います。これは引数にコンポーネントの名前を指定すると、そのオブジェクトを取り出す働きがあります。これでParticleSystemオブジェクトを変数に取得できました。後は、このインスタンスからメソッドを呼び出すだけです。

●再生と停止
パーティクルの放出開始と停止は、ParticleSystemのメソッドを使って簡単に行うことができます。以下のような具合です。

・放出開始
《ParticleSystem》.Play();

・放出停止
《ParticleSystem》.Stop();

とりあえず、この2つだけ覚えておけば、必要に応じてパーティクルを出したり止めたりできるようになります。意外と簡単でしょう?

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

#pragma strict

function Start () {} // 特に使わない

function Update () {
    var obj:GameObject = GameObject.Find('Particle System');
    var particle:ParticleSystem = obj.GetComponent('ParticleSystem');
    if (Input.GetMouseButtonDown(0)){
        particle.Play();
    }
    if (Input.GetMouseButtonUp(0)){
        particle.Stop();
    }
}

※関連コンテンツ

「JavaScriptではじめるUnityプログラミング入門」に戻る