問題タブ [qt3d]

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 に答える
2228 参照

qt - QT3D の透過オブジェクト

QT3D でメッシュ オブジェクトの透明度を変更できるようにする必要があります。デフォルトの ForwardRenderer を含むルートとして Scene3D コンポーネントを使用しています。

私の 3D オブジェクトは、Mesh、Transform、および PhongMaterial で構成されています。

どんな助けでも大歓迎です。

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

qt - ライト コントリビューションからメッシュを除外する方法の遅延レンダリング

Qt3D を使用して遅延レンダリング パイプラインをセットアップしました。ここまでは順調ですが、シーンでレンダリングされたメッシュの周りに選択ボックスを追加したいと思います。

残念ながら、選択ボックスのメッシュはライトの影響を受けており、それは望ましくありません (下の「影付き」の図を参照)。たとえば、環境光の強度を 0 に設定しても、選択ボックスは引き続き表示されるはずです。もう 1 つの例は、ビューポートのコーナーの 1 つに典型的な X/Y/Z インジケーターを表示したい場合です。

ライト コントリビューション計算用の典型的なライト パス シェーダーを用意しました。これは (要するに) 次のとおりです。

fragColor 行を次のように置き換えると:

下の陰影のない画像を取得します。これは、選択ボックスに必要な色を示しています。

ライトパスから特定のメッシュを除外するためのトリックや一般的な方法はありますか?

color alpha = 0.123 などの特別な値を使用してシェーダーを「だます」ことは既に試みましたが、まったく役に立ちません。

影付き

ここに画像の説明を入力

影なし

ここに画像の説明を入力

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

opengl - GLSL スポットライト投影ボリューム

私のオープン ソース プロジェクトでは、Qt3D を使用して遅延レンダリング パイプラインをセットアップしました。ここまでは順調ですが、スポットライトのプロジェクション ボリュームを追加して先に進みたいと思います。(例: シーンに煙があるかのように) 次のように:

ここに画像の説明を入力

私が使用しているフラグメントシェーダーは、質問の最後にあります。フラグメントごとに、ライトの位置からレイ マーチングを実行し、コーンとの交点を見つける必要があることを読みましたが、これを GLSL に変換する方法がわかりません。GBuffer からの深度マップ (カメラの視点から) を使用してユニフォームを簡単に追加できますが、それが役立つかどうかはわかりません。

私の GLSL の知識は非常に限られているため、実際のコードで返信してください。理解できない/コードに変換できない長い数学的説明ではありません。しばらくお待ちください。

これは、上記の元のシェーダーでスポットライトがどのように見えるかです: ここに画像の説明を入力

[編集 - 解決済み] Rabbid76 の優れた回答と貴重なサポートに感謝します

これは、コーン プロジェクションを表示するように変更されたコードです。

シェーダーに渡されるユニフォームは次のとおりです。

スクリーンショット:

ここに画像の説明を入力

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

c++ - Qt3D で gadient 背景を作成するにはどうすればよいですか?

グラデーションの背景 (黒から白など) を作成する C++ コードを探しています。現在、Qt3DWindowのクリアカラーを設定することで、無地の色しかありません:

グラデーションを作成するにはどうすればよいですか?