ユーザ用ツール

サイト用ツール


vci:script:tutorial

VCIスクリプトのチュートリアル

VCIスクリプトはLua言語によって実装されています。
ここでは VCI作成 で作成したVCIを使って実際にスクリプトを書き、VCIに追加していきます。
デバックはバーチャルキャストを実行しながら行います。

スクリプトのデバッグを行う場合は、エクスポート時にVCIObject の[Script Enable Debugging]にチェックを有効にしてください。


スクリプトの作成

スクリプトの開発作業を行うフォルダ(ワークスペース)は、

C:/Users/__USER_NAME__/AppData/LocalLow/infiniteloop Co,Ltd/VirtualCast/EmbeddedScriptWorkspace

となります。
ここで作成したスクリプトをバーチャルキャスト上で実行することができます。

※AppDataフォルダが非表示になってる場合は、エクスプローラーオプション(フォルダ設定)から[表示 > 隠しファイル]にチェックを入れてください。

(1)VSCodeでフォルダを開く

ワークスペースをVSCodeで開きます。
メニューの[ファイル] > [フォルダーを開く]をクリックして、上記ファイルパスを選択してください。

VSCodeのサイドメニューにワークスペースのエクスプローラーが表示され、ソースを参照しやすくなります。

(2)対象VCIの専用フォルダ作成

バーチャルキャスト上でVCIアイテムを出すと、対象のVCIフォルダが自動生成されます。
例えばVCISampleというアイテム名であれば、[VCISample]というフォルダが作成されます。

THE SEED ONLINEからVCIを入れた場合

VCIを出した時点でフォルダが作成されます。
この中に書かれた[main.lua]を編集すればスクリプトの書き換えができます。
保存後に、自動でスクリプトがリロードされるので、SEEDに上げなおす必要はありません。

(3)main.luaを作成

上記で生成されたフォルダに[main.lua]を作成します。 [EmbeddedScriptWorkspace/template.lua]をコピーして[main.lua]にファイル名を変更するのがお勧めです


コンソールの確認方法

VCIアイテムのデバッグ設定

VirtualCastの設定画面から[VCI]のタブを選択し、[スタジオにデバッグ情報を表示する]を有効にすると、VR空間内にコンソールが表示されます。

コンソールの機能

全般
  • バーチャルキャスト内にデバッグコンソールが生成される
  • コンソール画面は自分にだけ表示され、Monobitで同期されていない(ほかの人からは見えない)
  • 通常のアイテムと同様に、掴んで動かしたり両手で持って拡縮することは可能
LuaSystemConsole
  • 主にVCIスクリプトのSystemメッセージが表示される
  • スレッドが停止したり、応答が無い場合など
SharedVariableConsole
  • 共有変数を使用した場合に、内容がjsonで表示される
ItemConsole
  • アイテム個別のコンソール
  • アイテムの出現時に生成され、アイテムを消すと一緒に消える
  • 掴んでグリップすることで、以下の表示内容を見ることができる
    • Console
    • SubItem一覧
    • Material一覧
    • Animation一覧
    • Audio一覧

コンソールに文字列を表示する

  • VCIスクリプト内で以下のようなコード記述するとコンソールに文字列が表示されます。
main.lua
print("文字列")

その他のデバッグ機能(上級者向け)

VCIの設定画面で、[VCIスクリプトのロガーをホストするTCPポート番号]、[VCIスクリプトのデバッガーのTCPポート番号]に0より大きい値のポート番号を指定し、スタジオ内に入室した状態でWebブラウザから[localhost:ポート番号]にアクセスすることで、VCIアイテムのデバッグ情報を見ることができます。


サンプルスクリプトをバーチャルキャストで確認する

1.下記サンプルをVCIフォルダ内の[main.lua]にコピー&ペーストして保存してください。

main.lua
GrabCount = 0
function onGrab(target)
    GrabCount = GrabCount + 1
    print("Grab : "..GrabCount)
    print(target)
end

2.バーチャルキャストの中で掴んだ時に、コンソールに、掴んだ回数が表示されたら成功です。

※チュートリアルなので確認用のスクリプトとなります。
※VCIスクリプトの詳細は VCIスクリプトリファレンス を参考にしてください。


VCIスクリプトを組み込む

1.VCIを作成した時のプロジェクトを開いて、VCI作成のシーンを読み込みます。
2.[VCIObject]の[Scripts] > [Size]を1に変更してエンターを押します。
3.Inspectorが拡張するので以下のように入力します。
 [Name] > [main.lua]
 [Source] > [(完成したVCIスクリプトを張り付ける)]
文字数が多い場合(1万5000字以上)エラー表示が出ることがあります。
4.シーンを保存して、再度VCIをExportします。
 メニューバーから[VRM] > [UniVCI-x.xx] > [Export] を選択し名前をつけて保存します。
5.THE SEED ONLINEにエクスポートしたVCIを上書きすれば、VCIスクリプトが動くVCIの完成になります。

vci/script/tutorial.txt · 最終更新: 2020/02/03 17:38 by fumo

ページ用ツール