問題タブ [geometry-shader]
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.
transformation - Cg ジオメトリ シェーダーでのワールド空間ビューの方向
Cg ジオメトリ シェーダー内のワールド空間でビューの方向を取得する方法は?
hlsl - 出力ストリームでジオメトリ シェーダーをどのように使用しますか?
この機能は非常に不十分に文書化されているようです。DirectX SDK のジオメトリ シェーダー チュートリアルでは、CreateGeometryShaderWithStreamOutput を使用する例はなく、その基本を説明するスレッドはどこにもありません。msdn では、それを作成するために使用する関数が示されています、しかし、それがどのように、そして何のために使用されているかではありません.それをうまく使用した人はいますか?小さな例またはチュートリアルへのリンクを共有できますか?それは何のために使用され、パフォーマンスは賢明ですか?私が理解している限り、GPU ベースの錐台カリングに使用されますか?
opengl - ジオメトリシェーダーの幅の広い線は奇妙な動作をします
ジオメトリシェーダーを使用して、(画面スペースで)任意の幅の広い線をレンダリングしようとしています。最初はすべて問題ないように見えますが、特定のビュー位置では、線が正しくレンダリングされません。
左側の画像は正しいレンダリングを示しています(正のX、Y、Z軸に3本の線、幅2ピクセル)。
カメラが原点の近く(実際には線の近く)に移動すると、線は右の画像のようにレンダリングされます。シェーダーは単純なようで、GPUで何が起こっているのかわかりません。
arrays - Macで頂点からジオメトリシェーダーにさまざまな配列を渡す
頂点シェーダーからジオメトリシェーダーに、頂点ごとに任意の数のさまざまな値を渡すことができるようにしたいと思います。OpenGLには動的配列がないことを知っているので、コンパイル時に番号を指定する必要があります。すべては、NVIDIAGeForce9400MグラフィックカードとOpenGL2.1のみを提供するドライバといくつかの拡張機能を備えたAppleMacBookで実行する必要があります。
ここでの問題は、ジオメトリシェーダーが、頂点ごとに1つの要素を持つフォームまたは配列で入力を受け取ることであるように思われます。私の知る限り、私のセットアップで使用できる配列の配列はなく、配列を含むインターフェイスブロックの配列もありません。これまでのところ、私が思いついた最善の解決策は、この情報を渡すためにいくつかの変数を指定し、頂点シェーダーの配列から抽出して、ジオメトリシェーダーで特定のストライド長の配列に戻すことです。そうすれば、計算されたインデックスを使用して値へのアクセスを実行できます。
より良い、よりエレガントな方法はありますか?
macos - OSX で OpenGL を使用して 3D テクスチャにレンダリング (マルチレイヤー フレームバッファ アタッチメント)
OSX 10.7.5 で OpenGL 3.2 CORE コンテキストをセットアップし、レイヤード レンダリング アプローチを使用して 3D テクスチャにレンダリングしようとしています。ジオメトリ シェーダ機能「gl_layer」はサポートされていますが、GL_TEXTURE_3D をフレームバッファ アタッチメントにバインドできません。GL_FRAMEBUFFER_UNSUPPORTED を返します。
これは、MBP のカードとドライバーのバージョンです。
AMD Radeon HD 6770M 1024 MB - OpenGL 3.2 コア (ATI-7.32.12)
この機能は、特定の拡張子 AFAIK とは直接関係ありません。これがドライバーまたはハードウェアでサポートされていないかどうかを判断する方法を知っている人はいますか? 本当にありがとう。
再構築するコードの下。glfw を使用してコンテキストを設定します。
shader - 「ビュー逆行列」の計算方法
RenderMonkey で出てきたパーティクル システムの例を試しています。「ビュー逆行列」を使用して、パーティクル エフェクトのクワッドを表示します。
RenderMonkey 内からすべての値を確認できますが、「ビュー逆行列」を計算する方法がわかりません。ビュー行列の逆行列でも、ビュー投影の逆行列でもありません。
これが私が知っていることです。名前は「変数セマンティクス」です。
編集、RenderMonkey にバグがあると思います。別の効果をアクティブにして元に戻らない限り、Viewmatrix は移動しても更新されないためです。
この記事から: http://swiftcoder.wordpress.com/2008/11/25/constructing-a-billboard-matrix/
私はそれが次のとおりだと信じています:
ここで、V はビュー マトリックスの回転部分の逆数を表し、x、y、z はビューの位置を表します。ただ、レンダーモンキーのバグでやってみるまで確認できません。
opengl - ジオメトリシェーダーに関するクエリ
GL_ARB_geometry_shader4拡張機能を使用してジオメトリシェーダーを扱っています。
私のコードは次のようになります:
私の頂点シェーダーは:
ジオメトリシェーダーは:
このコードでは何もレンダリングされません。glDrawArrays()のモードは正確には何である必要がありますか?GL_GEOMETRY_OUTPUT_TYPE_EXTパラメーターはglDrawArrays()にどのように影響しますか?
私が期待しているのは、3つの頂点がGeometry Shaderに渡され、それらを使用してサイズ4のプリミティブを作成することです(GL_TRIANGLE_STRIPに4つの頂点が必要であると想定)。誰かがこれに光を当ててくれませんか?
macos - MacOS のジオメトリ シェーダー
単純なパススルー ジオメトリ シェーダーを作成しようとしていますが、うまく機能せず、その理由もわかりません。ここに私のGSがあります:
MacOS 10.8 と OpenGL Shader Builder 2.2 (テスト用) を使用しています。バージョン120が私が使用できる最新のようです。
問題は、コンパイルとリンクは成功するが、何もレンダリングされないことです。
設定しました
私は何が欠けていますか?
opengl - ジオメトリ シェーダーのボクセル化が間違っている
モデルを合法化するために、(シェーダー メーカーを使用して) ジオメトリ シェーダーを作成しようとしています。まず、ボクセル化を試みていますが、結果が良くなく、どこが悪いのかわかりません。
次のコードでは、入力三角形の重心を見つけて、作成するボックスの中心にします。
私は世界で最もエレガントなコードではないことを知っていますが、最初に最初に行き、それを機能させる必要があります...
これは私が得ているものです:
これは私が得るべきものです:
opengl - シェーダー パイプラインを介して頂点カラーを渡すにはどうすればよいですか?
頂点、ジオメトリ、およびフラグメント シェーダーを介して頂点の色を渡そうとしています。
頂点シェーダー:
ジオメトリ シェーダ:
フラグメント シェーダー:
ただし、機能していません:-(。両方のポイントが灰色になります。これを行うにはどうすればよいですか?