問題タブ [stage3d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flash - 使用するProgram3Dごとに新しいVertexBuffer3DとIndexBuffer3Dを作成する必要がありますか?
いくつかのProgram3D
オブジェクトがある場合(それぞれが独自のレンダリングタスクを担当する独自のVertex-ShaderとFragment-ShaderVertexBuffer3D
を備えています)、新しいをインスタンス化しIndexBuffer3D
て、によって使用される頂点データ形式にのみ関連するデータを格納するようにする必要がありますか?それらの対応するProgram3D
?
たとえば、次のようなさまざまな頂点データ形式でクワッドを定義することを計画している場合:
VertexBuffer3D
1つを作成し、フォーマットAIndexBuffer3D
を保存し、もう1つをフォーマットBに、さらにもう1つをフォーマットCに保存する必要がありますか?または、さまざまな形式を同じものの中に混ぜて、三角形を描くために1つを巧妙に(または混乱させて!)使用することはできますか?VertexBuffer3D
IndexBuffer3D
actionscript-3 - Adobe の「Stage3D」を使用して、2D アプリケーションやゲームのパフォーマンスを向上させることはできますか?
Flash Player 11 で使用される新しい API となるStage3Dについて少し読んでいます。
この API は何らかの方法で 2D レンダリング (ベクター) のパフォーマンスを向上させますか、それともライブラリは主に 3D レンダリングに使用されますか?
Stage3D が 2D ベクター レンダリングのパフォーマンスにどのように影響するかについての情報は素晴らしいものです。
flash - Context3DVertexBufferFormat.BYTES_4を使用する場合、1つのフィールドの値の範囲はどのくらいですか?
バイト配列メソッドを使用して頂点バッファーにデータを入力すると、次のようになります。
次に、vertex-buffer属性を次の形式で設定します。
頂点属性のフィールド(この場合、 va0.x、va0.y、va0.z、va0.w )で可能な値の範囲(0〜255?0.0〜1.0?など)はどれくらいですか?ByteArray
オブジェクトに書き込まれるデータ型( writeFloatとwriteUnsignedInt)によって異なりますか?
air - デスクトップ用AdobeAIRはStage3Dプロジェクトを実行できますか?
FlashPlahyer11+にWebブラウザにステージ3D機能を提供する機能があるかどうか知りたいです。
Adobe AIR 3.1はどうですか?デスクトッププラットフォーム用の3Dゲームを構築するためのステージ3Dもサポートしていますか?
air - Stage3DおよびAIR3
Stage3Dを使用するAdobeAIR3を使用してFlashBuilder4でプロジェクトをセットアップするにはどうすればよいですか?
コンパイラオプションに「-swf-version=13」を追加すると、次のエラーが発生します。
App.xmlファイルでGPUモードを有効にしており、最新のFlex SDK(4.6)を使用しています。
同様の質問がここで行われました:
しかし、解決策はもはや有効ではありません!受け入れられた回答のリンクは、迷惑なだけでホームページにリダイレクトされ、Googleのキャッシュされたバージョンのページを見てもアクセスできません。
ここもまた:
http://www.dreaminginflash.com/2011/10/12/adobe-flex-adobe-air-3-alternativa-3d-real-3d-engine/
私にはうまくいきません。
flash - AGALの頂点定数以外の頂点レジスタに行列を存在させることはできますか?
Matrix3DオブジェクトがAS3の頂点定数レジスタとしてContext3Dオブジェクトに渡される例を主に見てきました。しかし、他のタイプのレジスタ(一時または属性)で行列を見たことはありません。
Matrix頂点定数を一時レジスタにコピーしてから、他の指定された値(頂点属性または他の定数)を使用して、そのMatrix一時レジスタの個々のフィールド(例:回転用)を操作する方法はありますか?
簡単なmov dest, source
操作でうまくいくでしょうか?
actionscript - perspectiveFieldOfViewLH メソッドを使用せずに stage3d で射影行列を定義する方法
私はこのチュートリアルを行いました:
http://ltslashgt.com/2011/02/28/molehill-spinning-cube/
興味深いのは、彼が perspectiveFieldOfViewLH を使用せず、代わりに独自の射影行列を定義したことです。私は3Dプログラミングが初めてなので、この射影行列の説明を読んだ後:
http://www.songho.ca/opengl/gl_projectionmatrix.html
私は本当にそれを理解しているかどうかを確認するために、独自のマトリックスを実装しようとしました:
そして、私は黒い画面を得ました。私がしたことは、チュートリアルのマトリックスをこのマトリックスと交換することだけでした。しばらくそれで遊んでみましたが、結果はありませんでした。これは、チュートリアルのマトリックスです。
1 行目と 2 行目が同じであることに注意してください。
flash - uploadFromByteArray(...) を使用して IndexBuffer3D に書き込む方法
私が間違っていることを本当に理解していませんが、アドビによると、これはuploadFromByteArray(...)
IndexBuffer3D オブジェクトでの使用方法です。
私が理解していないのは、頂点インデックスの整数を書き込むためにどの書き込み方法を使用する必要があるかということです。writeFloat
、writeUnsignedInt
、writeInt
、でも試しましたが、writeShort
すべて失敗しました。ByteArray インスタンスを に設定しましたがba.endian = Endian.LITTLE_ENDIAN
、まだうまくいきません。
インデックス バッファにアップロードする前に、ByteArray の位置を必ず 0 にリセットしましたが、何も表示されません。
Vector.<uint>
代わりにアップロードすると、うまくいきます!だから私は問題が AGAL シェーダーにないことを知っています。
何か案は?
math - 正射影行列が機能しないのはなぜですか?
直交投影で平面 (z=0) にあるいくつかのクワッドをレンダリングしようとしています。正射影行列の公式を読んだ後、射影行列を設定しましたか? しかし、私は何か間違ったことをしたと思います。
私の最初の試みは次のマトリックスでした。W と H は、目的のビューポートの幅と高さで、次の例では 640x640 です。
左上隅が (0,0,0) にあるクワッドをレンダリングしたときに得られたものは次のとおりです。
垂直に反転したため、マトリックスを次のように変更しました。
私が得ました :
その後、クワッドを動かそうとしましたが、結果は予想外でした。3D 空間の X と Y をビューポートの X と Y に合わせたかったのです。ただし、クワッドを X 軸に沿って移動すると、次のようになります。
Y 軸に沿って移動すると、同様に予想外の結果が得られました。
3D 空間の X 軸と Y 軸がビューポートの軸と一致するように行列を修正するにはどうすればよいですか? よろしくお願いします。
flash - 4つ以上のstage3Dをフラッシュに含めることはできますか?
フラッシュによって提供される4つのstage3Dの初期セットより多くを取得する方法を見つけることができないようです。
コンストラクターを使用して新しいインスタンスをインスタンス化し、リストにプッシュするだけでステージに追加してみました
しかし、これはEvent.CONTEXT3D_CREATEのeventListenerが呼び出されないため、機能していないようです(デフォルトのStage3Dの1つを使用している場合です。
誰かがこれを達成するための回避策または方法を持っていますか?
ありがとう