スクリプト属性
スクリプト属性 (Script Attributes) は、スクリプトファイルの値をPlayCanvasエディターに表示して調整できるようにする強力な機能です。これにより、1度コードを書いて、エンティティ(Entity)のインスタンスごとに値を調整して異なるプロパティを付けることができます。これにより、アーティスト、デザイナー、または他の非プログラマのチームメンバーに値調整と変更をコーディングすることなく行わせることができます。
スクリプトの属性を宣言する
スクリプト属性は、次の形式でスクリプトファイルの先頭で宣言します。
var MyScript = pc.createScript('myScript');
MyScript.attributes.add('speed', {
type: 'number',
default: 80
});
上記の例で、speed
というプロパティが宣言されています。type は number
でデフォルト値は 80
です。
もし属性の配列が必要な場合は、以下のように array: true
を設定します。
var MyScript = pc.createScript('myScript');
MyScript.attributes.add('names', {
type: 'string',
array: true
});
エディター上で属性を使用する
属性を宣言したらEditorは、スクリプトの属性を露出させるためにコードをパースする必要があります。属性が変更された場合は、手動で属性を更新する必要があります。パースボタンをクリックすることができます。
コード内で属性にアクセスする
スクリプトで属性を宣言すると、属性がスクリプトインスタンスのメンバー変数として利用できるようになります。上記で宣言された speed
プロパティは、this.speed
として利用できます。
MyScript.prototype.update = function (dt) {
this.entity.translate(this.speed * dt, 0, 0);
}