OpenGLスレ Part14
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2010/01/19(火) 20:46:36現在のバージョンは3.2
http://www.opengl.org/
== OpenGLと一緒に使われるツール&ライブラリ ==
苦労したくなかったらとりあえず入れとけ。
・glx: XからOpenGLを使うためのライブラリ。普通は直接は使わず意識する事はない
・glut: クロスプラットフォームなツールキット。でもさすがに古くさい
・glew: これを入れないと拡張機能が使えないor使いにくい
・glxgears: 歯車が回るベンチマーク。-infoでOpenGLのバージョンが見られる。OpenGLの動作確認はこれで
・glxinfo: 自分の使っているカードのOpenGLの機能が全てリストアップされる。
== 必読書 ==
・OpenGLプログラミングガイド 原著第5版 (通称赤本)
・OpenGL(R) Reference Manual (通称青本)
・OpenGL Shading Language (通称だいだい本)
・OpenGL(R) SuperBible: Comprehensive Tutorial and Reference
・OpenGL ES 2.0 プログラミングガイド
・GLUTによるOpenGL入門
・GLUTによるOpenGL入門2 テクスチャマッピング
あると便利。
・ゲームプログラミングのための3Dグラフィックス数学
== チュートリアルサイト ==
床井研究室: http://marina.sys.wakayama-u.ac.jp/~tokoi/oglarticles.html
NeHe: http://nehe.gamedev.net/
== 前スレ ==
Part13: http://pc12.2ch.net/test/read.cgi/tech/1221215309/
0934デフォルトの名無しさん
2010/10/23(土) 22:30:47(´A`)…。
0935デフォルトの名無しさん
2010/10/23(土) 22:33:59?
OpenGL 4.0でハードウェアのテッセレーターがついたのは知ってるよ。
そもそも最新のHWテッセレーションはジオメトリシェーダーじゃなくて制御シェーダー、評価シェーダーの2つのプログラマブルシェーダー
と固定機能のテッセレーターで実現されるものなんだが。
名前こそ同じテッセレーションだけど性格が違うだろGLUのテッセレーターとは。
4.0でついたモノは主にLOD制御用だしGLUのは閉じたパスの集合から凸ポリゴン形成するものだろ。
0936デフォルトの名無しさん
2010/10/23(土) 22:35:15KFbxMesh.GetNode() で取れるKFbxNodeはどうも違うみたいだし…。
宜しくお願いします!
0937デフォルトの名無しさん
2010/10/23(土) 22:54:220938デフォルトの名無しさん
2010/10/23(土) 23:01:28性格が違うってさ…
用途を変えてるだけで同じ物を使ってるだけでしょ
結局、テッセレーションとか語れる奴はこのスレにはいねーんだね
0939デフォルトの名無しさん
2010/10/24(日) 00:10:53(´A`)…。
0940デフォルトの名無しさん
2010/10/24(日) 01:29:16('A`)…
0941デフォルトの名無しさん
2010/10/24(日) 02:24:14あの・・・GLUのテッセレータは、GPUのテッセレータとは用途も仕組みも何もかもが違うんです・・・。
同じテッセレーションと呼ばれてますが、名前が同じだけで、関連する技術ではありません。
(関連くらいはあるかな・・・?思いつかないけど。)
GLUのテッセレータの目的とか使い方は、
http://glprogramming.com/red/chapter11.html
この辺を見て頂ければ分かるかと。
0942デフォルトの名無しさん
2010/10/24(日) 02:41:00テッセレーションってのは、簡単に言うとポリゴン分割
GLUで提供された用途が、根底でテッセレーション処理を行っているのに
>名前が同じだけで、関連する技術ではありません。
って、モロに表面しか理解出来てないかと…
シェーダーを使って影だしてる描画メソッドがあって
それを使うだけの人間が、そのメソッドについて
影を出すんであってシェーダーとは用途も仕組みも何もかもが違うんです・・・。
とか言い出してるようなモン
0943デフォルトの名無しさん
2010/10/24(日) 02:44:20('A`)…
0944デフォルトの名無しさん
2010/10/24(日) 02:44:21コールバック無しで作ると、汎用性が無くなっちゃいません?
別の機会でも使えるように作ると、結局コールバックとかクロージャ渡しとかまぁとにかくそんな感じの
仕組みになるような気がします。
あと、テッセレートする前に与えられた頂点を平面に投影すると思うんですけど、その平面って
どうやって決めるんでしょう。その辺の知識が無いので、もし良かったらどんな感じで作ったのか
教えてぷりぃず。
0945デフォルトの名無しさん
2010/10/24(日) 02:49:38いや、あの・・・941のURLは見て頂けました・・・???
932さんが言ってるテッセレーションてのは、そのページのPolygon Tessellationのことなのです。
GPUではまだ実装されてないし、効率良くやるのはちょっと難しいんじゃないでしょうかね・・・。
0946デフォルトの名無しさん
2010/10/24(日) 02:54:28このスレには、gluTessBeginPolygonをシェーダーで実装できるレベルの人間がいない事は分かった…
0947デフォルトの名無しさん
2010/10/24(日) 02:55:54(´A`)…。
0948デフォルトの名無しさん
2010/10/24(日) 02:58:09***さんの言ってるシェーダーてのは、そのページのノーマルマップのことなのです
って、シェーダーってのは、ノーマルマップ”だけ”するモンじゃないだろ
テッセレーションも一緒だ
テッセレーションとは、ポリゴンを再分割することで
GLUで提供してる機能を指すんじゃないだろ
0949デフォルトの名無しさん
2010/10/24(日) 03:02:12もう!どうしたらいいの!?コレ!?
0950デフォルトの名無しさん
2010/10/24(日) 03:05:34あのさ OpenGL 4.0 の機能紹介とかで余裕でデモされてるでしょ
さらに言えば、DirextX11では、普通にSDKサンプルで中級でシェーダーテッセレーションがあるし
DirectXでは始まってるが、GLもこれからプログラマブルシェーダーが全盛になれば
技術を理解せずに、自分で実装出来ないライブラリが無ければ分かりませんってレベルは淘汰される
0951デフォルトの名無しさん
2010/10/24(日) 03:08:15もともとGLUの話してるのに、勝手に最近のHWのLOD用途のテッセレーターと勘違いして何騒いでるの?
933 = 938 = 942 = 946 = 948
0952デフォルトの名無しさん
2010/10/24(日) 03:11:09これってモロgluTessBeginPolygonの説明じゃんw
gluTessBeginPolygonの処理はテッセレーション処理を行って凸面のプリミティブを作るのであって
凸面のプリミティブを作ることをテッセレーションとは言わない
0953デフォルトの名無しさん
2010/10/24(日) 03:11:41( ´A`)…
0954デフォルトの名無しさん
2010/10/24(日) 03:15:15無知もここに極まれりw
別にシェーダーのテッセレーションでgluTessBeginPolygonと同等の機能も実装出来る
テッセレーションにより、低ポリゴンモデルのエッジを分割して
輪郭を綺麗にして低ポリゴンなのを気づかれにくくする等
当然、凸面のプリミティブに分割する事も有り
テッセレートの用途ってか、理解が無いのがモロバレ
0955デフォルトの名無しさん
2010/10/24(日) 03:17:51速度とか精度とかがどんなもんか知りたいです。
0956デフォルトの名無しさん
2010/10/24(日) 03:20:19その最新のフィーチャーのテッセレーターは自己交差ポリゴンの再分割とか、複数の閉じたパスによって作られた図形から描画するべき部分の三角形の算出とかできるわけ?
理解があるならそこらへんの実装例を見せてもらいたいね。
0957デフォルトの名無しさん
2010/10/24(日) 03:22:13最新のOpenGLではシェーダーで行う方向なのに、頓珍漢な発言してるのを突っ込んでるだろw
さらに、GLUのテッセレーションだろうが、シェーダーのだろうが
テッセレーションの処理の意味は同じ
gluTess***関数のテッセレーションと、シェーダーのは違うとかw
プログラマブルシェーダーって意味わかる?
自分で組むんだよ?
gluTess***関数相当の処理だって組めるに決まってるじゃん
0958デフォルトの名無しさん
2010/10/24(日) 03:26:57ふざけるなよw
自分で判断出来ないくせに、えらそうに書き込んでたのかよwww
ちゃんと OpenGL 4.0 のシェーダーのテッセレーションを調べて
出来ないと判断してから書き込めよ
0959デフォルトの名無しさん
2010/10/24(日) 03:31:12お前プログラマブルシェーダーでなんでも完全に自由に作れると思ってるのかw
>>944
頂点群が2次元的に分布している前提で話すけど、適当な3点とってそれらを含む平面を計算→法線ベクトル算出、法線ベクトルを例えばZ軸に重ねる。
Z座標は無視して三角形だけで描画できるようなインデックスを求める→インデックスが持つ意味は元の頂点の座標でも一緒だからそれを用いて描画でいいんじゃないか?
3次元的に分布しているGLUテッセのサンプルは見たことがないな。
0960デフォルトの名無しさん
2010/10/24(日) 03:37:020961デフォルトの名無しさん
2010/10/24(日) 03:41:05( ゚д゚ )
0962デフォルトの名無しさん
2010/10/24(日) 03:43:48三点の選び方によっては精度が落ちそうなので、できるだけ外周に近い三点を選ぶとかするのかなー
とか思ったんですけど、実用的にはそこまでこだわる必要は無いってことでしょうかね。
3次元的に分布してる場合は、GLUでも平面の法線を明示してやればおっけーでしたよ。
サンプルは確かに見たことないですね。
0963デフォルトの名無しさん
2010/10/24(日) 03:56:52まぁ誤差のせいで投影時にある2頂点が一緒になってしまうとかならあると思うけど、もともとそこまで近い頂点なら片方消しても良さそうだ。
法線を精度よく求めるなら離れたところにある3頂点のセットを何サンプルかとればまず問題はないだろう。
0964デフォルトの名無しさん
2010/10/31(日) 22:10:15書いてあるサイトありますか?
C++/CLI OpenGL 勉強し始めたばかりですけど,
一緒にマスターしたいと思っています.
Win32 API, C++は結構バッチリだとおもいます
0965デフォルトの名無しさん
2010/10/31(日) 22:55:280966デフォルトの名無しさん
2010/11/01(月) 01:09:16Formアプリで作りたいんですけど
0967デフォルトの名無しさん
2010/11/01(月) 08:39:04GLControlのPaintイベント内で普通にOpenGLで描画
描画の最後にGLControlのSwapBuffesを呼び出す
これだけ
0968デフォルトの名無しさん
2010/11/01(月) 09:18:37指摘したいことがあれこれあるけどスレ違いな部分だな
0969デフォルトの名無しさん
2010/11/01(月) 12:09:450970デフォルトの名無しさん
2010/11/02(火) 00:40:33GLControlのアイコン(?)が出てこない
Visual Studio 2005です
助けてください ToT
0971デフォルトの名無しさん
2010/11/02(火) 08:43:56プロジェクトの参照設定でOpenTK.GLControl.dllを参照するば
ツールウィンドウに出てくる筈だよ。
0972デフォルトの名無しさん
2010/11/02(火) 22:13:03ありがとうございます.うまくいきました
OpenTKって日本語ドキュメント誰か書いてほしい.
0973デフォルトの名無しさん
2010/11/02(火) 23:35:13よく言った!
・・・あとは、分かってるな?
0974デフォルトの名無しさん
2010/11/02(火) 23:36:480975デフォルトの名無しさん
2010/11/02(火) 23:42:040976デフォルトの名無しさん
2010/11/03(水) 09:29:170977デフォルトの名無しさん
2010/11/03(水) 10:05:36ソースは味覚音痴御用達です
0978デフォルトの名無しさん
2010/11/03(水) 20:40:14僕は,あとは自分で調べろってことかと,
鈍くてすいません
0979デフォルトの名無しさん
2010/11/05(金) 10:55:35こんな感じのアプリを作りたいのですが
右下のメニュー用のフォームとかってどうやって作るのですかねぇ
0980デフォルトの名無しさん
2010/11/05(金) 11:29:04どうやってつくるんでちゅかね?
たいへんでちゅね〜?
おちゅかいのおーえすはなんでちゅか?うぇwww
0981デフォルトの名無しさん
2010/11/05(金) 11:30:42死ね糞
0982デフォルトの名無しさん
2010/11/05(金) 11:33:27くそもらしちゃったんでちゅか?おむつはそのままにしておきまちょうねwww
0983デフォルトの名無しさん
2010/11/05(金) 11:43:01質問するスレが違うですよ。
ttp://www.codeproject.com/KB/openGL/glenabledview.aspx が元記事ですね。
このサイトはユーザー登録するとソースをDLできます(ライセンス注意)。
ソースを覗くとGUI部分はMFCで作成されてますね。
GUIは基本的に色々な言語で実装できます。
何で作るのかは知りませんが、該当のスレで質問して下さいな。
例えば、cやc++ならwinapiで実装するならwinapiスレで。
c#ならc#スレでって感じよろしく。
まぁ、基本的にはMDIで実現できますよ。
c#ならフォームの中にフォームを表示すれば可能です。
0984デフォルトの名無しさん
2010/11/05(金) 11:48:09ありがとうございます。
フォームの中にフォームとか
MDIとか情報が少なすぎて。
レス数が950を超えています。1000を超えると書き込みができなくなります。