Edited at

AR ( Vuforia ) で Effekseer

こんにちは。サイドスポイラーこと、ねもこです。klis16のおばさんです。

この記事は AmusementCreators AdventCalendar2018 の7日目の記事でございます。

※初心者記事なのでご注意ください


なにをするの?

ARマーカにエフェクトを描画するアプリを作りたかったので、


  • Unity 2018

  • Vuforia (AR)

  • Effekseer (エフェクト)

でやってみます。


各種コンポーネントの導入


Vuforia

この記事を参考にさせていただきました。

【Unity】Vuforiaを使ってARを表示する手順(2018年版)

古いバージョンのエディタだとこの通りでないので、まずバージョンアップしましょう。"Vuforia" にチェックするのをお忘れなく。


Effekseer

公式に全部書いてあります。

Effekseer UnityPlugin Manual

エミッタコンポーネントは Vuforia の ImageTarget の子として配置します。

ヒエラルキーはこんな感じ。

ARCamera

ImageTarget

--EffekseerEmitter


苦戦したところ

エミッタから再生はできたのですが、スクリプトから再生するのに苦戦しました。

EffekseerSystem.PlayEffect("effect", transform.position);

だと、再生はされるのですが、座標系が違うのでARにならない。

座標周りで脳みそを使いたくなかった(使ったところでわからない)ので、エミッタにアタッチされているEffekseerEmitter.csのなかのPlay()で再生することにしました。

this.effekseerEmitter = GameObject.Find("ImageTarget/EffekseerEmitter");

this.effekseerEmitter.GetComponent<EffekseerEmitter>().Play();`

GameObject.GetComponent<T>()でそのGameObjectが持つコンポーネントの中の色々にアクセスできるらしいです。


できた

demo.gif

わーい!できたー!!(ここまで何一つ理解していない)

これは .apk を生成してAndroid 実機で動作確認した様子です。

(マーカださいとか言わないこと!)

天才が多い分野は脳細胞1ニューロンも使わなくてもなんかできちゃうからいいっすね!

あとは作りこむだけです!

※エフェクトは投稿エフェクトページにございました BrokenDesk 様のものを使用させていただきました


p.s.

雙峰祭とか、PCゲームの試遊だけでなく色んなタイプのゲームを提供できたら面白そうだなと思うんですけど、後輩諸君いかがですか?(他力本願)