2012年11月 のアーカイブ

Stage3DコンテンツをAIR3.2で書き出す時に出るエラーの対処法

2012.11.20 07:16 PM

Stage3DコンテンツをAIR3.2で書き出す時にいくつかエラーが出たのでその対処法をメモっておく。

Errorその1

Error #2044: Unhandled ErrorEvent:. text=Error #3702: Context3D not available.

↓解決策
描画モードに direct を指定する

Errorその2

Error #3709: The depthAndStencil flag in the application descriptor must match the enableDepthAndStencil Boolean passed to configureBackBuffer on the Context3D object

↓解決策
深度バッファやステンシルバッファを使用するかどうかをdepthAndStencilタグで設定する。デフォルト値は false。2Dコンテンツでは、本当に必要な場合を除きfalseのままにしておくのがお勧めらしい。

以下のAdobe上条さんの記事が詳しいです。
AIR 3.2 でデバイス向け Stage3D コンテンツを作成するときの注意点

JavaScriptの読み込みと実行に関してのメモ(ページレンダリングの高速化)

2012.11.20 01:31 AM

ページの処理中に<script>タグが存在した場合、そのコードを読み込み実行している間はページのレンダリング処理が停止してしまう。このJavaScriptの読み込み&実行によるパフォーマンスへの影響を最小限に抑える方法。

・スクリプトはbody内の一番下に置く。</body>タグの直前。
・スクリプトをグループ化する。大量のjsファイルは1ファイルにまとめるなど可能な限りファイル数を減らしてhttpアクセスを最小限にする。(ビルド用ツールを利用するなど)
・ノンブロッキング(非同期)なスクリプトの読み込み

ノンブロッキング(非同期)なスクリプトの読み込み例を以下に記す。
1.defer属性を利用(IEとFirefox3.5以上でのみ対応)
2.<script>要素を動的に生成し、コードのダウンロードと実行を行う。
3.XMLHttpRequestによるスクリプトの挿入。(クロスドメインでの利用は不可)

また、ノンブロッキングなスクリプトの読み込みにはLazyLoadとLABjsが便利そう。
以下それぞれの記述例。

出典:(Nicholas C. Zakas 著『HIgh Performance JavaScript』Copyright 2010 Yahoo!, Inc.)

放置プレイキメこんでおりました。。。

2012.11.18 12:05 PM

blogを完全に放置。前回の更新からちょうど丸1年。そろそろ再開します~。(多分。。。)