OpenGL
1あ
01/11/15 23:34ID:GvgJsycj 現在OpenGLを勉強してますが、OpenGLでは3Dゲームは作れないのでしょうか?無駄なのでしょうか?
167あぼーん
NGNGあぼーん
168名前は開発中のものです。
02/05/14 00:58ID:emLR5.zU 今日届いた。俺にとってははじめての洋書だ。
ところでみんな洋書読むとき辞書とか引かずにガンガン読んでいくの?
ところでみんな洋書読むとき辞書とか引かずにガンガン読んでいくの?
169名前は開発中のものです。
02/05/14 01:19ID:??? まず、自分の持ってる知識を総動員して、この文章には
どんな事が書いてあるのかを推測する。
わからない単語とかも、何となくわかる単語の前後関係等から類推してみる
どうしてもわからない単語があれば、辞書を引く。
洋書と同時に、それと同じ領域を扱っている(もしくはわからない箇所を扱っている)
日本語の本も同時に読む、
これを何回も繰り返す。
どんな事が書いてあるのかを推測する。
わからない単語とかも、何となくわかる単語の前後関係等から類推してみる
どうしてもわからない単語があれば、辞書を引く。
洋書と同時に、それと同じ領域を扱っている(もしくはわからない箇所を扱っている)
日本語の本も同時に読む、
これを何回も繰り返す。
170名前は開発中のものです。
02/05/14 21:31ID:gp9yAFEg171名前は開発中のものです。
02/11/03 21:28ID:??? OpenGL2とかってどうなったの?
172あぼーん
NGNGあぼーん
173甲府サポ
02/11/11 22:54ID:HhzDf2Np age
174あぼーん
NGNGあぼーん
175名前は開発中のものです。
02/12/08 09:57ID:qCwR2YDX auxって何の略なんでしょうか?ふと疑問に思ったもので。
今更使うべきではないのでしょうか?auxDIBImageLoad()とか便利なんですが。
今更使うべきではないのでしょうか?auxDIBImageLoad()とか便利なんですが。
176名前は開発中のものです。
02/12/08 10:42ID:tg+s8Hiv Auxilliary
177あぼーん
NGNGあぼーん
178名前は開発中のものです。
03/01/27 15:06ID:HEByNsJD 最近気が付いたのですが
OpenGLプログラミングガイド 第2版 新装版
ISBN4-89471-695-X
と私の持っている
OpenGLプログラミングガイド 第2版
ISBN4-7952-9719-X
はどう違うのでしょうか?
OpenGLプログラミングガイド 第2版 新装版
ISBN4-89471-695-X
と私の持っている
OpenGLプログラミングガイド 第2版
ISBN4-7952-9719-X
はどう違うのでしょうか?
179名前は開発中のものです。
03/01/27 15:08ID:S/qAIS6o ■迷惑メールサイト一斉訪問お祭り開催■
「ワタナベケイコ」なる人物が、
スレ主の携帯に、アドレスを何度も変えては同じ宣伝を送りつけてくる。
その熱意に感動したスレ主は、この宣伝されているサイトに
漏れ達2ちゃんねらというでっかい土産を用意して訪問することにした。
さぁおまいら、この「ワタナベケイコ」の熱意を評して
ガンガン入ってやろうぜ!
携帯PHS
迷惑メールサイト一斉訪問お祭り開催
http://jbbs.shitaraba.com/news/bbs/read.cgi?BBS=853&KEY=1043335260
訪問開始は本日23:00
「ワタナベケイコ」なる人物が、
スレ主の携帯に、アドレスを何度も変えては同じ宣伝を送りつけてくる。
その熱意に感動したスレ主は、この宣伝されているサイトに
漏れ達2ちゃんねらというでっかい土産を用意して訪問することにした。
さぁおまいら、この「ワタナベケイコ」の熱意を評して
ガンガン入ってやろうぜ!
携帯PHS
迷惑メールサイト一斉訪問お祭り開催
http://jbbs.shitaraba.com/news/bbs/read.cgi?BBS=853&KEY=1043335260
訪問開始は本日23:00
180名前は開発中のものです。
03/01/27 22:48ID:OTgmV0/k うーん反応なし。新装版ゲットするかな。
181名前は開発中のものです。
03/01/28 01:39ID:ayK5hEK0 >>178
すでにゲットしたかもしれんけど、↓で聞いてみるのも手。
推薦図書/必読書のためのスレッド PART 8
http://pc3.2ch.net/test/read.cgi/tech/1041595397/l50
▽ OpenGLスレ Part2 △
http://pc3.2ch.net/test/read.cgi/tech/1039984523/l50
この板人が少ないから……
すでにゲットしたかもしれんけど、↓で聞いてみるのも手。
推薦図書/必読書のためのスレッド PART 8
http://pc3.2ch.net/test/read.cgi/tech/1041595397/l50
▽ OpenGLスレ Part2 △
http://pc3.2ch.net/test/read.cgi/tech/1039984523/l50
この板人が少ないから……
182名前は開発中のものです。
03/05/13 15:53ID:ofp1++tY183age
03/07/09 10:13ID:eDOl2hQe age
184名前は開発中のものです。
03/07/19 06:00ID:rF+rpw8F http://www.square-enix.co.jp/games/ps/dp/scr/
これOpenGL使ってるって。
これOpenGL使ってるって。
185セイラ
03/07/19 13:58ID:g1zEvWkx186あいぶ
03/07/19 22:57ID:Z/5+OOYt187名前は開発中のものです。
03/08/29 19:28ID:QOLXNrc9 物体をマウスで掴んでいるような回転や、
物体を特定の方向(別の物体)に向かせる
といった計算はどのように行えばいいのでしょうか。
例えばマウスで掴んでいるような回転をしたいと思ったときに
マウスのボタンを押した座標と現在の座標の差を
rx, ryとしたときに、単純に
glRotate( ry, 1.0, 0.0, 0.0 );
glRotate( rx, 0.0, 1.0, 0.0 );
としてみたのですが、X軸を中心に半回転すると
Y軸の回転が逆になってしまったりして
マウスで掴んだような表現ができません。
物体を特定の方向(別の物体)に向かせる
といった計算はどのように行えばいいのでしょうか。
例えばマウスで掴んでいるような回転をしたいと思ったときに
マウスのボタンを押した座標と現在の座標の差を
rx, ryとしたときに、単純に
glRotate( ry, 1.0, 0.0, 0.0 );
glRotate( rx, 0.0, 1.0, 0.0 );
としてみたのですが、X軸を中心に半回転すると
Y軸の回転が逆になってしまったりして
マウスで掴んだような表現ができません。
188名前は開発中のものです。
03/08/30 09:25ID:qCOSw8qY >187
openglの座標系とカメラ視点を把握すると
なぜそうなるか・どうすればいいかが判ると思うよ
簡単に絵に描いてみるといい
openglの座標系とカメラ視点を把握すると
なぜそうなるか・どうすればいいかが判ると思うよ
簡単に絵に描いてみるといい
189187
03/08/31 21:06ID:WGd2CnHi 絵には何度も描いてるのですが、
3Dに関して(行列とか基本的な数学も)疎いので
やりたいことが分かってても
どういう方法をとったらいいかが分からないのです。
ゲームとか程遠そうだな、、、
3Dに関して(行列とか基本的な数学も)疎いので
やりたいことが分かってても
どういう方法をとったらいいかが分からないのです。
ゲームとか程遠そうだな、、、
190187
03/09/03 00:27ID:7fZJhQG1 うーわからない。
何かヒントだけでも。
何かヒントだけでも。
191名前は開発中のものです。
03/09/03 09:54ID:lek08X6m 君のような人向けに
glutRotateObjectAxe()
関数がある
glutRotateObjectAxe()
関数がある
192187
03/09/03 14:57ID:7fZJhQG1 そんな関数があったのですか。ありがとうございます。
でも、それじゃぁ勉強にならないので、できれば
解説したサイトでもいいから教えていただけると嬉しいです。
「三次元 回転」とかだとあんま思ったような引っかかり方をしなくて。
でも、それじゃぁ勉強にならないので、できれば
解説したサイトでもいいから教えていただけると嬉しいです。
「三次元 回転」とかだとあんま思ったような引っかかり方をしなくて。
193名前は開発中のものです。
03/09/04 01:31ID:LOG/s0pd 3D空間を動き回るようなプログラムを作っています。
ゲームに実装する場合、視点の操作って
gluLookAt()に頼らない方が良いんでしょうか?
細かい事を意識しなくても動いてしまうんですが、
カリングのような意識して行う必要がある処理を
実装しようにもどうもピンと来ません。<要するに理解できていない
gluLookAt()でやってくれていたViewMatrixへの変換(?)を
すべてのオブジェクトに対して行うような処理で大丈夫なんでしょうか?
(カメラじゃなくて世界を動かすようなイメージで考えています)
理解されている方にはつまらない事だと思いますが、
なにとぞご教示お願いします。
ゲームに実装する場合、視点の操作って
gluLookAt()に頼らない方が良いんでしょうか?
細かい事を意識しなくても動いてしまうんですが、
カリングのような意識して行う必要がある処理を
実装しようにもどうもピンと来ません。<要するに理解できていない
gluLookAt()でやってくれていたViewMatrixへの変換(?)を
すべてのオブジェクトに対して行うような処理で大丈夫なんでしょうか?
(カメラじゃなくて世界を動かすようなイメージで考えています)
理解されている方にはつまらない事だと思いますが、
なにとぞご教示お願いします。
194名前は開発中のものです。
03/09/04 01:35ID:daTP9XuL195名前は開発中のものです。
03/09/04 01:41ID:LOG/s0pd196名前は開発中のものです。
03/09/04 01:54ID:LOG/s0pd 視点と一緒に光源が動いてしまうのも悩みです。
方向性が間違ってないなら、カリングもそうですが
マウスでの座標指定なんかも簡略化したいなぁと。
Map平面上のクリック位置を取得するために
openglのピックアップ使うのはなんだか
間違ってるような気がしてなりません
方向性が間違ってないなら、カリングもそうですが
マウスでの座標指定なんかも簡略化したいなぁと。
Map平面上のクリック位置を取得するために
openglのピックアップ使うのはなんだか
間違ってるような気がしてなりません
197名前は開発中のものです。
03/09/04 07:26ID:UILI7AgD glutのソースぐらい嫁
198名前は開発中のものです。
03/09/04 09:20ID:1TnG3y70 >>187は、Quaternionでやる方法があるけど、他に。
視点から、初期値が前右上 の3つベクトルを作り、回転はそれに対して行う。
で、LookAtの要領で行列を作り、MODELVIEWに掛け算。
LookAtの行列は宇治社中に解説があったような。
消えてるので、ここから見るとよろし。鬱氏スレからコピペ。
ttp://web.archive.org/web/20020607052151/http://www.cc.rim.or.jp/~devilman/
カリングはgl任せじゃいけないのか? なぜ自前でやる必要があるのか分からん。
>>196
光源は、位置設定を回転の前後に書いて動作を比べてみ。
クリック位置云々ってのは、gluUnProject とか使う話じゃないのか?
視点から、初期値が前右上 の3つベクトルを作り、回転はそれに対して行う。
で、LookAtの要領で行列を作り、MODELVIEWに掛け算。
LookAtの行列は宇治社中に解説があったような。
消えてるので、ここから見るとよろし。鬱氏スレからコピペ。
ttp://web.archive.org/web/20020607052151/http://www.cc.rim.or.jp/~devilman/
カリングはgl任せじゃいけないのか? なぜ自前でやる必要があるのか分からん。
>>196
光源は、位置設定を回転の前後に書いて動作を比べてみ。
クリック位置云々ってのは、gluUnProject とか使う話じゃないのか?
199名前は開発中のものです。
03/09/04 13:55ID:R6nj7eun >>198
>カリングはgl任せじゃいけないのか? なぜ自前でやる必要があるのか分からん。
GL_QUADSにテクスチャを敷き詰めた大きなマップを
表示しようと思っています。
オブジェクト単位のカリングをするところまでは頭が回りませんが、
視野外かどうかぐらいの判別はつきそうなので、
QuadTree使って処理を間引きしたいなーと考えています。
>クリック位置云々ってのは、gluUnProject とか使う話じゃないのか?
マウスピッキングでデプス値を取るために
GL_SELECTで描画するってのが凄く無駄に思えるんですよ。
MAPはyが0のxz平面なんで、
それこそ最低限の変換Matrixだけ解れば
取れるんじゃないかなーと。
>カリングはgl任せじゃいけないのか? なぜ自前でやる必要があるのか分からん。
GL_QUADSにテクスチャを敷き詰めた大きなマップを
表示しようと思っています。
オブジェクト単位のカリングをするところまでは頭が回りませんが、
視野外かどうかぐらいの判別はつきそうなので、
QuadTree使って処理を間引きしたいなーと考えています。
>クリック位置云々ってのは、gluUnProject とか使う話じゃないのか?
マウスピッキングでデプス値を取るために
GL_SELECTで描画するってのが凄く無駄に思えるんですよ。
MAPはyが0のxz平面なんで、
それこそ最低限の変換Matrixだけ解れば
取れるんじゃないかなーと。
200名前は開発中のものです。
03/09/04 21:24ID:1TnG3y70 >>199
表裏のカリングの話かと思ってレスしてた… スマソ
…で、もう一度詳しく書くが、gluUnProject と glReadPixels で
マウス座標を世界座標に変換できるっていう話を聞くんだが、どうよ。
表裏のカリングの話かと思ってレスしてた… スマソ
…で、もう一度詳しく書くが、gluUnProject と glReadPixels で
マウス座標を世界座標に変換できるっていう話を聞くんだが、どうよ。
201名前は開発中のものです。
03/09/04 22:00ID:tCXSSjbp >>91のソースみたいんですが持ってる方いませんか?
202199
03/09/05 01:58ID:yutekRva >>200
>…で、もう一度詳しく書くが、gluUnProject と glReadPixels で
なるほど・・・
ttp://www.geocities.jp/yuichiy2001/gl/applied/02-feedback.htm
オブジェクト識別番号の取得が必須だと思い込んでました。
試してみまっす。
どうもありがd
>…で、もう一度詳しく書くが、gluUnProject と glReadPixels で
なるほど・・・
ttp://www.geocities.jp/yuichiy2001/gl/applied/02-feedback.htm
オブジェクト識別番号の取得が必須だと思い込んでました。
試してみまっす。
どうもありがd
203187
03/09/05 02:26ID:zfiLlKlp >>198
ありがとうございます。
でもそのリンク先のアーカイブ、目次以外は死んでますね。
なにはともあれ、ヒントをいただけたので頑張ってみます。
> 初期値が前右上 の3つベクトルを作り
は、
> 初期値が前、右、上 の3つのベクトルを作り
という意味でいいんですよね?
ありがとうございます。
でもそのリンク先のアーカイブ、目次以外は死んでますね。
なにはともあれ、ヒントをいただけたので頑張ってみます。
> 初期値が前右上 の3つベクトルを作り
は、
> 初期値が前、右、上 の3つのベクトルを作り
という意味でいいんですよね?
204名前は開発中のものです。
03/09/05 10:48ID:M/X1t1oz206名前は開発中のものです。
03/12/06 06:09ID:EPkSKia1 Direct3DはWindowsでしか使えないけど、OpenGLなら
Linuxを標準開発環境としているPlayStationでも使えるのですかね。
Linuxを標準開発環境としているPlayStationでも使えるのですかね。
207名前は開発中のものです。
03/12/06 10:05ID:Cs4A66rf >206
知識事態はまあ役に立つだろうけど。
Linux の開発環境で実機で動くコードを作るだけで実機は Linux で動いているわけではないって感じですかね。
知識事態はまあ役に立つだろうけど。
Linux の開発環境で実機で動くコードを作るだけで実機は Linux で動いているわけではないって感じですかね。
208名前は開発中のものです。
03/12/27 05:23ID:1gYVS3cd209名前は開発中のものです。
04/01/12 09:28ID:pitlMe2T >>206
PS2 for Linuxと勘違いしてないか?
アレはPS2上でLinuxとMesaが動くから
OpenGL互換のプログラムが動くってだけだぞ。
実機開発はSCE提供の開発ツールがLinux用ってだけで、
OpenGLとはまるっきり関係ないですよ。
PS2 for Linuxと勘違いしてないか?
アレはPS2上でLinuxとMesaが動くから
OpenGL互換のプログラムが動くってだけだぞ。
実機開発はSCE提供の開発ツールがLinux用ってだけで、
OpenGLとはまるっきり関係ないですよ。
210名前は開発中のものです。
04/03/30 08:20ID:fcRSAwJm OpenGLって有料になったんですか?
211名前は開発中のものです。
04/03/30 14:54ID:yhWnFdco PS2でMesaは動かないの?
212初心者
04/04/04 03:09ID:Fr7iY6U7 あのー、教えてください。
VC++.netとGLUTを使ってOpenGLのプログラムを作成しているのですが、
ウインドウを常に手前に表示させる方法ってありますか?
よろしく。
VC++.netとGLUTを使ってOpenGLのプログラムを作成しているのですが、
ウインドウを常に手前に表示させる方法ってありますか?
よろしく。
213名前は開発中のものです。
04/04/04 04:41ID:LZ2m/ABt214名前は開発中のものです。
04/04/26 11:31ID:cCM3ChzD glAge(GL_THREAD);
215名前は開発中のものです。
04/06/18 19:31ID:8W/J6kNO OpenGLプログラミングについてです。
bsd上で glxgears は通常通りに動作するのですが、その他の
いかなるOpenGLプログラムも動作は為ているようですが、画面には何も表示されないか、モザイク画像が出てくるだけです。
SGI社のサンプルプログラムでも画面が動きません。
どなたか、解決方法が分かる方がいらっしゃいましたら
よろしくお願いします。
bsd上で glxgears は通常通りに動作するのですが、その他の
いかなるOpenGLプログラムも動作は為ているようですが、画面には何も表示されないか、モザイク画像が出てくるだけです。
SGI社のサンプルプログラムでも画面が動きません。
どなたか、解決方法が分かる方がいらっしゃいましたら
よろしくお願いします。
216名前は開発中のものです。
04/06/21 23:36ID:1ng2Svqy エスパーきぼんぬ。
217名前は開発中のものです。
04/06/25 16:52ID:I5iiIJHi218名前は開発中のものです。
04/07/05 23:12ID:6NHTLi8G 現在OpenGLを勉強してますが、OpenGLでは3Dゲームは作れないのでしょうか?無駄なのでしょうか?
219名前は開発中のものです。
04/07/06 00:52ID:U/H2offX >>218
「OpenGL」「ゲーム」「製作」のキーワードでググることもできないお前には一生かかっても無理
「OpenGL」「ゲーム」「製作」のキーワードでググることもできないお前には一生かかっても無理
220名前は開発中のものです。
04/07/06 23:02ID:s6Psx/Yh221名前は開発中のものです。
04/07/06 23:05ID:40a9qyvV 誰か何が面白いのか解説しる
222名前は開発中のものです。
04/07/07 00:25ID:11qK6MdS >>218
YSFLIGHTも知らんのか
YSFLIGHTも知らんのか
223名前は開発中のものです。
04/07/07 20:08ID:pXlt3Ufz コピペに反応カコイイ
224名前は開発中のものです。
04/07/07 20:54ID:WqjF8m79 >>218はコピペに見えるだろうが、一文字ずつ入力してあるぞ。
225名前は開発中のものです。
04/07/07 21:30ID:pXlt3Ufz いたずらする子は食べちゃうぞ
226NAI
04/08/06 01:00ID:s8nRxIX2 ワイアフレーム表示するとマシンによって表示が変わるみたいなんですけど
これ如何に?
これ如何に?
227NAI
04/08/06 01:00ID:s8nRxIX2 具体的に言うとポリゴンが割れたり割れなかったりする
228名前は開発中のものです。
04/08/06 14:46ID:ZFkshjHd PS3と携帯電話で、ようやくOpenGLに日のあたる時がやってきたようですね。
229名前は開発中のものです。
04/08/11 13:19ID:MhIvXcNS SGIとARB、シェーディング言語標準サポートの「OpenGL 2.0」を発表
230名前は開発中のものです。
04/09/03 01:29ID:L7gL+NcX QuaternionPowers
http://gamdev.org/w/?QuaternionPowers
http://gamdev.org/w/?QuaternionPowers
231名前は開発中のものです。
04/09/03 21:38ID:90/zNnEM232名前は開発中のものです。
04/09/23 18:10:52ID:ryF40WA9 ttp://pukapuka.s1.x-beat.com/img-box/img20040922204002.lzh
233名前は開発中のものです。
04/09/24 06:57:28ID:yerfkVpD GL_age(1);
234名前は開発中のものです。
04/10/12 04:57:38ID:2HrRSXNz 現在OpenGLを勉強してますが、OpenGLでは3Dゲームは作れないのでしょうか?無駄なのでしょうか?
235名前は開発中のものです。
04/10/12 09:12:27ID:5pAj7Byb ( ゚д゚)ポカーン
236名前は開発中のものです。
04/10/12 09:32:31ID:OX2yqP7w デュープリズムスクリーンセーバー
ttp://www.square-enix.co.jp/games/ps/dp/scr/
とかOpneGLで作成されたものは結構あるよ。
ttp://www.square-enix.co.jp/games/ps/dp/scr/
とかOpneGLで作成されたものは結構あるよ。
237名前は開発中のものです。
04/10/13 02:02:36ID:SI7zOGad >>234
Quakeを知らんのか、このアホ垂れは。
Quakeを知らんのか、このアホ垂れは。
238名前は開発中のものです。
04/10/13 02:28:16ID:P0XKWIcd239名前は開発中のものです。
04/10/13 06:45:55ID:M6dX74v1240名前は開発中のものです。
04/10/13 19:59:02ID:Vz6HY45V 混じれ酢に混じれ酢カコイイ!!
241名前は開発中のものです。
04/10/29 23:07:44ID:4cDTuSzS OpenGLってjavaで使えないのでしょーか。
242名前は開発中のものです。
04/10/29 23:12:59ID:56yZKhWk >>241
検索したら一発で出てくるわけだが
検索したら一発で出てくるわけだが
243名前は開発中のものです。
04/10/29 23:38:53ID:4cDTuSzS >241
本当に申し訳ない。
本当に申し訳ない。
244名前は開発中のものです。
04/11/13 14:59:11ID:dkAyQRsu 当方VC++を使っているのですが、GLUIを導入できません
どうか教えてください
どうか教えてください
245名前は開発中のものです。
04/11/14 08:56:31ID:SaHm4g1h >244
VCのバージョンと、自分で挑戦してどの段階まで進めたのかぐらい書かないとレスくれないと思う
漏れは使ったことないから知らないが
このスレだけじゃないけど質問の仕方が下手な香具師多すぎ
VCのバージョンと、自分で挑戦してどの段階まで進めたのかぐらい書かないとレスくれないと思う
漏れは使ったことないから知らないが
このスレだけじゃないけど質問の仕方が下手な香具師多すぎ
246名前は開発中のものです。
04/11/15 21:23:27ID:RpdD9K/g247名前は開発中のものです。
04/11/16 00:20:13ID:e47ihUTp >>245の理解力が低いだけ
248名前は開発中のものです。
04/11/16 01:38:01ID:83hyebEc >>247
そんじゃ244に詳しく答えてあげてよ。
そんじゃ244に詳しく答えてあげてよ。
249名前は開発中のものです。
04/11/16 01:56:27ID:fcqxyC5l >247
質問の意図がわかってるなら答えてあげればいいのに…
質問の意図がわかってるなら答えてあげればいいのに…
250名前は開発中のものです。
04/11/16 08:29:48ID:DEjYZ57Y >>247の指導力が低いだけ
251名前は開発中のものです。
04/11/16 22:41:20ID:GyAtgOws252名前は開発中のものです。
04/11/17 00:10:13ID:fLjZv7nh VCでのGLUIのコンパイル報告(いらないかも知れないが…)
以下から. zip file: Download GLUI v2.1 をDLして解凍
http://www.cs.unc.edu/%7Erademach/glui/
glui_v2_1_beta/msvcの中のglui.dswをダブルクリックでVC起動。
VC.NETの場合はここで.slnが作られる。次からは.slnから起動。
で、ウチだけかもしれんがソースをすこしいじる
#include <GL/hoge.h>というGL関係のヘッダーのインクルードは#include <hoge.h>みたいな標準のヘッダーの後にインクルードされるように変更
#include <GL/glut.h>
#include <stdlib.h>
だったら
#include <stdlib.h>
#include <GL/glut.h>
みたいに
他にもexample*.cppのインクルードに関して
例えばglui.h内ではstdlibとかインクルードしているので
#include <GL/glut.h>
#include "glui.h"
から
#include "glui.h"
#include <GL/glut.h>
に変更
まず_glui_libraryをビルド。あとはexample*をビルドして実行。
実行の際はスタートアッププロジェクトの変更をわすれずに。
あとはglui32.libができあがるのでライブラリ用のディレクトリに持っていけばgluiを使ったプログラムが作れるはず。
ウチはいろいろインストールしてるので変なインクルードになってて、インクルードの順番を変えないといけないのかもしれないが一応書いておく
以下から. zip file: Download GLUI v2.1 をDLして解凍
http://www.cs.unc.edu/%7Erademach/glui/
glui_v2_1_beta/msvcの中のglui.dswをダブルクリックでVC起動。
VC.NETの場合はここで.slnが作られる。次からは.slnから起動。
で、ウチだけかもしれんがソースをすこしいじる
#include <GL/hoge.h>というGL関係のヘッダーのインクルードは#include <hoge.h>みたいな標準のヘッダーの後にインクルードされるように変更
#include <GL/glut.h>
#include <stdlib.h>
だったら
#include <stdlib.h>
#include <GL/glut.h>
みたいに
他にもexample*.cppのインクルードに関して
例えばglui.h内ではstdlibとかインクルードしているので
#include <GL/glut.h>
#include "glui.h"
から
#include "glui.h"
#include <GL/glut.h>
に変更
まず_glui_libraryをビルド。あとはexample*をビルドして実行。
実行の際はスタートアッププロジェクトの変更をわすれずに。
あとはglui32.libができあがるのでライブラリ用のディレクトリに持っていけばgluiを使ったプログラムが作れるはず。
ウチはいろいろインストールしてるので変なインクルードになってて、インクルードの順番を変えないといけないのかもしれないが一応書いておく
253名前は開発中のものです。
05/01/19 04:07:08ID:JFQHnnQ/ GLUTでキー入力を使う場合ゲームの操作キーみたくキーが「押されている状態」、のような
ものはあるのでしょうか?
ものはあるのでしょうか?
254名前は開発中のものです。
05/01/19 16:12:28ID:dTa9qCHC そこでSDLですよ
255名前は開発中のものです。
05/01/19 23:13:00ID:+mn6aHw4 なるほど。
256名前は開発中のものです。
05/01/22 13:42:06ID:i0oWJmxY メンドクサイからマウス操作だけにして
Passiveなんとか使ってる
3次元アルカノイドだけど
Passiveなんとか使ってる
3次元アルカノイドだけど
257名前は開発中のものです。
2005/07/23(土) 23:55:46ID:PIsC6wCJ もう滅んでしまったんだろうか?
258名前は開発中のものです。
2005/07/25(月) 21:49:58ID:g1HMM4aW OpenALは親戚か何か…ではないね
259名前は開発中のものです。
2005/07/25(月) 22:28:46ID:tBl8Lhba OpenALは、OpenGLの親戚な気がするけどなぁ...
260名前は開発中のものです。
2005/08/22(月) 12:04:34ID:rBR+s9KE ひといないね
261名前は開発中のものです。
2005/08/22(月) 18:54:20ID:1JIpqdYw ALもGLも資料が少ないなあ
262名前は開発中のものです。
2005/10/09(日) 04:07:25ID:qOVsvncy SDLとOpenGLの勉強を先日から初めて、とりあえずテクスチャを貼り付けてみようと思いました。
が、なかなかうまくいきません。
以下少し長いですがソースを貼り付けてみますので、おかしい点があれば
教えていただけないでしょうか?
/* テクスチャの練習 */
#include <windows.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>
#include <stdio.h>
#include <stdlib.h>
GLuint texName;
static void process_events(void)
{
SDL_Event event;
/* この中でやってきたイベントごとの処理を書く */
while(SDL_PollEvent(&event)){
switch(event.type){
case SDL_QUIT:
exit(0);
}
}
}
が、なかなかうまくいきません。
以下少し長いですがソースを貼り付けてみますので、おかしい点があれば
教えていただけないでしょうか?
/* テクスチャの練習 */
#include <windows.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>
#include <stdio.h>
#include <stdlib.h>
GLuint texName;
static void process_events(void)
{
SDL_Event event;
/* この中でやってきたイベントごとの処理を書く */
while(SDL_PollEvent(&event)){
switch(event.type){
case SDL_QUIT:
exit(0);
}
}
}
263名前は開発中のものです。
2005/10/09(日) 04:12:43ID:qOVsvncy static void draw_screen(void)
{
static GLfloat v0[] = { -1.0f, -1.0f, 1.0f };
static GLfloat v1[] = { 1.0f, -1.0f, 1.0f };
static GLfloat v2[] = { 1.0f, 1.0f, 1.0f };
static GLfloat v3[] = { -1.0f, 1.0f, 1.0f };
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0, -5, 5, 0, 0, 0, 0, 0, 10);
/* 何番のテクスチャを使うか */
glBindTexture(GL_TEXTURE_2D, texName);
/* 四角形を表示 */
glBegin(GL_QUADS);
glTexCoord2f(0,0);glVertex3fv(v0);
glTexCoord2f(1,0);glVertex3fv(v1);
glTexCoord2f(1,1);glVertex3fv(v2);
glTexCoord2f(0,1);glVertex3fv(v3);
glEnd();
/* フロントバッファとバックバッファの交換 */
SDL_GL_SwapBuffers();
}
{
static GLfloat v0[] = { -1.0f, -1.0f, 1.0f };
static GLfloat v1[] = { 1.0f, -1.0f, 1.0f };
static GLfloat v2[] = { 1.0f, 1.0f, 1.0f };
static GLfloat v3[] = { -1.0f, 1.0f, 1.0f };
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0, -5, 5, 0, 0, 0, 0, 0, 10);
/* 何番のテクスチャを使うか */
glBindTexture(GL_TEXTURE_2D, texName);
/* 四角形を表示 */
glBegin(GL_QUADS);
glTexCoord2f(0,0);glVertex3fv(v0);
glTexCoord2f(1,0);glVertex3fv(v1);
glTexCoord2f(1,1);glVertex3fv(v2);
glTexCoord2f(0,1);glVertex3fv(v3);
glEnd();
/* フロントバッファとバックバッファの交換 */
SDL_GL_SwapBuffers();
}
264名前は開発中のものです。
2005/10/09(日) 04:14:06ID:qOVsvncy static void setup_opengl(int width, int height)
{
float ratio = (float) width / (float) height;
SDL_Surface *image; /* テクスチャ用画像 */
SDL_Surface *tmpImage;
/* 消去時の色を黒にセット */
glClearColor(0, 0, 0, 0);
/* ビューポートをウィンドウサイズに設定 */
glViewport(0, 0, width, height);
/* 射影変換(縦の視野角が60.0度、横の視野角は縦横比があうように設定) */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60.0, ratio, 1.0, 1024.0);
/* テクスチャ用画像読み込み */
image = IMG_Load("tile.png");
if(!image) exit(-1);
tmpImage = SDL_CreateRGBSurface(SDL_SWSURFACE,0,0,32,
0x000000ff,0x0000ff00,0x00ff0000,0xff000000);
image = SDL_ConvertSurface(image, tmpImage->format, SDL_SWSURFACE);
SDL_FreeSurface(tmpImage);
/* テクスチャの設定 */
glEnable(GL_TEXTURE_2D);
glGenTextures(1, &texName); /* 識別用コードの取得(再利用時に必要) */
glBindTexture(GL_TEXTURE_2D, texName);
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR );
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR );
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, image->w, image->h, 0,
GL_RGBA, GL_UNSIGNED_BYTE, image->pixels);
SDL_FreeSurface(image); /* テクスチャに転送した時点で必要なし */
}
{
float ratio = (float) width / (float) height;
SDL_Surface *image; /* テクスチャ用画像 */
SDL_Surface *tmpImage;
/* 消去時の色を黒にセット */
glClearColor(0, 0, 0, 0);
/* ビューポートをウィンドウサイズに設定 */
glViewport(0, 0, width, height);
/* 射影変換(縦の視野角が60.0度、横の視野角は縦横比があうように設定) */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60.0, ratio, 1.0, 1024.0);
/* テクスチャ用画像読み込み */
image = IMG_Load("tile.png");
if(!image) exit(-1);
tmpImage = SDL_CreateRGBSurface(SDL_SWSURFACE,0,0,32,
0x000000ff,0x0000ff00,0x00ff0000,0xff000000);
image = SDL_ConvertSurface(image, tmpImage->format, SDL_SWSURFACE);
SDL_FreeSurface(tmpImage);
/* テクスチャの設定 */
glEnable(GL_TEXTURE_2D);
glGenTextures(1, &texName); /* 識別用コードの取得(再利用時に必要) */
glBindTexture(GL_TEXTURE_2D, texName);
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR );
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR );
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, image->w, image->h, 0,
GL_RGBA, GL_UNSIGNED_BYTE, image->pixels);
SDL_FreeSurface(image); /* テクスチャに転送した時点で必要なし */
}
265名前は開発中のものです。
2005/10/09(日) 04:14:58ID:qOVsvncy int main(int argc, char *argv[])
{
const SDL_VideoInfo *info; /* ビデオ情報格納用 */
int width, height; /* ウィンドウサイズ */
int bpp; /* 色深度 */
/* SDLの初期化 */
if(SDL_Init(SDL_INIT_VIDEO) < 0){
fprintf(stderr, "SDLの初期化に失敗しました: %s\n", SDL_GetError());
return -1;
}
/* 強制終了時SDLの後片付けを忘れないために */
atexit(SDL_Quit);
/* ここからウィンドウ作成のためのあれこれ */
/* ビデオ情報の取得 */
info = SDL_GetVideoInfo();
if(!info){
fprintf(stderr, "ビデオ情報の取得に失敗しました: %s\n", SDL_GetError());
exit(-1);
}
/* ウィンドウサイズと色深度の指定 */
width = 640;
height = 480;
bpp = info->vfmt->BitsPerPixel;
{
const SDL_VideoInfo *info; /* ビデオ情報格納用 */
int width, height; /* ウィンドウサイズ */
int bpp; /* 色深度 */
/* SDLの初期化 */
if(SDL_Init(SDL_INIT_VIDEO) < 0){
fprintf(stderr, "SDLの初期化に失敗しました: %s\n", SDL_GetError());
return -1;
}
/* 強制終了時SDLの後片付けを忘れないために */
atexit(SDL_Quit);
/* ここからウィンドウ作成のためのあれこれ */
/* ビデオ情報の取得 */
info = SDL_GetVideoInfo();
if(!info){
fprintf(stderr, "ビデオ情報の取得に失敗しました: %s\n", SDL_GetError());
exit(-1);
}
/* ウィンドウサイズと色深度の指定 */
width = 640;
height = 480;
bpp = info->vfmt->BitsPerPixel;
266名前は開発中のものです。
2005/10/09(日) 04:16:33ID:qOVsvncy /* OpenGL用の属性を指定 */
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16);
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
/* ビデオモードの設定 最後の引数がSDL_OPENGLであることに注意 */
if(SDL_SetVideoMode(width, height, bpp, SDL_OPENGL) == 0){
fprintf(stderr, "ビデオモードの設定に失敗しました: %s\n", SDL_GetError());
exit(-1);
}
/* OpenGL用の細かい初期設定はこの関数の中で */
setup_opengl(width, height);
/* メインループ */
while(1){
/* イベントを処理 */
process_events();
/* 画面を表示 */
draw_screen();
}
}
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 5);
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16);
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
/* ビデオモードの設定 最後の引数がSDL_OPENGLであることに注意 */
if(SDL_SetVideoMode(width, height, bpp, SDL_OPENGL) == 0){
fprintf(stderr, "ビデオモードの設定に失敗しました: %s\n", SDL_GetError());
exit(-1);
}
/* OpenGL用の細かい初期設定はこの関数の中で */
setup_opengl(width, height);
/* メインループ */
while(1){
/* イベントを処理 */
process_events();
/* 画面を表示 */
draw_screen();
}
}
267名前は開発中のものです。
2005/10/09(日) 08:57:23ID:qOVsvncy 以上です。
tile.pngは一色に塗りつぶした24*24の24bitカラーの画像です。
とりあえず斜め上から見下ろした白い面なら見えるのですが……。
tile.pngは一色に塗りつぶした24*24の24bitカラーの画像です。
とりあえず斜め上から見下ろした白い面なら見えるのですが……。
レスを投稿する
