問題タブ [deferred-rendering]

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 投票する
2 に答える
1926 参照

javascript - いつ検出するか荷重

モーダルの内部を使用して、<ng-include>いくつかのオプションに基づいて条件付きでさまざまなコンテンツをロードしています。

コンテンツは、モーダルがいずれかのモード (heh) で起動されたとき、またはユーザーがドロップダウンを変更したときに選択されます。

これらのケースのいずれにおいても、このようなテンプレートのセクションは、適切なモーダル コンテンツに読み込まれます。

次に、ロードするmodals/contents-addressForm.htmlか、場合によっては何でもします。

トリックは、異なるフォームは異なるサイズです。それらが読み込まれると、モーダルはそれ自体を再配置する必要があります。

変数を試してみ$watchました。これにより、モーダル起動時に変更と初期値の両方が検出されますが、まだコンテンツにロードされていないform.typeため、再配置が早すぎます。ng-include私は延期を試みましたが、これは必ずしも十分な長さではありません。任意の長さのタイムアウトを試すこともできますが、これは... 任意のようです。

ng-include がいつ読み込まれるかを知る方法はありますか? 次の ng-include が読み込まれるのはいつですか?

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

c++ - OpenGL 遅延レンダリングが機能しない

最初のパスでジオメトリをレンダリングし、2 番目のパスでバッファからクワッドにレンダリングしようとしています。
ジオメトリを画面に直接レンダリングすることはできますが、複数のパスを使用してクワッドにレンダリングしようとするとすぐに、画面が黒のままになります (クリア カラーは灰色です)。
私のシェーダーが問題かもしれないと思います。必要に応じて、さらにコードを要求してください。

頂点シェーダー:



フラグメント シェーダー:



編集:




編集:レンダリング方法:



より多くのコード:



レンダー メソッドを渡す:

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

opengl - 遅延レンダリングによるシャドウ マッピング

シャドウ マッピング手法を実装しようとしていますが、機能させるにはいくつか問題があります。

ライトの位置にカメラがあり、これが取得したシャドウ マップです。すべての頂点がそれぞれ で乗算されていますmodelViewProjectionMatrix

カメラライトのビュー

頂点のワールド位置を持つテクスチャもあります。ワールド空間にポイントをGL_RGBA32F持つためにすべてのポイントがそれぞれ乗算されているため、これはテクスチャです。ModelMatrix

ここに画像の説明を入力

そしてシェーダー:

出力 (カメラはライトのほぼ同じ位置にあります):

ここに画像の説明を入力

各頂点の投影がカメラの位置から正しいかどうかを確認しようとしていますが、そうではないようです。このすべてのポイントは、比較することです。

しかし、それも機能しません。

助けていただければ幸いです。ありがとうございました。

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

javascript - Jquery UI ライブラリのレンダリングをブロックする JavaScript の削除

この遅延メソッドを使用して「レンダリングをブロックする JavaScript を削除する」ことにより、Web ページの速度を上げようとしています。

すべてのJavaScriptファイルをcombination.jsと呼ばれる1つに結合しましたが、このjqueryライブラリUIを結合しようとするたびに:

組み合わせ.jsでは、私のjqueryスクリプトは機能しません。

したがって、Google ページの速度は、このライブラリの「レンダリングをブロックする JavaScript を削除する」必要があるとまだ言っていますが、どうすればよいでしょうか?

アップデート:

Jquery UI Libraryをcombination.jsファイルの先頭に追加し、CHROMEとIE9でテストすると動作します! 上記の問題は、Firefoxでテストするときです(バージョン35を使用しています)。これはFirefoxの問題のようです

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

opengl - OpenGL ライトとディファード シェーディング

ディレクショナル ライトとポイント ライトの唯一の違いは、ディレクショナル ライトには減衰係数がないということでしょうか? また、ほとんどのゲームはディファード シェーディングを使用していますか? 全体で 10 個未満のライトを使用している場合、アプリケーションにディファード シェーディングを実装する必要がありますか?

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

opengl - マルチパスアプローチが絶対に必要になるのはどのような状況ですか?

すべてを同じシェーダー プログラム内に保持するのではなく、マルチパス レンダリングが避けられない必要性になる一般的で基本的な状況を列挙したいと思います。これが私がこれまでに思いついたものです。

  • 結果が現在のフラグメント周辺の非ローカル フラグメント情報 (つまりコンテキスト) を必要とする場合 (ボックス フィルターなど)、前のパスでこれが提供されている必要があります。
  • 結果が前のパスによって行われたハードウェア補間を必要とする場合。
  • 結果が何らかの計算セットのプリキャッシュとして機能する場合、それらを使用するパスで計算セット全体を単純に (再) 処理するよりも大幅にパフォーマンスが向上します。複数のレイター パス シェーダーがそれらの計算を繰り返すのではなく、共有できるコストのかかる方法です。したがって、一度計算して、複数回使用します。

上記の私自身の (素朴な) 推論から、頂点シェーダーとジオメトリ シェーダーは実際には遅延レンダリングの図に入っていないようであり、おそらく通常は最初のパスで行われることに注意してください。私にはこれは理にかなっているように思えますが、これを詳細に肯定または否定することは興味深いでしょう。

PS良い答えを集めるために、この質問は開いたままにしておくつもりです。

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

c# - OpenGL 遅延レンダリング: ポイント ライトの実装

C# と OpenGL (OpenTK を使用) を使用して遅延レンダラーを作成しようとしています。

しかし、ポイント ライトの通常の計算をどのように実装すればよいかわかりません。

ポイント ライト フラグメント シェーダ:

結果: 結果

それはうまく見えます。ただし、ライトは 10*10 の平面上にあり、ライトの半径は 5 であるため、ライトはサーフェスをほぼカバーするはずです。

問題は理解できたが、それを修正する方法がわからない...

通常の問題

それ以上のピクセルの nDotL は小さくなり、この「アーティファクト」につながります。

「* nDotL」部分を削除すると、ライトは次のようになります。

ここに画像の説明を入力

この場合、範囲は問題ありませんが、床の下部も点灯しています...

誰かがこれを修正する方法を教えていただければ幸いです。

必要に応じて、ソースコードもここにあります。

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

opengl - 深度テクスチャからのカメラ空間法線

1 回目のパスから保存された (非線形の) 深度テクスチャを使用して、スクリーン空間の法線を生成したいと考えています。2 番目のパスでは、深度、拡散、ID などをレンダリングできますが、深度から法線が機能しているようには見えません。

深さから法線を取得することに関する現在の理解:

  1. texture()/texelFetch() p現在の tex 座標でp+ (1, 0) = p1, p+ (0, 1) = p2; これらからカメラ空間の位置を再構築します

  2. v1ベクトルを取得p1 - p: 現在の位置とその画面/テクスチャ空間 x 隣接間のベクトル

  3. v2ベクトルを取得p2 - p: 現在の位置とその画面/テクスチャ空間の y 近傍の間のベクトル
  4. crossこれら 2 つをnormalize()積んで、現在のテクセルでサーフェス法線を取得します。

シェーダー (2 番目のパス! フルスクリーン クワッドにレンダリング)

バーテックス:

断片:

結果

ここに画像の説明を入力

質問何が間違っていますか? 5 歳児に説明するように説明してください。:)

これは、SSAO と指向性照明の基礎として使用されます。

私が知る限り、フラグメントdFdxdFdyはなくテクセルで作業しているため、答えではありません。