プログラムをデバッグすると、stage.stage3Ds が空 (長さ 0) になり、プログラミングに使用しようとするとエラーが発生します。新しい Stage3D を stage.stage3Ds にプッシュしてから requestContext3D() 関数を使用すると、プログラムを進めるための context3d_create イベントが発生しません
1 に答える
Adobe AIR アプリケーション記述子 XML ファイルで、次の要素を設定します。
<renderMode>direct</renderMode>
<depthAndStencil>true</depthAndStencil>
レンダリング モード
現在のコンピューティング デバイスでサポートされている場合、グラフィックス プロセッシング ユニット (GPU) アクセラレーションを使用するかどうかを指定します。
モバイルプラットフォーム用の AIR で Flash コンテンツの GPU アクセラレーションを利用するために、アドビでは、renderMode="gpu" ではなく、renderMode="direct" (つまり、Stage3D) を使用することをお勧めします。Adobe は、次の Stage3D ベースのフレームワークを公式にサポートし、推奨しています: Starling (2D) および Away3D (3D)。Stage3D および Starling/Away3D の詳細については、 http://gaming.adobe.com/getstarted/ を参照してください。
深さとステンシル
アプリケーションが深度またはステンシル バッファーを使用する必要があることを示します。通常、これらのバッファは、3D コンテンツを操作するときに使用します。既定では、この要素の値は false であり、深度バッファーとステンシル バッファーを無効にします。この要素が必要なのは、コンテンツがロードされる前に、アプリケーションの起動時にバッファーを割り当てる必要があるためです。
この要素の設定は、enableDepthAndStencil 引数に Context3D.configureBackBuffer() メソッドに渡される値と一致する必要があります。値が一致しない場合、AIR はエラーを発行します。
この要素は、renderMode = direct の場合にのみ適用されます。renderMode が direct と等しくない場合、ADT はエラー 118 をスローします。