この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
vci:sample:onuse:no3 [2023/05/09 12:44] pastatto 統合リンク修正 |
vci:sample:onuse:no3 [2023/10/11 17:48] (現在) pastatto 概要を編集 |
||
|---|---|---|---|
| ライン 1: | ライン 1: | ||
| ====== アイテムを使ったときにアニメーションを再生する ====== | ====== アイテムを使ったときにアニメーションを再生する ====== | ||
| + | [[https://developer.virtualcast.jp/vci-docs/api/events/onUse.html | onUse]]と[[https://developer.virtualcast.jp/vci-docs/api/classes/ExportAnimation/Play.html|Play]]を使用して、アニメーションを再生するサンプルです。\\ | ||
| + | 参考:[[vci/sample/animation/tutorial2]] | ||
| - | > ※この記事は「UniVCI-0.15」時点のものです。 | ||
| === サンプルデータ === | === サンプルデータ === | ||
| https://virtualcast.jp/products/9bd2f446cc30815fd18fa7e66b7cd62e0b8dc43cb666d435e5474ab224888bfe | https://virtualcast.jp/products/9bd2f446cc30815fd18fa7e66b7cd62e0b8dc43cb666d435e5474ab224888bfe | ||
| + | |||
| + | {{ :vci:sample:animation:useanimation_vci.zip |}} | ||
| ===== 手順 ===== | ===== 手順 ===== | ||
| ライン 14: | ライン 17: | ||
| \\ | \\ | ||
| GameObjectの名前は「UseAnimation_VCI」としていますが、任意の名前でも可です。\\ | GameObjectの名前は「UseAnimation_VCI」としていますが、任意の名前でも可です。\\ | ||
| - | Cubeの名前は「**Cube**」と指定します。\\ | + | 「**VCI Object**」コンポーネントをアタッチします。 |
| - | Cubeは地面に貫通しないようY座標を1.0に指定します。 | + | |
| + | Cubeの名前はここでは「**Cube**」と指定します。\\ | ||
| + | 地面に貫通しないようY座標を1.0に指定します。\\ | ||
| + | 「**VCI SubItem**」コンポーネントをアタッチします。\\ | ||
| + | この時、「Rigitbody」コンポーネントもアタッチされます。\\ | ||
| + | 今回は重力を使用しないため、**「Use Gravity」をOFF、「Is Kinematic」をON**にします。 | ||
| + | |||
| + | 2. Cubeに再生用の「**Animation**」コンポーネントをアタッチし、\\ | ||
| + | アニメーションを1つ作成します。\\ | ||
| + | 詳細:[[vci/sample/animation/tutorial2]] | ||
| - | 2. Cubeに再生用の「**Animator**」コンポーネントをアタッチし、\\ | ||
| - | 「**Animation**」を作成し、Animatorのstateへ関連付けます。\\ | ||
| - | Animationのファイル名は「**UseAnimationAction**」とします。\\ | ||
| ※Animationの操作はUnityのマニュアルを参照してください。\\ | ※Animationの操作はUnityのマニュアルを参照してください。\\ | ||
| [[https://docs.unity3d.com/ja/2018.1/Manual/animeditor-CreatingANewAnimationClip.html]] | [[https://docs.unity3d.com/ja/2018.1/Manual/animeditor-CreatingANewAnimationClip.html]] | ||
| - | 3. GameObjectに「**VCI Object**」コンポーネントをアタッチし、\\ | + | 3. 「VCI Object」コンポーネントのScriptsのSizeを**1**に指定し、\\ |
| - | Cubeに「**VCI SubItem**」コンポーネントをアタッチします。\\ | + | |
| - | この時、「Rigitbody」コンポーネントもアタッチされます。\\ | + | |
| - | Cubeは重力を使用しないため、**「Use Gravity」をOFF、「Is Kinematic」をON**にします。 | + | |
| - | + | ||
| - | 4. GameObjectの「VCI Object」コンポーネントのScriptsのSizeを**1**に指定し、\\ | + | |
| Nameに「main.lua」を記入、Sourceに以下スクリプトを記入します。 | Nameに「main.lua」を記入、Sourceに以下スクリプトを記入します。 | ||
| ===== VCIスクリプト ===== | ===== VCIスクリプト ===== | ||
| <file lua main.lua> | <file lua main.lua> | ||
| + | local Anime = vci.assets.GetTransform("Cube") | ||
| + | local SubitemAnime = Anime.GetAnimation() | ||
| function onUse(use) | function onUse(use) | ||
| if use == "Cube" then | if use == "Cube" then | ||
| - | vci.assets._ALL_PlayAnimationFromName("UseAnimationAction", false) | + | SubitemAnime.Play(false) |
| end | end | ||
| end | end | ||
| </file> | </file> | ||