このページは過去の情報となります。
新しいスクリプトリファレンスはこちらになります。
VCIでエフェクトを再生するのに使用します。
コンポーネントの使用方法は Effekseer (VCI対応) を確認してください。
ExportAssets | ||
---|---|---|
名前 | 説明 | バージョン |
GetEffekseerEmitter | VCI内のObjectのエフェクトを取得 | |
ExportEffekseer | ||
名前 | 説明 | バージョン |
EffectName | エフェクト名を取得 | |
Play | ループ再生 | |
PlayOneShot | 1回だけ再生 | |
Stop | 即座に停止 | |
StopImmediate(非推奨) | 即座に停止(非推奨) | |
StopRoot | 徐々に停止 | |
SetAllColor | エフェクトの色を変更 | |
SetTargetLocation | エフェクトの向かう位置を指定 | |
SetPause | 一時停止 | |
SetShow | エフェクトの表示・非表示を設定 | |
SetSpeed | エフェクトのスピードを変更 | |
SetLoop | エフェクトのループを設定 |
_ALL_
を含む関数は、他のクライアントでも実行され同期します。
全てのクライアントで同じ結果になってほしい場合は _ALL_
を含む関数を使用してください。
Play _ALL_Play
vci.assets.GetEffekseerEmitter(“SubItem”)
またはvci.assets.GetEffekseerEmitters(“SubItem”)
を実行してSubItemからeffectを変数へ格納します。引数はSubItemのgameobjectの名前をstringで指定します。
※コンポーネントやセットアップについてはEffekseer (VCI対応)を確認してください。
サンプル
-- エフェクトをアタッチしたゲームオブジェクト名を指定してエフェクトを格納します -- Effect という名前のゲームオブジェクトにアタッチされたエフェクトを変数 effect に格納する local effect = vci.assets.GetEffekseerEmitter("Effect") -- エフェクト名の表示 print(effect.EffectName) function onUse() -- 格納したエフェクトを1回再生する effect.PlayOneShot() end
実行結果
(SubItemをUseした時に1回だけエフェクトが再生されます)
EffectName string
EffekseerEmitterのEffectAssetに割り当てられているエフェクトのファイル名を取得します。
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") -- コンソールに再生するエフェクト名を表示する print("エフェクトを再生します : ".._Effect.EffectName) -- エフェクトの再生を開始する _Effect._ALL_Play()
実行結果
エフェクトを再生します : Effect (_Effectに格納されたエフェクトの再生が開始されます)
Play fun()
_ALL_Play fun()
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") function onUse() -- Useした時、エフェクトの再生を開始する _Effect._ALL_Play() print("エフェクトの再生を開始 : ".._Effect.EffectName) end function onUnuse() -- Unuseした時、エフェクトの再生を停止する _Effect._ALL_Stop() print("エフェクトの再生を停止 : ".._Effect.EffectName) end
実行結果
(Useをするとエフェクトの再生が開始します) (Unuseをするとエフェクトの再生が停止します)
PlayOneShot fun()
_ALL_PlayOneShot fun()
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItemLoop") function onUse() -- エフェクトを1回再生する。 _Effect._ALL_PlayOneShot() end
実行結果
(エフェクトが1回だけ再生されます)
Stop fun()
_ALL_Stop fun()
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") function onUse() -- Useした時、エフェクトの再生を開始する _Effect._ALL_Play() print("エフェクトの再生を開始 : ".._Effect.EffectName) end function onUnuse() -- Unuseした時、エフェクトの再生を即座に停止する _Effect._ALL_Stop() print("エフェクトの再生を停止 : ".._Effect.EffectName) end
実行結果
(Useをするとエフェクトの再生が開始します) (Unuseをするとエフェクトの再生が即座に停止します)
StopImmediate fun()
_ALL_StopImmediate fun()
StopRoot fun()
_ALL_StopRoot fun()
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") function onUse() -- Useした時、エフェクトの再生を開始する _Effect._ALL_Play() print("エフェクトの再生を開始 : ".._Effect.EffectName) end function onUnuse() -- Unuseした時、エフェクトの再生を徐々に停止する _Effect._ALL_StopRoot() print("エフェクトの再生を停止 : ".._Effect.EffectName) end
実行結果
(Useをするとエフェクトの再生が開始します) (Unuseをするとエフェクトの再生が徐々に停止します)
SetAllColor fun(color: Color)
_ALL_SetAllColor fun(color: Color)
第1引数:color (color)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") -- エフェクトの再生を開始する _Effect._ALL_Play() function onUse() -- ランダムで色を作成する local color = Color.__new(math.random(0,100) * 0.01, math.random(0,100) * 0.01, math.random(0,100) * 0.01, 1) _Effect.SetAllColor(color) end
実行結果
(Useをするとエフェクトのカラーがランダムで変更されます)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") -- エフェクトの再生を開始する _Effect._ALL_Play() function onUse() -- エフェクトを青に変更する _Effect.SetAllColor(Color.blue) end function onUnuse() -- エフェクトを赤に変更する _Effect.SetAllColor(Color.red) end
実行結果
(Useをするとエフェクトのカラーが青に変更します) (Unuseをするとエフェクトのカラーが赤に変更します)
SetTargetLocation fun(targetLocation: Vector3)
_ALL_SetTargetLocation fun(targetLocation: Vector3)
第1引数:targetLocation (Vector3)
実行結果
SetPause fun(paused: boolean)
_ALL_SetPause fun(paused: boolean)
第1引数:paused (bool)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItemLoop") -- エフェクトの再生を開始する _Effect._ALL_Play() function onUse() -- エフェクトを一時停止する _Effect._ALL_SetPause(true) end function onUnuse() -- エフェクトの一時停止を解除する _Effect._ALL_SetPause(false) end
実行結果
(アイテムを出すとエフェクトの再生がはじまります) (Useするとエフェクトが一時停止します) (Unuseするとエフェクトの一時停止が解除されます)
SetShow fun(shown: boolean)
_ALL_SetShow fun(shown: boolean)
第1引数:shown (bool)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItemLoop") -- エフェクトの再生を開始する _Effect._ALL_Play() function onUse() -- エフェクトを非表示にする _Effect._ALL_SetShow(false) end function onUnuse() -- エフェクトを表示する _Effect._ALL_SetShow(true) end
実行結果
(アイテムを出すとエフェクトの再生を開始します) (Useをするとエフェクトを非表示にします) (Unuseをするとエフェクトを表示します)
SetSpeed fun(speed: number)
_ALL_SetSpeed fun(speed: number)
第1引数:Speed(number)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") function onUse() -- 1.0 ~ 3.0 の間でランダムな値をspeedに代入する local speed = 0.1 * math.random(10, 30) -- エフェクトの再生スピードを変更する _Effect._ALL_SetSpeed(speed) -- エフェクトを1回だけ再生する _Effect.PlayOneShot() end
実行結果
(Useした時、再生速度1倍~3倍のランダムな速度でエフェクトを1回再生します)
SetLoop fun(isLoop: boolean)
_ALL_SetLoop fun(isLoop: boolean)
第1引数:isLoop (bool)
-- GameObjectにアタッチされてるエフェクトを格納する local _Effect = vci.assets.GetEffekseerEmitter("EffectItem") function onGrab() -- エフェクトをループ再生に設定する _Effect._ALL_SetLoop(true) -- エフェクトの再生を開始する _Effect._ALL_Play() end function onUse() -- エフェクトのloop再生を解除する _Effect._ALL_SetLoop(false) -- エフェクトの再生を開始する _Effect._ALL_Play() end
実行結果
(Grabをするとエフェクトがループ再生を開始します) (Useをすると1回だけエフェクトを再生し終了します)