Language:

サイドバー

バーチャルキャスト公式Wiki

メインメニュー

初心者向けガイド

VirtualCast

遊ぶ世界

THE SEED ONLINE

ニコニコ

SHOWROOM

配信

配信ツール

その他

wikiについて

デベロッパー向け


開発環境

VRM(アバター)

VCI(アイテム/背景)

VCI更新情報

更新日 - UniVCI バージョン
2021/03/17 v0.32
2.0.3b
2021/01/14 v0.31
2.0.1a
2020/12/03 v0.30
2.0.0b
2020/11/12 v0.30
2.0.0a
2020/10/22 v0.29
1.9.5b
2020/07/30 v0.29
1.9.3e
2020/06/25 v0.28
1.9.3c
2020/05/21 v0.27
1.9.2e

以前のアップデート履歴


GLB(背景)

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]のタブを選択し、[スタジオにデバッグ情報を表示する]を有効にすると、バーチャルキャスト内にコンソールが表示されます。

コンソールの機能

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

1.9.2d以降、SharedVariableConsoleと統合されました。

ItemConsole

  • アイテム個別のコンソール
  • アイテムの出現時に生成され、アイテムを消すと一緒に消える
  • 掴んで使うことで、以下の表示内容を見ることができる
    • Console
    • SubItem一覧
    • Material一覧
    • Animation一覧
    • Audio一覧
    • Statistics(統計情報)

1.9.2d以降、SharedVariableConsoleと統合されました。

Statisticsの表示項目
名前 説明 VCバージョン
ActionCountPerSec 1秒あたりの、SetPosition等の操作回数 1.9.2d
ActionCountPerSec (ALL) 1秒あたりの、SetPosition等の操作回数(_All_系関数) 1.9.2d
LuaProcessingTimePerFrame (ms) 1フレームあたりのluaコード処理時間(ミリ秒) 1.9.2d

Statisticsで表示される項目は、値が低いほど動作が軽くなるので、VCIの動作が重い場合は、こちらの情報を参考に最適化してください。

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

  • 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 · 最終更新: 2021/09/29 14:05 by t-daihisa

ページ用ツール