問題タブ [opengl-es-2.0]
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.
android - WavefrontOBJ形式からの「インデックス」のロード
OpenGLES2.0を使用してAndroidアプリケーションを開発しています。
Blender2.49bで作成されたエクスポートをWavefrontOBJ形式でロードしたいと思います。verxtexの位置、法線、テクスチャを特定しました。
glDrawElements(GLenumモード、GLsizeiカウント、GLenumタイプ、const GLvoid * indexs)を使用してメッシュを描画したいのですが、WavefrontOBJファイルから最後のパラメーターであるインデックスを取得する方法がわかりません。
私が探している「指標」に直面していますか?
私はこれをフォーラムで見つけました:faces = 1で始まるインデックス!
「1から始める!」の意味は何ですか?
ありがとう。
opengl-es - 頂点、法線、および texcoordinate インデックス
glDrawElements と頂点、法線、および texcoordinate インデックスについて質問があります。
ジオメトリ頂点、頂点法線、テクスチャ頂点があり、それぞれに独自のインデックスがあるとします。
これらのインデックスのどれを使用できますか?
このコードがある場合:
teapotIndices を保持する必要があるのは何ですか?
ありがとう。
opengl-es - フラグメント シェーダーからテクスチャ座標を削除する
頂点シェーダーとフラグメント シェーダーがあり、テクスチャではなくソリッド カラーを表示したいと考えています。
次の頂点シェーダーとフラグメント シェーダーがあります。
テクスチャを表示しないようにフラグメント シェーダを変更するにはどうすればよいですか? (私の英語でごめんなさい)。
ありがとう。
iphone - ブラーする OpenGL ES 2.0 フラグメント シェーダーが低速で低品質
iPad 用のぼかしシェーダーを作成しようとしています。私はそれを機能させていますが、結果にはあまり満足していません。フレームレートが非常に途切れ途切れになり、ぼかしの量が多いとぼかしががらくたのように見えます。
物事を改善する方法についてのアイデアはありますか?
出力例:
編集:ボックスぼかしが良いかもしれません。シェーダのボックス ブラー バージョンを次に示します。
これがボックスぼかし出力です(これは水平ぼかしのみですが、私が望むものには十分かもしれません):
iphone - ES2.0マルチパスとテクスチャへのレンダリングの実装
iPhoneでOpenGLES2.0を使用してマルチパスレンダリングを設定するためのサポートが必要です。テクスチャへのレンダリングとマルチパスシェーディングの両方を実装する例を見つけることができませんでした。
私は以下を実装するいくつかの命令とサンプルコードを探しています:
- 最初の段階:テクスチャにレンダリングします
- 第2段階:そのテクスチャを入力して画面にレンダリングします
AppleのOpenGLESプログラミングガイド、OpenGLシェーディング言語(オレンジブック)、およびO'ReillyのiPhone3Dプログラミングブックを参照しました。
Orange Bookは、遅延シェーディングについて説明し、ファーストパスレンダリングとセカンドパスレンダリング用の2つのシェーダープログラムを提供しますが、そのアプリケーションをセットアップしたり、両方のシェーダー間でデータを通信する方法を示すサンプルコードは提供しません。
質問:
- テクスチャにレンダリングする方法は?
- glDrawElementsの使用
- そのテクスチャを次のパスに入力するにはどうすればよいですか?
- 2つのシェーディングプログラムを実装するにはどうすればよいですか?
- 1回目と2回目のシェーディングプログラムを交互に行う方法は?
- パスごとに「使用」をアタッチ、デタッチ、および呼び出す必要がありますか?
- マルチパスシェーディングを実装する方法は?
file-format - OpenGL ブレンダー エクスポート形式でロードするのが最も簡単
C++ で OpenGL ES 2.0 アプリケーションを開発しています。
OpenGL を使用してブレンダーのモデルを表示したいのですが、OpenGL ES 2.0 でロードするのに最も簡単な形式がわかりません。
私はWavefront obj形式で、頂点をアンパックする方法とglDrawElementsの最後のパラメーターの頂点を取得する方法を試してきました。
最も簡単なフォーマットを知っていますか?
ありがとう。
c++ - ポインターを静的配列にコピーする
私はいくつかのネイティブ コード (OpenGL ES 2.0 でレンダリングするために使用される) を使用して Android アプリケーションを開発しています。
次のメソッド シグネチャがあります。
要素にアクセスするjfloatArray vertices, jfloatArray normals, jfloatArray texCoord, jintArray indices
には、次のようにします。
そして、glDrawElements(...) の後、最後に次のことを行います。
必要なモデルを描画していません。おそらく、ポインターがまだ glDrawElements によって使用されている間にポインターを解放しているためです。よくわかりませんが、他のテストを行う前に確認したいと思います。
私の質問は、ポインタから静的配列を作成するにはどうすればよいですか?
これを行うと、ポインターの要素を取得できます。
しかし、私は続ける方法がわかりません。
何かアドバイス?
その方法をネットで検索しておりますので、何かわかりましたらお伝えします。
ありがとう。
iphone - OpenGL ES 2.0で深度バッファーを使用して立方体を描画するにはどうすればよいですか?
OpenGL ES 2.0とデプスバッファを使用して、立方体を描画しようとして成功しませんでした。
どこが間違っているのかを確認するために比較できる、利用可能なこの例はありますか?
iphone - なぜデプスバッファが必要なのですか?
このプロジェクトではキューブがデプスバッファなしで描画するため、デプスバッファを使用する必要がある理由がわかりません。
英語が下手でごめんなさい。私はロシア人で、1。5年前に英語を学び始めました。
matrix - OpenGLES2.0マトリックス
これは私の頂点シェーダーコードです:
そして、私はこのコードでユニフォームを更新します:
glUniformMatrix4fv(uniforms [UNIFORM_MODELVIEWMATRIX]、1、0、[scaleMatrix getMatrix]);
しかし、この文字列を実行すると、最終更新の結果(スケール)がリセットされます。
glUniformMatrix4fv(uniforms [UNIFORM_MODELVIEWMATRIX]、1、0、[rotationMatrix getMatrix]);
複数のマトリックスを使用するにはどうすればよいですか?