ハロ~!新入社員のタケです!
今日はUnityのVR内でパーティクルを好きに出してみるのをやってみました!
コントローラのボタンを押すとパーティクルを放出できます!
コントローラのボタンを押すとパーティクルを放出できます!
今回は噴水のようなパーティクルをAボタンを押したら出てくるようにします。
手からこう…いろいろ出すって小さい頃の夢だったりしますよね…
手からこう…いろいろ出すって小さい頃の夢だったりしますよね…
まずは噴水パーティクルを適当に作ります。
コライダーに当たるとちょっと滑って消えるので、水を撒いているような見た目ですね。
このパーティクルをアバターの右手にくっつけ・・・るのではなく、OVRRigの右手の子につけます。
手のトラッキング位置はここが正しいのでアバター側には付けないようにしましょう。
手のトラッキング位置はここが正しいのでアバター側には付けないようにしましょう。
コントローラーのAボタンを押したらONとOFFを切り替えられるように以下のようなコードを書いてみました。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ParticleButton : MonoBehaviour
{
public ParticleSystem Particle;
bool isOn;
// Update is called once per frame
void Update()
{
ParticleInput();
}
void ParticleInput()
{
if (isOn == true)
{
if (OVRInput.GetDown(OVRInput.Button.One))
{
isOn = false;
Particle.Stop();
}
}
else
{
if (OVRInput.GetDown(OVRInput.Button.One))
{
isOn = true;
Particle.Play();
}
}
}
}
using System.Collections.Generic;
using UnityEngine;
public class ParticleButton : MonoBehaviour
{
public ParticleSystem Particle;
bool isOn;
// Update is called once per frame
void Update()
{
ParticleInput();
}
void ParticleInput()
{
if (isOn == true)
{
if (OVRInput.GetDown(OVRInput.Button.One))
{
isOn = false;
Particle.Stop();
}
}
else
{
if (OVRInput.GetDown(OVRInput.Button.One))
{
isOn = true;
Particle.Play();
}
}
}
}
注意したいのはパーティクルの場合、Play()メソッドを使用しないとパーティクルが再生されません。
Enable/DisableだとDisableにしたらもうでなくなってしまったりすることがあるので必ずPlayとStopを使います。
そしてAボタンを押すと…噴水が右手からでてきます!
もう一度押すとやめることができます。
これで周りのオブジェクトに水うちができますね!やった~!
…
手元のボタンでパーティクルが出せると結構面白いかなと思ってやってみました!
応用すると魔法を手で撃ったりだとかできそうですね!
--------------------------------------------------------------------------------
シェルパでは、3DCGや建築パースはもちろん
VRやARアプリの開発も行っています!
新しいことに興味のある方はきっと楽しめると思います!
新人研修も充実していて初心者でも3DCG経験者でも安心!
株式会社シェルパ
【福岡本社】
〒810-0042 福岡県福岡市中央区赤坂1丁目13-10赤坂有楽ビル7F
【東京オフィス】
〒101-0041 東京都千代田区神田須田町2丁目13-1YKS黒田ビル5F
TEL 092-717-6800 / FAX 092-717-6801
--------------------------------------------------------------------------------
コメント
コメントを投稿