スクリプトの読み込み順序
一般的に、すべてのスクリプトはアプリケーションの開始時にロードされます。ロード順序は、プロジェクトの設定によって決まります。この設定には、メインのエディタメニューまたはシーンの設定からアクセスすることができます。
ローディングオーダーパネルには、preload
としてマークされたすべてのスクリプトと、そのロードおよび実行の順序が表示されます。
個別のスクリプトの順番をドラッグして移動することができます。
スクリプトが最初にロードされると、すぐに実行されます。つまり、スクリプトはロードされた順序で最初に実行されます。ただし、スクリプトコンポーネント内のスクリプトメソッドの実行順序には、スクリプトのロード順序は 影響しません。たとえば、同じエンティティ上のスクリプトの初期化メソッドは、ロード順序ではなく、エンティティ上のリスト順に呼び出されます。
プリロード
他のPlayCanvasのアセットと同様に、スクリプトアセットはデフォルトで preload
に設定されています。これは、アプリケーションが開始される前にロードされることを意味します。スクリプトのプリロードを無効にすると、通常の状況ではロードされません。これにより、プロジェクトにスクリプトを含めることはできますが、preload
のチェックを外すことでロードを防止することができます。通常のアセットAPIを使用して、プリロードされないスクリプトを動的にロードすることもできます。例えば、this.app.assets.load(asset);
というように使用します。
スクリプトレジストリへの動的な変更にサブスクライブすることができます:
this.app.scripts.on('add', function(name, scriptType) {
console.log('script', name, 'has been loaded');
});
連結 (Concatenation)
デフォルトでは、アプリケーションを公開またはエクスポートする際に、すべてのプリロードされたスクリプトが1つのスクリプトファイルに連結されます。これにより、すべてのスクリプトをロードするために必要なリクエストの数を減らすことで、読み込みを最適化します。