パーティクル、ハロー、フォグ (2/5)
作成:2014-11-01 09:20
更新:2014-11-01 09:20
更新:2014-11-01 09:20
■ParticleSystemコンポーネントの操作
では、配置したパーティクルシステムを利用する処理を作成してみましょう。下のリスト欄に、ごく簡単なサンプルコードを挙げておきます。これをJavaScriptのスクリプトファイルに記述し、シーンを実行してみてください。
これは、マウスボタンでパーティクルシステムの実行を行う簡単な例です。左ボタンを押し下げるとパーティクルシステムがスタートし、パーティクルが放出されます。ボタンを離すと放出が止まります。
ここでは、まずParticle Systemのゲームオブジェクトを取り出しています。これは以下のようになりますね。そして、ここからパーティクルシステムのためのオブジェクトを取り出していきます。
●ParticleSystemコンポーネント
パーティクルシステムは、ゲームオブジェクト内に「ParticleSystem」という名前のコンポーネントとして組み込まれます。ゲームオブジェクトは、さまざまなコンポーネントが組み込まれています。ParticleSystemが、パーティクルシステムのためのコンポーネントで、パーティクルシステムの機能はすべてこの中にあるのです。そこで、まずこのコンポーネントを取り出す必要があります。
GameObjectオブジェクトの「GetComponent」というメソッドを使います。これは引数にコンポーネントの名前を指定すると、そのオブジェクトを取り出す働きがあります。これでParticleSystemオブジェクトを変数に取得できました。後は、このインスタンスからメソッドを呼び出すだけです。
●再生と停止
パーティクルの放出開始と停止は、ParticleSystemのメソッドを使って簡単に行うことができます。以下のような具合です。
・放出開始
・放出停止
とりあえず、この2つだけ覚えておけば、必要に応じてパーティクルを出したり止めたりできるようになります。意外と簡単でしょう?
これは、マウスボタンでパーティクルシステムの実行を行う簡単な例です。左ボタンを押し下げるとパーティクルシステムがスタートし、パーティクルが放出されます。ボタンを離すと放出が止まります。
ここでは、まず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つだけ覚えておけば、必要に応じてパーティクルを出したり止めたりできるようになります。意外と簡単でしょう?
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
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プログラミング入門」に戻る