メインコンテンツまでスキップ

スクリプティング

ゲームをインタラクティブにするにはスクリプトを使います。スクリプトはJavaScriptで書きます。これはあらゆるウェブページで使用されているプログラミング言語です。

アプリケーションは二つの個別のコードベースに分かれているものと考えてください。一つはPlayCanvasが提供するエンジンです。これは、グラフィックレンダリング、入力処理、オーディオ、PlayCanvasツールのインターフェイスなどを含む基本的な機能を実装します。もう一つはスクリプトです。これは多くの場合、便利な挙動を提供する再利用可能なブロックか、アプリケーション特有のものです。

基本的に、エンジンコードはアプリケーションに含まれる単一のJavaScriptファイルなので、気にかける必要はありません。エンジンの一部を書き換える場合、スクリプティングに関するこの導入は必要ないです。

ここでは簡単なスクリプトの例です。これは、「rotate」と呼ばれ、取り付けられているエンティティを毎秒10度回転させます。

var Rotate = pc.createScript("rotate");

Rotate.prototype.update = function (dt) {
this.entity.rotate(0, 10*dt, 0);
};

スクリプトは作成されたときに指定された名前によって定義され、Editorまたはコードでエンティティにスクリプトコンポーネントを追加することでスクリプトコンポーネントに添付されます。

用語集

いくつかの用語を定義しましょう。

  • Script スクリプトとはスクリプトオブジェクトの定義を一つ以上含む単一のJavaScriptファイルです。
  • Script Component スクリプトコンポーネントはPlayCanvasエンジンで定義され、ゲームエンティティにスクリプトを読み込みスクリプトオブジェクトを作成する機能を与えます。
  • ScriptType スクリプトタイプとはpc.create Script関数を使用して作成されるJavaScriptオブジェクトです。これは、エンティティに追加されたときにインスタンス化される新しいクラスです。
  • Script Instance スクリプトインスタンスは、ScriptTypeのインスタンスです。スクリプトコンポーネントにScriptTypeが添付されている各エンティティに対して一つのスクリプトインスタンスが作成されます。