問題タブ [gl-triangle-strip]
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 - 退化した三角形と GL_TRIANGLE_STRIP の問題
を 1 回呼び出すだけで複数の三角形ストリップを描画しようとしてglDrawElements
いますが、この問題に関する調査では、縮退した三角形を使用する必要があることがわかりました。この件に関する私の理解は間違っているかもしれませんが、これにより、ストリップから別のストリップに「ジャンプ」できるはずだと思いました。
このための私のコード全体は、私が投稿したこの最近の質問にあります。関連があると思われる場合は、そこを見てください。
私は基本的に、もちろん4つの三角形で2つのクワッド(単純化のため)を描画しようとしていますが、互いに分離しています。そのために、次のようなインデックスを使用します。
最初のストリップの最初の頂点は 0 から始まり、2 番目のストリップの最初の頂点は 256 から始まります。これは、このインデックスの最終結果です。
これは正しいですか、それとも 2 つのクワッドを「接続」する線がまったく存在しないと考えているのは正しいですか?
c++ - 三角ストリップで平面を生成します
三角ストリップを使用して平面を描画する頂点のリストを生成するための最良のアルゴリズムは何でしょうか?
平面の幅と高さを受け取り、正しくインデックス付けされた頂点を含むfloat配列を返す関数を探しています。
widthは、行ごとの頂点の数を表します。
heightは、列ごとの頂点の数を表します。
opengl - OpenGL: 3D メッシュと法線の三角形ストリップに関する問題
私はopenglプログラミングが初めてです。現在、洞窟シャフト形成のアニメーションを作成中です。Z 軸に沿ったシャフトのプロファイルの座標セットがあります。私の計画は、このデータから 3D メッシュを作成することであり、そのために TRIANGLE_STRIPS を使用することにしました。私がこれを行った方法は、次のような複数のストリップを作成したことです。
私の質問は次のとおりです。
これは正しい方法ですか?今、法線に問題があるからです。GL_SMOOTH シェーディングを使用したいのですが、そのために頂点の法線を計算する必要があることを理解していますか? しかし、私の cas 頂点では 10 と 3 は同じなので、2 つの法線があるでしょう??? 問題ありますか?複数のストリップを作成する他の方法はありますか?
複数のストリップを作成する他の方法はありますか? それとも、ストリップを使用したソリューションが最適ではないでしょうか?
別の問題は、このストリップの長さが等しくないことです。いくつかは他のものより短いです。ご協力ありがとうございました :)
opengl-es - グリッドから頂点インデックスを取得するのに役立ちます
グリッドからインデックスを取得して GL_TRIANGLE_STRIP メッシュhttp://dan.lecocq.us/wordpress/2009/12/25/triangle-strip-for-grids-a-construction/を構築する方法に関するこの小さなチュートリアルに従っています
いくつかのインデックスを正しい順序で取得していますが、最後の図に示されているように、頂点 7 と 8 のロジックを実行できません。
これが私のコードです:
そして、ここに私の出力があります:
更新: コメントに続いて、インデックスを取得するために別のアルゴリズムを実行します。これは、これまでのところです:
このコードは、いつ進む必要があるか、いつ戻る必要があるかを教えてくれます。i % (cols*2)を実行すると、0、1、2、3、4、5、6、7、0 のようなリストが得られます。 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7 なので、理論的には +4 -3 先に +4 - 5 後退する
更新 2: いくつかの進歩がありました。これらは新しい結果です 0、4、1、5、2、6、3、7、7、11、6、10、5、9、4、8、14、18、15 、 19, 16, 20, 17, 21最後の数字のセットはまだ間違っています
更新 3:
ついに手に入れました!ここに新しいコードがあります
iphone - インデックスなしで立方体を描画するには?OpenGL ES 2.0
インデックスなしで VBO を使用して立方体を描画したい。インターネットで何も見つかりません(チュートリアル、例)。私が試したこと:
しかし、立方体ではなく、何かがおかしいことがわかりました
algorithm - OpenGLES用の三角ストリップへの多角形の三角形分割
あまり複雑ではない2D凹多角形(穴なし)を三角ストリップに三角分割して、を使用して描画するためにOpenGLESに送信する準備ができている高速多角形三角形分割アルゴリズムを探しています。GL_TRIANGLE_STRIP
私はいくつかのアルゴリズムを知っていますが、私のニーズに合うものを見つけることができませんでした:
- http://www.flipcode.com/archives/Efficient_Polygon_Triangulation.shtml
- このアルゴリズムは問題なく機能しますが、問題は、描画できない単純な三角形を返すことです。これ
GL_TRIANGLE_STRIP
を使用する必要がありますGL_TRIANGLES
。これは、多数の頂点ではあまり効率的ではありません。
- このアルゴリズムは問題なく機能しますが、問題は、描画できない単純な三角形を返すことです。これ
- http://code.google.com/p/iphone-glu/
- 関連付けられた例はなく、OpenGLES2.0を搭載したiOSで正常に使用した人は見つかりませんでした
- 何が返されるのかわかりませんが、対応するOpenGLコマンドも呼び出されているようです。必要なのは三角形だけです。
- メモリリーク
私が開発しているプラットフォームは、iOS、OpenGL ES 2.0、cocos2d2.0です。
誰かがそのようなアルゴリズムで私を助けることができますか?または、その他のアドバイスをいただければ幸いです。
andengine - 指のスワイプの下にビジュアルを追加、フルーツ忍者のような三角形のストリップ
ユーザーが画面上で指を入れ替えたときに三角形のストリップを表示したい。パーティクル システムを使用するか、スプライトを使用するか、トライアングル ストリップ アルゴリズムを使用して、AndEngine でそれを行う方法がわかりません...
何をすべきか分からなかったので、コードを書いていません。画像をアップロードしています。アイデアを共有してください。
アップデート
誰かが Iphone でこれを行いましたが、残念ながら私は言語の構文に慣れていません。このコードのアルゴを理解するのを手伝ってください https://github.com/hiepnd/CCBlade
**欲しい効果**
完全な Android プロジェクトのダウンロード
http://www.andengine.org/forums/resources/complete-runnable-project/1301
このコードを実行しましたが、目的の効果が得られませんでした...
このコードで使用した画像も添付されています
更新しました
部分的な効果が達成されました..しかし、高速スワイプの問題..すべての完全なプロジェクトがここにアップロードされています http://www.andengine.org/forums/post31772.html#p31772
ios - GL_TRIANGLE を GL_TRIANGLE_STRIP に変換するには?
*.obj ファイルからのデータがあります。
で描く方法を知っていますGL_TRIANGLES
。のデータを変換するにはどうすればよいGL_TRIANGLE_STRIP
ですか?
お気に入りglDrawArrays(GL_TRIANGLE_STRIP, 0, numberOfFaces);
ありがとう!
algorithm - グラフ-最悪の場合でも線形時間で三角形のストリップのグラフを作成するにはどうすればよいですか?
グラフには、三角形のストリップの問題があります。基本的に、隣接する三角形のセットがあり、各三角形を新しい頂点と見なし、後ろの2つの三角形に共通のエッジがある場合、2つの新しい頂点の間にエッジがあります。
ここでの私の質問は、各三角形を読み取り、それらの新しいストリップグラフを作成することです。
たとえば、次の三角形(A、B、C)があります。
A-0、1、3
B-1、2、3
C-2、3、4
したがって、AとBには共通のエッジがあり、BとCにも共通のエッジがあります。新しいストリップはAからBに移動し、次にCに移動します。
Ok。ここで重要なことの1つは、新しい三角形を読み取るたびに、どの三角形が新しい三角形と共通のエッジを持っているかを知りたいということです。
愚かな方法は、すべての古い三角形をスキャンして、それらの3つの頂点を新しいものの頂点と比較することです。2つの頂点が一致する場合、隣接関係があります。
より良い方法(アルゴリズム設計マニュアルで説明)は、三角形の頂点ごとにリストを作成するたびに行うことです。そのリストには、頂点を通過するすべての三角形が含まれています。たとえば、上記の三角形の場合、頂点0には{A}のリストがあり、頂点1には{A、B}のリストがあります。したがって、新しい三角形が来ると、3つの頂点をチェックして見つけようとします。新しいものと2つの共通の頂点を持つ古い三角形。
ここにいくつかの質問があります:
より良い方法は線形ですか?この種の読み取りとグラフの作成の「線形」を定義するにはどうすればよいですか?たとえば、より良い方法では、新しい三角形は古い三角形の3つのリストを通過する必要があります。これは十分に線形ですか?せいぜいすべての古い三角形を読み取るだけなので、線形だと思いました。しかし、私の考えが本当なら、愚かな方法も直線的ですよね?だから私は間違っているかもしれないと思いますが、非常に混乱しています。
さらに良い方法はありますか?これはアルゴリズム設計マニュアルによって物品税として求められており、その物品税は最悪の場合でも純粋な線形アルゴリズムを求めています。
さらに良い方法のための私の解決策は、各頂点のリストを作成する代わりに、各エッジのリストを作成することです。頂点には多くの三角形が通過する可能性がありますが、エッジがある場合、すべての三角形のエッジが互いに交差しておらず、最大でマージされていると仮定すると、最大2つの三角形が通過します(共通)。
次に、各エッジには最大2つのアイテムのリストがあります。新しく来る三角形の場合、最大3つのエッジをチェックする必要があります。上記のより良い方法よりも良いと思います。
私は正しいですか?または私のより良い方法は純粋な最良の線形ソリューションですか?
ios - GL_Trianglestrip OpenGLES2.0を使用してクワッド要素を描画します
モデルを解析し、OpenGL ES 2.0で4頂点ポリゴン(長方形)をレンダリングしたいと思います。2つの三角形を使用する代わりに、各四角形/長方形に1つの三角ストリップを使用することを考えました。
問題は、私の長方形がモデル全体で接続されていないことです。3つのクワッド(12の頂点)がある場合、次のように描画します(numOfQuadFaces = 3):
新しいクワッドが4つの頂点ごとに開始されるように頂点配列が順序付けられています。しかしもちろん、OpenGLは、配列の3番目の頂点を超えるすべての新しい頂点に対して新しい三角形が開始されるように解釈します。長さ4の個々の三角ストリップ/クワッドが必要な場所を指定できますか?-これと同じように描画するため(もちろんglDrawArrays-呼び出しのみの場合):