SetState#
- ExportAnimation.SetState(name, stateJson)#
アニメーションの状態を設定します。
- Parameters:
name (
string
) -- AnimationClipの名前stateJson (
string
) -- 設定を記述したJSON文字列
説明#
引数の stateJson
は以下のキーを持つJSON文字列です。
キー |
型 |
説明 |
---|---|---|
|
数値 |
再生速度を指定します。デフォルト値は1です。0未満を指定した場合逆再生になります。 |
|
数値 |
ブレンドウェイトを指定します。デフォルト値は1です。0以上1以下の値を設定してください。 |
|
文字列 |
再生時間がキーフレーム範囲を超えた時の動作を指定します。指定できる値は後述します。 |
wrap_mode
で指定できる値は以下の通りです。
値 |
説明 |
---|---|
|
Timeがアニメーションの最後に達すると、クリップは自動的にプレイを停止し、Timeがクリップの始めにリセットされる |
|
Timeがアニメーションクリップの最後に達すると、Timeは最初に戻りループする |
|
Timeがアニメーションクリップの最後に達すると、Timeは始めと終わりの間をピンポンのように行き来する |
|
通常の再生が行われた後、最後のフレームのアニメーションが再生され続けることになり停止することはありません |
Sample#
-- AnimationをアタッチしたオブジェクトのExportAnimationを取得
local transform = vci.assets.GetTransform("AnimationObject")
local animation = transform.GetAnimation()
animation.PlayFromName("Anim1", true)
function update()
-- ボタン入力でアニメーションの速度を変更
if vci.me.GetButtonInput(1) then
animation.SetState("Anim1", '{"speed":0.1}')
end
if vci.me.GetButtonInput(2) then
animation.SetState("Anim1", '{"speed":1}')
end
end