Stage3Dはまったく異なる、かなり低レベルの獣です。ここにリストするクラスはすべて、CPU駆動のレンダリングエンジンである従来のFlash DisplayListに関連しているため、存在しません。しかし、それ以上のことはありません:
生のStage3D API(例:tutorial here)を使用している場合、OpenGLプログラミングと非常によく似ています。 Vertexバッファ、Indexバッファ、およびテクスチャをGPUにロードし、VertexおよびフラグメントシェーダプログラムをAGALというアセンブリ言語で定義しています。これにより、クロスプラットフォームのハードウェアアクセラレーションアプリケーションが実現しますが、これはおそらく非常に高速ですが、従来のFlash DisplayListとはまったく異なります。グラデーション、フィルター、ベクターシェイプを取得できますか?もちろん、カスタムシェーダーなどで、これらのクラスを使用しないでください。
一部のアプリケーションでは、従来のDisplayListをStage3Dのハードウェアアクセラレーションされた背景の上にインタラクティブなUIコントロールとして使用するのが理にかなっています。 DisplayListはStage3Dプレーンの上に配置されるため、これは完全に可能です。
しかし、そのような低レベルの3Dプログラミングが興味のあるものでない場合は、フレームワークの上に構築することができます。 3Dアプリケーションを作成するためのものもあれば、速度のために3Dアクセラレーションを使用するものもあります。 Adobeには、これらのフレームワークのリストhereがあります。
は例えば、Starlingは、伝統的なフラッシュDISPLAYLISTを模倣することを意図していますStage3Dのフレームワークであり、それはあなたが上に言及したクラスの一部に近い取得します - 仕様のために彼らのdemoとAPI docsをチェックしてください。
Flashが有効にするもう1つの技法は、飛行中に3Dアクセラレーション用のビットマップを生成するブリッティングです。好きなFlash DisplayObjects(シェイプ、描画されたグラデーション、フィルタなど)をビットマップ(別名blit)に描画し、それらのビットマップを3Dアクセラレーションフレームワークにプッシュすることができます。このテクニックを使用すると、個々のオブジェクトを個別にブリットすることも、ステージ全体を1つのフルスクリーンテクスチャにブリットすることもできます。しかし、パフォーマンスに大きな影響を与える可能性があるため、新しいテクスチャをGPUにアップロードする頻度と量を慎重に検討する必要があります。実際、GPUプログラミングで重要なパフォーマンスの考慮事項は、複数のビットマップを1つのテクスチャにバッチする機能です。
伝統的なDisplayListからStage3Dへの移行を考える際には、多くの面を考慮する必要があります。お役に立てれば。 :)
偉大な書き込み! – francis