【Cluster】環境をランダムで切り替えるサンプルスクリプト

cluster内のワールドで天候などの環境をランダムで切り替えるためのサンプルです。

■RandomSwitch(Scriptable Item)
├ Env1
├ Env2
├ Env3

const cycle = 10; // 切り替え時間
const envArray = [ $.subNode("Env0"), $.subNode("Env1"), $.subNode("Env2") ]; // 環境オブジェクト群

$.onUpdate(deltaTime => {

  // 初期設定
  if (!$.state.initialize) {

    $.state.initialize = true;
    $.state.time = 0.0;

  }

  // 環境切り替え処理
  $.state.time += deltaTime;
  if($.state.time >= cycle) {

    // 乱数生成
    let num = Math.floor( Math.random() * envArray.length);

    // 環境切り替え
    for(let i=0; i<envArray.length; i++){

      if(i==num){

        envArray[i].setEnabled(true);

      } else {

        envArray[i].setEnabled(false);

      }

    }

    $.state.time = 0.0;

  }

});

cycle(秒)で切り替え時間を変更できます。サブノードはenvArray内の要素を増やせば自動的に組み込まれます。

タイトルとURLをコピーしました