トップページ⇒tech
781コメント242KB

▽ OpenGLスレ Part2 △

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
マルチプラットフォームなグラフィックAPIそれがOpenGL!
DirectXもいいがOpenGLもそれなりに(・∀・)イイ!!
質問、雑談何でもいいから書き込め!

- 過去スレ -
http://pc3.2ch.net/test/read.cgi/tech/981044659/

- 関連サイト -
http://www.opengl.org/
http://developer.nvidia.com/
http://www.ati.com/developer/
http://www.mesa3d.org/
0002デフォルトの名無しさんNGNG
- ライブラリ & Toolkit -

GLUT
http://www.opengl.org/developers/documentation/glut.html

GLUI
http://www.cs.unc.edu/~rademach/glui/

wxWindows
http://www.wxwindows.org/

FLTK
http://www.fltk.org/

Qt
http://www.trolltech.com/

FOX
http://www.fox-toolkit.org/

csgl(C#)
http://csgl.sourceforge.net/
0003デフォルトの名無しさんNGNG
- 赤本 -
http://www.opengl.org/developers/code/tutorials.html
http://romka.demonews.com/opengl/doc/index_eng.htm

- お勉強サイト -
http://nehe.gamedev.net/
http://www.flipcode.com/
http://www.gamedev.net/
http://romka.demonews.com/opengl/index_eng.htm
http://www.exa-corp.co.jp/mmtech/OpenGLEdu/
http://www.wakayama-u.ac.jp/~tokoi/opengl/libglut.html
0004デフォルトの名無しさんNGNG
とりあえず立てました。よろしく
0005デフォルトの名無しさんNGNG
>>2
激しく同意!!
0006デフォルトの名無しさんNGNG
スレ立て乙
0007デフォルトの名無しさんNGNG
前スレから1年以上経過してるのね、、
>>1おつ
0008デフォルトの名無しさんNGNG
久しぶりに見に来たら8ゲット!?
>>1さんおつかれさま〜
ついでにC++&GL初心者の僕の質問にも答えてください

窓(Window)新規作成&マウスとリサイズ関数を持った
簡単な窓生成クラスを作ろうと思ってるんですが
コンパイルしようとすると
display とかmouseとかresizeで渡そうとしてる関数が無いよ〜って返ってくるのです。
表示用クラス{
パブリック:窓作成初期化ルーチン
プロテクテッド:マウス、リサイズ、ディスプレイなどが複数
}
で、初期化しようとしてglutDisplayFunc(プロテクテッドに書いたルーチン)とかで指定しようとすると
no matches converting function...と返ってきてしまいます

どうすれば良いんでしょうToT
クラス名::関数名
とか&クラス名::関数名とかで渡そうとがんばってみましたが…
C++初心者の俺にはよくわからんでしたToT

よろしく御願いしマス
0009デフォルトの名無しさんNGNG
リファレンス (googleですぐに引っ掛かっちゃうけど)
http://www.cevis.uni-bremen.de/~uwe/opengl/opengl.html
http://www.eecs.tulane.edu/www/graphics/doc/OpenGL-Man-Pages/opengl_index_alpha.html
http://tc1.chemie.uni-bielefeld.de/doc/OpenGL/hp/Reference.html
0010デフォルトの名無しさんNGNG
>>8
関数をstaticにしてみるとか。
0011前スレの後ろあたりの人NGNG
GTL 使ってる人っています?
てか、これに未来はあるのかなぁ・・・

GLT OpenGL C++ Toolkit
http://www.nigels.com/glt/
00128NGNG
staticにしたら動きました…
なんでだろ〜?
とりあえず独習C++など引いてみマス
0013デフォルトの名無しさんNGNG
wdc
0014デフォルトの名無しさんNGNG
>>12
static だと暗黙の this ポインタが要らないから・・・
0015デフォルトの名無しさんNGNG
みんな開発環境は何?
俺
VC++&GLUT

厨房ですまそ。
0016デフォルトの名無しさんNGNG
VC++&API直叩き
0017デフォルトの名無しさんNGNG
最初はGLUT だったけど、だんだん glX (linux )になりつつ
またいしたことシナイから変わんないけど
0018デフォルトの名無しさんNGNG
VC++&SDL
windows以外で動作させたことないけど。
パッドで操作できると楽しい。が、操作できる項目を多くすると不便。
0019デフォルトの名無しさんNGNG
最近はじめようかと
GCC&GLUT @FreeBSD←学校で標準なんで。

openglってバージョン乱立してるけどオフィシャルはいくつなの?
0020デフォルトの名無しさんNGNG
>>18
最後の一文どういうつもりで書いたのか分からんけど
Linuxでもパッド使えるよ。
0021デフォルトの名無しさんNGNG
WGLをモデリングツールやDirectXと絡めてプログラミングさえ出来ればゲーム作りには問題無し。
0022デフォルトの名無しさんNGNG
今さ、openglでゲームみたいなのつくってるんだけど、
3Dオブジェクトのファイルどうしようかと考えてるんだけど、
前はライトウェーブのファイルを読み込んでたんだけど、結構重たい。
なんか、もう少し軽くて汎用性があるフォーマットない?
opengl標準フォーマットないから、この辺悩む・・・。
0023デフォルトの名無しさんNGNG
昔VRMLなんてのがあったねえ...(遠い目)
残党が何かやってるらしい http://www.x3d.org
標準に興味があるなら見ておくといいかも。

まあ、デザイナとの連携が取れないと、実作業に入ったときに
どうしようもなくなるのは明白。それを考えると、
3DStudioMaxから吐き出せるフォーマットのローダーを作るか、
Maxのエクスポータプラグインを書いて独自形式で吐くか、
ぐらいしか思いつかないや。
ゲーム屋さんは後者あるいはミドルウェアを使うのが普通らしい。

それ以外にデータが流通してる気がするのはDirectX方面の
.Xファイルだけど、触ったことないから知らない。
一応Maxからのエクスポータがあったような?
0024デフォルトの名無しさんNGNG
OpenGLでライトウェーブのファイルを読みこむにはどうすればいいの?
なんかX形式に変換ツールを使って云々とか書いてあったけど、ぜんぜんわかりません。
0025名無し@沢村NGNG
ライトウェーブや3DStudioMaxのフォーマットなんてダサくて使えないよ。
せめてバーチャファイターのチェンリーみたいのがサクサク動かないと…!
PCの3Dはダサいから今のところ手を出していない…。
0026デフォルトの名無しさんNGNG
>>1
          ┌┬┬┬┐
    ―――┴┴┴┴┴―――――、
.  . /  ̄ ̄ ̄//. ̄ ̄| || ̄ ̄ ̄||| ̄ ||    __________
  ./    ∧// ∧ ∧| ||      |||   ||  /
 [/____(゚_//[ ].゚Д゚,,) ||___|||   || <  こんなのが有りますた
. ||_. *  _|_| ̄ ̄ ∪|.|.       |ヽ.__||  \__________
. lO|o―o|O゜.|二二 |.|    救済病院 ||
 .| ∈口∋ ̄_l__l⌒l_|___|_l⌒l._||
   ̄ ̄`ー' ̄   `ー'  `ー'   `ー'
http://freeserver.kakiko.com/hiroyuki/
0027デフォルトの名無しさんNGNG
DirectX?
そんなのだめだ(略
0028デフォルトの名無しさんNGNG
>>24
http://www.dstorm.co.jp/developer/download/lwlib.html
このライブラリつかって読み込め。
0029デフォルトの名無しさんNGNG
>>28
落としたけど難しいから簡単に説明して。
0030デフォルトの名無しさんNGNG
>>29
サンプルのなかに入っているOGLViewってやつが
lwo形式を読み出しOpenGLで表示するサンプル。
lwsを読み込むときもそんなに難しくない。
いっしょに入ってるSCN3.pdfを読めばわかるはず。
0031デフォルトの名無しさんNGNG
休みda!
がんばって勉強しよう。。
0032デフォルトの名無しさんNGNG
age
0033デフォルトの名無しさんNGNG
ageage
0034かおりん祭 ◇VqKAORinK6NGNG
     │この度は新スレおめでとうございます。
     │お祝いのご祝儀をどうぞ
     └───v────────────

         ノハハヽ ____
         川^▽^)| .寿. |
       __ (    つ|.=∞=.|
       | \と___)).| .癶. |
       (  ,, ̄ ̄ ̄)  ̄ ̄
         ̄ ̄ ̄ ̄
0035デフォルトの名無しさんNGNG
ありがたくもらっときます。
0036デフォルトの名無しさんNGNG
Windowsで、窓の大きさにかかわらずオブジェクトをウィンドウに
同じ大きさで表示させたいのですが、どうやってやるのでしょう?
0037デフォルトの名無しさんNGNG
glViewport(0, 0, 300, 300);
gluPerspective(30.0, 1, 1.0, 10.0);
でオブジェクトを同じ大きさに保てました。

んー、でもビューポートはウィンドウの大きさにしたいんですよね。
0038デフォルトの名無しさんNGNG
画面が大きくなるにつれてfovを大きくすればいいんでない?
計算式はどうなるか知らんけど
0039レプタリアン教授 ◆Sx0UvVQevE NGNG
デモを作ろうと思うんですが、音楽との同期について詳しいサイト知ってますか?
0040デフォルトの名無しさんNGNG
サイトは知らない
音楽はどうやって鳴らすつもりなの?
0041レプタリアン教授 ◆Sx0UvVQevE NGNG
DirectSound。詳しいやり方に関してはやり初めでまだ勉強してないけど。
0042デフォルトの名無しさんNGNG
IDirectSoundBuffer::GetCurrentPositionだけ知っておけば
あとはなんとかなると思うよ
0043レプタリアン教授 ◆Sx0UvVQevE NGNG
どもです。
004437NGNG
>>38
レスありがとうございます。
fov を大きくしたら、物体は小さくなりました。
計算式は… 解りません。

なぜビューポートが大きくなったら、物体も大きく表示されるのでしょう?

いったんビットマップに描画してからウィンドウに描画する方がいいのかな。
SwapBuffer を使わない方法です。
0045デフォルトの名無しさんNGNG
>>44
おまいさんはviewportとprojection matrixの関係を
一度きっちり理解したほうがいいと思うよ。
結局後でハマることになる。
0046デフォルトの名無しさんNGNG
今日、赤本と青本とジェムを注文しました。全部で3万越しました。悲しいです。
原書でも読める事は読めるけど、読むのが極端に遅くなるんでジェム以外は泣く泣く和書にしました。
0047デフォルトの名無しさんNGNG
glTexImage2D()のinternalFormatとformatの違いがわかりません。
texelのフォーマットとtexture-imageのフォーマットって違いが良くわから無いです。
ディスティネーションとソースみたいなもん?
0048デフォルトの名無しさんNGNG
formatはこっちが渡すデータのフォーマット。
0049デフォルトの名無しさんNGNG
やはり、3Dで食って行くには物理学にも精通してないとダメなんでしょうか?
ベクトルなら大丈夫なんだけど・・・剛体シミュレータ作れねぇよウワァァァン
0050デフォルトの名無しさんNGNG
>>46
あー、赤の和書は訳が悲惨だよ…1版しか見てないけど。
もー何が書いてあるのかすら理解するのに苦しんだよ。英語低レベルでも
原書にしる!
青ってリファレンスでしょ?不要。
0051デフォルトの名無しさんNGNG
え〜〜〜〜〜!青本いらないのか・・・赤本和書最悪なのか・・・・・鬱・・鬱
gemsはいいよね??
0052デフォルトの名無しさんNGNG
>>51
gemsは玉石混合て感じだね。まぁ全部揃えててもいいとは思うけど。
ところでいま何巻まで出たの?
0053デフォルトの名無しさんNGNG
http://www.amazon.co.jp/exec/obidos/ASIN/1584500549/qid=1041958400/sr=1-1/ref=sr_1_2_1/250-3156972-1681059
3まで出てますよん。
今回は赤青が和書で予算オーバーだったから1しか買ってないけど。
なんだよ、赤を洋書、青無しにしてたら1,2,3買えたじゃん・・・・
0054デフォルトの名無しさんNGNG
英語読めない事もないけど、気力が萎えてるから、gemsも和訳買ったんだよな・・・あ〜英語力がもっとあれば、懐も・・
0055デフォルトの名無しさんNGNG
>>53
あ、gemsてゲームの方か。
てっきしgraphics gemsかと。まだIVまでなのかな…
http://www.amazon.co.jp/exec/obidos/ASIN/0123361559/qid=1041958986/sr=1-3/ref=sr_1_2_3/250-1898850-7581056
0056デフォルトの名無しさんNGNG
とおもたらVが出てたのか… なぜ検索にかからんのだ…
http://www.amazon.co.jp/exec/obidos/ASIN/0125434553/ref=pd_sim_dp_2/250-1898850-7581056
しかし、相変わらず国内で買うと高すぎだねぇ…
0057デフォルトの名無しさんNGNG
http://www.amazon.co.jp/exec/obidos/tg/detail/-/books/4879669733/glance/250-3156972-1681059
この本には俺も騙されました。マジで一度手に取ってみ。笑えるから。
0058デフォルトの名無しさんNGNG
盛り上がっている所、脇から済みませんが。

ビューポートってのは投影先の事で、物体をそこに合わせて投影されるので、
ビューポートが大きくなれば、物体も大きく表示される。
また、ビューポートの大きさがZバッファとカラーバッファの大きさになる。

との解釈でよろしいのですか?
0059デフォルトの名無しさんNGNG
??????????????????????????
0060デフォルトの名無しさんNGNG
学校ではこの本を使ってますです。

http://cwx.prenhall.com/bookbind/pubbooks/hill4/


0061!NGNG
果たして赤本5000円は安いのだろうか…
0062デフォルトの名無しさんNGNG
>>58
バッファのサイズは表示しているウインドウのサイズかと。
ビューポートを変えてもバッファサイズは変わらんです。
0063デフォルトの名無しさんNGNG
glBindTexture()を2回実行する意味が良く分からないんですが。
0064デフォルトの名無しさんNGNG
あげ
0065デフォルトの名無しさんNGNG
あげ
0066デフォルトの名無しさんNGNG
>>57
この本もそいつほどじゃないとは思うけど不用ですな。
http://www.amazon.co.jp/exec/obidos/ASIN/4894712172/qid%3D1042025024/250-1038639-1530667
と有価、使える本て1/100以下だから生姜ないんだけどね。
0067デフォルトの名無しさんNGNG
MFCかよ。MFC専門じゃない本でMFCが登場する時は、間違い無く説明不足で初心者は混乱して理解不能な罠
0068デフォルトの名無しさんNGNG
ゲームの方のgemsはいいの?評判いいから注文したんだけど。
0069IP記録実験NGNG
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0070デフォルトの名無しさんNGNG
>>68
こんなスレを見つけた。
ttp://game.2ch.net/test/read.cgi/gamedev/1026393861/l50
他にもあったような気がするが…思いだせん。
0071デフォルトの名無しさんNGNG
ウワァァァン…買う本は赤本以外全部ダメって事か…
ま、まだ21だし、大丈夫、なのかな・・・でも20歳くらいでバリバリ3Dゲーム作ってるヤツもいそう・・
0072デフォルトの名無しさんNGNG
>>71
あれ、赤も訳書にしたんじゃなかったっけ?
0073デフォルトの名無しさんNGNG
あぅ
0074デフォルトの名無しさんNGNG
キャップでの書き込みは?やっぱりIPとられるの?
0075デフォルトの名無しさんNGNG
>>594
ザラキ
0076IP記録実験NGNG
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0077デフォルトの名無しさんNGNG
>>244 うっさいへげ
0078デフォルトの名無しさんNGNG
立ったのかよ
0079デフォルトの名無しさんNGNG
という事は、PFD_DRAW_TO_BITMAP の時はビットマップの大きさが
バッファの大きさになりそうですね。
最終的にDIBで扱いたいので、こちらでやります。

サンプルコードではよく、glViewport にウィンドウサイズを渡していますが、
これは単に、ウィンドウサイズに合わせて拡大・縮小表示するためですか?
ウィンドウに入りきらない部分が表示されるわけじゃないですよね。

ビューポートをウィンドウの大きさにする必要はない。
ビューポートとクリッピング領域は別物で、クリッピング領域内であれば、
ビューポートの範囲外もちゃんと表示される。

まだ確認用のコードが書けないので予想です。
0080デフォルトの名無しさんNGNG
一応ニュー速クローン
http://jadedmp.hp.infoseek.co.jp/cgi-bin/news/
0081デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0082デフォルトの名無しさんNGNG
Wi(ry
0083デフォルトの名無しさんNGNG
yahooのtopにキタ━━━━━━(゚∀゚)━━━━━━!!

http://www.yahoo.co.jp/
0084デフォルトの名無しさんNGNG
>(電波)

ってのは受信したよってことすか、、?
0085デフォルトの名無しさんNGNG
例の「灰」サイトみたいに
全ての文章がネタで、確信犯で小さいデマやうそを言うならまだしも
自作自演で鯖細くしたり(電波)嘘っぱちのヒット数言ったり
詐欺やってる内はいきてるカチないね。
まぁ百パーセント元からデマのガセだからね>2ch

0086デフォルトの名無しさんNGNG
2CH崩壊か!!
0087デフォルトの名無しさんNGNG
どうせ敗訴しても400万円を2ちゃんねらーのみなさんがカンパするんでしょ?
0088デフォルトの名無しさんNGNG
>>894

法律で 警察 裁判所からでないと 公開はしないはず
0089デフォルトの名無しさんNGNG
【ネットボランティア】余ったCPUを・・・
 cell computingとは、ブロードバンドに接続された家庭内や
企業内のPCの余剰CPUパワーを統合し、
仮想的なスーパーコンピュータとしての利用を実現する
技術を用いたSI、ネットワークサービスです。
 バイオ、物理計算、設計、金融工学、CGレンダリングなどの
分野のお客様へ、安価に仮想スーパーコンピュータパワーを
提供することを目的としております。
 なお、将来的には収益にあわせてCPUパワーを提供してくださる
参加者へポイントシステムやデジタルコンテンツによる
利益還元を考えております。
http://www2.cellcomputing.jp/

2ちゃんねるのチーム作ってみました。
http://members.cellcomputing.jp/services/teams/team.htm?id=ABBE425B-CE11-4DA4-8591-C68DF67DA41A
0090デフォルトの名無しさんNGNG
彡ミミミ、
(; ゚ ∀゚) < 遅ればせながら、腐れさん結婚おめでとうage!!
0091デフォルトの名無しさんNGNG
ヨユーの471ゲッティング!
0092デフォルトの名無しさんNGNG
ありがたくもらっときます。
0093デフォルトの名無しさんNGNG
GL2.0ってどうなってるの?予定だともうリリースされてもいいのに。
0094デフォルトの名無しさんNGNG
ひろゆきは大人になりましたとさ・・・
0095デフォルトの名無しさんNGNG
>>665
ほんまや。
0096デフォルトの名無しさんNGNG
踏み台にされて書き込まれたらどうなるの?
踏み台にされた奴が訴えられる?
0097デフォルトの名無しさんNGNG
せめて暗号化くらいしてから記録するようにしてくれよ。
0098デフォルトの名無しさんNGNG
美学っすか?
0099デフォルトの名無しさんNGNG
qbサーバってどこの板がはいってるの?
0100デフォルトの名無しさんNGNG
956 名前:名無しさん@3周年[sage] 投稿日:03/01/10 23:02 ID:6k38FlYk
彼らの風貌の感想を言ったまでですが。
Web上に公開されている写真の感想を言っても、訴えられるのかな?
0101デフォルトの名無しさんNGNG
のだと下四桁みたいだけどね。
3桁?&まだある、そのサイト?
0102デフォルトの名無しさんNGNG
厨房板の連中はIP丸出しでチョン死ねとかはっきり書いてるなあ。
あいつらかっこいいぜ(ゲラ
0103デフォルトの名無しさんNGNG
1ch.tvからはるばるご苦労様。
でもまずはあっちを賑わすことに専念したほうがいいよ
0104デフォルトの名無しさんNGNG
ラウンジに行けばわかる
0105デフォルトの名無しさんNGNG
game gems届いたヨ。誰かが貼ってくれたリンクの先では非難が多かったけど、それはプロの視点から見ての事なんでしょう。
素人のオイラからは宝の山でしたよ。多重積分や画像解析ばっかで物理学なんて高校以来やってないから嬉P。
0106デフォルトの名無しさんNGNG
fusianasan
0107デフォルトの名無しさんNGNG
 
 つまらんよ、そこ。
0108デフォルトの名無しさんNGNG
顔晒したら許します
0109デフォルトの名無しさんNGNG
はぁぁぁ。あと、1週間以内で生理・・・。

何事にもむかついてたまらないっ!
生理前って、ブルーになったり、いらいらしたり。。。
ほんと勘弁してって感じ。
0110デフォルトの名無しさんNGNG
fusianasan
0111デフォルトの名無しさんNGNG
全く正論だね
0112デフォルトの名無しさんNGNG
そうそう

sports3 サーバ html 化はいります。

0113デフォルトの名無しさんNGNG
あげ
0114デフォルトの名無しさんNGNG
gcc3.2, Mesa4.2, glut3.7 でZバッファが使えません(何も描画されない)。
これって仕様でしょか。
BCC では大丈夫だったので文法はあってるみたいなんですけど。
0115デフォルトの名無しさんNGNG
>>114
その程度の情報で回答をもらおうとしているあなたがおかしい、という仕様。
0116山崎渉NGNG
(^^)
0117114NGNG
う〜厨房です。情報少なくてすんません。
あと何を書けば良いか教えて貰えますでしょうか・・・。
0118デフォルトの名無しさんNGNG
どっかでエラーでてるんでないの。
glコマンド実行ごとにglGetError(だっけ?)して確かめれ。
0119デフォルトの名無しさんNGNG
二審も一審を支持。これに対して上告しようにも、
刑事訴訟と同様、自由に上告できるってもんでもないのです。
民事訴訟法312条 (上告の理由) 1項
「上告は、判決に憲法の解釈の誤りがあること
その他憲法の違反があることを理由とするときに、することができる。」
http://www.m-net.ne.jp/~doba/goto/hon.htm

ようするに上告しても今の制度では100%無駄。
これで完全終了ってことか。
0120114NGNG
>>118さん
アドバイスありがとうございます。
コンパイルは通ってしまうんですよね。
と、とりあえず glGetError について調べます・・・。
0121デフォルトの名無しさんNGNG
>>120
そんなに知り炊きゃソースと具体的な症状を書けよ。
0122114NGNG
テスト用にもう1度別のを書いてみたら解決してしまいました。
gluPerspective() の zNear を 0 としてたのがいけなかったようです。

はづかしひから もう しやうですかなんて いひません・・・。
0123山崎渉NGNG
(^^)
0124デフォルトの名無しさんNGNG
大3だけど、まだテクスチャ貼れるくらいしかできません。
就職するまでにどれくらい出来るようになってた方がいいですか。
0125デフォルトの名無しさんNGNG
どこ就職するんだよ。とマジレスしてみる。

どこだかわからないけれども、とりあえず↓くらいできるようになっていれば良し。
http://www.quake3arena.com/
0126デフォルトの名無しさんNGNG
無理
0127デフォルトの名無しさんNGNG
とりあえずのレベルがQuake3かよ(w
0128デフォルトの名無しさんNGNG
どこ就職するのにも困らなさそうだな。
0129124NGNG
うーん、どれくらいかな。Lightwave3Dのファイルを読み込んでボーンとかグリグリ動かせるくらいになればいい?
0130デフォルトの名無しさんNGNG
とてもいい。
でも就職作品はゲームとして完成させてるかどうかを見る人の方が多い。と思う。
0131124NGNG
でもやってるのはWGLなんだよね・・・大抵はD3Dでしょ?
0132gn355my0NGNG
>>131
安請け合いのゲームプログラマならD3Dだね
GLならハイエンドの世界という道もあるからね
0133デフォルトの名無しさんNGNG
じゃあD3Dやれよ。
つーか板違い。
0134デフォルトの名無しさんNGNG
>>133
話題も出さずに五月蝿いぞアホ
0135デフォルトの名無しさんNGNG
134オマエモナ
じゃなくて。

まあGLでやりてーならそれもよし。
表示さえできりゃ後は微々たることでしょ。
俺は英語が読めないからGLは駄目だぞい。
じゃ、そゆことで
0136デフォルトの名無しさんNGNG
まあ、OpenGLはできるがD3Dはまったくできません、
なんて言い切っちゃう人には期待できんなあ。
0137デフォルトの名無しさんNGNG
>>136
禿同
0138デフォルトの名無しさんNGNG
青本便利ジャン
0139デフォルトの名無しさんNGNG
glTexParameterのミップマップ処理ってさ、「え、マッピング範囲がテクスチャより大きいのにテクスチャを縮小すんの?逆じゃない?」って思った奴いない?
0140デフォルトの名無しさんNGNG
GL_NEAREST テクスチャ処理するピクセルの中心に最も近いテクスチャ要素の値を返します

「テクスチャ処理するピクセル」と「テクスチャ要素」って何を指してるんだ・・
0141デフォルトの名無しさんNGNG
Returns the value of the texture element that is nearest (in Manhattan distance) to the center of the pixel being textured.

原文。 マンハッタン距離が除かれてる・・これってユークリッド距離と勘違いする奴いるんじゃないのか。
0142デフォルトの名無しさんNGNG
OpenGL リアルタイム3Dプログラミング

http://www.amazon.co.jp/exec/obidos/ASIN/4879669733/qid%3D1043029569/249-6920076-7085123 warota
0143hnhjfcldsaNGNG
■■ 出会いサイト開業システムレンタル ■■

儲かる出会い系ビジネス

月収100万円オーバー!!

HP作成できない初心者でも安心して運営

出会いサイトシステムをサーバーごとレンタルします

運営者様には無料で宣伝ソフトもお付けします

http://giko.2ch.net/129/yamada894jp.html
0144デフォルトの名無しさんNGNG
>>142
ワラタ
ひどすぎ
0145デフォルトの名無しさんNGNG
tp://leo.nit.ac.jp/~shindo/

…サイバーガールエミちゃん…
0146デフォルトの名無しさんNGNG
>>142
感動的ですらあるな。ソース付いてればある程度は緩和できたと思うが。
0147デフォルトの名無しさんNGNG
2chで良く見るコピぺで
「25歳・昨年まで無職・カジノで儲けた」の>>142バージョンキボンヌ
0148山崎渉NGNG
(^^)
0149デフォルトの名無しさんNGNG
よくわかってない頃に>>142買いますた。
5分読んで本棚の肥やしになってます。
0150デフォルトの名無しさんNGNG
おい貴様ら!
任意の2点を結ぶ円柱を描く関数作りたいんだけどヒント下さい
0151デフォルトの名無しさんNGNG
円柱をn角柱で近似するとして、

方法1:二点の位置と半径から、n角柱の頂点の位置を計算し、
底面と側面を描く

方法2:XY平面を底面とする高さ1、半径1のn角柱を描くルーチンをつくる。
二点の距離と半径から、Translation/Rotation/Scalingを表す行列を求め、
その行列をGLに施してから最初に作ったルーチンを呼ぶ。
0152デフォルトの名無しさんNGNG
最近気が付いたのですが

OpenGLプログラミングガイド 第2版 新装版
ISBN4-89471-695-X

と私の持っている

OpenGLプログラミングガイド 第2版
ISBN4-7952-9719-X

はどう違うのでしょうか?
0153デフォルトの名無しさんNGNG
基本的なところは全然変わってないから気にしないでいいんじゃない?
0154naganagaNGNG
VRMLのファイルをOpenGLにくみ込むにはどうしたらいいか,
具体的に教えてください.
0155デフォルトの名無しさんNGNG
何がわからないのか、わかりません。
0156naganagaNGNG
詳しく書かないですいません.
wrlのファイルをopenGL上で表す様にしたいのですが
ファイルnameを呼び出すだけじゃ駄目なんですよね?
なんとなくwrlファイルを読み込むようなプログラムを
書かなくてはいけないのはわかっているのですが,
どういう風に書けばいいのかよくわからないのです.
もし,よろしかったら教えて下さい.
0157デフォルトの名無しさんNGNG
http://www.google.co.jp/search?q=OpenGL+wrl
0158naganagaNGNG
わざわざどうもすいませんでした.
お世話になりました.
0159名無しさんの野望NGNG
opengl32.dllってmcrosoftからでてるopengl1.1のopengl95.exeよりあたらしいの無いの?
nvidiaのgeforceなんだけどnvidiaからopengl1.3とかのdllとかあったりするの?
探したけど見つからない

このあいだARBつかったプログラムのサンプルあったけど動かなかったよ
0160名無しさんの野望NGNG
>>159
あ、ATI RADEON とかじゃないとARB対応してないのか
0161デフォルトの名無しさんNGNG
ARBの関数、青本に載ってないんだけど・・
0162デフォルトの名無しさんNGNG
そりゃARBだからでは・・・
0163デフォルトの名無しさんNGNG
>>159-162
NVIDIAのOpenGLドライバはディスプレイドライバをインストールしたときに
入るから心配するな。

ARBの命令はどれでも動くわけじゃない。
glGetString(GL_EXTENSIONS)でどの命令が使えるか調べることができる。

ARBの関数はOpenGLレポジトリで調べることができる。
http://oss.sgi.com/projects/ogl-sample/registry/
0164デフォルトの名無しさんNGNG
OpenGLって終わってるってホント?
D3Dとどっちがどういう面で優れてるか教えて。あとGLで代表的なゲームも(QUAKE以外)
0165デフォルトの名無しさんNGNG
現状ではD3Dとの相違点がほとんどない
Windows以外でも動く(ことができる)というメリットしかない
0166名無しさんの野望NGNG
exportテーブルにARBないとおもったらwglGetProcAddressでアドレスゲットしないといけないのか

glMultiTexCoord1fARB= (PFNGLMULTITEXCOORD1FARBPROC)wglGetProcAddress("glMultiTexCoord1fARB");
glMultiTexCoord2fARB= (PFNGLMULTITEXCOORD2FARBPROC)wglGetProcAddress("glMultiTexCoord2fARB");
glMultiTexCoord3fARB= (PFNGLMULTITEXCOORD3FARBPROC)wglGetProcAddress("glMultiTexCoord3fARB");
glMultiTexCoord4fARB= (PFNGLMULTITEXCOORD4FARBPROC)wglGetProcAddress("glMultiTexCoord4fARB");
glActiveTextureARB= (PFNGLACTIVETEXTUREARBPROC)wglGetProcAddress("glActiveTextureARB");
glClientActiveTextureARB= (PFNGLCLIENTACTIVETEXTUREARBPROC)wglGetProcAddress("glClientActiveTextureARB");
0167名無しさんの野望NGNG
>>163

ひとつ賢くなしますた
0168デフォルトの名無しさんNGNG
>>166 常識です
0169デフォルトの名無しさんNGNG
>>165
>>現状ではD3Dとの相違点がほとんどない
まったく違うだろ、阿呆か?

吉野屋の牛丼とコシヒカリどっちがうまいの?
ってきいてるようなもんだよ。概念が全然違う。
0170デフォルトの名無しさんNGNG
釣れちゃった・・・
0171デフォルトの名無しさんNGNG
>>170=165 イタタ

ま、ゲームしか作れない奴には、D3DもGLも同じにしか見えないんだろうな(プ
0172デフォルトの名無しさんNGNG
>>170-171
痛いネタはこっちで頼む
http://pc2.2ch.net/test/read.cgi/tech/1044308707/l50
0173デフォルトの名無しさんNGNG
http://sml-log1.infoseek.co.jp/goodml/user/266/html/msg000000236.php3

結局これの解決策はないの?
0174デフォルトの名無しさんNGNG
バカっぽい質問で恐縮なんですが、

hoge.cpp (hoge.hをインクルード)
hoge.h (中でglu.hとgl.hをインクルード)

に対してVisual C++でhoge.cppをコンパイルしようとすると
『error C2086: 'int APIENTRY' : 再定義されました。』
が鬼のように出るのですが、どうすればいいのでしょうか。
g++ hoge.cpp -c
では問題なくコンパイルできるのですが。
0175デフォルトの名無しさんNGNG
>>174
なんか俺も似たような現象に出会ったことがあるような・・・
たぶんVC++のバグっぽいんだけど。
まず#include "hoge.h"をコメントアウトしてコンパイルする。
当然エラーがでるわけだが、今度はincludeしてコンパイル。
俺はこれでコンパイルできた記憶がある。
0176デフォルトの名無しさんNGNG
最初に
#include <windows.h>
でもやればいいんではなかろうか。
0177174NGNG
うぉんちゅー。>>176の方法でうまくいきました。
なんか基本中の基本っぽいですね。どうもありがとー。
0178デフォルトの名無しさんNGNG
QUAKE、狂気の国のアリス(American MacGee's Alice)以外にOpenGL使った有名ゲームってある?
0179デフォルトの名無しさんNGNG
ゲームじゃないがポスペV3。
Win版は予想通り撃沈したけど。
0180デフォルトの名無しさんNGNG
SDL使った奴とか
mameとか
0181デフォルトの名無しさんNGNG
ポスペみたいな糞挙げないでよ。
NEHEの本に、EAはアリスにおいてテクスチャマトリクスの新しい使い方を開発した、とか書いてたけど、
どんなんか知ってる人いる?
0182デフォルトの名無しさんNGNG
>>178
Tribes1, 2
0183名無しさんの野望NGNG
>>178
HALF-LIFEとそのMOD Counter-Strikeとか有名じゃないか
0184名無しさんの野望NGNG
俺既存のOpenGLゲームのglVertex3fとかglのFunctionをHookして
セルしぇーだーっぽくしたりしたりして遊んでまつ
0185名無しさんの野望NGNG
>>174

APIENTRYの型が#defineされてるヘッダーがincludeされてないから
gl.hのなかの
int APIENTRY gl**
int APIENTRY gl**
でAPIENTRYが何回も定義されたっとVCがおもった
0186デフォルトの名無しさんNGNG
和訳青本の1.2はいつ出るんだ?
0187デフォルトの名無しさんNGNG
需要が無いんじゃないか?
0188デフォルトの名無しさんNGNG
ARBはともかく、gl*EXT()まで載ってないもんなぁ
0189デフォルトの名無しさんNGNG
翻訳しながらこつこつ覚える
0190デフォルトの名無しさんNGNG
>>184
どうやってフックするの?
0191デフォルトの名無しさんNGNG
>>184
いまどきOpenGLのゲームでイミディエイトモード使ってるゲームってあるの?
0192デフォルトの名無しさんNGNG
>>191
別のコマンドに置き換えてるという意味では?
0193デフォルトの名無しさんNGNG
ステンシルバッファの説明が意味わかんない
単なるテクスチャとはちゃうの?
0194デフォルトの名無しさんNGNG
ステンシルバッファ=特殊用途用Zバッファ
0195デフォルトの名無しさんNGNG
>>193
まさにステンシルなんだけどな。描画したいとこだけ切り抜いた感じって言うの?

>>194
正確すぎ。だけど実装によっては違うのもあるような。
0196デフォルトの名無しさんNGNG
stencil=型板みたいな。
0197193NGNG
勉強して大体分かったけど、和訳赤本の絶望的な日本語でステンシルバッファを理解出きた奴いるのか?
使用例のキャッピングなんて何が言いたいのか分からなかったよ。
0198デフォルトの名無しさんNGNG
ステンレスバッファって何?
0199デフォルトの名無しさんNGNG
>>197
あー、CADとか使ったことない?ないとイメージ沸きにくいかもNe-
0200デフォルトの名無しさんNGNG
アキュムレーション使ったモーションブラーでglAccumのGL_LOAD,G_ACCUM,GL_RETURNを使うが、
その時ノvalueの意味も含めて説明してくれ。
0201デフォルトの名無しさんNGNG
BCCでGLUTを使った際に表示されるコンソールを消したいのですが、
どのようにすればいいのですか?
0202デフォルトの名無しさんNGNG
WGLも知らん奴は死ね
0203デフォルトの名無しさんNGNG
>>201
漏れも知りたい。誰かしってるヤシがいたら教えてキボンヌ
>>202
WGLしかできんヤシは氏ね。
0204デフォルトの名無しさんNGNG
GLUTのコンソールって消せるのね。知らなかったよ…

で、FAQにVCの例と
「リンクオプションは他のWindowsコンパイラのために同様です。」
って書いてあるけど、これじゃダメなの?
0205デフォルトの名無しさんNGNG


              消せません

おとなしくWGLやれ
0206デフォルトの名無しさんNGNG
洋書の参考書でどうしても分からない部分があります。誰か教えて下さい.

After you have a valid quadric object, you can use it to draw any number ofshapes,
and the same object canbe used to draw disks, cylinders, cones, and spheres.
So, you may wonder, if a single quadric can be used to draw any shape and as many of each shape as you want,
why would you want to create more than one? And for that matter, if you only need one, couldn't OpenGL just manage that behind the scenes,
and not require you to create a quadric object?
Well, in truth, you could get away with using a single quadric object, and in some applications, that's perfectly acceptable.
But remember that quadric objects are used to store state information about the shapes you want to draw.
If you use a single quadric, all shape drawn with it must use the same states, or else you need to change states between shapes.
Because state changes aren't free, unless you really do want all your shapes to share the same state variable, it's probably going to be
more efficient to create multiple quadrics.

クワドリクスオブジェクトが一つで色々な形状を作れるのはおかしい!オブジェクトが一つだけだと形状の状態情報を形状ごとに変える必要があり、
それは自由じゃないから効率が良い(悪いんじゃないの?)!
とか言ってる意味が分かりません。このページだけでン時間悩んでます。誰か宜しくお願いします。
0207デフォルトの名無しさんNGNG
coplanar って何???
0208デフォルトの名無しさんNGNG
>>201,203
mainじゃなくWinMainで始めれば?
0209デフォルトの名無しさんNGNG
>>206
何について論じているのかぐらい書いてくれよ・・・
0210デフォルトの名無しさんNGNG
quadricsオブジェクトの生成についての箇所です。
0211デフォルトの名無しさんNGNG
>>201
VC++なら/subsystem:windows
>>205
いい加減なことをほざくなWGLヲタ
0212デフォルトの名無しさんNGNG
>>211
嘘つくな黙れアホコンソールとGLUTは一心同体。
悔しかったらコンソール消すソースコード載せてみろアホ。
0213デフォルトの名無しさんNGNG
コンソールを消す"ソースコード"は無理ですね。
0214デフォルトの名無しさんNGNG
>>212
アホアホいう前に自分でGLUTのソースを変更すればいいじゃん。

0215デフォルトの名無しさんNGNG
>>213
VCならこれでいけると思われ。
#include <GL/glut.h>
#pragma comment(linker,"/subsystem:windows")
#pragma comment(linker,"/entry:mainCRTStartup")
0216デフォルトの名無しさんNGNG
>>215
これ実行すると固まるから気をつけろ。作業中だと泣くことになるぞ。
0217デフォルトの名無しさんNGNG
>>216
え、普通のリンカオプションやん
0218デフォルトの名無しさんNGNG
>>216
真性のアホハケーン!
0219206NGNG
誰かおせーて・・
0220デフォルトの名無しさんNGNG
GLUquadricObjをshapeごとに持つか、一つを使いまわすか、
どっちが効率がいいのか言ってるのかなぁ?
英語読めないので勘。
0221デフォルトの名無しさんNGNG
以下のプログラムは, gluLookAt() で視点位置を変えながら, glutSolidSphere() で
原点に描いた球を見るプログラムです. 球を描いているはずなのに, ソース中の OK と
書いた部分では球が表示され, NG というところでは半球が表示されたりします.
クリッピングされているっぽく見えるのですが, ちゃんと視体積の中に球はあるように
思えます.

何を間違えているのか教えてもらえないでしょうか. 私が試した環境は
Linux + XFree86 4.2.1.1 + NVIDIA が提供しているビデオカードの
ドライバ(libGL 等を含む)です. 以下, 長文失礼します.
0222221NGNG
#include <stdio.h>
#include <glut.h>

#define WIDTH 512
#define HEIGHT 512

void display(void);

int main() {
 glutInitWindowSize(WIDTH, HEIGHT);
 glutCreateWindow("test");
 glutDisplayFunc(display);
 glutMainLoop();
}

void display(void) {
 glClearColor(0.0, 0.0, 0.0, 0.0);
 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

 glEnable(GL_LIGHTING);
 glEnable(GL_LIGHT0);

 glViewport(0, 0, WIDTH, HEIGHT);
0223221NGNG
 glMatrixMode(GL_PROJECTION);
 glLoadIdentity();
 glOrtho(-WIDTH / 2, WIDTH / 2, -HEIGHT / 2, HEIGHT / 2, 0, 512);

 glMatrixMode(GL_MODELVIEW);
 glLoadIdentity();

 float s_coefficient[] = {0.0, 0.0, 0.0, 1.0};
 float d_coefficient[] = {0.9, 0.9, 0.9, 1.0};
 float a_coefficient[] = {0.0, 0.0, 0.0, 1.0};

 glMaterialfv(GL_FRONT, GL_SPECULAR, s_coefficient);
 glMaterialfv(GL_FRONT, GL_DIFFUSE, d_coefficient);
 glMaterialfv(GL_FRONT, GL_AMBIENT, a_coefficient);
0224221NGNG
 float light0_position[] = {0, 0, 0, 1};
 float s_color[] = {1.0, 1.0, 1.0, 1.0};
 float d_color[] = {1.0, 1.0, 1.0, 1.0};
 float a_color[] = {1.0, 1.0, 1.0, 1.0};

 glLightfv(GL_LIGHT0, GL_POSITION, light0_position);
 glLightfv(GL_LIGHT0, GL_SPECULAR, s_color);
 glLightfv(GL_LIGHT0, GL_DIFFUSE, d_color);
 glLightfv(GL_LIGHT0, GL_AMBIENT, a_color);

// gluLookAt(0, 0, -256, 0, 0, 0, 0, 1, 0); // これは OK
// gluLookAt(-256, 0, 0, 0, 0, 0, 0, 1, 0); // OK
// gluLookAt(-256, 0, 0, 0, 0, 0, 0, 0, 1); // OK
 gluLookAt(0, -256, 0, 0, 0, 0, 0, 0, 1); // NG
// gluLookAt(-256, -256, 0, 0, 0, 0, 0, 0, 1); // NG

 glutSolidSphere(20, 30, 30);

 glFlush();
}
0225デフォルトの名無しさんNGNG
quadric object 一つ用意すれば、組み合わせでいろんな形をつくれる。
一つで本当に済むのなら、そもそもobjectを作る必要すらなくて、OpenGLが勝手に
裏で持っていればいい話だ。アプリによってはそれで十分な場合もある。ただし、
全ての quadric の state が同じでよければ、という条件がつく。state change
は高くつくので、本当に全部の state が同じでよいのでない限り、それぞれ別の
quadric を作って使ったほうが速い。
0226デフォルトの名無しさんNGNG
>>221
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB| GLUT_DEPTH);

glEnable(GL_DEPTH_TEST);

0227デフォルトの名無しさんNGNG
【IT】マイクロソフト、OpenGL ARB を脱会
http://news2.2ch.net/test/read.cgi/newsplus/1046979524/
0228デフォルトの名無しさんNGNG
>>221
glEnable(GL_CULL_FACE); とか。
0229デフォルトの名無しさんNGNG
こんな汚ねぇコードも久し振りに見たw
0230221NGNG
>>226, >>228
glutInitDisplayMode(GLUT_DEPTH) でした.
もともと FLTK を使ったプログラムだったのですが, GLUT_DEPTH に対応する
Fl_Gl_Window::mode(FL_DEPTH) をはじめて知りました.
しかも glut で書き直すときに GL_DEPTH_TEST も落としていたし ...
ありがとうございました.

>>229, および ALL
それは私のあげたコードについてですよね. どの辺が汚いか, 指摘していただけると
助かります.
0231デフォルトの名無しさんNGNG
 float s_coefficient[] = {0.0, 0.0, 0.0, 1.0};
 float d_coefficient[] = {0.9, 0.9, 0.9, 1.0};
 float a_coefficient[] = {0.0, 0.0, 0.0, 1.0};


???????
0232デフォルトの名無しさんNGNG
glMap* の引数strideってなんなんですか?説明をどんなに読んでも分かりません。
0233デフォルトの名無しさんNGNG
次の要素までの増分
0234デフォルトの名無しさんNGNG
何の増分なんですか?
u?でもuの変域が0.0〜1.0だとしても3とかが指定されてるし、
点間の距離だとしたら矛盾しまくりだし・・
0235デフォルトの名無しさんNGNG
GLfloat p[4][3] ={{0,0,0},{1,1,1},{2,2,2},{3,3,3}}, *q=(float*)p;
int stride = 3
for(i=0;i<n;i++){
p+=stride;
func(*p); //・・・{1,1,1}、{2,2,2}
}
のstride
0236デフォルトの名無しさんNGNG
途中pじゃなくqだった。まぁいいたいことは分かると思うけど。
0237デフォルトの名無しさんNGNG
あ、なるほど!!!!!そっちの増分かぁ。
で、結局データの次元と同じになるわけですね。なら二度手間のような・・

あと、glMap*で定義したu1u2と、glEvalCoord*で定義したuの相関性ってなんなんですか?
u1~u2が0.0~2.0で、uが1/100だったら、ポイント間のuの増分が1/50だという事ですか?
0238デフォルトの名無しさんNGNG
インターリーブな配列を渡したい場合なんか。
あと、
   u - u1
u^= -------
   u2 - u1
とかいてありますな。
0239デフォルトの名無しさんNGNG
赤本にも書いてありますけど、いまいち分からないです・・
0240デフォルトの名無しさんNGNG
u1,u2の範囲を0.0〜1.0にマップするってことかな?

たとえば0.0〜1.0じゃなくスクリーン座標で値を与えたい場合。
glMap2f(... // u1 = 0, u2 = 640, v1 = 0, v2 = 480 に設定

glEvalCoord2f(320, 120); //内部で上の式を使って 320->0.5, 120->0.25 に変換して評価

たぶんこんな感じかと。ちがってたらごめん
0241デフォルトの名無しさんNGNG
あぁなるほど。(多分)分かりました。ありがとうございます。
人に相談せず完全な独学でOpenglを極めた(日本)人なんているんでしょうか・・
0242デフォルトの名無しさんNGNG
NURBS,Bスプラインを図説してくれてるサイト教えてください
0243デフォルトの名無しさんNGNG
glutSwapBuffers();
で、表バッファを表示している最中に
また
glutSwapBuffers();
が着たらどうなるんでしょう?無視されるのでしょうか?
0244デフォルトの名無しさんNGNG
それとも表示が終わるまでプログラムがストップするのでしょうか?
0245デフォルトの名無しさんNGNG
             ∩
        ∧_∧   | |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       (  ´Д`)//  < 先生!こんなのを発見シマスタ!
      /       /    |
     / /|    /      \  http://saitama.gasuki.com/sinagawa/
  __| | .|    |         \
  \   ̄ ̄ ̄ ̄ ̄ ̄ ̄\     \_____________
  ||\             \
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
  ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
     .||              ||
0246デフォルトの名無しさんNGNG
>>243
普通のOpenGLはスレッドセーフでない。たぶん。
というレスで良いか。
0247デフォルトの名無しさんNGNG
>>246
と、いいますと、表示待ちの間はプログラムはとまっているということですか?
0248OpenGLしらんけどNGNG
>>247
それはスレッドセーフな場合でしょ。
0249デフォルトの名無しさんNGNG
>>248
といいますと、、、どうなるんでしょう?
すいませんスレッドセーフの意味もさっき調べたばかりでよくわかってないです。
0250246NGNG
>>249
環境によって結果は違うし、そもそもそーゆー使い方は想定されてないから
何が起きてもしらんよ。という感じ。

書いた後気付いたが、>>246は、OpenGLじゃなくてglutやね。
ちなみに、glutはスレッドセーフじゃないみたい。
0251デフォルトの名無しさんNGNG
なるほど、、、なんか根本的に判ってないようです。
修行してきます、ありがとうございました。
0252246NGNG
書き方が悪かったのかな… まだ見てるかわからんけど…

複数のスレッドから同時にglutSwapBuffers()を呼んではいけない。
そーゆー仕様だから。
1つのスレッドでglutSwapBuffers()を連続で呼ぶのは良い。
処理が終わるまで帰ってこないから、順に処理されるだけ。

ということです。
0253デフォルトの名無しさんNGNG
ただ裏側表示するだけじゃねーの?
0254デフォルトの名無しさんNGNG
>>252
といいますと、ループではglutSwapBuffers()はその表示が終わるまで
ループがストップするということでしょうか?

0255デフォルトの名無しさんNGNG
これをコンパイルすると通るのですが、
アプリケーションエラー"0x1000bb1e"の命令が"0x00000070"のメモリを参照しました。メモリが"read"になることはありませんでした。
とエラーが出るのですが何故でしょう?glutKeyboardFunc(myKeyfanc);を消すと動くのですが。。
#include <GL/glut.h>
#include <string.h>
#include <math.h>
#define DEG_TO_RAD 57.29578
GLfloat theta = 0.0;
GLsizei w, h;
unsigned char kv='a';
void myKeyfanc(unsigned char key, int taa, int fasa)
{
if(key == 'd')
{if(kv=='a')
{
kv = 'b';}
else{kv = 'a';}
}
}
0256デフォルトの名無しさんNGNG
void myreshape(GLsizei w, GLsizei h)
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
if(w <= h){gluOrtho2D(-2.0, 2.0, -2.0*(GLfloat)h/(GLfloat)w, 2.0*(GLfloat)h/(GLfloat)w);}
else{gluOrtho2D(-2.0*(GLfloat)w/(GLfloat)h, 2.0*(GLfloat)w/(GLfloat)h, -2.0, 2.0);}
glMatrixMode(GL_MODELVIEW);
glViewport(0, 0, w, h);
}
void myidle()
{
if(kv=='b'){
theta = theta + 2.0;
if(theta>= 360.0) theta = theta - 360.0;
}
glutPostRedisplay();
}
void mydisplay()
{
GLfloat radtheta = theta/DEG_TO_RAD;
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex2f(cos(radtheta), sin(radtheta));
glVertex2f(-sin(radtheta), cos(radtheta));
glVertex2f(-cos(radtheta), -sin(radtheta));
glVertex2f(sin(radtheta), -cos(radtheta));
glEnd();
glutSwapBuffers();
}
0257デフォルトの名無しさんNGNG
void init()
{
glClearColor(0.0, 0.0, 0.0, 0.0);
glColor3f(1.0, 1.0, 1.0);
glEnable(GL_LINE_STIPPLE);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(-1.0, 1.0, -1.0, 1.0);
}
int main(int argc,char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowSize(500,500);
glutInitWindowPosition(0,0);

glutKeyboardFunc(myKeyfanc);

glutCreateWindow("simple");
glutIdleFunc(myidle);
glutDisplayFunc(mydisplay);
glutReshapeFunc(myreshape);
init();
glutMainLoop();
}
0258デフォルトの名無しさんNGNG
こっちはそこそこ盛り上がってるのに DirectX スレは全然だね。
ゲ制作のほうに行ってるのかな。
0259246NGNG
>>254
そです。というか、>>244であってます。
なので、普通のループでは>>243みたいな状況にはならないです。
というレスで良い… はず。

>>243-244の流れでマルチスレッドの話かと思ってしまった… スマソ
0260デフォルトの名無しさんNGNG
>>255
glutKeyboardFunc(myKeyfanc);
を
glutCreateWindow("simple");
の後に呼ぶと動いた。

>>258
ゲ作にあるOpenGLスレは廃れてるけどな。
0261デフォルトの名無しさんNGNG
>>259
ありがとうございました、書き方が判りにくくてで申し訳ないです。
用語とかわからないもので、、でも判りました、ありがとうございました。
0262デフォルトの名無しさんNGNG
>>260

うわーできました!!凄い感謝です!これに数時間費やしてマジで憂鬱でした。
なるほど、先にウィンドウ作ってないとダメっぽいですね。道理な気がします。ほんと感謝です。

それともう一つ質問なんですが、mainのglutKeyboardFunc(myKeyfanc);の下に
glutMouseFunc(mymouse);を追加して
こういう関数をmain関数の上に追加したのですが、なぜか動かないんです、何故でしょうか?
void mymouse(int x, int y, int button, int state)
{
if(state == GLUT_DOWN && button == GLUT_LEFT_BUTTON){exit;}
}
0263デフォルトの名無しさんNGNG
動かないというよりマウスに反応しないのです
void mymouse(int x, int y, int button, int state)
{
exit(1);
}
だと動くのですが、、、
あと上のexit;はexit(1);の間違いです。
0264デフォルトの名無しさんNGNG
glutなんて別スレ立ててそこでやれ。臭くてかなわん。
0265tanteiNGNG
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
 直通  090−8505−3086
URL  http://www.h5.dion.ne.jp/~grobal/
メール  [email protected]
   グローバル探偵事務局 

0266デフォルトの名無しさんNGNG
まずSPAMの悩みを解決して欲しいにょ。
0267デフォルトの名無しさんNGNG
>>262
void mymouse(int x, int y, int button, int state);
↓
void mymouse(int button, int state, int x, int y);

Webでサンプル拾った方が早いと思われ。
>>3 より
http://www.wakayama-u.ac.jp/~tokoi/opengl/libglut.html
0268デフォルトの名無しさんNGNG
>>267

ありがとうございます、出来ました、しかしそんな間違いをしていたとは、、、、本に書いてあった通りやったのですが
本って結構間違いあるものなんですね、、
そこのURL参考にさせていただきます。
0269デフォルトの名無しさんNGNG
struct vector3_t
{
vector3_t(float x, float y, float z) : x(x), y(y), z(z) {}
vector3_t(const vector3_t &v) : x(v.x), y(v.y), z(v.z) {}
vector3_t() : x(0.0f), y(0.0f), z(0.0f) {}

vector3_t& operator=(const vector3_t &rhs)
{
x = rhs.x;
y = rhs.y;
z = rhs.z;
return *this;
}
0270デフォルトの名無しさんNGNG
・
・
・
vector3_t Normalize()
{
*this = *this * (1.0f/Length());
return *this;
}

union
{
struct
{
float x;
float y;
float z;
};
float v[3];
};
};

269の上の3つの定義と、270の共用体との関連を教えて下さい。意味分からないです。
0271デフォルトの名無しさんNGNG
C++のスレで聞いた方が早いよ
0272デフォルトの名無しさんNGNG
マルチポストウザいからやめろ
0273デフォルトの名無しさんNGNG
フレームレートを60に固定するにはどうすればいいんでしょうか。
なんたらfrequencyって関数を使えとか聞いた事があるんですけど。
0274デフォルトの名無しさんNGNG
wglSwapIntervalEXTあたりはどう?
0275デフォルトの名無しさんNGNG
その関数について少し調べたんですが、情報がすくな過ぎて・・
どっか拡張関数の一覧が書いてあるページ知りません?
0276デフォルトの名無しさんNGNG
http://oss.sgi.com/projects/ogl-sample/registry/ 取り敢えずSGIで見つけました。良かった。
0277デフォルトの名無しさんNGNG
うーん、フレーム周期の最低値を固定するみたいだけど、フレームレートの最大値を固定したいんだよ〜・・
0278デフォルトの名無しさんNGNG
すみません。影を作るところの注意点で、
shadow will be co-planar with the surface it is on. である事がダメだと書いてあって、
Because you can't represent depth values with infinite precision, the shadow won't always have depth values exactly
equal to those of the surface.Sometimes they'll be closer, and other times, they'll be farther away,and
the end result is that the shadow can have holes in it.という事が起きてしまい、
解決策は polygon offsets を使うか、to be sure to draw the shadow before anything that might appear in front of it.だそうです。
ここら辺の説明がやたら英語が分かりにくくて意味がわかりません。影と平面のデプスバッファが同じなのが問題?みたいな事はなんとなくわかるんですが・・
どうか説明して頂けないでしょうか・・?
0279OpenGL Game Programming Kevin Hawkins and Dave AstleNGNG
平べったい影を床に置いたとき、完全に張り付くとは限らなくて、床の方が
前に出た部分が影の穴あきになってしまう。これを避けるために、ここでは
depth test を無効にした上で影を描く手を使うが、この場合、先に影を描
いた上で、その前にあるものを描く必要がある。
0280デフォルトの名無しさんNGNG
あぅ、本をご存知でしたか。ありがとうございました。ところで、この本の469ページ上段で、シャドウボリューム内にビュー平面が入りこんだ場合の問題点について書いてますが、
肝心の対処法が「かなりアルゴリズムを複雑化してしまう」で投げっぱなしなんですよね。この本って投げっぱなしのオチがメチャクチャ多くないですか?
0281デフォルトの名無しさんNGNG
>>280
近クリップ面の問題をシンプルに解決したいのであれば、carmackの逆転手法と
いうのがあるよ。
# 今度は遠クリップが問題になるけど。
http://developer.nvidia.com/view.asp?IO=cedec_stencil
0282デフォルトの名無しさんNGNG
http://developer.nvidia.com/docs/IO/1451/ATT/StencilShadows_CEDEC_J.pdf
こんな程度でも発表できるんやね。
0283デフォルトの名無しさんNGNG
うわ、デプステストに合格するって、手前側にあるって事でしたっけ?向こう側にある、って事でしたっけ?
0284デフォルトの名無しさんNGNG
>>283
Zバッファの値との比較関数を選ぶことができるぞ。
0285デフォルトの名無しさんNGNG
あ、デフォルトではLESSでしたよね。ってことはデフォルトでのパスは向こう側って事ですか?
0286デフォルトの名無しさんNGNG
キャッピングって一体なんなんだ
0287デフォルトの名無しさんNGNG
向こう側と言われても・・・Z値を放り込むのはこちらなわけだし・・・
0288デフォルトの名無しさんNGNG
なぜか最近、一部の3Dアプリが起動と同時に強制終了して動かないんだけど、理由分かる人いる?
0289デフォルトの名無しさんNGNG
↓↓ アダルトDVDが今ならなんと!一枚900円! ↓↓
    http://www.net-de-dvd.com/
↓↓ 特売品は、なんと一枚600円!! ↓↓
    http://www.net-de-dvd.com/
↓↓ 数に限りあり!早いもの勝ち。急げ ↓ ↓
    http://www.net-de-dvd.com/
0290279NGNG
Neheで絶賛していたので買ったのだが、実はほとんど読んでない。業務で
作ってるのはGL自体のレンダリングの技はあまり関係なくて、ビジネス
ロジックとオブジェクトの関係が複雑怪奇になる問題をどうするかで、Game
作成の技が流用できるのではと踏んだのだが、Game自体も奥が深くてなか
なかとっかかりが見出せない。
0291デフォルトの名無しさんNGNG
そうですね・・あの本は、ゲームを作るにあたって「何をすればいいか」という道標的な本ですからね。
ライティングにしろシャドウにしろ、いざ突き詰めて行く為にはそれぞれ別の本が必須になってしまいますよね。
でも、自分としてはWGLの説明をちゃんとしてくれてる本が全然見つからなかったので助かりました。
0292デフォルトの名無しさんNGNG
Cygwin + g++ + SDL + OpenGL
な環境で勉強しています。
そこで、nvidiaの拡張を使ってみたいのですが、どうしたらよいのでしょうか?
libGLNV.aみたいなのがあるのでしょうか?教えてください。

また、簡単なOpenGL(SDL環境で)を使ってみたのですが、
ハードウェアクセラレーションが効いてない気がします。この辺も教えてください。
0293292NGNG
具体的には
glTexEnvi(GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_TEXTURE_CUBE_MAP_ARB);
を実行すると、GL_INVALID_ENUMになるようです。
GLEXT.hを突っ込むだけじゃだめみたいなんで、教えてください。
0294デフォルトの名無しさんNGNG
実装依存
0295292NGNG
GeForce4MXなんですけど、もともとダメなんでしょうか?
0296デフォルトの名無しさんNGNG
288です。誰か教えて・・・
0297デフォルトの名無しさんNGNG
D3Dみたく画像読むだけでアルファ付きテクスチャ作ってくれるライブラリないですか?
0298デフォルトの名無しさんNGNG
探すより作った方が早いだろ
0299デフォルトの名無しさんNGNG
圧縮までかけてくれんのはなかなかないねぇ。
0300デフォルトの名無しさんNGNG
圧縮だってウェーブレット使えば楽だろ
0301デフォルトの名無しさんNGNG
>>292
ttp://web.sfc.keio.ac.jp/~syoyo/opengl/cg/
0302デフォルトの名無しさんNGNG
>>292
Geforce4MXではテクスチャシェーダは動かないよ。(NV30のソフトエミュとかは除く)
glGetString(GL_EXTENSIONS)で使えるエクステンション確認してみ?
あと、拡張命令の使い方の手順は大丈夫?文章を見た感じだといきなりなにも初期化
せずに使ってるっぽく見えるけど…
NVIDIAのOpenGL SDKを使えば比較的簡単に拡張命令を利用できるよ。
確かめてないから言い切れんけど拡張命令を利用する程度ならコンパイラ依存は
ないはず。
0303デフォルトの名無しさんNGNG
水を三次元格子で表現してますが、処理重過ぎです。
0304デフォルトの名無しさんNGNG
NVIDIA OpenGL SDKを利用して拡張命令を初期化するなら
glh_init_extensions( 拡張命令 );
でOK。
0305デフォルトの名無しさんNGNG
どなたかメタボールについて詳述されているサイト、もしくは書籍はご存知ないでしょうか?
アマゾンで探してみた限り、メタボールの文字さえ見かける事が出来ませんでした。
0306デフォルトの名無しさんNGNG
あぁ、OpenGLに関してのメタボールの記事です。宜しくお願いします。。
0307tomoNGNG
ただの宣伝です。
ホームページ作っているのでよろしくです。

http://www.h4.dion.ne.jp/~pc-pow/
0308デフォルトの名無しさんNGNG
OpenGLって無料なのですか?
0309デフォルトの名無しさんNGNG
有料ですよ。個人ライセンスだと\12000。
0310308NGNG
>>309
ではGLUTやGLUIとかをダウンロードしたら24000円もかかるのですか?
0311デフォルトの名無しさんNGNG
釣られてあげると、ぐぐればすぐわかる。
0312308NGNG
>>311
まさか>>309ってネタ?
0313デフォルトの名無しさんNGNG
ぐぐってみたならそれが真実
0314デフォルトの名無しさんNGNG
>>305
Marching Cubesとかどうかね。
特許あるっぽいけど。
0315デフォルトの名無しさんNGNG
SGIごと買うなら
http://finance.yahoo.com/q?s=SGI&d=t
0316デフォルトの名無しさんNGNG
>>314
ありがとう。書籍じゃないみたいだけど調べてみます。
0317308NGNG
>>313
GLUIをダウンロードしても金は取られなかったっということは
>>309って俺をはめたネタ?
0318デフォルトの名無しさんNGNG
しつこいですね。釣りっぽい質問するからですよ。
自分で調べる努力はしようね。
0319デフォルトの名無しさんNGNG
>>305
パスカルだけどソース付きサンプル
http://www.sulaco.co.za/opengl3.htm
サンプルが参考にしてるページ
http://astronomy.swin.edu.au/~pbourke/modelling/polygonise/
0320デフォルトの名無しさんNGNG
激しく既出っぽいけど、
ピアソン・エデュケーション出版の「Win32 OpenGLプログラミング」は初心者な漏れには最適?

http://www.amazon.co.jp/exec/obidos/ASIN/4894712172/qid%3D1047197449/br%3D3-2/br%5Flfncs%5Fb%5F2/249-4970321-3834721
0321316NGNG
ぬお・・マーチンキューブ法って、メタボールじゃなくてボリュームレンダリングの技法だったんですね。
まぁこっちのが精度高そうだし応用利きそうだからいいですけど。。
0322デフォルトの名無しさんNGNG
hage頭
0323デフォルトの名無しさんNGNG
カーマックage
0324デフォルトの名無しさんNGNG
LW3DのLWO形式のファイルをQUAKEのMD2形式に変換するツールを知りませんか?
0325デフォルトの名無しさんNGNG
age
0326デフォルトの名無しさんNGNG
shr
0327デフォルトの名無しさんNGNG
hky
0328かおりん祭りNGNG
http://www.saitama.gasuki.com/kaorin/

  〜oノノハヽo〜
     ( ^▽^)/⌒\                       , −-
     ((ニ[二=(  こんなのがございま−−==≡≡す♪  ))
   /∧=:||  \_/                       `ー‐‐'
     じ/___/
0329デフォルトの名無しさんNGNG
ああhhr
0330デフォルトの名無しさんNGNG
メタボールって英語では違う言い方が多かったからそれでググレ
バとかビとかそんなやつ。なんだっけ?
0331デフォルトの名無しさんNGNG
>>330
確かBlob(ブロブ)だっけか?
0332デフォルトの名無しさんNGNG
あの、すみません。LW3DのLWO形式をOpenGLで読み込む為のライブラリって、やっぱりアレしか無いんですよね。。
MD2形式に変換するのがあれば良かったんですが・・
それか、MilkShapeにLWOを読み込んでMD2で出力、もしくは始めからMilkShapeでモデリングして、MD2で出力、くらいしか無いんですかね?
0333デフォルトの名無しさんNGNG
あげ
0334デフォルトの名無しさんNGNG
>>332
LW3Dをもってるんだったら、
http://members.bellatlantic.net/~mbristol/md2/
を試してみれば?
googleで「lwo md2」で検索したら簡単に見つかるものだが…
0335デフォルトの名無しさんNGNG
>334
LW3Dのプラグインであったのか!マジありがとうです!
0336デフォルトの名無しさんNGNG
openGLの新しいヘッダーとかみつからないんだけどさー、2001年6月30日のしかない。
ひょっとして更新されてないの?Ver1.4とかはでてるらしいのに、PDFしかDLできないし・・・。

glh_extensions.h(NVIDIAのだから?)のglh_init_extensionsとか使うとメモリリークしてるしさ、
しょうがないからどっかのソースみたいにglh_shutdown_extensionsとかって関数つくってみたよ。
0337デフォルトの名無しさんNGNG
>>336
>新しいヘッダーとかみつからないんだけどさー
OpenGLでプログラミングする以前の知識レベル。出直せ。
0338山崎渉NGNG
(^^)
0339デフォルトの名無しさんNGNG
OpenGLでワンスキンメッシュっていうかジオメトリブレンディングするとしたら
自力でやるしかないですか?
0340デフォルトの名無しさんNGNG
>>339
どこまでが自力かわからんが拡張命令を使えばできないことはない。

NVIDIA系カード
http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_weighting.txt

ATI系カード
http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_blend.txt

あとはARB_vertex_programとかの頂点シェーダー系拡張命令を使うか。
http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_program.txt
0341デフォルトの名無しさんNGNG
>>340
いやーこれ結構アテにならないよ。全ての頂点に関節の数の分のウエイトの配列が必要だし。
Vertex Programも命令数やシェーダーの組み合わせ増大の問題があるのであんま良くないような
気がするんだけど、今はこっちが主流なのかな?
0342動画直リンNGNG
http://www.agemasukudasai.com/movie/
0343デフォルトの名無しさんNGNG
>>341
>全ての頂点に関節の数の分のウエイトの配列が必要だし。

ARB_vertex_blendなら4関節、EXT_vertex_weightingなんて2関節分の
行列しかのせられない訳だが、それが問題か?影響しない関節のマトリクス
まで持つ必要は基本的にないし、そもそもできないが。
# どんな実装をするにしろその頂点に影響する関節数分のウェイト値は必要。

>Vertex Programも命令数やシェーダーの組み合わせ増大の問題が
>あるのであんま良くないような気がするんだけど、

正直、場合分けがコストに見合わないなら使わないウェイト値に0を入れて
おけばいいだけの話。(PCだとGPU側で無駄な計算をすることよりもCPUから
の頂点キックの回数が増えるほうが速度的には問題)SSE2なり使ってCPUで
最適なスキン処理作るのも場合によってはありだろうけど生産性とかの問題
でたいていの場合は考慮外。
# シェーダーの組み合わせっていってるけど、シェーダー以外の組み合わせ
# が膨大になるリソース(マテリアルとか)だってうまく管理できるんだから、
# それは個々のコーディングの設計の問題だと思う。
0344341NGNG
>>343
>ARB_vertex_blendなら4関節、EXT_vertex_weightingなんて2関節分の
>行列しかのせられない訳だが、それが問題か?影響しない関節のマトリクス
>まで持つ必要は基本的にないし、そもそもできないが。
># どんな実装をするにしろその頂点に影響する関節数分のウェイト値は必要。
今ちょうどそこら辺を調べてる最中だったんだけど、
基本的にワンスキンのモデルってVertexPointerやDrawElements系の頂点、インデックス配列で
一気にドカっと描画するよね。頂点ごとには多くて三個ぐらいしか影響するボーンは無いと
思うけど、普通は一気に1000個くらいは頂点を処理しないといけないから関節の行列は
全てバインドしておかなきゃいけないんじゃないかって気がするんだけど。
VertexWeightPointerEXTの引数でどの行列を参照するかっつう指定が無いし。
MatrixPaletteを使えばなんか出来そうな気もするけどもうビデオカードがなかなか対応
してないんだよね。
いや、この認識が間違ってるんならそれでもいいんだけど。
0345デフォルトの名無しさんNGNG
>>344
>頂点ごとには多くて三個ぐらいしか影響するボーンは無いと
>思うけど、普通は一気に1000個くらいは頂点を処理しないといけないから関節の行列は
>全てバインドしておかなきゃいけないんじゃないかって気がするんだけど。

前者2つの拡張を使うのであればそもそも同時に4つ(2つ)までの行列しか参照できない
ので…。
頂点プログラム系拡張ならテンポラリに行列をおけるだけおいて、アドレスレジスタを使って
任意の行列を使えるので、こちらも全てバインドする必要なんてなし。
# というか、仕様嫁。
0346341NGNG
>>345
もちろん仕様を読んだ上で
>いやーこれ結構アテにならないよ。
って言ってるよ。
343は
>ARB_vertex_blendなら4関節、EXT_vertex_weightingなんて2関節分の
>行列しかのせられない訳だが、それが問題か?
と言っているが問題なんでしょ?
0347デフォルトの名無しさんNGNG
>>346
>>341>全ての頂点に関節の数の分のウエイトの配列が必要だし。
>>344>VertexWeightPointerEXTの引数でどの行列を参照するかっつう指定が無いし。

仕様をまともに読んでるなら、こんなこと言わないと思うけど…。
# もしかして階層構造全体の全ての行列のウェイト値を全ての頂点で持たないといけないと思ってるのかな?

>343は
>>ARB_vertex_blendなら4関節、EXT_vertex_weightingなんて2関節分の
>>行列しかのせられない訳だが、それが問題か?
>と言っているが問題なんでしょ?

↑これは、341の

> 全ての頂点に関節の数の分のウエイトの配列が必要だし。

に対する回答だったつもり。結局、前記2つの拡張を使う限り一頂点には2(4)つまでの
ウェイトデータしかもてないわけで、これ自体をさして「アテにならない」というのが意味不明
だったので問題か?と聞いたつもりだったのだけど、どう?ソフトウェア頂点処理をしても
結局その程度のウェイトとインデクスデータは持つわけで、それが問題になるとは
思えないのだけれど。
頂点によっては1つ2つマトリクスが冗長になるかもしれないけど、それがボトルネックになる
システムもあまりないでしょ。
0348341NGNG
>>347
GL_ARB_vertex_blendはn個のウェイトが有効だよ。その場合n個分のウェイト配列が必要になるはずだけど。
つーかなんでつっかかられてるのかわかんないんだけどこれ以上はイヤなんでもう書き込みません。
0349デフォルトの名無しさんNGNG
Direct3DとOpenGLで行列の動作の違いとかありますか?
0350デフォルトの名無しさんNGNG
コラムメジャー
0351動画直リンNGNG
http://www.agemasukudasai.com/movie/
0352デフォルトの名無しさんNGNG
行列は数学の話だと思うが
0353デフォルトの名無しさんNGNG
>>348
>GL_ARB_vertex_blendはn個のウェイトが有効だよ。その場合n個分のウェイト配列が必要になるはずだけど。
四つまでのマトリクスを指定するのだから当たり前の話だよ。これをもって

>>341> 全ての頂点に関節の数の分のウエイトの配列が必要だし。

が「いや〜結構あてにならない」ということの意味がわからないので説明して欲しいだけ。
だって、自前で同様の処理を行う時だって、結局n個の関節の数分のウェイトが必要な訳
で、拡張を使ったときにだけ特別問題になることじゃないし…。
(ARB_vertex_blendで無駄にウェイト値を持ちたくないのなら、頂点キックの回数が増える
ことを引き換えにメッシュを関節数でグループ分けしてglVertexBlendARBで行列の量を
切り替えることもできるし)

つっかかっている訳じゃないよ。
0354341NGNG
じゃあ最後に

> >GL_ARB_vertex_blendはn個のウェイトが有効だよ。その場合n個分のウェイト配列が必要になるはずだけど。
> 四つまでのマトリクスを指定するのだから当たり前の話だよ。これをもって
>
4つというのがどこの数字だかわなんないけど(WEIGHT_ARRAY_SIZE_ARBの数字?)
例えば20個の関節があるモデルに対してある頂点は2つのボーンしか参照しないでものこりの18個分のウェイトも必要という話。
大体2つないし4つまでしか関節が増やせないのならその制約自体が>>399の要求に対して「あてにならない」と言える要素だと思うが。
他にも対応しているカードが少ないとか色々な要因を含めて俺はあてにならないと言ってるだけ。

>
> つっかかっている訳じゃないよ。
>
ムッチャ気分悪いんだけど
0355デフォルトの名無しさんNGNG
>>354
>4つというのがどこの数字だかわなんないけど

実質的にこの拡張で使えるマトリクスの数字。ただ、これは確かに将来的には4ではないかもしれないね、ゴメン。
(でもARB_vertex_blendでMAX_VERTEX_UNITSが4超えてる環境ってでないとおもう。今後は頂点シェーダーが
主流になると思うので)

>例えば20個の関節があるモデルに対してある頂点は2つのボーンしか
>参照しないでものこりの18個分のウェイトも必要という話。

これは前述したように作り方しだいじゃないの?マトリクスのグループ分けを行えば
そういう問題も起こらないし、仮にGL_MODELVIEW20_ARBまで使えてもそんな無駄な
データを持たせる実装を強制する必要はないし。

>大体2つないし4つまでしか関節が増やせないのならその制約自体が>>399の
>要求に対して「あてにならない」と言える要素だと思うが。
>他にも対応しているカードが少ないとか色々な要因を含めて俺はあてにならない
>と言ってるだけ。

拡張仕様には制限があるし、もちろん全てのOpenGL環境で動くわけではないし、
最初から>>340で万能であることを喧伝してないし(その為に仕様にリンクしたし、
NVIDIA系とかATI系とか書いたつもりで、頂点シェーダーもできるだけ一般的な
ARB系を紹介した)そんなことを言い出したら>>339の情報ではだけではあまり
に判断材料が足りないわけですよ。
それを突き詰めていったら「>>339OpenGLではできません。マル。」で終わってしまう訳
で、一応こういう事もできるって紹介を「あてにならん」で一蹴するのはあまりに
言葉足らずなのでは?
0356山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0357山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0358デフォルトの名無しさんNGNG
>>354
vertex_blendのサンプルがあったので紹介するよ。
http://www.ati.com/developer/vertexblend.html

>例えば20個の関節があるモデルに対してある頂点は2つのボーンしか
>参照しないでものこりの18個分のウェイトも必要という話。

上記のサンプルでは40個以上の関節があるけど、参照するウェイト値は
4つまでしかないよ。354の説では一頂点に40個以上ウェイト値を用意しな
ければいけないみたいだけど。
0359341NGNG
>>358
その方法は>>353の
> (ARB_vertex_blendで無駄にウェイト値を持ちたくないのなら、頂点キックの回数が増える
> ことを引き換えにメッシュを関節数でグループ分けしてglVertexBlendARBで行列の量を
> 切り替えることもできるし)
の方法だね。この部分にレスしなかったのは、こんなことをやるやるメリットが無いような気が
したからなんだけど。実際40個の関節があるのなら40回前後パイプラインが分断されるわけだし。
まあ実際にデモを作ってるところを見ると有効な方法なんだろうね。
でもRadeon系ではこの実装の方が速いんだろうけどこんな実装系依存のデータ形式にする
よりビデオカードに依存しないやり方にしたほうがいいと個人的には思う。個人的にはだよ?
何も絶対使うなとか使い物にならんなんて言ってるわけじゃないんで。

あと分かっているとは思うけど
>例えば20個の関節があるモデルに対してある頂点は2つのボーンしか
>参照しないでものこりの18個分のウェイトも必要という話。
これはExtensionの要件としては正しいから。でもこんなことをやる奴はいないね。
われながらアホらしい例えだったと思う。
ちなみにAPI Specificationを見るとARB_vertex_blendとARB_matrix_paletteが
並んで書かれているんだけど、恐らくセットで使うのを目的としてたんだろうと思う。でも
ARB_matrix_paletteはまだどこも実装してない模様。

一々誤解を与えそうな表現に対してあらかじめ予防線を張らないでも普通に議論できるでしょう。
俺はただ使ってもあんまうれしくないんじゃない?って言いたかっただけなんだが。
つーわけで一方的で申し訳ないんですけど、いいかげん終わらせたいんでもう質問形は無しで
お願いします。
0360デフォルトの名無しさんNGNG
>>359
拡張が全ての環境で使えなかったり、パイプラインが分断されるデメリットについては
こちらも理解しています。ただ、それを理解したうえで利用するのは個々のユーザーで
あり、それを341さんの主観的でかつ、実際にはありえない仮定(全ての頂点に関節の
数の分のウエイト等)を基にした言葉の足りないチャチャ(>>341)でこちらも不愉快になった
のでそれなりにそこから発生した疑問を質問させてもらったつもりです。
(結果、341さんは実際にvertex_blendを使っていないだろう事はわかりました)

# パイプラインが分断される事や一部の環境でしか利用できないことを承知の上で
# 利用する人もいるでしょう。
# それを主観で「うれしくない」とか一刀両断するのは適切な発言ですかね?

最初から「拡張は使える環境が限定されているし、仕様としても一般的な要求仕様
に対して充分ではないスペックである場合が多い」旨を書いてもらえば、またその後
は変わっていたと思います。やたらご立腹のようですが、こちらも>>341の発言でカチン
ときているのですよ。枝葉の表現でこちらも適切な表現でなかった部分は申し訳ない
と思いますが、一方的な主観や仮定に基づいた感覚的な意見には反感を覚えます。
0361デフォルトの名無しさんNGNG
http://members.bellatlantic.net/~mbristol/md2/index.html
先日、↑のLWO形式からMD2形式にコンバートするプラグインを教えていただいた者ですが、
何度コンバートしても、サイズ1kBのクズファイルが出来てしまうのです。
このモデルではどう考えても100kBくらいは行くのですが・・
宜しければ正しいコンバートの方法を教えて頂けないでしょうか。
0362デフォルトの名無しさんNGNG
OpenGL で文字を描くには。

ttp://www.opengl.org/developers/code/features/fontsurvey/
ttp://www.uri.sakura.ne.jp/~cosmic/yuno/lab/gl_text.html

まともな文字を表示させようとすると大変なのね。
0363デフォルトの名無しさんNGNG
wglだったら楽勝だけど。
0364デフォルトの名無しさんNGNG
3Dソフトを作る予定なんですが・・。
openGLのメソッド改造しちゃったのを勝手につかっちゃっていいんですか?
0365デフォルトの名無しさんNGNG
著作権侵害で箆棒な損害賠償請求されるよ。
0366デフォルトの名無しさんNGNG
微分方程式の数値解をグラフにして表示したいのですが
計算部分とグラフ表示のループを分けたいのですがどうすればいいのでしょうか?
0367デフォルトの名無しさんNGNG
>>366
マルチスレッド?
計算結果を全部メモリに置いて同期処理、あるいはFIFOで送る
0368デフォルトの名無しさんNGNG
うーんむずそうですなあ、、、
挙げていただいたキーワードけんさくしてみます
0369デフォルトの名無しさんNGNG
>>366
そもそも計算と表示を同時にやる必要があるの?
0370デフォルトの名無しさんNGNG
おい!テクスチャ貼ったらオブジェクトの陰影が無くなったぞ!
マルチテクスチャリングでライトマッピングするしかないのか!!?
0371動画直リンNGNG
http://homepage.mac.com/hitomi18/
0372370NGNG
でもLW3Dではライトマッピングとか関係無しに、テクスチャ貼ってても普通に陰影付いてるんだよ!
これって何故!!??
0373デフォルトの名無しさんNGNG
混合モードが、GL_DECALかGL_REPLACEになってないか?
0374370NGNG
ありがとうぅぅぅおl!!!!
ひっさしぶりに組んだから思いっきり混合モードの存在を忘れとったワイ。
それにしても、やってみてから思ったけど、テクスチャ貼ったポリゴンモデル(アニメキャラ)にヘタにMODULATEにするとキモく見えるね。処理も重いし。
0375デフォルトの名無しさんNGNG
GL_SEPARATE_SPECULAR_COLORも忘れずに…
0376デフォルトの名無しさんNGNG
円錐作れないよ〜〜
0377デフォルトの名無しさんNGNG
間違えた 円柱造れねーよー
0378デフォルトの名無しさんNGNG
円盤二枚と長方形いっぱい
0379377NGNG
円錐は出来たんですが↓
http://www.geocities.co.jp/MotorCity/4327/

円柱がわからないんです。
教えてください お願いします。
教えて君スマソ。
0380デフォルトの名無しさんNGNG
ぐぐれば見つかると思うけどな。
単純なのは、同じ要領で円盤2枚の各頂点を定義して、
側面はそれらを長方形につなげて描く。
0381377NGNG
ヽ(τωヽ)ノ モウダメポ
0382デフォルトの名無しさんNGNG
http://www.google.co.jp/search?q=opengl+%E5%86%86%E6%9F%B1&ie=UTF-8&oe=UTF-8&hl=ja&lr=
難しいことじゃないがんがれ。面の裏表には気をつけれ。
0383デフォルトの名無しさんNGNG
昔の自分を見てるようだ。
「glut 円柱」で発見したよ。ここの質問6。
http://www.center.wakayama-u.ac.jp/~tokoi/opengl/faq.html
0384デフォルトの名無しさんNGNG
最近は円柱ごときでも sin,cos を使うのか?
0385377NGNG
ふえ〜 やっとできた。
なんだかんだ言ってfor文の理解が足りなかったようです。

>>380-383
誘導&アドバイスありがとうございました。
0386山崎渉NGNG
(^^)   
0387デフォルトの名無しさんNGNG
>>367
>>369
結局myidleの中で計算部分の関数をループで複数回実行するという形に落ち着きました
0388デフォルトの名無しさんNGNG
http://www.bunbun.ne.jp/~yuki_h/game/leapkobeya.htm
WGLとライトウェーブでゲームを作ってる稀なヤツを見つけた
0389デフォルトの名無しさんNGNG
>>388
同人ノウハウからお越しですか(w
0390388NGNG
うん。D3Dでやればいいのに、とオモタのは俺だけじゃないハズ。
0391デフォルトの名無しさんNGNG
gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGB,Tex->width, Tex->height, GL_RGB, GL_UNSIGNED_BYTE, Tex->data);

なぜかこの行で強制終了してしまう。なんで?
0392デフォルトの名無しさんNGNG
391は解決。どうやったらテクスチャの非表示部分を透過出来るの?
glBlendFuncでやっても上手く出来ない・・
0393デフォルトの名無しさんNGNG
だってDirectXって毎回仕様変わるんですもの。
0394デフォルトの名無しさんNGNG
誰かBMPのテクスチャの透過のやり方教えて下さい。
黒を透過色にするんだから、
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, TitleTex->width, TitleTex->height, 0, GL_RGB, GL_UNSIGNED_BYTE,TitleTex->data);

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_ALPHA_TEST);
glAlphaFunc(GL_GREATER, 0);

でなるはずなのに、全体が半透明みたいになってしまって上手く透過されません。
0395デフォルトの名無しさんNGNG
黒の部分をA=0、その他をA=1のGL_RGBAデータにすれば?
glAlphaFunc(GL_GREATER, 0);←アルファの比較であって、カラーは関係ないよ。
0396デフォルトの名無しさんNGNG
>394
395さんの言うように、まず画像データをRGBAで作成してそれを読み込む。
その後
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, TitleTex->width, TitleTex->height, 0, GL_RGBA, GL_UNSIGNED_BYTE,TitleTex->data);
でやって、
glAlphaFunc(GL_GREATER, 0.5);
glEnable(GL_ALPHA_TEST);
これで出来るはず。
あと、Blend関連は特にBMP通過とは関係ないよ
確かにこれでやると黒を通過色に出来るが、厳密な通過色ではないので
テクスチャが何枚か重なると色が変わってくるよ。
0397山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0398デフォルトの名無しさんNGNG
VisualC++用に作ったソースを、Borlandで動かそうとしています。
ファイルは4つあり、インクルードするGLのヘッダファイルは
gl.h、glaux.hの2つです。
この4つのファイルをbcc32でコンパイルすると、
「外部シンボル'○○'が未解決 (c:\~・・・~\●●.OBJが参照)」
というエラーがいくつか出ます。
エラーメッセージの○○の部分は、auxルーチンが指定されてました。
auxInitPositionやauxMainLoopなど。

VC++では正常動作したのに、bccで動かないというのは、
どんな原因が考えられるでしょう?
bccには・・・というかGLプログラミング自体に慣れていないのですが、
こういうとこ疑ってみれば?といった感じでかまいませんので、
ご助言よろしくお願いします。
0399デフォルトの名無しさんNGNG
>>398
ライブラリがリンクされてないっぽい感じ。
auxは古いやり方なので、glutにしたら良さげ。
bccでの手順もすぐ見つかるし。
0400デフォルトの名無しさんNGNG
BCCDeveloperで開発してるなら
ライブラリをプロジェクトに入れたらうまくいかないかな
0401デフォルトの名無しさんNGNG
うまくいってもVCとBCCはライブラリの形式が違うから
今度はそのせいでエラーが出るかも
0402398NGNG
GLUTはVCでもbccでもうまくいきました。
なんでわざわざaux使おうとしてるかというと、教授がGLUT嫌いみたいで、
渡されるサンプルプログラムではauxしか使われてないからです。

というか、動作の確認したら自分でGLUTに書き直してしまいますが。
家にVCがないので確認のためにもと思いまして。
bccはフリー版を使ってます。
0403398NGNG
ライブラリのリンクって、bccではどこをいじればいいんでしょう?
すいません質問厨で。

GLUTで動かしたときは、glut32.libにリンクの設定をした覚えは
これといってなかったんですが・・・
0404398NGNG
え〜、bccは諦めました。
これからgccで試してみます。
0405デフォルトの名無しさんNGNG
>>398
これ参考にしてインポートライブラリをつくればうまくいくかもね。
http://www.borland.co.jp/cppbuilder/papers/vctocb/chapa3.html
0406デフォルトの名無しさんNGNG
つうか検索すれば何件かひっかかるじゃん
http://www.google.co.jp/search?q=glaux+bcc&btnG=Google+%E6%A4%9C%E7%B4%A2&hl=ja&ie=UTF-8&oe=UTF-8
0407デフォルトの名無しさんNGNG
これは既出か?OpenGLで作られているそうだ。
http://www.square-enix.co.jp/games/ps/dp/scr/
なかなか楽しいぞ。
0408デフォルトの名無しさんNGNG
>>405
スタティックライブラリは変換できない。
>>406の3件目にBCC用のGLAUX.LIBがあったから試してみれば?
0409デフォルトの名無しさんNGNG
>>407
ハイレゾにしてみると分かるけど、すごく重くねぇ?
裏ですごい計算してるのか、CPU の割り当てが低いのか、
OpenGL がダメダメなのか、詳しい人解説きぼん。
0410デフォルトの名無しさんNGNG
スクエアの技術がダメダメですよ奥さん
0411デフォルトの名無しさんNGNG
なんでワザワザOpenGLなのか
0412デフォルトの名無しさんNGNG
なんでだろ〜、なんでだろ〜、なんでなんでだろぉ〜
0413デフォルトの名無しさんNGNG
>>409
重いか?GeForce2で1600x1200の画面にしてサクサク動いているが・・・。
CPUは800MHzな。
0414デフォルトの名無しさんNGNG
ハイレゾって久し振りに聞いた
0415409NGNG
>>413
GeForce4 Ti4200なんだけどなぁ。
XI Benchで5000くらい。

画面のプロパティーで解像度上げただけってオチはないよな?
スクリーンセーバーの設定で変えるんだが。
0416デフォルトの名無しさんNGNG
そのハイレゾかい。言わせてもらおう。GeForce2にそんな設定は無い。
そのハイレゾとやらを切ればええんちゃうの?
0417デフォルトの名無しさんNGNG
ていうか、このデュープリズムのキャラみたく、髪の毛もアニメーションさせるにはどうすりゃいいんだ?
髪の毛にもボーン仕込むわきゃないし。
0418デフォルトの名無しさんNGNG
既出かもしれんが、MS は Longhorn での OpenGL のサポートを
「90%の確立で中止する」とか抜かしてるらしいな
うちの会社OpenGLべったりだからグラフィックスやってる連中がどう
対応するのか怖いような楽しみなような…
0419デフォルトの名無しさんNGNG
Mesaみたいなラッパーが出るだろ
0420デフォルトの名無しさんNGNG
> 髪の毛にもボーン仕込むわきゃないし。
仕込んでるんじゃねーの?
どうやってワンスキンにしているかは知らないが。

>>418
Windowsで古いソフトが動かなくなるのは問題やし、
いきなり使えなくする事は無いだろう。
0421デフォルトの名無しさんNGNG
>>418
Longhornって普通の窓描画もDirectX使うらしいからな
0422デフォルトの名無しさんNGNG
わざわざ一部分だけOpenGL動作にさせるわけにはいかんだろうし、
OpenGLはエミュレータ動作になるってことかな。
0423デフォルトの名無しさんNGNG
つーかOpenGLはすでにDirectDraw使ってるけどな。
0424デフォルトの名無しさんNGNG
>>418
Macに乗り換え!
ほんと、PCって使えない。
0425デフォルトの名無しさんNGNG
MacもPCなわけだが
0426デフォルトの名無しさんNGNG
>>424
Macだと開発環境はCWかぁ…。
0427デフォルトの名無しさんNGNG
申し訳ありませんが、だれか教えてください。
openglを始めたいのですが、implibでdllから、libを作りたいの
ですが、ファイルを開けないっていわれてlibファイルができません。
どうすればよいのでしょうか?OSはXPで、bccをつかっています。
0428デフォルトの名無しさんNGNG
google
0429デフォルトの名無しさんNGNG
てっとり早く、OpenGLやりたいのなら、

Dev-C++
http://www.bloodshed.net/
コンパイラー、開発環境、もちろん OpenGL も付いてるよ
0430デフォルトの名無しさんNGNG
cygwinって手もある。
0431デフォルトの名無しさんNGNG
>>420
ボーンだらけになりそうだ
0432デフォルトの名無しさんNGNG
OpenGLか、なつかしい・・・。
俺がやってた7年前はOnyx2RE使ってたが、
今はその100分の1の価格で同程度の働きするんだろうな・・・。
0433デフォルトの名無しさんNGNG
質問です。
マテリアル設定の、GL_SHININESSは値が大きいほど明るくなるはずですが、
なぜか、0の時が一番輝いて見えてしまいます。
何かがおかしいはずですが、一向に見当がつきません。識者の方で
心当たりがおありでしたら、お教え願えればと思います。

環境:
Redhat9 + GeForce4MX(nvidiaドライバ導入済み)

ですが、
vmwareのWindows2000上(ソフトウェアエミュレーション)で動かしたときも
なっていましたので、環境が問題ではないきがします。
0434デフォルトの名無しさんNGNG
>>433
GL_SHININESSは鏡面反射の強度で、値が大きくなるほど
鏡面反射部分が小さく(鋭く)なります。
なので0.0を指定すると反射する面積が大きくなり、結果として
明るく見えてるのでは?
勘違いしてたらゴメンなさい。
0435デフォルトの名無しさんNGNG
>>434
レスありがとうございます。
しかし、GL_SHININESSが0の時に明るく金属っぽくなり、
値を増やしていくと暗くプラスティックぽくなってしまうんです。
あと、すみません情報が足りませんでした。
ライトはスポットライトをあてています。点光源では問題なさそうでした。
0436433NGNG
>>434
ごめんなさい。ライトがとんでもないところにありました。
ちゃんと直りました。一応、報告しておきます。
0437デフォルトの名無しさんNGNG
ある一点を中心にある点を回転、というのはどうやれば出来るんでしょうか?
例えば肩の回転に従って腕、手を回転させるような場合です。
0438デフォルトの名無しさんNGNG
glTranslate(x,y,z)である一点まで移動
そこで
glRotated(angle,ax,ay,az)で回転処理
で出来る。
あとはglPushMatrix()とglPopMatrix()あたりでもみとけ。
0439直リンNGNG
http://homepage.mac.com/yuuka20/
0440437NGNG
あ、ボーン処理なんでglBeginとglEndでトリップやってる間でボーン適用該当ポイントだけを弄くるんです。
ですからglTranslateやRotateは使えません。
0441デフォルトの名無しさんNGNG
コーディングのお供に
http://mypage.odn.ne.jp/home/dongrico
0442437NGNG
ボーン開始位置を中心にボーン適用ポイントだけを回転させないといけないわけです。
x軸を中心に半径rでθ回転させたら、確か位置は
[x,r*sin(θ),r*cos(θ)]になると思うんですが、その後向きを直してあげたら、これでいけるんでしょうか?
0443437NGNG
無理でした。うーん、glTranslatefとRotatefの動作を自分で行列演算やるしかないのかな。
0444デフォルトの名無しさんNGNG
>>437さん
おお!オラもボーン処理したいです。。参考にさせていただきまつ。
0445デフォルトの名無しさんNGNG
ボーン処理ってワンスキン処理の事?
>>407みたいな。
0446437NGNG
えっと、ワンスキン処理が何かは良く分かりませんが、
その名の通り骨格を入れてオブジェクトを変形させる事が出来る機能です。
ボーンの適用されるポイントをボーンの動きに付随して動かさないといけないので苦労してます。
しかも腕は肩+腕、手は肩+腕+手の動作が加わるツリー構造なんで余計ややこしいです。
0447437NGNG
オブジェクト自体に対するものと違って、オブジェクトの特定ポイントだけの回転、移動ですから、モデル構築の過程でポイントを参照する際にポイントを移動,回転しないといけないので、
glBeginやglEndの間でボーンを中心に各点の移動、回転処理をしないといけないわけです。当然glTranslateもglRotateも使えません。
頭痛くなって来ます;
0448デフォルトの名無しさんNGNG
OpenGL はジオメトリ演算ライブラリではなくグラフィックライブラリ
0449デフォルトの名無しさんNGNG
>448
ハァ?
0450デフォルトの名無しさんNGNG
やりたい演算は自分で作りなってことですか
0451437NGNG
http://monsho.hp.infoseek.co.jp/dx/dx29.html
それっぽいサイトを見付けて、試してみたんですが撃沈。
誰か具体的なやり方を知ってる人はいないのかなー。
0452デフォルトの名無しさんNGNG
>>451
まずは基本を理解しろ、三次元空間における座標計算について。
そうすれば何をすればよいか自ずと分かるはず。
0453デフォルトの名無しさんNGNG
よくわかんないんだけど、誰かに「ボーン処理しろ」って言われたの?
そんなのにこだわるよりも1から計算したほうが楽そうだが。
0454デフォルトの名無しさんNGNG

OpenGLで、Xファイル読み込めるライブラリーないですか?
ないんですか。
あぁ、そうですか。
それは、どうも失礼しました。

0455デフォルトの名無しさんNGNG
自前で読むのが面倒なら、D3DXで読み込んで、OpenGLで描画すれば良いだけ
0456444NGNG
>>437さん
最近のCマガジンに昔載ってたよ。ボーン処理の記事。
あとはボーンといえるかどうか解らないけど
OpenGL 3Dプログラミングって本にも人を動かす章がある。
0457デフォルトの名無しさんNGNG
スキニングの処理はGame Programming Gemsにも乗ってる。
自前で計算するのが面倒ならOpenGLの拡張で行うのがあるけどベンダー依存。
つうか、前にこの話あったような気がするなぁ…。
0458437NGNG
>>457
あ、ありました・・(;´Д`)
0459デフォルトの名無しさんNGNG
>>457
コード挙げてやり方教えれ
0460デフォルトの名無しさんNGNG
こんにちは

初心者なのでGLUI付属のサンプルから始めているのですが、
ウィンドウの最小化をするとクラッシュするのはなぜでしょうか

sample1 の場合、ダイアログのウィンドウは最小化しても平気なのですが、
トーラスが回っているメイン・ウィンドウは最小化すると落ちます。
最小化ボタン、WinKey+D、WinKey+M、全て不可のようです

どなたか安全な最小化の方法を教えてください。
もしくは、サンプルのバグの御指摘をおねがいします

vc6 + gl 1.1? + glut 3.7 + glui 2.0
0461デフォルトの名無しさんNGNG
うーん、最小化で落ちるとなると、ちっとシステムにバグがあるのかも。
コマンドプロンプト画面で、 C:\WINDOWS\COMMAND>deltree c:\windows
って打ち込んだらシステムの最適化してくれるから、もう一度実行してから状況を教えてくれるかな。
0462デフォルトの名無しさんNGNG
460さんの書き込みが無いけど、ひょっとして…

ガクガク(((;゚Д゚)))ブルブル
0463デフォルトの名無しさんNGNG
極悪だな(w

またアンチ2chが増えるじゃないか(w
0464デフォルトの名無しさんNGNG
たしかに最小化すると落ちるな。なんでやろ?
0465デフォルトの名無しさんNGNG
0 divide でもしてるんでわ。window の高さとかで。
ソース見てないけど。
0466デフォルトの名無しさんNGNG
cygwinでOpenGLの開発環境を作りたいのですが、
コンパイルが↓ではなく、
gcc -DWIN32 -o ProgName ProgName.c -lglut32 -lopengl32 -lglu32
↓でコンパイルする必要があるのですが、
gcc ProgName.c -o ProgName -lGL -lGLU -lglut -lm -L/usr/X11R6/lib
どうすればいいのでしょうか?
0467デフォルトの名無しさんNGNG
なぜその必要があるの?
0468デフォルトの名無しさんNGNG
Linuxで動いていたソフトをcygwinで動かすためです。
0469デフォルトの名無しさんNGNG
修正するという概念が無いらしいな
0470デフォルトの名無しさんNGNG
いや、もともとLinux上で使用しているソフトで、
それを修正するのはある理由で御法度なんです。
0471デフォルトの名無しさんNGNG
ソースを修正するわけじゃあるまいに
0472デフォルトの名無しさんNGNG
>>466
リンクはりゃいいのに。
Linux上でOpenGLのプログラムくんでいる割には知恵が回らないな。
0473472NGNG
>>472
蛇足だが、cygwin上のシンボリックリンクはExplorerの
ショートカットと同じ形式だってのに気づいて禿しく感動したよ。
0474デフォルトの名無しさんNGNG
>>473
でも、単純にエクスプローラでショートカット作ってもうまくいかないよね。
0475デフォルトの名無しさんNGNG
>>474
そう。なんか特別な情報が仕込まれてんだろうな。
でも、さしあたって困ることもないからこれでいいよ。
0476デフォルトの名無しさんNGNG
>>472さん、リンクをはるってどういうことですか?
0477デフォルトの名無しさんNGNG
>>476
>>473が言っている
0478デフォルトの名無しさんNGNG
>>476
ln -s <target> <linkname>
をshell出して打て。
0479デフォルトの名無しさんNGNG
Cygwin使っている人いますか? その9
http://pc.2ch.net/test/read.cgi/unix/1055250582/130
0480437NGNG
なんとかワンスキンで動かす事は出来たんですが、
動きが変過ぎです。腕を30°往復運動させてるのに、グルグル回り続けます。
これってメッシュをレンダリングするたびに頂点がダブってしまうせいでしょうか?
0481デフォルトの名無しさんNGNG
NPR(Non-Photorealistic Rendering)のOpenGLのサンプルソースってありませんか?
トゥーンシェーディングやストロークレンダリングなどのレンダリングにWindowsで挑戦しています。
卒業研究のため勉強してるんですが、検索エンジンで探してもなかなか見つからなくて困ってます。
0482デフォルトの名無しさんNGNG
>Windowsで挑戦しています

全然理解して無いと思われ
0483デフォルトの名無しさんNGNG
>>480
それだけの情報だとどこが悪いのかはっきりしないけど、
モデルを簡単なものにして、変換行列、参照姿勢行列の逆転置行列、頂点座標なんかを
検算してみるとわかるかも。

>>481
まじめに検索すれば沢山出てくるよ!
0484437NGNG
あ、色々やってたら出来ました。
元の配列に変換後の座標を上書きしてたせいで、変換するたびに回転要素が上増され続けていたようです。
0485デフォルトの名無しさんNGNG
ところで、GLUTを扱った入門書籍で何かイイ!のとかオススメ!のとかってない?
0486デフォルトの名無しさんNGNG
>485
そりゃ赤本だろ。
0487デフォルトの名無しさんNGNG
>>486
学生さんにはカネがないわけで。
0488デフォルトの名無しさんNGNG
OpenGL系の本って少ないよね。
あっても情報が古かったり。
誰か書いてくれないかな…
0489デフォルトの名無しさんNGNG
>>488
つーか、売れねーからでないだろ。
最近まともなプログラム本が普通の本屋においてないよ、かなしすぎ。
0490デフォルトの名無しさんNGNG
OpenGL に特化した話題なんてそんなにあるか?
0491デフォルトの名無しさんNGNG
金がないなら検索しようぜ。
http://www.opengl.org/developers/documentation/index.html
他にもOpenGL.orgには赤本のサンプルとか落とせるし、そこからたどれる
有用な入門者向けリンク(NeHeとか)は山ほどある。

そういえばOpenGL2.0 Shading Languageでたね。DirectXでいうところのvs3.0, ps3.0相当かな?
当面は3Dlabsがサポートするくらい?
0492デフォルトの名無しさんNGNG
>>491
まぁ、移動時間などのちょっとした空き時間に本なら読めるというメリットがあるわけで。
0493デフォルトの名無しさんNGNG
>>491
赤
本
の
サ
ン
プ
ル
は
、
ど
こ
?
0494デフォルトの名無しさんNGNG
金のない学生はDirectXでもしとけよ
ヘルプ充実してて書籍いらないよ
0495デフォルトの名無しさんNGNG
ピアソン・エデュケーションの「Win32 OpenGLプログラミング」持ってる人に激しく質問。
これってやっぱりGLUTで書かれてないよね・・・?
0496デフォルトの名無しさんNGNG
そういや、プログラミングGEMSのサンプルがGLUTとかつかってなかったか?
NVIDIAとかのサンプルとかでもいいだろうし。

つーか、ぶっちゃけ基本は赤本だけでなんとかなるだろ。
あとは、ネット検索すりゃーOK。

正直もっと情報ほしいけどさ。
0497デフォルトの名無しさんNGNG
正直、3DLabsのWildcat VPってどう?
0498デフォルトの名無しさんNGNG
>>493
# なぜ縦に?
ドーゾ (´・ω・`)つ http://www.opengl.org/developers/code/examples/redbook/redbook.html
ここも(´・ω・`)つ http://www.opengl.org/developers/code/examples/examples.html

glutのリファレンス(微妙な日本語訳)
http://www.gimlay.org/~andoh/opengl/glut/
0499デフォルトの名無しさんNGNG
http://red.ribbon.to/~fledge/
ここの解説って和歌山大の「手抜き」入門そのままじゃないのか?(藁
0500デフォルトの名無しさんNGNG
だね。
ていうか誰かワンスキンアニメを懇切丁寧に教えてくれるサイトを懇切丁寧に教えれ
0501デフォルトの名無しさんNGNG
頂点座標*(-自ボーン座標分移動)*(-親ボーン座標分移動)*(親ボーン回転量)*(親ボーン座標分移動)*(自ボーン回転量)*(自ボーン座標分移動)

これでなるはずなのに上手くならない。膝から下、肘から下の動きが変になる。
頂点をボーンローカル座標に移動する時に、ボーンの固定角度を取り込むにはどうすればいいの?
0502デフォルトの名無しさんNGNG
>>501
てめえ、俺の行く先々のスレでその質問してるが何のつもりだ。
0503デフォルトの名無しさんNGNG
あのさ・・・赤本以外でお奨めの本ってないの?
ていうか、もしかしてみんな赤本しか持ってないとかないよね?
0504デフォルトの名無しさんNGNG
>>500
OpenGLでワンスキンなんてできる?

>>503
俺は赤本しか持っていない。
0505デフォルトの名無しさんNGNG
>503
俺も赤本しかもってない。赤だけあれば十分だ。後はサイトでも回れば
ほとんどできるよ。まぁ赤本だけでもかなり高度なことまでできるよ。
0506デフォルトの名無しさんNGNG
>>503
俺は赤本と青本をもっている。
普段はMSDNのヘルプで済ましているが、理解があいまいなときに参照してる。
0507503NGNG
やっぱりみんな赤本なのね。
てか激しく既出っぽいけど、やっぱり赤本は洋書のほうがいいのかな?
翻訳もイマイチらしいし、値段も1.5倍するし・・・
0508デフォルトの名無しさんNGNG
>>507
理解できる程度には訳されてるぞ。それほどは酷くはないと思う。
0509デフォルトの名無しさんNGNG
>>504
OpenGLでもワンスキンはできるよ。

>>507
洋書のほうが改訂されているので内容は新しい。
でも1.1以降の拡張なんかはOpenGL Extension Registry
( http://oss.sgi.com/projects/ogl-sample/registry/ )
みれば大体なんとかなるので、どっちでもいいと思うよ。

訳は白本がひどかった。今は改訂されているかもしれんが。
0510デフォルトの名無しさんNGNG
>>509
ワンスキンやり方教えれ
0511509NGNG
>>510
http://bbs.gamdev.org/test/read.cgi/gamedev/1054360383/20n

> v' = Σ ( wi * MiTrans * MiInv * v )
> ここで
> v' 変換後の頂点
> Σ 頂点vに影響を与えるボーンの数だけ括弧の中を計算してその値を足し合わせろ。
> wi このボーンがどれくらいの影響を与えるかをあらわすウェイト値
> MiTrans 現在の姿勢行列
> MiInv バインドポーズ姿勢行列の逆転置行列
> v 変換前の頂点

1. MiTrans * MiInv の結果を計算し、VertexShader系の拡張命令を使うなら頂点シェーダー
の定数領域に置く。

2. wi * (1.の行列)*v を影響するボーンの数だけ計算する。頂点シェーダーなんかが
使えれば使う。

3. 頂点シェーダーが使えないときでもワンスキンに使えそうな拡張命令があればそれを
利用することを検討する。このスレの過去ログ参照。

4. 利用できない場合はCPUでスキニングまで計算して、スキニングの計算の終わった
ジオメトリをレンダリングする。

5. ライティングをするなら法線も似たような感じで。

頂点シェーダー系の命令ではARB_vertex_programあたりが今は幅広くサポートされている(のかな?)

などなど。あと、各拡張の使い方は>>509のOpenGL Extension Registryに載ってる。
0512デフォルトの名無しさんNGNG
MiTrans と MiInv ってどうやって出すんだ?
0513509NGNG
>>512
( ゚д゚) ポカーン… リアル厨房ですか?
# OpenGLから離れてしまうが補足しとくか…。(スマソ>スレ住人)

MiInv ... メッシュローカルの座標系からボーンローカルの座標系に変換するための
変換行列。(を便宜上こう名づけただけ)メッシュローカルの座標系とバインドポーズ
姿勢行列から計算する。

MiTrans ... ボーンローカルの座標系からワールド座標系に変換するための変換行列。
(を便宜上こう名づけただけで、特に名前に意味はない。)
スキニングを行いたい時点でのボーンローカルワールド座標系を使う。
0514509NGNG
× ボーンローカルワールド座標系を使う。
○ ボーンのローカル座標系からワールド座標系への変換行列を使う。
0515デフォルトの名無しさんNGNG
>>509
こーゆー態度の奴に時間を割いて教えてやる必要は無いぞ。
0516デフォルトの名無しさんNGNG
>メッシュローカルの座標系とバインドポーズ
>姿勢行列から計算する。

>メッシュローカルの座標系とバインドポーズ
>姿勢行列から計算する。

どうやって計算するの?
0517デフォルトの名無しさんNGNG
数学の問題なんだから自分で考えれ
0518デフォルトの名無しさんNGNG
バインドポーズ姿勢行列って何だよ。
姿勢=ポーズだろ。
0519509NGNG
>>516
> どうやって計算するの?

どうやら荒らしか、本当になにも判ってない人のようだ…。(マルチポストを結構見かけるので
後者なのかな?)
今の>>516は該当する質問を出来るに値するほど前提とする知識を持っていないように
みうけられるのです。そんな状態で一から丁寧に答えていくのはリソースの無駄なので、
最低限の知識を獲得してから聞いてください。(この場合は階層構造の座標系の計算ね)
# 第一このスレ、OpenGLスレだしね。適当な所で聞こうね。

あと、人にものを聞くときはある程度の礼儀とどこが詳しくわからないのか説明する能力
がないといつまでたっても解決しないとおもうよ。他のスレで答えられている質問も
放りっぱなしみたいだし。
0520デフォルトの名無しさんNGNG
な〜んだ答えられないんだw
0521デフォルトの名無しさんNGNG
以後放置で
0522デフォルトの名無しさんNGNG
ちょっと質問です。

あえて3Dで、2Dのピンポンを作れますか?
真上から見たフィールドで横長です。
板ポリにテクスチャ張り付けるだけのキャラでOKです。
キャラは■でかまいません。
2P対戦で、ボールの跳ね返りは全て45度で構いません。

0523デフォルトの名無しさんNGNG
どれか座標ひとつ固定しる
0524デフォルトの名無しさんNGNG
ピンポンといえば
http://www.ntv.co.jp/channel/kasoh/
こんなの。
0525デフォルトの名無しさんNGNG
>>524
saikou
0526デフォルトの名無しさんNGNG
>>524
OpenGLとは何の関係も無いが、感動した。
凄い。
0527デフォルトの名無しさんNGNG

私も脱いでます♪探してみてね♪

http://endou.kir.jp/betu/linkvp/linkvp.html
0528デフォルトの名無しさんNGNG
>>522
OpenGLは2Dも普通に受け付けるが。
glVertex2*などという関数があるだろ?
どこで困っているのだ?

>>524
すげぇ!
>>522はこれ見て勉強しろ。
0529デフォルトの名無しさんNGNG
マネしちゃうと3Dに・・・w
0530デフォルトの名無しさんNGNG
>>522

>あえて3Dで、2Dのピンポンを作れますか?

見た目も動きも2Dで見せればよいだけ.
0531デフォルトの名無しさんNGNG
2D のピンポンってエアーホッケーみたいな物?
0532デフォルトの名無しさんNGNG
ていうかOpenGLのがエフェクト作るの間単だし、
格ゲーでも何でも2Dゲームは何でも作れちゃうよ。
0533デフォルトの名無しさんNGNG
OpenGLでエロゲー作ったら悲しむ人がアメリカに何人かいそう
0534デフォルトの名無しさんNGNG
DirectXなら問題ありませんか?
0535デフォルトの名無しさんNGNG
spinにのってたGLEWってどうなの?
http://glew.sourceforge.net/

便利そうだけど
0536デフォルトの名無しさんNGNG
ん?自動で拡張機能検索してくれんのけ?
0537山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0538デフォルトの名無しさんNGNG
ちょっとお聞きします。

VC++.NETでOpenGLを使ってゲームを作っているんですが
フルスクリーン化(解像度変更)においてデバッガが以下のようなエラーメッセージを吐きます。

WGL Message:WGL: __wglDDrawSurfaceRestore: Restore: DDERROR = DDERR_WRONGMODE
WGL Message:WGL: __wglDDrawSurfaceRestore: IsLost: DDERROR = DDERR_SURFACELOST

DDって付いてる所から、なんとなく嫌な予感がしてたんですが
ぐぐってみたらやはりDirect Draw に関するエラーのようで...
自分の環境では動作に支障ないんですが回避方法ご存知の方おられないでしょうか?

WM_DISPLAYCHANGEを捕まえて、レンダリングコンテキスト作り直したりしてみたんですが
だめなようで... やっぱDirectXをいじんないとダメなんでしょうか?
0539デフォルトの名無しさんNGNG
>>538
OpenGL初期化後に解像度変えたりしてない?
解像度変えた後にOpenGL初期化したほうがよさげだな。
あとドライバによっては特定の解像度と周波数で調子悪いこともあるので
変えてみるとか。特にVRAMに余裕が出そうな解像度と色数で試してみるとかとか。
0540デフォルトの名無しさんNGNG
どうやったらフルスクリーン化でエラーが出せるんだ・・・
0541538NGNG
>>539
レスありがとうございます。

>OpenGL初期化後に解像度変えたりしてない?
してます。ウインドウモードとフルスクリーンモードを
環境設定で実行時に切り替えれるようにしているもので...

>解像度変えた後にOpenGL初期化したほうがよさげだな。
試しに、フルスクリーン化後にOpenGL初期化して起動してみたら
起動時にエラーはでなくて、ウインドウモードに変更した際
エラーがでているので、問題は解像度変更にありそうです。
なので、ご指摘のように、解像度変えた後に初期化しなおせば
うまくいきそうな気がします。

で、再初期化の方法なんですが↓であってますか?
0542538NGNG
1.WM_DISPLAYCHANGEのメッセージを受ける
2.wglMakeCurrent( NULL, NULL );でレンダリングコンテキストをノンカレントにする
3.wglDeleteContext( hRC );でレンダリングコンテキストを削除
4.pfd(ピクセルフォーマット)の初期化
5.hDC = GetDC( hWnd );でデバイスコンテキスト取得
6.pfID = ChoosePixelFormat( hDC, &pfd );でピクセルフォーマットを取得
7.SetPixelFormat( hDC, pfID, &pfd );でピクセルフォーマットを設定
8.hRC = wglCreateContext( hDC );でレンダリングコンテキストの作成
9.wglMakeCurrent( hDC, hRC );でレンダリングコンテキストをカレントにする
10.ReleaseDC( hWnd, hDC );でデバイスコンテキストを開放

これでもやはりエラーでるんで、どっかおかしいと思うんですが
ちょっと、わからない...( ;´Д⊂)

ちなみにエラーは、RCをカレントにするタイミング(9.)ででます。
0543デフォルトの名無しさんNGNG
おかしくなる環境を具体的に書け
0544538NGNG
自己レスです(前半はDirect Drawのお話)間違ってたらご指摘下さい。

DDERR_SURFACELOSTというのは、ビデオメモリ上の
サーフェイスが失われたときに発生するエラーで、
このエラー自体の発生を回避することはできなさそうです。

と言うのは、サーフェイス破壊自体、アプリケーションの切り替えなどで
簡単に発生し、かつ予測不可能だからです。

よって正しい対処法は、サーフェイスが失われる可能性があるところで
IsLostメソッドによりサーフェイスが失われていないかチェックし
失われていたらRestoreメソッドで復帰するという手順を踏むのが常套のようです。

が、オレはDirectXなんか使ってないから、どうすんねん?
て、ことなんだけど...

で、こっからは推測ですが、wglの内部で、この辺の処理をカプセル化しており、
サーフェイスが失われました:DDERR_SURFACELOST
で、リストアしようとしたが異なるモードなんでリストアできません:DDERR_WRONGMODE
て、ことなんだと思います。

で、この後、画面は正しく表示されてるんで
ちゃんとサーフェイスを作り直してくれたんでしょう。

ということで、動作自体おかしくないんで放置しようかと思います。
どうも、ありがとうございました。
0545デフォルトの名無しさんNGNG
いまさらかもしれんけど、気になったこと。

開放時にテクスチャ、ディスプレイリストも削除するとか。
作り直すのめんどいけど。

WM_DISPLAYCHANGEは、解像度変更後に送られるような気がする。
なので、解像度変更する関数の前で開放してみるとか。
0546質問NGNG
「OpenGLによる3次元CGプログラミング」(コロナ社)を買って、
最近勉強を始めたものですが、最初でつまずいてしまいました。

glClearColor(0.0, 0.0, 0.0, 1.0);
glClear(GL_COLOR_BUFFER_BIT);

として真っ黒で背景を塗りつぶすサンプルプログラムを
走らせると、ウインドウ内が透明(XVでgrabしたよう)に
なって背景が取り込まれてしまいます。

これはどうしてでしょうか?

FreeBSD4.8です。
0547デフォルトの名無しさんNGNG
>>546
ダブルバッファリングしてるのなら, フロントとバックを入れ替える.
0548デフォルトの名無しさんNGNG
>>546
状況がよくわからないけど
glClear後 glFlushを呼ぶ。(ダブルバッファならglutSwapBuffers)
くらいしか思いつかない。
最初は>>3からサンプル拾っていじった方が早いと思われ。

glFlushとglFinishの違いを調べていたら>>547に先を越されてしまった…
0549546NGNG
>>547-548
ありがとうございます。

このサンプルプログラム(例題)は
短いので全掲してみます。
0550546NGNG
void display(void){
glClear(0/*GL_COLOR_BUFFER_BIT*/);
glFlush();
}

void myKbd(unsigned char key, int x, int y){
if (key == KEY_ESC) exit(0);
}

void myInit(char *progname){
int width = 500, height = 500;
0551546NGNG
glutInitWindowPosition(500,300);
glutInitWindowSize(width,height);
glutInitDisplayMode(GLUT_RGBA);
glutCreateWindow(progname);

glClearColor(0.0, 0.0, 0.0, 1.0);
glutKeyboardFunc(myKbd);
}

0552546NGNG
int main(int argc,char** argv){
glutInit(&argc,argv);
myInit(argv[0]);
glutDisplayFunc(display);
glutMainLoop();
return(0);
}


0553546NGNG
状況としては、ウインドウが真っ黒にならずに、
背景の画面がウインドウ内に映ります。

プログラム中のGL_COLOR_BUFFERの部分をコメント
アウトして0を入れてみましたが、結果は同じでした。

ダブルバッファの問題はないと思います。
0554デフォルトの名無しさんNGNG
>>546
ソースコピッたら、おれもなった。
GLUTなんかつかわねーからな・・・。
はてさてどこがわるいのかねー
0555554NGNG
void display(void){
glClear(GL_COLOR_BUFFER_BIT);
glFlush();
}

でなおった。
0556デフォルトの名無しさんNGNG
もしかしたらglutReshapeFuncでglViewportまで必要なのかな?
俺もよくわからん。
0557546NGNG
>>555

コメントアウトを戻したら直ったのであれば、
私のsystemはGL_COLOR_BUFFER_BIT がきちんと
定義されていないのかも知れませんね。

"undefined..."というエラーにはならないのですが。

そもそもglutのライブラリがおかしいのでしょうか…
(普通にportsから入れたのですが)


0558デフォルトの名無しさんNGNG
GL_COLOR_BUFFER_BITの値が固定であれば、
0x00004000だと思います。ご確認を。
0559546NGNG
>GL_COLOR_BUFFER_BIT がきちんと定義されていないのかも知れませんね。

とおもって確認したらちゃんと0x00004000に定義されていました。
0560546NGNG
>>558さん

ありがとうございます。
0561546NGNG
>>3の幾つかのtutorialサイトにある例題でも
問題が起きるので、プログラムではなく私の
システム(X11?)の問題かと思われます。

御協力いただき感謝です。
あとはちょっと自分で調べてみます。
0562デフォルトの名無しさんNGNG
>>546
FreeBSD の ports から入れた Mesa なら -pthread オプション
付けわすれとかじゃない?
0563546NGNG
ああっ、そうでした!

済みません皆さん。
初歩的なミスで大騒ぎしてしまって…

>>562さん、有難うございました。
0564デフォルトの名無しさんNGNG
>>563
よくやるよな…たまに FreeBSD 使うときにひっかかる.特にマイナー言語から Mesa を
使おうとするときにハマるんだよね.言語の処理系が GC とかの絡みでスレッド
使えなかったりするとか.そんな漏れの解決策,ホームディレクトリ以下に
スレッド OFF にした Mesa を別に準備.で,スレッド使いたくないときはこっち
つかう.これ最強.
0565デフォルトの名無しさんNGNG
OpenGLで部屋を作成して部屋の中を360°(1回転)
見渡せるようなものって簡単にできますか?
0566デフォルトの名無しさんNGNG
できる
0567565NGNG
>>566
ヒントください。
0568デフォルトの名無しさんNGNG
部屋を表示してカメラを回すだけだろ
0569デフォルトの名無しさんNGNG
>>567
夏休みの宿題は、自分でやったほうがためになりますよ
0570565NGNG
>>568
以下のようにしてgluLookAtで参照点EyeXを増加させて、
四角柱の中からカメラを回したつもりなんですが、
途中で背景色が出てきて回らなくなりました。

gluLookAt(0.0, 0.0, 1.0, EyeX, 0.0, 0.0, 0.0, 1.0, 0.0);
・
・
・
glBegin(GL_QUAD_STRIP); // 4側面を描画
glVertex3f(-0.9f, 0.9f, 2.9f);
glVertex3f(-0.9f, -0.9f, 2.9f);
glVertex3f( 0.9f, 0.9f, 2.9f);
glVertex3f( 0.9f, -0.9f, 2.9f);
glVertex3f( 0.9f, 0.9f, -0.9f);
glVertex3f( 0.9f, -0.9f, -0.9f);
glVertex3f(-0.9f, 0.9f, -0.9f);
glVertex3f(-0.9f, -0.9f, -0.9f);
glVertex3f(-0.9f, 0.9f, 2.9f);
glVertex3f(-0.9f, -0.9f, 2.9f);
glEnd();

どーしてでしょうか???
0571デフォルトの名無しさんNGNG
EyeXを増加させるだけだとx軸の方向を向いて終わっちゃうでしょ。
視線が回転するように工夫しなよ。
0572デフォルトの名無しさんNGNG
こさいんをえっくす
さいんをわい

これいじょうおしえない
0573565NGNG
いろいろ試行錯誤したけどgluLookAtじゃ無理ってことかな。
カメラを回すんじゃなくて、物体(部屋の壁面とか)を
相対的に回せばいいのかな?
0574デフォルトの名無しさんNGNG
>>573
おまいには100年たっても無理
0575デフォルトの名無しさんNGNG
>>574

きっと釣りさ。きっと・・・
0576デフォルトの名無しさんNGNG
>>572は超親切。これ以上のヒントは存在しえないので。
0577デフォルトの名無しさんNGNG
>>573
プログラムの前に紙の上でまわすことをオススメする
とりあえずおまいが悩んでるのはOpenGLの範囲じゃない
0578デフォルトの名無しさんNGNG
なつちゅうですか。
0579デフォルトの名無しさんNGNG
なっちゅんです
0580デフォルトの名無しさんNGNG
まあ比較的軽いほうだな
0581572NGNG
むしですか?>565
かいてんっていうのはうごきをたてよこじくべつべつにかんがえるといそうが90どずれたさんかくかんすう2つだってわかるだろぼけ
0582デフォルトの名無しさんNGNG
より詳しい説明だが、多分余計にわかってくれないぞきっと。
0583デフォルトの名無しさんNGNG
回せばいいのかな、と言いながら回し方がわかってないのでやっぱり出来ない、に100ラジアン
0584デフォルトの名無しさんNGNG
どこかに人間の腕と手、指の動かし方を
OpenGL/VC++環境で詳しく説明してるようないいWEB
知ってる人いたらUぷキボヌ
0585572NGNG
どっかにあるとは思うけど、俺も知らない。
でも本で言うとOpenGL3Dプログラミング 酒井幸市著 が少し詳しい。
ただ、これもワンスキンモデルではなくて腕パーツとか手パーツとかバラバラだからglRotateとか使ってる。
だからワンスキンモデルにはそのままは使えない。
0586デフォルトの名無しさんNGNG
>>584
http://www.darwin3d.com/gdm1998.htm#gdm0598
http://www.darwin3d.com/gamedev/articles/col0598.pdf
0587デフォルトの名無しさんNGNG
悲惨なことに、gl.hのファイルを上書きしてしまいWEBからダウンロード
したくても見つけることができず・・
どっかだうんろーどできるとこ知ってる毛?
0588デフォルトの名無しさんNGNG
ボーランドのに入ってないっけ?
0589デフォルトの名無しさんNGNG
ボーランドのページに直行.
0590デフォルトの名無しさんNGNG
ダルンロードのページCan NOT BE FOUND・・
だぁぁ〜 どこかほかにしってるけ?
0591デフォルトの名無しさんNGNG
borlandでぐぐって行けるぞ。
0592デフォルトの名無しさんNGNG
ダウンロードのページのリンク壊れてっしゃ・・
トライアルでもダウンロードすればと予測したのに・
0593デフォルトの名無しさんNGNG
一体どこへ行ってるんだ?
http://www.borland.co.jp/cppbuilder/freecompiler/bcc55download.html
0594デフォルトの名無しさんNGNG
>>587
VisualC++のディスクからインストールしなおすとか、
SGIやNVIDIAのページからダウンロードするとかできると思うが。
0595デフォルトの名無しさんNGNG
ここからもとってこれるな。少しバージョンは古そうだけど。
http://www.opengl.org/users/downloads/index.html
0596デフォルトの名無しさんNGNG
もういいよ。適当なリンク教えるな。んじゃ
0597デフォルトの名無しさんNGNG
ん?何で怒ってんだ?
0598デフォルトの名無しさんNGNG
ほっとけ。
0599デフォルトの名無しさんNGNG
>>586
そのページのコードは、どれもワンスキンモデルじゃなく間接ごとのパーツに別れてるモデル使ってるんだよ。
だからglPushMatrix()やらglRotatef()やら使ってしまっているから、ワンスキンモデルに転用するにはかなり難解。
ワンスキンモデル&OpenGL&非クォータニオンでのコードがあれば、この際一番適しているかと。
0600_NGNG
http://homepage.mac.com/hiroyuki44/
0601_NGNG
http://homepage.mac.com/hiroyuki44/jaz04.html
0602デフォルトの名無しさんNGNG
ほんとにプロが使うOpenGLって何ですか?
0603デフォルトの名無しさんNGNG
>>599
前に、ワンスキンモデルをクォータニオン使わず
OpenGLで実装したことあるけど、そのときの会社辞めたから
コードが手元にないなぁ

漏れ一人で作ったから時間あれば作り直せるけど
今は他のプログラムで忙しいし...

けど、そんなに難しくないよ
基本は、ボーンごとに変換行列を持たせて掛け合わせて逝くだけだし
あとは影響範囲や距離に応じた重み付けをして変形してやればだいたいOK
クォータニオンはポーズの補間がいらんければ使わんでもいい
行列のほうが扱いやすいし、平行移動や拡大縮小も表現できて便利だよ

あと、ワンスキンモデル自体の操作はOpenGLと直接関係ないんで
描画部分と編集部分は分けといた方が、後で使い回しがきくよ
0604デフォルトの名無しさんNGNG
>漏れ一人で作ったから時間あれば作り直せるけど
>今は他のプログラムで忙しいし...
キヴォンヌ
0605デフォルトの名無しさんNGNG
OpenGLとか3Dを専門に習える専門学校って無いの?SGIの直轄とかで。
0606603NGNG
>>604
だから忙しい、つってんのにw
そのくせ、こんなとこで遊んでるな、とのつっこみ不要

まぁ、いつかは作るだろうけど、まだ当分先のことだな
0607デフォルトの名無しさんNGNG
>>603
クォータニオンの利点は平行移動や拡大縮小等が表現できないことにあるのだが。
0608デフォルトの名無しさんNGNG
がっ子の始めの授業でにんげんのうでをOpenGL+VC++環境で作れという
すきんもなにも無しの超基本の宿題が出て1週間しても何も作れず・・
きっとここにいる人とかなら10っぷんだろうな・・・

かなしいよ・・ほんとに・・
0609_NGNG
http://homepage.mac.com/hiroyuki44/hankaku08.html
0610デフォルトの名無しさんNGNG
>>608
イ�`
0611デフォルトの名無しさんNGNG
>>608
ぴーぴー泣け、泣き終わったら立ち向かえ!
0612デフォルトの名無しさんNGNG
>>608
何をもってして人間の腕とみなすかだな。

ドラえもんの手みたいのなら、10分もかからん(w
指の関節まですべて再現するなら、かなりメンドイ。
0613デフォルトの名無しさんNGNG
つーか誰か3D格ゲーの作り方に詳しいサイトとか本とか、それに関するスレとか知ってる?
0614デフォルトの名無しさんNGNG
キューキュー泣いてるよほんとに・・
一様上腕筋、下腕筋、手、指5本の8パーツから成り立つようにという
課題命令。

コノ前どこかから、なわとびをする犬というEXE&CODEをもらってきてて、
それの腕を人間の腕にし、アフロヘアーを足して人間アフロ犬にしたい
という計画からしてだめラシ・・

あと3日だしみりポ・・・
0615名無しさん@そうだ選挙にいこうNGNG
1.5 age
0616デフォルトの名無しさんNGNG
とりあえずそのコードキボぬ。できそうなら助ける。
0617デフォルトの名無しさんNGNG
助けてくれるとマジでうれしいかっっも

いちおもらってきたコードというのがこれなんだけど・・

#include<stdio.h>
#include<math.h>
#include <windows.h>
#include <GL/gl.h>
#include <GL/glut.h>

static int rotx=0,roty=0,rotz=0;
static int jump,i=0,j=0,n;
static float deg=0.0,smi=0.0;
static float boul=0.0,bour=0.0,bounl=0.0,bounr=0.0,bouku=0.0,bounku=0.0;
static float a=1.0,b=1.0,c=1.0,d=0.0,e=0.0;
static float rs=1.0,gs=0.0,bs=1.0;
static float fdeg=0.0,hana=0.0,k=0.0,l=0.0;

GLfloat mat_ambient[]={1.0,1.0,1.0,1.0}; /* 白 */
GLfloat mat_diffuse[]={1.0,1.0,1.0,1.0};
GLfloat mat_specular[]={1.0,1.0,1.0,1.0};
GLfloat mat_ambient1[]={0.0,0.0,0.0,1.0}; /* 黒 */
GLfloat mat_diffuse1[]={0.0,0.0,0.0,1.0};
GLfloat mat_specular1[]={0.0,0.0,0.0,1.0};
GLfloat mat_ambient2[]={1.0,1.0,0.0,1.0}; /* 黄 */
GLfloat mat_diffuse2[]={1.0,1.0,0.0,1.0};
GLfloat mat_specular2[]={1.0,1.0,0.0,1.0};
0618デフォルトの名無しさんNGNG
GLfloat mat_ambient3[]={0.0,0.0,1.0,1.0}; /* 青 */
GLfloat mat_diffuse3[]={0.0,0.0,1.0,1.0};
GLfloat mat_specular3[]={0.0,0.0,1.0,1.0};
GLfloat mat_ambient4[]={0.8,0.3,0.2,1.0}; /* 茶 */
GLfloat mat_diffuse4[]={0.8,0.3,0.2,1.0};
GLfloat mat_specular4[]={0.8,0.3,0.2,1.0};
GLfloat mat_ambient5[]={1.0,0.0,0.0,1.0}; /* 赤 */
GLfloat mat_diffuse5[]={1.0,0.0,0.0,1.0};
GLfloat mat_specular5[]={1.0,0.0,0.0,1.0};
GLfloat mat_ambient6[]={1.0,0.7,0.4,1.0}; /* 肌色 */
GLfloat mat_diffuse6[]={1.0,0.7,0.4,1.0};
GLfloat mat_specular6[]={1.0,0.7,0.4,1.0};
GLfloat mat_ambient7[]={0.0,1.0,0.0,1.0}; /* 緑色 */
GLfloat mat_diffuse7[]={0.0,1.0,0.0,1.0};
GLfloat mat_specular7[]={0.0,1.0,0.0,1.0};
GLfloat mat_ambient8[]={0.5,1.0,0.0,1.0}; /* 緑色2 */
GLfloat mat_diffuse8[]={0.5,1.0,0.0,1.0};
GLfloat mat_specular8[]={0.5,1.0,0.0,1.0};
GLfloat mat_shininess[]={50.0};
GLfloat light_position[]={20.0,30.0,30.0,0.0};
0619デフォルトの名無しさんNGNG
void init(void)
{
glClearColor(rs,gs,bs,0.0);
glShadeModel(GL_SMOOTH);
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glLightfv(GL_LIGHT0,GL_POSITION,light_position);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_DEPTH_TEST);
}
void clip(void)
{
float i;
GLdouble eqn[4]={1.0,0.0,0.0,0.0}; /* x>0 */
GLdouble eqn2[4]={-1.0,0.0,0.0,0.0}; /* x<0 */
GLdouble eqn3[4]={0.0,1.0,0.0,0.0}; /* y>0 */
GLdouble eqn4[4]={0.0,-1.0,0.0,0.0}; /* y<0 */
GLdouble eqn5[4]={0.0,0.0,1.0,0.0}; /* z>0 */
GLdouble eqn6[4]={0.0,0.0,-1.0,0.0}; /* z<0 */
0620デフォルトの名無しさんNGNG
きたねーコード
0621デフォルトの名無しさんNGNG
/* 地面 */
/*z軸方向*/
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient7);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse7);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular7);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glLineWidth(2.0);
glBegin(GL_LINES);
glColor3d(0.0,1.0,0.0);
for(i=0;i<=120;i+=3.0){
glVertex3f(60.0-i,-40.0,60.0);
glVertex3f(60.0-i,-40.0,-60.0);
}
glEnd();
/*x軸方向*/
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient8);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse8);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular8);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glBegin(GL_LINES);
glColor3d(0.0,1.0,0.0);
for(i=0;i<=120;i+=3.0){
glVertex3f(60.0,-40.0,60.0-i);
glVertex3f(-60.0,-40.0,60.0-i);
}
glEnd();
0622デフォルトの名無しさんNGNG
そうなのか?もろ初心者で、もらってきただけだったから分からなかったけど・・・
0623デフォルトの名無しさんNGNG
/* なわ */
glPushMatrix();
jump=jump-9.0;
glTranslated(0.0,jump-5.0,-4.0);
glRotated(deg+50,1.0,0.0,0.0);
glScaled(0.8,1.3,1.0);
glClipPlane(GL_CLIP_PLANE0,eqn5); //z>0
glEnable(GL_CLIP_PLANE0);
glTranslated(0.0,0.0,1.0);
glClipPlane(GL_CLIP_PLANE1,eqn6); //z<0
glEnable(GL_CLIP_PLANE1);
glTranslated(0.0,0.0,-1.0);
glClipPlane(GL_CLIP_PLANE2,eqn4); //y<0
glEnable(GL_CLIP_PLANE2);
glTranslated(0.0,-4.0,0.0);
glPushMatrix();
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient5);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse5);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular5);
glutSolidSphere(25.0,50.0,50.0);
glPopMatrix();
glDisable(GL_CLIP_PLANE0);
glDisable(GL_CLIP_PLANE1);
glDisable(GL_CLIP_PLANE2);
glPopMatrix();
jump=jump+9.0;
0624デフォルトの名無しさんNGNG
/* 眉 */
/* 左眉 */
glPushMatrix();
glLineWidth (2.0);
glBegin(GL_LINES);
glVertex3f(-3.5,16.5+jump,6.0);
glVertex3f(-6.0,17.0+jump+smi,6.0);
glEnd();
glPopMatrix();
/* 右眉 */
glPushMatrix();
glBegin(GL_LINES);
glVertex3f(3.5,16.5+jump,6.0);
glVertex3f(6.0,17.0+jump+smi,6.0);
glEnd();
glPopMatrix();
/* 目 */
/* 左目 */
glPushMatrix();
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient1);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse1);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glTranslated(-3.5,12.0+jump,6.5);
glutSolidSphere(1.5,20.0,20.0);
glPopMatrix();
/* 右目 */
glPushMatrix();
glTranslated(3.5,12.0+jump,6.5);
glutSolidSphere(1.5,20.0,20.0);
glPopMatrix();
0625デフォルトの名無しさんNGNG
/* 鼻 */
glPushMatrix();
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient1);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse1);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glTranslated(0.0,10.0+jump,10.5);
glRotated(-20.0,1.0,0.0,0.0);
glRotated(90.0,0.0,1.0,0.0);
glScaled(1.0,1.0,1.4);
glutSolidSphere(1.7,20.0,20.0);
glPopMatrix();
/* 顔 */
/* 顔下部 */
glPushMatrix();
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient6);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse6);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular6);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glTranslated(0.0,5.5+jump,2.9);
glScaled(1.3,1.2,1.4);
glRotated(90.0,1.0,0.0,0.0);
glutSolidSphere(6.0,50.0,50.0);
glPopMatrix();
0626デフォルトの名無しさんNGNG
/* 顔上部 */
glPushMatrix();
glTranslated(0.0,10.0+jump,-3.0);
glScaled(2.3,2.7,2.3);
glRotated(90.0,1.0,0.0,0.0);
glutSolidSphere(4.8,30.0,30.0);
glPopMatrix();

/* 左耳 */
glPushMatrix();
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient4);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse4);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular4);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
glTranslated(13.0+bounl,8.0+jump+bounl,-3.0);
glRotated(30.0+boul,0.0,0.0,1.0);
glScaled(0.8,3.0,2.0);
glutSolidSphere(2.5,20.0,20.0);
glPopMatrix();
/* 右耳 */
glPushMatrix();
glTranslated(-13.0+bounr,8.0+jump-bounr,-3.0);
glRotated(-30.0+bour,0.0,0.0,1.0);
glScaled(0.8,3.0,2.0);
glutSolidSphere(2.5,20.0,20.0);
glPopMatrix();
0627デフォルトの名無しさんNGNG
それよりも、ゲーム作りたいんだけど、
画面端のステータス画面の2D部分と、画面中央のゲーム本編3D部分、
どうやって作ればいい?ステンシルバッファっていうのでいいんかな?めっちゃ重いらしいけど。
あと、OpenGLでゆめりあみたいな3Dアドベンチャー作るとして、フォントってどうすればいい?
全部画像で1文字ずつ用意して、本文に合わせてペタペタ?かなり萎えるけど。
0628デフォルトの名無しさんNGNG
ちょっと長すぎて迷惑になると思うのでリンクしま。
はじめから創始六と殴られそうあよかん・

ttp://www.morikita.co.jp/soft/OpenGL/

ダウンロードした7章目のナワトビシテル犬みたいののうでを
人間の腕にしてアフロ人犬にしたいのだ・・
10っぷんか?10っぷんでびょうさつだろ?

おながいします。
0629デフォルトの名無しさんNGNG
627いいんかなってまだ試してないわけ?
0630デフォルトの名無しさんNGNG
いや、作りたいんだけど、って書いてる通り、企画段階だよ。
もしOpenGLで出来無いor出来るのかは、企画段階で早めに知っておいた方がいいしね。
0631デフォルトの名無しさんNGNG
そだね〜。
0632デフォルトの名無しさんNGNG
>>630
できる
0633デフォルトの名無しさんNGNG
日本語フォントは?
0634デフォルトの名無しさんNGNG
>>633
フォントはイロイロやり方あると思うが
クロスプラットフォームじゃなくていいなら
OSごとのAPIを使う

そうすればフォント変更やサイズ変更にも対応できる
必要ならアウトラインフォントを使ってもいい
0635デフォルトの名無しさんNGNG
てことは、何も考えず普通にTextout出来るの?
表示順番とかだと1番最後になるのかな?
0636デフォルトの名無しさんNGNG
うーん懐かしい。またGetTextMetricsなんて使う日が来るのか・・
0637デフォルトの名無しさんNGNG
IKについて詳しく解説してくれるサイトない?
0638デフォルトの名無しさんNGNG
>>635
Textout出来んこともないが
OpenGLの画面にかぶせて表示するんなら
テクスチャのほうが簡単だし概ね高速に描画できる

>>636
そだね〜
0639デフォルトの名無しさんNGNG
>>628
必 死 だ な (藁
とか言うのもアレなので適当にレス。ほぼ答えになってるけど。

glPushMatrix
 腕(移動、回転、描画)
 glPushMatrix
  手のひら(移動、回転、描画)
  {glPushMatrix
   指(移動、回転、描画)
  glPopMatrix} ×5
 glPopMatrix
glPopMatrix

移動は親からの相対座標で。(手は腕から、指は手からの位置)
何か見たいなら、>>3の一番下の「12章階層構造」ってとこでも見れ。
0640デフォルトの名無しさんNGNG
それじゃダメ。ポイント単位で処理できないから。
でもポイント単位の処理は仕様でコロコロ変わるからなぁ。
0641デフォルトの名無しさんNGNG
>>640
639は>>608=628へのレスだから、それで合ってると思われ
0642デフォルトの名無しさんNGNG
628のれすからして、639の解説見ても作れそうになさそうな予感・・
また泣くな・・やつ・・
0643デフォルトの名無しさんNGNG
>>638
いや、テクスチャが1番楽なのは分かるけど、
PerspectiveじゃなくてOrthoにしないと正面向いてくれないのでわ?
0644_NGNG
http://homepage.mac.com/hiroyuki44/
0645デフォルトの名無しさんNGNG
>>643
テキスト表示用のカメラを作って、必ず正面を向くようにすればいい
0646デフォルトの名無しさんNGNG
え?でも無理じゃない?上下左右端っこの方は結局歪んじゃうよ。
0647デフォルトの名無しさんNGNG
>テキスト表示用のカメラを作って

意味不明でつ
0648デフォルトの名無しさんNGNG
OpenGLのエンジンを研究している研究室がある大学を、どなたかご存知でしょうか。
探してはいるのですが、なかなか見つからないので、ご教授頂ければ幸いです。
0649デフォルトの名無しさんNGNG
http://leo.nit.ac.jp/~shindo/index.html
ここは問題外です。ここの教授のOpenGLに関する著書の、アマゾンの評価は凄いものがあります。
卒論もトンデモ揃いです。
0650デフォルトの名無しさんNGNG
>>649
スゲー
0651デフォルトの名無しさんNGNG
国が金出すべき所じゃないな
0652デフォルトの名無しさんNGNG
岡山理科大のシミュレーションなんたら学科というのも酷い
0653デフォルトの名無しさんNGNG
>>649
なんだこれは。爆笑したぞ。
http://leo.nit.ac.jp/~shindo/Students.exe
0654デフォルトの名無しさんNGNG
>>653
あくありうむに一票
0655632=634=638NGNG
>>643
645で正解

>>646>>647
Perspectiveで描画したあとOrthoに切り替えて描画しる

>>627への回答も兼ねるが
2D部分はOpenGL使わんという手もある

Windowsを前提として
>>21がイイことを言ってる
0656デフォルトの名無しさんNGNG
>>655
>2D部分はOpenGL使わんという手もある
これ、無理じゃね?
Swap+他の方法で描画 ってやるとチラつくでしょ。
Windowsで異なるhDCを持った領域に描画する、みたくはできるけど(このことを言っているのならスマソ)
0657632=634=638NGNG
>>656
それは>>627の文章から
ステータス画面が本編の3D部分とかぶらんぽかったんで
そういうふうな仕様(フォント表示部と背景のブレンドが不要とか)なら
別ウインドウとかにして、OpenGL使わん手もあると言いたかった

ちらつきに関してはPFD_DRAW_TO_BITMAPで
ビットマップに描くようにすれば回避できると思うが
これだとハードウェアアクセラレーションが効かんらすぃからなぁ

こちらこそ、わかりにくくてスマソ
0658デフォルトの名無しさんNGNG
こーどをどっかからこぴぺしてExcecuteすると、そのときは問題なく
動くのに何回かやってるうちにこんなエラーメッセージが出てうごかなく
なるのは一体どうして?

c:\program files\microsoft visual studio\vc98\include\gl\gl.h(37) : error C2146: syntax error : missing ';' before identifier 'spin'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(37) : fatal error C1004: unexpected end of file found

これが出たらもう最後、なにをやっても動かない・・・どうせろっちゅうんじゃ〜。
0659デフォルトの名無しさんNGNG
>>657
結局、どの方法がベストなの?それだけ聞きたいよ。
0660632=634=638NGNG
>>659
フォントテクスチャのキャッシング機構と
DrawTextライクな文字列描画関数つくっとけ
0661628NGNG
>>639ヘルプどうもです。徹夜でやってみましたがだめみたいです。まず今ある
上腕筋と、下腕筋にてをつけること自体苦労してる状態で・・それから指、
(移動、回転、描画)、相対座標・・・

あと1日ですし、泣き入ってます・・・もうむりぽ・・・
0662デフォルトの名無しさんNGNG
やり方がわかっても、基礎技術が足りてないのか・・・
ガンガレ
0663628NGNG
そうみたいな予感です。あと2週間くらいあればがんばって基礎マスターするの
だけど、あと1日じゃむりぽいです・・

もしかしたら、10分くらいで仙人がコードをうぷしてるかも・・
とわくわくしながらチェックをしているしだいです・・・

0664デフォルトの名無しさんNGNG
OpenGLできリャー助けてやっても良かったけどおりはJavaヨタ・・・

誰か一人くらいはヒマジンいるだろーに。助けてやれヤ・・そしてガンガレ
0665デフォルトの名無しさんNGNG
この状態で助けてたらダメだろ。
628の為にもならんし。
つか学校の宿題なら先生に聞くべきだし、そもそもちゃんと授業を
聞いていたのかも疑問。

素直に「出来ませんでした」と言って改心すべきだと思うが。
0666デフォルトの名無しさんNGNG
2chらしくないな・・
0667デフォルトの名無しさんNGNG
叩こうと思う前にかわいそうになった・・・
0668デフォルトの名無しさんNGNG

情けをかけて助けてやれ。所詮かかっても20っぷんだろ?

665のような奴は、いじめられてる子を見て自分のせいなんだから自分で何とかしろ
とはきすてるやつだな・・先生に出来ませんでしたと言える性格のやしがここで
助けてくださいとは言わないだろ・・

といいつつOPENGLが何かもしらんくさった俺・・
0669デフォルトの名無しさんNGNG
自己弁護乙
0670デフォルトの名無しさんNGNG
いえいえ、C++版の住人ですよ。自分のスレではいつも助けてるモンデ・・
0671デフォルトの名無しさんNGNG
OpenGLが何なのかも知らないのに、何故このスレを見てるの?(w
0672665NGNG
>>668
確かに漏れは、

夏休み中遊びほうけてて宿題が終わってないのに気付き、
「自分1人じゃ出来ないので代わりに全部やってください」
という怠け者に、

    「自分のせいなんだから自分で何とかしろ」

と吐き捨てる奴だよ。

それが何か?
0673デフォルトの名無しさんNGNG
事故用語乙
0674デフォルトの名無しさんNGNG
>>642>>662>>664>>666>>667>>668>>670は>>628のジエン
・でわかる
0675デフォルトの名無しさんNGNG
>>662と>>667は俺なんだけど
・の数違うし
0676俺は五つNGNG
・・・は誰でも使うと思うけど・・・・・
0677デフォルトの名無しさんNGNG
「・・」と「っぷん」に特徴があって、自演でそれを隠そうともしないのは面白いな
0678デフォルトの名無しさんNGNG
その条件に合致するのは>>668だけじゃねーか。
0679デフォルトの名無しさんNGNG
自演してるとなれば、「・・」だけのも怪しいだろ
0680デフォルトの名無しさんNGNG
664は自分。・・・を使うだけで自演らしい・・そしてまた使う・・・
・・・・・・・・・・
0681デフォルトの名無しさんNGNG
>>628
必 死 だ な (藁
0682デフォルトの名無しさんNGNG
少なくとも>>668は自演だってバレてんのに、その他を否定してもw
0683デフォルトの名無しさんNGNG
自演だ自演だと必死になっている奴がいるな
0684デフォルトの名無しさんNGNG
おもしろいからな
0685デフォルトの名無しさんNGNG
>>663
マルチ氏ね
0686デフォルトの名無しさんNGNG
もういいよ。時間切れしてるし、出来なかったはい落第〜ってことで
つぎいってみよ〜。

0687デフォルトの名無しさんNGNG
>>628
そんな簡単な業務内容で食って行けるなんて、どんな企業なの?
俺プーだから是非教えて欲しい。
0688デフォルトの名無しさんNGNG
>>687
>>608
0689山崎 渉NGNG
(^^)
0690デフォルトの名無しさんNGNG
影の生成について詳しく日本語で解説してるとこがあったら是非。
0691デフォルトの名無しさんNGNG
>>690
ある1点から三角形の各頂点に線を伸ばして
平面に投影される三角形をつくる。

んである1点と投影された面とで出来た三角錐の側面を
手前側は黒く奥は消しゴムで消すと・・・
実際、側面は三角形の辺との四角形ですが

投影される面は光線と平面の交点を求める時と同じ。
n・(vt+E)=0

詳しくは3Dグラフィックス数学読めば?
ソースも載ってるよ。
0692デフォルトの名無しさんNGNG
nは面の法線で
vは光源からの三角形の頂点へのベクトル
Eは三角形の頂点
0693デフォルトの名無しさんNGNG
>>691
晒し
あなた恥ずかしい,,,,なんで0なんだよ
0694デフォルトの名無しさんNGNG
あは 平面の定数項を忘れてた
n・(vt+E)+d=0
0695デフォルトの名無しさんNGNG
>>690
myお気に入りを漁ってみた。
ttp://www.geocities.jp/yuichiy2001/gl/applied/index.htm
ttp://www.butaman.ne.jp/~nobuyuki/3DDemo/shadow.html
あと>>362の下。
OpenGL+日本語 だとこのくらいしかなかった…
0696695NGNG
なんか、myお気に入り って変かも
0697デフォルトの名無しさんNGNG
解説ではglOrthoは
・ワールド座標系で指定
・視点はz軸と逆向き
・視点は視体積に含まれなければならない
ということですが、これとgluLookAt
を組み合わせた時の挙動がわかりません。
組み合わせるとglOrthoは視点からの相対座標で指定になるのでしょうか?
具体的には以下の内容なのですが四角形が視界に入ってきません。

void display(void){
 glClear(GL_COLOR_BUFFER_BIT);
 glColor3d(1.0, 0.0, 0.0);

glBegin(GL_LINE_LOOP);  
  glVertex3f(29.9, 27.8, 1);
  glVertex3f(29.9, 27.1, 1);
  glVertex3f(30 , 27.1, 1);
  glVertex3f(30 , 27.8, 1);
 glEnd();
 glFlush();

 };

void resize(int w, int h){
 glViewport(0, 0, w, h);
 glMatrixMode(GL_PROJECTION);glLoadIdentity();
 glOrtho(29.8, 30.1,   27.0, 27.9,  -2.0, 0.0); //これだと視界に入らない
//glOrtho(-2.0, 2.0, -2.0, 2.0, 2, 0);   //こっちだと視界に入る
 MatrixMode(GL_MODELVIEW);glLoadIdentity();
 gluLookAt(29.95, 27.5, 0.0,  29.95, 27.5, 10.0,  0,1,0);
};
0698デフォルトの名無しさんNGNG
>>697
glOrthoやglFrustum、gluPerspectiveってーのは
射影方法(射影行列)、つまりカメラのレンズを設定をする関数。
gluLookAtってーのはカメラの位置や向きを決める関数。
って考えればわかりやすいかと...

ちなみにgluLookAtは
原点にあって負のZ軸方向を向き、上方向が正のY軸方向であるものを
指定されたように変換する、変換行列を生成して、現在の変換行列にかけているので
glPusuMatrixとか使わずに、連続で呼び出したりすると(まぁやらんだろうが)
変なことになったりする。

あと赤本とかのサンプルだと>>697のソースみたく
リサイズ関数の中で、カメラの設定をやってるのが多いが
ディスプレイ関数の中でやるほうが意味的に正しく思うのは漏れだけ?
0699697NGNG
>>698
ご教示ありがとう御座います。あなたの親切に感謝します。

>glOrthoやglFrustum、gluPerspectiveってーのは
>射影方法(射影行列)、つまりカメラのレンズを設定をする関数。
>gluLookAtってーのはカメラの位置や向きを決める関数。
>って考えればわかりやすいかと...

このあたりそれぞれは大体わかるのですが組み合わせたときの挙動が
不審とでも言いますか・・・
glOrtho(29.8, 30.1,   27.0, 27.9,  -2.0, 0.0);
視体積を設定するところまでは理解できているのですが、
gluLookAt(29.95, 27.5, 0.0,  29.95, 27.5, 10.0,  0,1,0);
次にを呼び、描いている四角形の中心をz軸負の方から見ようとすると
視界に入らず、
gluLookAtはそのままで逆にglOrtho(-2.0, 2.0, -2.0, 2.0, 2, 0); とすると
(本来視点は視体積内にあるべきで、おかしいはずなのに)四角形が描画される。
というのがわからないです。

調べなおしててみると「glOrthoは注視点からの相対値で指定」であり、
間違って理解していたことに気づきました。すみません。
「視点が視体積内に無ければならない」については家帰ってから赤本
見てみます。

0700697NGNG
おおボケかましてました。
「left,right,bottom,top,は上方向ベクトルを基準にしてnear,farは視点からの相対値」
ですね。
0701デフォルトの名無しさんNGNG
頂点配列の関数って頂点処理が流れ作業的なプログラムでは中々使い辛いんだが・・
0702デフォルトの名無しさんNGNG
dd
0703デフォルトの名無しさんNGNG
視体積
ビュー体積
ビューボリューム
視野錘台
視錘台

日本語の学術用語ってどれも統一されてないから、検索しにくくてウザ過ぎるよ。
他にも影マップとシャドウマップとシャドーマップとか。メタボールとブロビーと濃度球とか。
頂点配列と頂点アレイとバーテックス配列とバーテックスアレイとか。
0704デフォルトの名無しさんNGNG
縄跳びする犬って桐蔭?
0705デフォルトの名無しさんNGNG
>>703
では2ch推奨訳語を挙げるというのは如何?

とりあえず 「vertex array」 は「頂点配列」でイイと思。
あと視体積と視錘台は別じゃない?
0706デフォルトの名無しさんNGNG
ほんと、英語をカタカナ表記したものはバリエーション多過ぎてなえるよ。
書籍によってバやヴァだったり、スやシュだったり、「ー」を省略してたり。
英語と日本語まじりだったり。
たとえば
フィッシャー情報量
フィッシャー情報計量
フィッシャー計量
フィッシャー量
Fisher  、、
そのくせ、フィッシャーやFisherだけで検索すると滅茶苦茶出て来るし。検索する者の身にもなって欲しい。
0707デフォルトの名無しさんNGNG
ところで、ビットマップを読み込んでテクスチャとして貼り付ける方法を解説してあるとこってない?
独自のヘッダとか使ってないで。
0708_NGNG
http://homepage.mac.com/hiroyuki44/
0709デフォルトの名無しさんNGNG
>>706
検索エンジンの使い方覚えれ
0710デフォルトの名無しさんNGNG
>>707
>独自のヘッダとか使ってないで。
意味わからん。
windows.hのことを言ってるなら、
コピペして適当に書き換えれば良いじゃないの。

漏れはPPMとPNGしか使ってないけど。
0711デフォルトの名無しさんNGNG
>>707
ない
0712デフォルトの名無しさんNGNG
>>707
http://www.geocities.jp/yuichiy2001/gl/faq/03-bmp_texture.htm
ほれ、ここの解説でもよんどけ。

>>710
707の言いたいのは、独自のライブラリをつくって
読み込んだりしていない方法ってことじゃないか?
0713デフォルトの名無しさんNGNG
球体に月のテクスチャを貼って実行したら、なんか変な表示になってしましますた。
テクスチャを綺麗にラッピングする方法、どなたかご存知ですか?
0714デフォルトの名無しさんNGNG
>>713
メルカトルのテクスチャ貼ったら
繋ぎ目が変なふうになるってやつ?
どうしても糊代部分のテクスチャ座標が0.0〜nになっちゃうから、
そこだけ全画像領域が貼られちゃうみたいな。
解決策は手打ち?
0715デフォルトの名無しさんNGNG
>>713
テクスチャ画像と球体で、経線・緯線を考えてみると何か解るかも。
>>714
uv間違ってる予感。
0716デフォルトの名無しさんNGNG
ところで、屈折マッピング具体的な設定方法がいまいち分からんのですが・・・
反射マッピング(GL_SPHERE_MAP)は分かるんですが。
0717デフォルトの名無しさんNGNG
ひとつのウィンドウの中にダイアログボックスと画像(640*480)
を組み込んだアプリケーションを作りたいのですが、
いまいちどう組み込んだものか分かりかねています。
___________________________________________________
|--------------------------------|
|-------------------- _____ |
|| | |____| |
|| | _____ |
|| | |____| |
|| image | _ |
|| | ||------ |
|| | |
|-------------------- |
----------------------------------

↑わかりづらいけれどもこんな感じでリアルタイムで
操作ができるもの。
どなたかサンプルプログラムをご存知の人がいましたら
教えてください。とっても急いでいます。
0718デフォルトの名無しさんNGNG
画像壊れてしまいました。AAってむずい。。。
0719デフォルトの名無しさんNGNG
>>717
環境は?
ダイアログ部分はOS(等)が提供した物を使うことになると思うが。
0720デフォルトの名無しさんNGNG
俺はCarbon+C++だな
0721デフォルトの名無しさんNGNG
>>719

OSはWindows XP、ソフトはVisual C++ 4.0です。
ダイアログボックスぬきの部分は作成済みです。
0722デフォルトの名無しさんNGNG


みなさんもこの問題をといて見てはいかが?
C言語の問題です。
http://jbbs.shitaraba.com/game/bbs/read.cgi?BBS=1314&KEY=1060147851&START=115&END=200&NOFIRST=TRUE
0723デフォルトの名無しさんNGNG
gemsと3D数学って同じ技法でも全然手法が違ったりしますけど、
衝突検出ではどっちが良いでしょうか?
0724デフォルトの名無しさんNGNG
>>722
レベル低すぎ
0725デフォルトの名無しさんNGNG
|--------------------------------|
|-------------------- _____ |
|| | |____| |
|| | _____ |
|| | |____| |
|| image | _ |
|| | ||------ |
|| | |
|-------------------- |
----------------------------------
0726デフォルトの名無しさんNGNG
衝突検出ですが、
1境界ボックス作る
2境界ボックスの一つの面の平面の方程式作る
3壁、地面の各メッシュと交差判定する
4境界ボックスの残った平面に移って2に戻る
5衝突検出された面に対して斥力を与える
これで良いのでしょうか?文献によっては正射影後三角形の中に点が含まれるかどうか、とかやってますが、
それはどういう場合必要なのでしょうか。
0727デフォルトの名無しさんNGNG
>>726
境界をボックスなんかにせんと、スフィアにした方が楽だと思われ。
回転してもかまわないし、交差判定も対象物二つのスフィアの中心の間の
距離を測り、半径の二倍以下であることを確認すればいいんだし。
0728_NGNG
http://homepage.mac.com/hiroyuki45/
0729デフォルトの名無しさんNGNG
>>706
英語サイトを検索すれば?
日本語で検索せず。
0730_NGNG
http://homepage.mac.com/hiroyuki45/hankaku09.html
0731デフォルトの名無しさんNGNG
>>706
曖昧検索できるエージェントつくってくれ
0732デフォルトの名無しさんNGNG
727
一番単純な方法で、
1境界ボックス作る
2境界ボックスの頂点のx,y,z値の最大最小値の範囲内に対象物が入っているか調べる
3入ってたら衝突
という方法もアリですか?
0733デフォルトの名無しさんNGNG
>>727
スフィア2つって、地面とか壁の場合はスフィアじゃないですよね?
0734_NGNG
http://homepage.mac.com/hiroyuki45/
0735デフォルトの名無しさんNGNG
>>727
境界箱を球にすると二乗を計算するのに時間がかかるかもだ
0736デフォルトの名無しさんNGNG
if(bbox[0]<=Point->position[0] && Point->position[0]<=bbox[3] &&
bbox[1]<=Point->position[1] && Point->position[1]<=bbox[4] &&
bbox[2]<=Point->position[2] && Point->position[2]<=bbox[5] )
{
//検出
}

ってのじゃダメですか?
bbox[0],[1],[2]箱のx,y,zの最小値
、、[3][4][5]    、、最大値
0737デフォルトの名無しさんNGNG
>>726
http://pc2.2ch.net/test/read.cgi/gamedev/1023414393/310
0738デフォルトの名無しさんNGNG
>>732
境界ボックスはオブジェクトの傾きにたいして可変?
可変なら、オブジェクトの形によっては無駄な判定領域が発生する。
不変なら、オブジェクトが傾く旅に境界ボックスの座標の再計算が必要。

>>733
そです。この場合は敵とか弾とかの判定のみ。壁とか地面とかは改めて別の方法が
必要かと。でも、壁とか地面は基本的に動かないのでなんとでも楽にできるかと。

>>735
ごめん、大きさを可変と考えてなかった。あくまでも大きさ固定ということで。

長細いオブジェクトなら、先端の座標から後ろに向けて球を並べてしまう。
だいたい、これでいけてるよ。
0739デフォルトの名無しさんNGNG
物体の重力落下に関して、どこか解説してるサイトってある?
0740デフォルトの名無しさんNGNG
>>739
ゲ製作の物理スレとか
0741デフォルトの名無しさんNGNG
微妙にスレ違いと思われる内容が増えてきたな。
夏休みの宿題かなんかか?
0742デフォルトの名無しさんNGNG
>>741
すまそ。openglでノベルゲー作りたいんだけど、
文字表示ってどうするの?2D文字なんだけど、OpenGLでは日本語表示ってムリだよね?
半透明ウィンドウに2Dフォントで日本語表示って出来る?
3D部をレンダリングした後に2D文字を書く、ってのは分かるんだけど。
0743_NGNG
http://homepage.mac.com/hiroyuki45/
0744デフォルトの名無しさんNGNG
あ、jtext.c見付けたからいいや。
0745デフォルトの名無しさんNGNG
スレ違いでもイイんでないか?




OpenGLだもの。
0746デフォルトの名無しさんNGNG
クロスプラットフォーム精神たるグラフィックライブラリに「スレ違い」の文字は無い。
0747デフォルトの名無しさんNGNG
>>746がいいこと言った!
0748デフォルトの名無しさんNGNG
OpenGLがクロスプラットフォーム?
まだそんな風に思ってるピュアな奴っているんだ・・・
0749デフォルトの名無しさんNGNG
>748
そう思ってないとDirectXに対するアドバンテージが
見付からないでしょ
特にWindowsアプリ開発者の場合わ
0750デフォルトの名無しさんNGNG
とりあえずWindowsとMacとLinuxで動くので、
自分的にはそれでよし。
0751デフォルトの名無しさんNGNG
ちょっと質問。

物体の座標をglTranslatef(x, y, z);として
キーボード入力で各値を変化させて物体を移動させるプログラムを書きたいんだけど
z軸上では移動できるのに、x, y軸上ではうんともすんとも言いません。

・・・なんなんでしょうか。
0752デフォルトの名無しさんNGNG
堤さやかちゃんの引退記念作です。
これは絶対見るしかないでしょう。
甘えたしゃべりかた、小さな身体に大きなオッパイ、そしてこの顔。
どれをとっても特A級!こんな子がAV女優だったなんて信じられませんね。
無料ムービー観てちょ
http://www.exciteroom.com/
0753デフォルトの名無しさんNGNG
>>751
ちょっとすぎて, まったく分からん.
ソースのせるとか, もっと詳しく書くとかする.
0754デフォルトの名無しさんNGNG
トゥーンシェーディングをつくるときソースにどんなコードを追加すればいいんですか?
できればGLUTとかつかって、簡単でわかりやすいコードを組み込みたいのですけど。
わがままいってすいません。
0755デフォルトの名無しさんNGNG
>>753
まず最初に
float x = 0.0, y = 0.0, z = 0.0;
として、その後に描画関数で
glPushMatrix();
glTranslatef(x, y, z);
glutSolidTeapot(1.0);
glPopMatrix();
で物体を描画、でさらにキーボード関数で
case GLUT_KEY_UP:
z = z - 2.0;
break;
case GLUT_KEY_DOWN:
z = z + 2.0;
break;
・
・
・
で物体を移動操作できるようにするじゃないですか。

この時、z座標軸上の移動は全然問題ないんですが、x、y軸上はまったく反応しません。
0756デフォルトの名無しさんNGNG
>>755
glTranslatefの前に
glLoadIdentityを入れてみるとか。
0757デフォルトの名無しさんNGNG
>>756
やってみたんですが、視点がヤバイことになります・・・
もうダメぽ
0758デフォルトの名無しさんNGNG
>>757
glTranslatef(z,0,0);にしてみて左右に動けば描画の問題。
動かなければ入力の問題。
0759デフォルトの名無しさんNGNG
OpenGL初心者ですがよろしくお願いします。

"glTexCoord2f"を使って座標をじか打ちした場合のみ
テクスチャが表示されないという現象に悩まされています。
ポリゴン全体が真っ白になるか、"glColor3f"で指定された
色でベタ塗されてしまうようです。
環境マッピングはきちんと表示されるようです。

私のプログラムの問題ということではなくて、
ネットでダウンロードしてきた全てのサンプルプログラムを
そのままコンパイルした場合でも同じ現象がおこります。
OpenGL対応・非対応のビデオカード双方で試しましたが結果は
同じでした。(複数のPCで動作確認しました)

コンパイラーは "Borland C++ 5.5 for Win32"を利用しているのですが
BorlandC++Builder5に元々用意されている、OpenGL関連のライブラリに
問題があるのでしょうか?
0760デフォルトの名無しさんNGNG
>>758
解決しますた。

具体的に言うと、xをxMoveとかに名称を変更したらできますた。
・・・これってバグ?
0761デフォルトの名無しさんNGNG
>>754
私は詳しくないので、稚拙な方法かもしれないけど。

・段階的にグラデーションしてる円をテクスチャにして GL_SPHERE_MAP
円の中心を少しずらすとそれっぽいかも

・同じく段階的にグラデーションしてる直線を1次元テクスチャにして、法線で適当に。
NEHEのLesson37で見た

・マルチテクスチャで柄と影を同時に描く。
拡張を使うので、意向に沿わないかもしれないけど。
というか自分でもよくわかってない…
普通のテクスチャ+上記の方法とかで作った影 を混ぜて描くんだと思う。
0762デフォルトの名無しさんNGNG
>>760
> ・・・これってバグ?

もちろんバグ。
当然ながらライブラリのではなく、おまいのコーディングのバグ。
0763山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0764デフォルトの名無しさんNGNG
糞スレの予感
0765デフォルトの名無しさんNGNG
将来的にOpenGLを使用することを見通した上で、
3Dグラフィクスを基礎から勉強するのに良い本はありませんか?
できれば日本語で。
0766デフォルトの名無しさんNGNG
>>765
コロナ社の「OpenGLによる3次元CGプログラミング」とか安くていいかも。

っていうか、「物理・制御シミュレーション入門―OpenGLを使ったアニメーションプログラミングの基本から応用まで」ってどうなの?
ソースコードはglutで書かれてる?
0767デフォルトの名無しさんNGNG
安倍正平著のOpenGLリアルタイム3Dプログラミングって本が最もオススメ。
これ一冊読めばOpenGL+Win32でバリバリプログラム書けるよ。プロを目指す人は赤本とセットで買うのが常識。
0768デフォルトの名無しさんNGNG
>767
そんな本どこにもないんだが。
0769デフォルトの名無しさんNGNG
これの2番目のやつらしい
ttp://home.att.ne.jp/yellow/hide_n/junk/amazon.html
0770デフォルトの名無しさんNGNG
烈火のごとく質問。

テクスチャを貼った平面ポリゴンにスポットライトを当てたいのですが
ライティングが効かずに真っ暗になるだけです。

・・・解決方法がわかる玄人はいませんか、そうですか。
0771デフォルトの名無しさんNGNG
>>770
いないと思うなら質問するな。訊く気がないならさっさと帰れ。
どうせライティングの方向でミスってるぐらいなもんだ。
0772デフォルトの名無しさんNGNG
>>769
持ってますがなにか?(なく
0773デフォルトの名無しさんNGNG
>>771
素人に釣られるお前も見苦しい(プ
0774デフォルトの名無しさんNGNG
2ch名物「釣られた逃げ」
0775デフォルトの名無しさんNGNG
Windows依存の質問なんですがGLUT使わずに
(解像度まで指定できる本物の)フルスクリーンにするには
OpenGLだけじゃ駄目ですか?
考えたついた唯一の方法はDirectGraphicsでGetDCしてそれをHGLRC化なんですが
(今時間ないので)まだ試してません。

あとWindows用のOpenGLやGLUTのソースってどこかで無料で手に入る物なんでしょうか?
0776デフォルトの名無しさんNGNG
>>775
漏れは手抜きでSDL+OpenGLとかでやってるが、
SDLならソースは公開されてるんで見てみるのも手では?
0777デフォルトの名無しさんNGNG
>>775
>OpenGLだけじゃ駄目ですか?
OpenGLは単にグラフィックスライブラリであって
特定のハードウェアを制御するウインドウ・システムとは無関係です。
よって、解像度変更とかはOpenGLではできません。
と言うよりOpenGLの領分ではありません。

んで本題だけど、漏れは普通にWin32API使ってやってまつ。
ChangeDisplaySettingsで解像度変えたあと
SetWindowLongでウインドウスタイルをWS_POPUPに変更し
SetWindowPos( hWnd, HWND_TOP, 0, 0, width, height, SWP_FRAMECHANGED | SWP_SHOWWINDOW );
みたいな感じ(あと解像度変更に伴い、既存ウインドウの位置がぐちゃぐちゃになるんでそのへんも対処してるが...
でも>>776さんのレスからSDLを知り、そっちに乗り換えようかなと思案中...

>あとWindows用のOpenGLやGLUTのソースってどこかで無料で手に入る物なんでしょうか?
Windows用のOpenGLってーのはwglのこと?
wglのソースだったら多分むりだと思ふ(推測
GLUTのソースなら
ttp://www.xmission.com/~nate/glut.html
で手に入る
0778デフォルトの名無しさんNGNG
そろそろシェーダというのを勉強してみたいんだけど、
シェーダを解説した書籍もWebサイトも全然見つかりませぬ。
日本語での解説はないんですかね?
0779デフォルトの名無しさんNGNG
>>773
俺のモットーは「初心者に優しい」なんでな(苦笑)。

>>775
glutGameModeString("640x480:16");
glutEnterGameMode();
って駄目?
0780デフォルトの名無しさんNGNG
やっぱソフトシャドウはシェーダーでないとだめだんだろうか。
0781デフォルトの名無しさんNGNG
あげ男
■ このスレッドは過去ログ倉庫に格納されています