問題タブ [vertex-buffer]

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

vertex-buffer - 頂点バッファの数が多すぎますか?

D3D11 のような新しい API では、頂点バッファーの使用が強制されます。

静的 (内容は変更されません) または動的頂点バッファー (内容は CPU によって更新および変更可能)を使用できます。

私の質問は、いくつの頂点バッファーが多すぎるのですか? 限界に近づいていることをどのように知ることができますか? すべてのモデルに独自の頂点バッファーが必要ですか? 必要に応じて更新しながら、たとえば 8 個の頂点バッファーをすべてのモデル間で共有する必要がありますか?

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

directx - 以前に成功した PIX 呼び出しが IASetVertexBuffers() の再生エラー中に失敗した

しばらくコーディングしてきた SlimDX DirectX11 ゲームでシェーダーをデバッグしようとしています。コードは正常に実行され、問題なく実行されます (テクスチャを無視しているように見えますが)。実験を実行して PIX 内の単一フレームをキャプチャすると、正常に実行されますが、キャプチャした PIX の [レンダリング] タブまたは [メッシュ] タブにアクセスしようとすると、問題なく実行されます。フレーム 次のエラーが表示されます。

EID は、キャプチャしたフレーム (フレームは EID 108 で開始) の直前に発生するものであるため、どこで失敗しているのかわかりません。

フレームの完全なストリームを実行して、エラーが表示されるかどうかを確認することにしました。今回は便利なものを手に入れました。

そして、それを引き起こしたイベントログ:

出力ログにも何もありません。誰もこれに遭遇したことがありますか?もしそうなら、どのように修正しましたか?

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

c - OpenGL で VBO を表示できません

OpenGL で VBO と IBO を使用していますが、正しく描画できません。フレーム表示機能で忘れていた可能性があることを教えてください。- struct Point3D は、(x,y,z) 内に 3 つの float を持つ構造体です。- nbVertex は、glVertex 配列内の頂点の量です。- nbVBOInd は、VBOInd 配列内のインデックスの量です。

ありがとう !

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

opengl - openGL glUnmapBuffer()が不明なエラーコード1280を返します

概念実証コードを書いています。バッファが作成された後、バッファオブジェクトにデータを書き込めることを証明したいと思います。ただし、バッファに書き込んだ後でバッファのマップを解除しようとすると、GLenumエラーコード1280が表示されます。私は完全に窮地に立たされています。

バッファをカラーデータで初期化し、正常にレンダリングできます。問題は、後でバッファ内のデータを変更できないことです。コードは以下のとおりです。これは、新しいデータをバッファーに書き込む方法と、それを読み戻そうとする方法を示しています。エラーコードは、glGetError()が呼び出された後のコメントに表示されます。変数「cbo」はカラーバッファーです。

バッファオブジェクトを作成したコードは次のとおりです。

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

c - OpenGL ES 1.1 と ES 2.0 での頂点バッファー オブジェクトを使用した描画

私はopenGLが初めてです。私は私の主なレファレンスとしてアップルのドキュメントを使用してい ます http://developer.apple.com/library/ios/#documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/TechniquesforWorkingwithVertexData/TechniquesforWorkingwithVertexData.html#//apple_ref/doc/uid/TP40008793-CH107-SW6

私の問題は、2ではなくopenGL ES 1.1を使用しているため、リスト 9-3 で使用されているglVertexAttribPointerglEnableVertexAttribArrayなどの関数が認識されないことです ... :)

このドキュメントで説明されている最適化を試みています: インデックスと頂点を構造体として保持し、そのすべてのデータ: 位置、色 (リスト 9-1)

リスト9-2、9-3のようなVBOを使用する

前述したように、そこで使用されている関数のいくつかは、openGL ES 1.1 には存在しません。ES 1.1 で同じことを行う方法があるかどうか疑問に思っています。おそらく他のコードを使用しますか?

ありがとう、アレックス


クリスチャンの答えに従って編集し、glVertexPointer、glColorPointerを使用しようとしました。コードは次のとおりです。立方体は印刷されますが、色は印刷されません... :(。誰でも、ES 1.1を使用してそのような方法でVBOを使用することは可能ですか

キューブ データ:

関数

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

opengl - フラグメントシェーダーのオブジェクトごとのデータの保存

オブジェクトごとに設定されるいくつかのユニフォームを使用するフラグメントシェーダーがあります。これらのユニフォームをグラフィックカードに保存する方法はありますか?頂点バッファオブジェクトについて聞いたことがあります(ただし、チュートリアルは見つかりません)。新しいオブジェクトを描画するたびに変数を再設定する必要がないように、そこに情報を格納するためのトリックはありますか?

各オブジェクトには頂点がほとんどありませんが、完全に静的です。

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

xna - VertexBuffers に関する初心者の質問

私は生まれて初めて XNA を見ていますが、読んだ例に戸惑っています。それらには、私が理解できない重複が含まれています:

描画メソッドで VertexBuffer と VertexPositionTexture の両方が使用される理由がわかりません。VertexBuffer を保持するだけで十分ではありませんか?

GraphicsDevice.SetVertexBuffer への呼び出しを削除し、GraphicsDevice.DrawUserPrimitives だけに依存すると、すべてが同じように見えます。では、VertexPositionTexture[] を使用するだけでうまくいく場合、VertexBuffer を使用する意味は何ですか? :-)

(私はISがポイントだと確信しています-それを見るのを手伝ってください!!! :)

問題解決: くだらない XNA ブック! ありがとう @dowhilefor

0 投票する
4 に答える
3850 参照

opengl - SDL を使用した頂点バッファー オブジェクト

SDL 1.2を使用する場合、OpenGL Vertex Buffer Objects (VBO)を使用できるようにするには、何を含める必要がありますか?

現在、私はSDL.h, SDL_opengl.h, SDL_image.h

そしてエラーを取得します:

glGenBuffersARB, glBindBufferARB, glBufferDataARB not declared in this scope

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

shader - GLES2 glBindAttribLocation() は必要ですか?

これは初心者の質問かもしれません。私が理解しているように、glBindAttribLocation(..., AAA, ...) は、AAA が一意である限り、プログラム内の属性を AAA のロケーション ID にバインドします。次のコードがある場合:

これにより、2 つの変数が場所 ID 0 と 1 にバインドされます。次に、次のように呼び出します。

ここまでで、glVertexAttribPointer()の第一引数に0と1のIDが渡されていることが分かりました。

返される ID が 0 と 1 ではなく 5 と 6 になるように、glGetAttribLocation() 呼び出しを介して (上記のように) 属性の位置 ID を取得した場合、5 と 6 を glVertexAttribPointer( ) と glEnableVertexAttribArray() の代わりに 0 と 1??

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

opengl - OpenGL Vertex Buffer が描画されない (LWJGL)

私はより良い描画方法を実装しようとしており、頂点バッファーを使用してみました。現在、LWJGL Wiki [Using Vertex Buffer Objects (VBO)]のチュートリアルに従っていますが、うまくいきません。まったく描画されません (私が見る限り)。glVertex3d()代わりに描画すると、すべて正常に動作します。

これは次のようになります。

そして、実際にコンテンツを埋めるサブクラス:

私が言ったように、このコードは何も描画しません (私が見ることができます)。適切な場所で適切なコードを呼び出していると確信しており、単純な色付きの立方体を描画する必要があります。何か簡単なことを見逃しているに違いないと確信していますが、頂点バッファ オブジェクトの経験はありません。