Skip to content

変数が変わったとき ​

よく使うOnVariableChanged

変数の値が変わったとき。同期した変数なら、ほかの人が変えたときや、あとから来たときも。

カードの「見張る変数」が変わったときに起きます。同期する変数なら、自分が変えたとき、ほかの人が変えたとき、あとから来て今の値を受け取ったときのどれでも起きます。全員の画面を同じ状態にするときは、このイベントで値を受けて動かします(全員で同じ状態にする)。

同じ値を入れ直しただけでは起きません。また、このイベントの中で見張っている変数を変えると、そのたびにまたイベントが起きるので避けてください。一時的な変数は見張れません。

同期する変数を変えると、変えた人がそのオブジェクトのオーナーになり、値を全員に送ります。ほかの人の画面では、値が届いて前と違っていたときにこのイベントが起きます。

あとから来た人の画面でこのイベントが起きるのは、届いた値が変数の「最初の値」と違うときだけです。最初の値のままなら起きないので、シーンの見た目は最初の値に合わせておいてください。たとえば「最初の値」がオフのライトなら、シーンでもライトを消しておきます。

VRChat の説明では、あとから来た人には同期する変数の最新の値が届きますが、ネットワークのイベントは届きません。今の状態を全員に保たせたいときは、このイベントと同期する変数の組み合わせを使います。

公式の説明: Late Joiners(VRChat)、Network Variables(VRChat)

カードの例

いつ変数が変わったとき⋯
何をする
+ 何をするかを追加

同じ分類のもの