問題タブ [multitexturing]
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.
opengl - OpenGL のテクスチャ ユニットと頂点配列
面ごとに異なるテクスチャを持つ 1 つの立方体を描画しようとしています。display()
を呼び出す前に、ルーチンですべてのテクスチャ ユニットを有効にする必要があると述べている多くのチュートリアルに出くわしましたglDrawElements()
。私はこれを私の使命としています:
これはすべて私にとって理にかなっています。ただし、バッファにデータを入力するとき (たとえば、モデル データをロードするとき) にどのテクスチャを参照しているかを判断する方法は異なります。ありがとうクリス
opengl - OpenGL: 複数のテクスチャ ユニットをオフにする
他のレンダリング パーツに影響を与えるため、複数のテクスチャ ユニットをオフにする方法。私はそれらをアクティブにします:
glDeactivateTexture のようなものはありますか?
c++ - OpenGL マルチテクスチャリング - glActiveTexture が NULL です
マルチテクスチャリングを使用したい新しいプロジェクトを開始しました。以前にマルチテクスチャリングを行ったことがあり、OpenGL のバージョンでサポートされています。
ヘッダーには次のものがあります。
コンストラクターには次のものがあります。
これは、「マルチテクスチャリングに失敗しました」というメッセージ ボックスを示し、glActiveTexture の内容は 0x00000000 です。
glActiveTexture( GL_TEXTURE0_ARB ) になったとき; アクセス違反エラーが発生する
私は MVC ダイアグラムを実装しているので、これはすべて地形ビュー クラスにあります。
opengl - マルチテクスチャはシーン全体を暗くします!
3つのクワッド、A、B、およびCを使用してシーンを実装しました。クワッドCはクワッドBの後ろにあります。クワッドBはクワッドAの上にあります。
クワッドBを除いて、すべてのクワッドは同じテクスチャを使用しています。クワッドBはアルファマップを使用し、他のすべてのクワッドが使用しているベーステクスチャを使用します。
以下のコードサンプルは、固定機能のマルチテクスチャリングを使用してQuadBを描画する方法です。
マルチテクスチャのアルファマップをクアッドBに適用すると、テクスチャのクワッドAとCの色が変わり、クアッドBよりも暗くなります。
GL_TEXTURE1への言及を削除すると、Quad Bでのアルファマッピングは失われますが、すべてがうまくレンダリングされ、調光は行われません。
推奨事項やヒントはありますか?glTexEnviの呼び出しに何か問題がありますか?
android - OpenGl es 2.0GLSLfragmentColor複数のテクスチャ
フレームをレンダリングしています。フラグメントの色は2つのテクスチャに基づいています。つまり、1つのパスでテクスチャの1つの値をインクリメントしたいのですが、1つのパスで2つのフレームバッファで1つのプログラムを実行できますか?
gl_fragmentColor1やgl_fragmentColor2と同様ですが、gl_fragmentColor2は2番目のフレームバッファーにバインドされていますか、それとも何らかの方法でsampler2dを使用してテクスチャに書き込むことができますか?現在、シェーダーに属性として渡されたカラー配列を使用しており、CPUで色の変化を計算していますが、魔女のテクスチャへのアプローチははるかに高速です。問題は、必要なときにピクセル値をデクリメントできないことです。
c++ - 各コーナーに独自のテクスチャを持つ三角形を描く方法は?
基本的に、三角形の各コーナーに 3 つのテクスチャを指定し、コーナーの glColor() で色が補間されるように、あるテクスチャから別のテクスチャに補間したいと考えています。
編集:これはテクスチャ コンバイナでは不可能と思われるため、シェーダで実行したいと考えています。
これは私が今持っているフラグメントシェーダーコードです:
glColor(); を使用しています。色 (1,0,0)、(0,1,0)、(0,0,1) を各三角形の角にプッシュし、色を読み取って、それに応じてどのテクスチャをどれだけブレンドする必要があるかを確認します.
問題は、頂点に色を使用できなくなったことです。そのため、フラグメントシェーダーにテクスチャをブレンドする方法を伝えるための最良のアプローチは何か、三角形の各コーナーで glColor() を使用していくつかを適用できることを尋ねています。着色?
Edit2:ブレンド比率を伝える 3D texcoord を送信することでなんとか機能させることができましたが、これが最善のアプローチですか? これについてもっとアイデアを聞きたいです。
opengl-es - 固定パイプライン opengl で A に RGB を使用する
はい、短い質問です: Opengl ES 1.1 (固定パイプライン) で、RGB コンポーネントのいずれかをアルファとして使用することは可能ですか?
GL_COMBINE では、RGB をアルファのソースとして使用することは許可されていないようです。
この制限が課される理由と、代替手段は何ですか? かなりのことを試しましたが、解決策を見つけることができません。
ios - 異なる UV 座標を持つ OpenGL ES 1 マルチテクスチャリング
マルチテクスチャリングを使用してオブジェクトをレンダリングする必要がありますが、同じオブジェクトに対して両方のテクスチャの UV 座標が異なります。1 つはノーマル マップで、もう 1 つはライト マップです。
これに関する有用な資料を提供してください。
iphone - マルチテクスチャ オブジェクトの後に拡散テクスチャを使用してオブジェクトを描画する方法
マルチテクスチャリングを使用して 1 つのオブジェクトを描画しています。それは問題ありませんが、その後拡散テクスチャのみを使用して他のオブジェクトを描画すると、その拡散テクスチャは前のテクスチャにバインドされます。デフォルト以外のテクスチャ ユニットを無効にする必要があり、GL_TEXTURE0 でアクティブなテクスチャ ユニットを作成する必要があることはわかっていますが、機能していません。
これが私のコードです
単純な拡散テクスチャの場合、テクスチャをバインドする前に記述しなければならないコマンドは何ですか?
他のサンプルコードは役に立ちます。