問題タブ [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.

0 投票する
3 に答える
540 参照

actionscript-3 - この方法を最適化するにはどうすればよいですか?

TextureAtlas必要なときにいつでも動的オブジェクトを生成できるアセット クラスの作成に取り組んでいます。具体的な方法はAssets.generateTextureAtlas()、テクスチャ アトラスを頻繁に再生成する必要があり、53 ミリ秒の平均よりも良い時間を取得したいと考えていたため、可能な限り最適化しようとしています。

53 ミリ秒は現在、約 3 フレームのコストがかかります。これは、テクスチャ アトラス内にパックする必要があるアイテムと、それらを生成する必要がある頻度が増えるにつれて、すぐに加算される可能性があります。したがって、私のコード内のすべての落とし穴に対する答えは素晴らしいでしょう。

クラス コード全体は、こちらの github gist で入手できます。

このRectanglePackerクラスは、(テクスチャ パッカーと同様に) 四角形をできるだけ近くにパックするために単純に使用され、ここで見つけることができます。

参考までに、方法は次のとおりです。

0 投票する
1 に答える
1825 参照

actionscript-3 - AS3ソフトボディテクスチャスターリング

うなじでやわらかいボディサークルを作りました。そして今、私はそれをテクスチャ化しようとしています。しかし、私は問題を抱えており、答えを見つけることができません。だから私はあなたたちに目を向けています。

私はこのObjectiveCチュートリアルで彼がしていることをやろうとしています:

http://www.uchidacoonga.com/2012/04/soft-body-physics-with-box2d-and-cocos2d-part-44/

starlingとstage3dでこれを行う方法についてのアイデアはありますか?

0 投票する
1 に答える
431 参照

actionscript-3 - フレックス アプリケーションの背景の可視性を設定する

私は Flex を初めて使用しますが、Away3d を使用して Web アプリを Flex に移植しています。私は少しジレンマを持っています:

最も簡単に言えば:

背後にある必要があるアイテムのマウスイベントをブロックしているため、アプリケーションの背景を alpha=0 だけでなく、visible=false に設定する必要があります。

私が実際にやろうとしていること:

View3D をステージに追加すると、そのインデックスは表示リストとイベント (マウスなど) にのみ関連し、常に他のすべての背後でレンダリングされるため、表示するには Application タグで backgroundAlpha="0" を設定する必要があります。ただし、これには 2 つのオプションがあり、どちらも望ましくありません。

childIndex(0) に View3D を追加すると、View3D にバインドされたマウス イベントは、非表示の (ただし存在する) アプリケーション バックグラウンドによってインターセプトされます。ただし、最高のインデックスでステージに追加すると、フレックス コンポーネントは技術的にはビューの下にあるため、より高く表示されても機能しなくなります。

View3D がマウス イベントに反応する必要があり、Flex コンポーネントをオーバーレイする必要があります。イベントなどをインターセプト/再ディスパッチするために非表示のスプライトを使用したくないのですが、アプリケーションのバックグラウンドの可視性を簡単に設定する方法はありますか?

前もって感謝します

0 投票する
1 に答える
240 参照

actionscript-3 - この AGAL 出力は正しいですか?

このシェーダーを変換しようとしています:

結果として(この出力はあなたによく見えますか?または何かが欠けています):

しかし、AGAL頂点シェーダーを非常に単純な作業に変更すると、何も表示できません。

次の方法で GLSL を AGAL に変換するときに、定数を追加します。

そして、次のようにすべてのバッファーを準備します。

助言がありますか?

0 投票する
1 に答える
769 参照

actionscript-3 - GLSL を AGAL に移植する Stage3D

この GLSL シェーダーを Stage3D と AGAL に移植しようとしていますが、うまくいきません。

頂点シェーダー (GLSL)

フラグメントシェーダー (GLSL)

結果として:

頂点シェーダー (AGAL)

フラグメントシェーダー (AGAL)

これは、私が実行した命令のトレースです。

しかし、まだ何も見えません。

更新:どうやら問題は、三角形が切り取られていることです。乗算された配列の値は 1.0 より大きいため、切り取られます。したがって、マトリックスを正規化する方法を見つけるか、クリッピングを拡張する必要があります

なにか提案を?

0 投票する
1 に答える
1344 参照

3d - モデル空間ベクトルをクリップ空間に変換する

ビットマップを表示するために単純な頂点シェーダーを実装しています。4 つの頂点が定義され、各頂点シェーダーは、ビットマップの幅/高さをビューポートの幅/高さで割ったものと組み合わせて、それぞれの UV を使用して、クリップ空間の位置を変更します。かなり典型的なものです。そのためのスタブコードを次に示します。

私がやりたいことは、大きさが固定数のピクセルであるワールド空間で定義されたベクトルの方向にビットマップをオフセットすることです。ここで難しいのは、ワールド空間ベクトルをクリップ空間に変換する方法です。翻訳コンポーネントなしで objectToClipSpaceTransform を使用しようとしましたが、結果が正しくありません。それで、どうすればいいですか?

0 投票する
1 に答える
2144 参照

mobile - モバイルAdobeFlashAIR上のビデオカメラとStage3D。拡張現実-AIRの現実

簡単な質問

Stage3Dを使用してAdobeAIRアプリケーションでWebカメラをすばやく表示するにはどうすればよいですか?


詳細な質問

私の目標は、AR(拡張現実)モバイルアプリケーションのプロトタイプを作成することです。多くのモバイルプラットフォーム(iOS、Android、Blackberry Playbook)に簡単に移植できるモバイルおよびAIRアプリでの優れた3Dグラフィックスサポートのために、AdobeFlashAIRを選択しました。

目的

複雑な3Dモデルを表示したい(したがって、Stage3Dを使用する必要があります)。そして、フロントカメラからのビデオの下。いつものようにARアプリケーション。

ここに例があります


(出典:augmentedplanet.com

問題

Stage3Dはまったく透明ではないため、StageVideoはStage3Dの下に表示されないため、カメラのコンテンツをすばやく表示するためにStageVideoを使用することはできません。

それで

そして、私が見つけた唯一の決定は、動的なテクスチャの更新で平らな表面を作成することです。

これは、webcamvideoとStarling Framework(Stage3D)の統合の例です。しかし、多くの通常のモバイルデバイスでは、非常に大きなテクスチャの更新(ほぼ画面解像度のサイズと同じくらい)が発生するため、どのアプリも低fpsに低下したり、クラッシュしたりします。たとえば、GalaxyNoteで行ったこと。320x200のテクスチャサイズで、かなり良いパフォーマンスがありますが、ARアプリでは見苦しいです。

では、AIRでARを作成するための優れたソリューションはありますか?誰かが同じ挑戦を受けましたか?

0 投票する
1 に答える
203 参照

flash - Stage3D アフィン テクスチャリングと正しいパースペクティブ ディバイド

パースペクティブ マトリックスを使用する場合、Stage3D はどの程度正確にテクスチャ マッピングを行うことができますか?

UV 以外の情報はバーテックスからフラグメント プログラムに転送されないため、裏で行われているとしか思えません。

アフィン マッピング効果を回避するために 20x20 の三角形メッシュでテクスチャを歪めていますが、同じ効果のために組み込みのパースペクティブ ディバイドを使用することはできないのでしょうか?

0 投票する
1 に答える
273 参照

flash - RangeError: エラー #3609: ストリーム 0 に十分な頂点がありません

stage3Dを使って3Dで回転する立方体を開発しています。

Firefox では結果を完全に確認できますが、Chrome では何も表示できません。私が設定したとき:

ブラウザからこのコールバックを受け取ります

ただし、頂点の数は問題ありません。

なにか提案を?

0 投票する
2 に答える
684 参照

actionscript-3 - Stage3D が Z バッファーに書き込まないようにすることはできますか?

非表示のオブジェクトをレンダリングして、Stage3D のリンクに示されているのと同様の効果を実現したいと考えています。

Torchlight 2 のシルエット効果

私はすでに理論的にこれを行う方法を知っています。オブジェクトを 2 回描画する必要があります。

  • 一度通常の設定で
  • レンダリングされたジオメトリの背後にあるピクセルのみが表示される別の深度並べ替えモードで 1 回。また、後で奇妙な効果が発生するのを防ぐために、これらのピクセルを深度バッファにレンダリングすることはできません。

を使用して、Stage3D で正しい深度ソート モードを設定できますContext3DCompareMode.GREATER。また、Stage3D のレンダリング ピクセルをバック バッファーに入れ、z バッファーには入れないようにすることはできますか?

Stage3D が深度バッファーにレンダリングされないようにすることができない場合、効果は次のようになります。

グリッチシルエット効果