スクリプティング
スクリプトは、PlayCanvas におけるインタラクティブ性の中心です。これは再利用可能なコードのパーツであり、エンティティにアタッチすることで、挙動の定義、ユーザー入力の処理、ゲームロジックの管理など、プロジェクトに命を吹き込みます。
2つのスクリプティングシステム
PlayCanvas では、2つのスクリプト方式をサポートしています:
- ESMスクリプト(
.mjs
ファイル) - クラス構文を使ったモダンなESモジュールベースのスクリプト。新規プロジェクトにはこちらを推奨します。 - クラシックスクリプト(
.js
ファイル) - プロトタイプベースの構文を使った、元々のPlayCanvasスクリプティングシステム。
両方のシステムは同一プロジェクト内で共存できるため、徐々に移行することも、自分に合った方式を選ぶことも可能です。
クイック例
以下は、エンティティを回転させる簡単なスクリプトです:
- ESM (Recommended)
- Classic
import { Script } from 'playcanvas';
export class Rotate extends Script {
static scriptName = 'rotate';
/** @attribute */
speed = 10;
update(dt) {
this.entity.rotate(0, this.speed * dt, 0);
}
}
var Rotate = pc.createScript('rotate');
Rotate.attributes.add('speed', { type: 'number', default: 10 });
Rotate.prototype.update = function(dt) {
this.entity.rotate(0, this.speed * dt, 0);
};
学べること
基礎知識
すべてのPlayCanvasスクリプトに共通する基本的な概念:
- はじめに - スクリプトの基本構造と構文
- ESMスクリプト - ESモジュールによるモダンなスクリプティング
- スクリプトライフサイクル - スクリプトメソッドが呼ばれるタイミングと方法
- スクリプト属性 - 設定可能なプロパティの公開
- エンジンAPIの呼び出し - 主要なクラスとパターン
- イベント - スクリプト間の通信
エディタ統合
PlayCanvasエディタ内でのスクリプトの取り扱い:
- スクリプトの管理 - スクリプトファイルの作成と整理
- コードエディタ - 組み込みコードエディタの使用
- VS Code 拡張機能 - 開発フローの強化
- ホットリロード - ライブでのコード更新
デバッグ
スクリプトのトラブルシューティングのためのツールと手法:
- コンソールログ - コンソール出力による基本的なデバッグ
- ブラウザ開発者ツール - 高度なデバッグ手法