VRM ONLINEをアップデートしました。バージョン5.0.5.48になります。
スクリプト関連でいただいたご要望を実装しました。
・乱数のシード値を設定する命令を追加しました。乱数は、乱数にみえる数列を計算で生成します。乱数数列は、シード値を変更することで内容がかわります。
今回追加したunixtimeを取得する命令で現在時刻を取得後、乱数のシード値として利用することで毎回異なる乱数を取得できます。
ゲームでは、乱数数列のシード値を固定して毎回同じ乱数を発生させ、再現性のある複雑な動きを実現します。人間は複雑な動きでも何らかの規則性を見いだそうとするため、再現性はゲームの重要なスパイスとして機能します。
乱雑な乱数と規則性のある乱数を使い分けるために、複数の数列を利用できる拡張乱数命令を用意しました。最大8個の乱数数列を使い分けることができます。
・unixtimeを取得する命令を追加しました。現在時刻の取得を取得します。
・編成を連結したときに、連結する側の編成は連結される側に吸収され、オブジェクトは解放されます。
このとき、オブジェクト変数で解放されたオブジェクトを参照するとメモリー上に存在しないものにアクセスするため重大なエラーの原因になります。
スクリプトの実装としては禁じ手ですが、連結によって解放されたオブジェクトを指し示すオブジェクト変数がある場合、消滅時にNULLにする機構を追加しました。これにより、不正なメモリーアクセスを防止することができます。
(NULLで参照することとエラーになります。参照する前にオブジェクト変数がNULLになっていないか条件判断を追加してください。)
・中間ファイルにデバッグ用情報を追加して、デバッグモードの表示内容を拡充しました。
このバージョンの内容は、VRM5第3号にも反映します。