問題タブ [texturing]

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

ios - Quartz2D で画面外に描画し、その結果を iOS で OpenGL ES テクスチャとして使用する

私が読んだドキュメントによると、CGLayer を使用したオフスクリーン描画は、GPU と VRAM によって描画を保存/管理できるため、Quartz 2D 描画を行うための最高のパフォーマンスの方法です。

描画が終了したら、CGLayer からピクセル バッファを取得し、それを OpenGL テクスチャとして使用したいと考えています。

ピクセル バッファを使用してテクスチャを作成する方法を知っています。

CGBitmapContext へのオフスクリーン レンダリング、ピクセルの取得、それらのピクセルを使用したテクスチャの作成の例を見てきました。

Quartz 2D プログラミング ガイドでは、CGBitmapContext への描画は遅く、ソフトウェアで行われる (GPU の関与なし) ことを示唆しているため、そのパスを避けています。

それで、高速描画するには、その CGLayer で描画する必要があると彼らは言います。glTexImage2D() に送信できるメモリ バッファにピクセルを戻すにはどうすればよいですか?

どうもありがとう !

0 投票する
0 に答える
676 参照

opengl - OpenGL - 透明なテクスチャがオーバーラップする問題

私は OpenGL の初心者で、http://open.gl/でチュートリアルを流していました。私は学校のプロジェクトのためにそれらを拡張しようとしました. 複数のテクスチャが正しくレンダリングされないという問題があります。何らかの理由で、前のテクスチャが次のテクスチャの下に「残っています」。ここで何が起こっているのかはわかりませんが、洞察を本当に感謝しています。問題とその下のコードを明確に示していると思われる下の問題の写真があります。

ここにはまだ写真を投稿できないため、imgur のリンクは次のとおりです

コードは次のとおりです。

}

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

opengl - ogl テクスチャ クラッシュの Windows での lodepng

lodePNG を使用して png ファイルからテクスチャをロードしていますが、テクスチャをロードするとプログラムがクラッシュします。

VS 2010 を使用してコンパイルしましたが、エラーはありませんが、glTexImage2D を呼び出すとクラッシュが発生します。私のシステムは Windows 7 で、グラフィック カードで OGL 3.3 をサポートしています。

私は Mac OSX 10.6 という別のシステムを持っており、常にコードを移植していますが、Mac ではまったく問題はありません。Windows でテクスチャが正しく読み込まれるようにするための修正案はありますか?

lodePNG ファイルを入手したサイトは次のとおりです: http://lodev.org/lodepng/

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

opengl - 地形テクスチャリング

2つのテクスチャをグラデーションでブレンドする方法はありますか?元。最初のテクスチャは上から始まり下に移動し、2番目のテクスチャは下から上に移動します。グラデーションのように不透明度を緩め、スムーズな接続を実現したいと思います。出来ますか?

たぶん、そのようなテクスチャを作成する他の方法がありますか?問題は、私の地形の高さの違いがあまりよく見えないことです。1つの正方形の領域では、1つの三角形のテクスチャが他の三角形とは異なります。

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

opengl - OpenGL でゼロ テクスチャをバインドする

私のプログラムでは、t0 と t1 の 2 つのテクスチャを使用しています。t1 は追加で、場合によってのみ必要です。

描画用シェーダー:

正常に動作します。必要に応じて、2 番目のテクスチャが最初に重なります。glBindTexture( .. , 0 ) を使用するとゼロ テクスチャ (0,0,0,0) が返されると仮定しますが、NVidia ドライバーを 314.07 に更新した後、私のコードは glBindTexture( .. , 0 ) return (0,0) のように黒い画面を生成します。 ,0,1) テクスチャ。

いくつかのテストを実行します: シェーダーを使用

古いドライバー (296、306) では緑色の画面が表示され、新しいドライバーでは赤色の画面が表示されます。Win 7 (GeForce 210) と win XP (GTX 260) を搭載した 2 台のコンピューターでテストしました。

したがって、私の質問は次のとおりです。0 を 2 番目のパラメーターとして glBindTexture を使用するのは正しいのですが、新しいドライバーで同じ結果 ( 0000 texture ) を達成するにはどうすればよいですか?

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

opengl - Blender でいくつかのテクスチャを 1 つに

Blenderにいくつかのモデルがあります。そうしたいです:

  1. いくつかの異なるテクスチャを 1 つに接続し、ビットマップとして保存します
  2. これらの接続されたテクスチャの UV マッピングを作成します

OpenGL のテクスチャ モデルでこの問題を解決する必要があります。1 つのテクスチャを 1 つのモデルにバインドできるデータ構造があるため、1 つのモデルごとに 1 つのテクスチャが必要です。Texture GL_TEXTURE_xD_ARRAY を使用できることは承知していますが、プロジェクトを複雑にしたくありません。Blender で簡単な UV マッピングを行う方法を知っています。

私の質問:

  • Blender だけで 1. と 2. のフェーズを実行できますか?
  • Blender Bakeテクニックは私が探しているものですか?
  • それを行う方法を示すチュートリアルはありますか?(この特定の問題について)
  • たぶん、誰かが別の Blender テクニック (または OpenGL ソリューション) を教えてくれます
0 投票する
2 に答える
1096 参照

opengl - GL_TEXTURE_2D_ARRAY のテクスチャの正しいストレージ割り当て

ロードしている6つのテクスチャを含むGL_TEXTURE_2D_ARRAYがあるとします。

このコードの前に、すべてのテクスチャにストレージを割り当てる必要があります。よく理解していれば、glTexImage3D() または glTexStorage3D() を使用してこれを行うことができます。次に例を示します。

また

================================================== ============================ しかし、テーブル内のすべてのテクスチャにサイズを割り当てると、[幅のパラメーターのペアは 1 つしかありません。 、高さ] テクスチャの。すべてのテクスチャ イメージに別の寸法を持たせたい場合はどうすればよいですか? グラフィック エディタですべてのテクスチャを 1 つのサイズにスケーリングせずに、この問題の解決策はありますか?

もう 1 つの問題は、glTexStorage3D() が 3 番目のコード スニッパーに表示され、プログラムがクラッシュするという事実です。そこで見つけた glTexStorage3D() に関する情報:
http://www.opengl.org/wiki/Array_Texture

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

opengl - LWJGL OpenGL テクスチャリングが正しくない

OpenGL/LWJGLでシンプルなボタンを作ろうとしているのですが、

2D QUAD を正しくレンダリングできますが、テクスチャを実装すると、次のようにクワッド全体の約 3/4 の部分だけがテクスチャ化されます。

テクスチャ座標を削除すると、次のようになります: https://dl.dropboxusercontent.com/u/60223805/glerror2.png

none はテクスチャ (slick-util ライブラリから) であり、関数 Enable2D_GUI および Disable2D_GUI は、オルソなどを有効または無効にするだけです。

何が間違っている可能性がありますか?私は OpenGL に非常に慣れていないので、私の質問が少しわかりにくい場合は申し訳ありません

これは私の Enable2D_GUI および Disable2D_GUI 関数です。

3D QUAD でテストすると、どちらも機能しません。同じ結果です。これは私のOpenGL初期化コードです: