トップページgamedev
516コメント149KB

OpenGL

■ このスレッドは過去ログ倉庫に格納されています
000101/11/15 23:34ID:GvgJsycj
現在OpenGLを勉強してますが、OpenGLでは3Dゲームは作れないのでしょうか?無駄なのでしょうか?
0360名前は開発中のものです。2006/05/07(日) 13:32:08ID:NeXKBURt
>>359
すげえ! たった一行で◎×△□SDK.NETを超えていきやがった
0361名前は開発中のものです。2006/05/08(月) 07:45:49ID:T8J60Eh0
そろそろOpenGLの話をやらないか?
0362名前は開発中のものです。2006/05/15(月) 00:31:34ID:DPtWE7z9
やねうらお関係の話で盛り上がってたのに、やねうらお告発では
盛り上がってないんだな、このスレ。
0363名前は開発中のものです。2006/05/15(月) 01:00:27ID:mefUr3Xn
勝手に神格化して勝手に失望したアホが喚くのを、
周りが寄ってたかって騒ぐことのドコが面白いのか。
0364名前は開発中のものです。2006/05/15(月) 17:43:18ID:5GrqaE1j
大半の評価は「腕のあるプログラマ」
院卒の厨房がわめいてるだけで告発でもなんでもないし変わるはずがない
0365名前は開発中のものです。2006/05/16(火) 00:30:25ID:5gcSCAcW
>>364
普通の人間には腕がある。
腕が立つかどうかしらんが、そいつの話に粘着するのはヤメレ
OpenGLと関係ないんだろ?

院卒とか学歴コンプレックスもみっともないが、そいつも学歴に引け目を感じているのかね
いずれにせよヤネでもクネでも専用のスレでやってくれや
0366名前は開発中のものです。2006/08/24(木) 20:10:14ID:sZawkiR+
ええ、そうなの
0367名前は開発中のものです。2007/02/09(金) 20:55:38ID:1qxw0OCj
おなかすいたなぁ。
0368名前は開発中のものです。2007/02/14(水) 15:27:06ID:ag8WIMhm
Open Inventorを使いたいんだけど、資料に乏しくていまいち
環境の整え方がわからない…

知ってる人がいたら助言が欲しい…

ちなみにVisual Studioの2005で開発しようと考えとります。
0369名前は開発中のものです。2007/02/14(水) 16:21:18ID:TMfiPAsT
6.0系ならVS2005での使い方もマニュアルに載ってる。
0370名前は開発中のものです。2007/03/07(水) 07:10:09ID:GCDEAtP1
OpenGLでビルボード処理したいんだけどプログラムはこんな感じ、

glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);

glEnable(GL_ALPHA_TEST);
glEnable(GL_BLEND);


glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 256, 256, 0, GL_RGB, GL_UNSIGNED_BYTE, po->data);
//glTexImage2D(GL_TEXTURE_2D, 0, 4, nSizeX, nSizeY, 0, GL_RGBA, GL_UNSIGNED_BYTE, imageData);


glEnable(GL_TEXTURE_2D);

glBegin(GL_POLYGON);
glTexCoord2d(0.0, 0.0);
glVertex3d(-0.5, 0.0, 3.0);
glTexCoord2d(0.0, 1.0);
glVertex3d(-0.5, 0.5, 3.0);
glTexCoord2d(1.0, 1.0);
glVertex3d(0.0, 0.5, 3.0);
glTexCoord2d(1.0, 0.0);
glVertex3d(0.0, 0.0, 3.0);
glEnd();

glDisable(GL_TEXTURE_2D);
glDisable(GL_BLEND);
glDisable(GL_ALPHA_TEST);
これじゃだめなんだよね。
イメージも消えちゃう。イメージの背景は透明にしてイメージのみ残したいんだけど。
0371名前は開発中のものです。2007/03/07(水) 09:19:02ID:KFI3/t3a
調べろと言っただろうが。
GL_MODULATEとGL_RGBでA = Afになってる。
0372名前は開発中のものです。2007/03/07(水) 23:50:39ID:GCDEAtP1
GL_REPLACEとGL_RGBAでA=Atにすればいいとか?
0373名前は開発中のものです。2007/03/07(水) 23:53:09ID:GCDEAtP1
でもこれじゃイメージの背景が透明にならないよ。イメージの背景を
透明にするにはどうしたらいいか教えてください。
0374名前は開発中のものです。2007/03/08(木) 07:05:48ID:Ruzn+kV4
できました。イメージのアルファ値を変えてALPHA_TESTを行ったらできました。
BLENDは関係なかった。意見して頂いた方々ありがとうございました。
0375おしえてちゃん2007/06/03(日) 11:43:11ID:HpTy2qsj
質問です。
点を二つ作り、その点の大きさをgl_PointSizeを使って
大きくしたら、点が重なりました。その重なった部分の混合色は
どのようにつくられるのですか?

1,(vertex + fragment を一単位と考えて)
二度シェーダプログラムを呼んで色の混合を作る。
2,(上と同じ考えで)一度で処理する。
3,そのほか

よくわかりませーん
どれですか?
0376名前は開発中のものです。2008/02/17(日) 21:41:26ID:RfaWoPe5
教えてください

VC++2008でOpenGLを使って3Dソフトを作って配布したいのですが、
GLUTのインストール作業を要求することなく、EXE単体を配布するだけで動作してくれるようにするには、
どうすればいいですか?
0377名前は開発中のものです。2008/02/18(月) 09:45:03ID:edhdSBZM
インストール作業なんてする必要なく、glut32.dllをexeと一緒に配布すればいいだけでは
0378名前は開発中のものです。2008/02/18(月) 21:46:39ID:p7mvNw22
>>377
あぁぁぁ目から鱗
ありがとうございます
そうすね〜
0379名前は開発中のものです。2008/02/23(土) 14:50:45ID:Q19BsS/Y
スタティックリンクできるGLUTなかったっけ?
0380名前は開発中のものです。2008/02/25(月) 23:18:15ID:PaorSTL+
>>379
探してみます。ありがとうございます〜

もうひとつ初心者の質問ですみませんが、
VisualC++2008で、Win32アプリを作るプロジェクトで
Windowsフォーム画面にOpenGLで作図するにはどうすればいいでしょうか???

コンソールからOpenGL用のウィンドウを作成する方法しか見つからず、
VC++の応用力もなくて、困りました。
0381名前は開発中のものです。2008/02/25(月) 23:54:10ID:KXGuSfXv
>>380
ChoosePixelFormat
SetPixelFormat
wglCreateContext
wglMakeCurrent
SwapBuffers
このあたりをぐぐってみ
0382名前は開発中のものです。2008/02/26(火) 22:58:10ID:inpRoAtJ
>>382
ありがとう。

Opengl32.libが見つからずてこずってしまってる自分が情けない。
0383名前は開発中のものです。2008/02/27(水) 03:08:49ID:83OQ1rIe
>>382
スタートメニューから検索すればいいんじゃないか
うちは C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib に入ってる
0384名前は開発中のものです。2008/02/28(木) 00:01:17ID:HoQH/UY3
>>383
すいません。スレ汚しました。

>>381
まずは、OpenGLによるグラフィック描画のサンプルがうまくできましたw
0385名前は開発中のものです。2008/02/29(金) 11:32:47ID:c9GK8w6V
ここはGLUIの質問しても大丈夫ですか?

GLUIのウインドウを破棄するclose()というのがあるんですが、
これを使うと「無効な操作」というエラーがでます。
デバッグをかけなければ問題なく動作します。
原因がわかる方いらっしゃいますか?

0386名前は開発中のものです。2008/08/26(火) 12:34:21ID:tcYS2pRq
保守
0387名前は開発中のものです。2008/10/19(日) 14:44:12ID:C/KjVJUA
OpenGLってインデックスカラーのままテクスチャーにする事が可能ですか?
glColorTableというパレット操作関数を見つけたんですが
この関数は1.2のオプションらしくハードを選ぶみたいで自分の環境だと動作しませんでした。
0388名前は開発中のものです。2008/10/21(火) 19:38:45ID:JudUV5+B
シェーダーとか使えるの?
0389名前は開発中のものです。2008/10/21(火) 19:41:57ID:L41SJSru
使えるかどうかはお使いのグラボとドライバによる
0390名前は開発中のものです。2008/10/24(金) 07:37:50ID:nHSCG/Df
  ∧⊂ヽ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  (゚Д゚)ノ <  シェーダ
  | ⊃|   \__________
  |  |
  ⊂ノ〜
  ∪
0391名前は開発中のものです。2009/03/16(月) 17:15:56ID:sLpJJ+Lf
ほっしゅ
0392名前は開発中のものです。2009/04/08(水) 07:02:19ID:4FJDhh2M
gluLookAtで指定するパラメタからビルボードオブジェクトの回転角度を計算する事ってできませんか?
0393名前は開発中のものです。2009/04/17(金) 23:00:55ID:9jYVdRjj
>>392
ターゲットから視線へ向かうベクトルを取得。
そのベクトルが視点座標系のZ軸方向になるので、ビルボードオブジェクトの同次行列をmとして、m[8],m[9],m[10]に代入。
gluLookAtで取得した視線上方向のベクトルを取得し、それとさっき取得したZ軸との外積を取る。
これがX軸方向になるのでm[0],m[1],m[2]に代入。
Y軸はZ軸とX軸の外積で作り、m[3],m[4],m[5]に代入。

これでビルボード座標系のXY平面が視線ベクトルと正対すると思う。
実際にコードを組んで確認したわけじゃないので、間違ってたらごめん。
0394名前は開発中のものです。2009/04/24(金) 14:57:07ID:nIOvt2Ic
素人でスマンが

ダブルバッファリングで
描写用画面から表示用画面に転送する方法と
描写用画面と表示用画面を交互に切り替える方法

どっちが軽い?
0395名前は開発中のものです。2009/04/25(土) 01:56:01ID:lIWbBzbQ
>>394
自分で実装するよりGLUTとかに任せちゃったほうが効率よくない?
0396名前は開発中のものです。2009/05/17(日) 16:01:39ID:DK/T3Mrl
bcc5.5でgult3.7.6使おうとすると
GL/glut.h 146: オーバーロード関数群の中の 1 つだけしか "C" にできない
って出るんだけどこれってなんで?対応してないの?
0397名前は開発中のものです。2009/05/17(日) 17:03:14ID:n1mP9XcL
じーえるばーてっくすすりーえふ
0398名前は開発中のものです。2009/05/19(火) 19:33:36ID:93hoLt8k
大量のオブジェクトを描画しようと思っています。
具体的にいうと、10万程度の粒子を、単純な四角形で同じアルファテクスチャを使い、色を変えて沢山描画するつもりです。
glBegin〜…で作ってみたのですが速度が出ません。
速度を出すにはどのような方法をとるとよいでしょうか?
0399名前は開発中のものです。2009/05/19(火) 21:44:52ID:XXyOM18A
>>398
パーティクルでも作るの?
0400名前は開発中のものです。2009/05/19(火) 22:37:21ID:93hoLt8k
>>399
はい
とにかく沢山飛ばしてみたい衝動にかられました
0401名前は開発中のものです。2009/06/18(木) 16:54:43ID:rCol3BeX
文字列を繁華街の看板のように光らせたいんですが、
基本はライティングのやり方で工夫するのでしょうか?

円形のパーティクルみたいな単純な形なら、外に行くほど透明度を上げたテクスチャを
重ねるだけで光ってるように見えるんですが…。
文字列の描画にはFTGLを使っています。
0402名前は開発中のものです。2009/06/18(木) 21:08:29ID:R02fKlcs
HDR, bloom, glareあたりで
04034012009/06/19(金) 19:57:58ID:d9xVu7dw
>>402
簡単じゃなさそうですね…。
0404名前は開発中のものです。2009/06/19(金) 23:34:29ID:C/OneIvi
真っ当にいろいろ考え出すと奥深いが
すごく単純化していうとだけど
・光らせたい部分だけ抜き出してぼかして加算合成
・光らせたい部分にきらきらなビルボードを加算合成
ってだけ
0405名前は開発中のものです。2009/06/20(土) 02:16:10ID:Ho5HM3vk
OpenALってどうなのよ
04064012009/06/23(火) 14:48:31ID:vaGvZlJ8
>>404
ありがとう。
0407名前は開発中のものです。2009/06/23(火) 15:58:28ID:o1CBJyeE
EAXの利点はハードウェアサポート
0408名前は開発中のものです。2009/06/23(火) 23:12:15ID:X9GPUy21
ES用の参考図書とか、何かいい資料ないですかね?
0409名前は開発中のものです。2009/06/24(水) 03:43:32ID:i/MORKiL
んなことは初心者スレで聞けよ素人
0410名前は開発中のものです。2009/07/23(木) 19:08:41ID:62GhMPv1
これってGLUTか何か?
http://www.nicovideo.jp/watch/sm7713045
0411名前は開発中のものです。2009/07/30(木) 19:40:34ID:jUrHw3fh

>>409

藻前がそういう風にかっこつけることができるのは
2chの中だでだなw

逝ってヨシ。
0412名前は開発中のものです。2009/07/31(金) 09:13:53ID:Am5sq6bL
>逝ってよし
既に死語になりつつあり、最近見なくなって逆に新鮮に思えるw
0413名前は開発中のものです。2009/08/02(日) 01:09:54ID:a44K6WSz
藻前とか、逆に新しいよな。
0414名前は開発中のものです。2009/08/29(土) 10:59:03ID:+EVKg2FF
なんかおっさんがかじりたての単語を
必死で使いこなそうとしている風景が頭に浮かんだ
0415名無しさん@そうだ選挙に行こう2009/08/30(日) 18:10:27ID:NFkGE/XJ
どうでもいいからOpenGLの事話せよ
例えばSIGGRAPHで発表されたOpenGL3.2とかどうだ?
0416名前は開発中のものです。2009/12/08(火) 11:47:54ID:L4vZ8+0U
さぁ
0417名前は開発中のものです。2009/12/21(月) 00:09:58ID:wXL8lMBU
知らないなぁ
0418名前は開発中のものです。2009/12/21(月) 21:48:36ID:fZWe9bF2
ブッ、知らないの?
0419マサヒロ2009/12/22(火) 23:41:24ID:D8xCbc8A

  サ
 ヒ
   ロ
   参
    上
0420名前は開発中のものです。2009/12/23(水) 07:12:28ID:YRzN0Vub
何がしたいんだお前は!
0421名前は開発中のものです。2010/01/11(月) 22:28:33ID:Erl8xU2p
OpenGL+Glutでウインドウモード、フルスクリーンモードを何度も切り替えする
プログラムを教えて下さい。
0422名前は開発中のものです。2010/01/13(水) 20:52:02ID:WLv44/Lz
僕にも教えて下さい
0423名前は開発中のものです。2010/06/11(金) 00:07:19ID:M6b9MnkJ

0424名前は開発中のものです。2010/06/16(水) 21:39:40ID:4WAS2eu5
すごい初歩的な質問だけどこれってどうやって使うの?
ttp://www.jpct.net/jpct-ae/
Eclipseとa-sdkははいってるんだけどそこからわからん
教えてエロい人><
0425名前は開発中のものです。2010/09/25(土) 08:36:20ID:kQ6VdT85
ほsh
0426名前は開発中のものです。2010/10/19(火) 00:29:39ID:bYPOdN96
リアルタイムに動くミラーハウスを実装できる人はいますか?

0427名前は開発中のものです。2010/10/19(火) 01:25:52ID:oaFptFkS
たぶん
0428名前は開発中のものです。2010/10/19(火) 01:27:59ID:btVvg1A/
俺だよオレオレ
0429名前は開発中のものです。2010/10/19(火) 01:35:45ID:bYPOdN96
では実装してみてください

Youtubeで公開してくれたら尊敬いたします
0430名前は開発中のものです。2010/10/19(火) 01:46:31ID:oaFptFkS
え? もしかしてタダで? なんで?
0431名前は開発中のものです。2010/10/19(火) 02:23:13ID:bYPOdN96
リアルタイムミラーハウスは相当高度な技術です

実現できたらノウハウで稼げるでしょう
0432名前は開発中のものです。2010/10/19(火) 02:39:13ID:bYPOdN96
おそらくSIGGRAPHにも出展できるくらいの技術です

できるのであれば作って欲しい
0433名前は開発中のものです。2010/10/19(火) 02:49:49ID:btVvg1A/
ヘーソーナンダー
0434名前は開発中のものです。2010/10/20(水) 21:13:22ID:ZbIayp1d
ミラーハウスって何?w

鏡面反射のこと?w
0435名前は開発中のものです。2010/10/20(水) 21:34:12ID:TppCkdud
ミラーハウスと聞いて、その実装がどれほど難しいのか
理解できないカスは、まさかいないよな?
0436名前は開発中のものです。2010/10/20(水) 22:12:21ID:ZbIayp1d
MirrorHouseの概念が固定じゃないから定義してくれないと。
それによって難しさも変わる。
外側が鏡張りの家もミラーハウスだし
鏡をいっぱい置いてある家もミラーハウスって呼ぶよ?

抽象的な名称じゃなく具体的な仕組みを提示してほしい。
自分の中の言葉の持つ意味が世界中で通用するはずだとか思ってないよね?w
0437名前は開発中のものです。2010/10/20(水) 22:36:07ID:6/9F7sRd
おもってんだろ
0438名前は開発中のものです。2010/10/20(水) 22:49:13ID:TppCkdud
カスの難癖は笑えるww

全部壁が鏡でできた3Dダンジョンと考えろ珍滓君

0439名前は開発中のものです。2010/10/20(水) 23:55:44ID:tkC0BrWQ
リアルタイムレイトレース!!!
0440名前は開発中のものです。2010/10/21(木) 00:05:39ID:06kWh39F
>全部壁が鏡でできた3Dダンジョンと考えろ珍滓君
また難癖()笑の付けやすい稚拙な文を書くww
0441名前は開発中のものです。2010/10/21(木) 00:46:14ID:SvJvabf1
単純に鏡面反射を繰り返すだけのことじゃないか
実装なんて難しくもなんともない。

実用的な処理速度になるかどうかは別問題。
0442名前は開発中のものです。2010/10/21(木) 01:04:09ID:zHYDOwSO
シェーダで組めば問題ないだろ
0443名前は開発中のものです。2010/10/21(木) 01:25:56ID:RUyYzJpp
>単純に鏡面反射を繰り返すだけのことじゃないか
>実装なんて難しくもなんともない。

ならやってみせたら?
0444名前は開発中のものです。2010/10/21(木) 03:54:22ID:SvJvabf1
必要もないのに出来るとわかってることをやる意味が見出せないよ。
>>430 と同じ疑問が沸くw
よほど暇で、気が向いたらやるかもしらんが。
0445名前は開発中のものです。2010/10/21(木) 04:21:28ID:RUyYzJpp
鏡面反射の方法だけでも言ってやったら?

0446名前は開発中のものです。2010/10/21(木) 05:18:53ID:SvJvabf1
検索すればすぐ見つかると思うんだがw

うちは反射面に視点を移動させてから
適当なバッファにシーンを書き出す>それをテクスチャに取り込む>必要に応じて反転させて反射面に貼り付け
という流れでやってるよ。

その他の反射材質(100%反射ではないもの)の場合は
虚実空間を作ってステンシルなんかで切り抜く手法をとるね。
上に出てるミラーハウスや合わせ鏡なんかもこの方法でやる。

単純な面じゃない鏡面(たとえば湾曲した鉄板とか磨かれた車のボディ)の場合はもう一工夫必要だけど
基本的に上の二つを何度も組み合わせてそれらしく見せるかな。
なので複雑な空間を構築するほどにレンダリング速度は下がるよ。

>>442
ぜひやり方を聞きたいw
0447名前は開発中のものです。2010/10/21(木) 05:39:03ID:d26spTi4
>>446
ミラーハウスは万華鏡のように無限に多重反射を繰り返すところが肝だから、
その古典的な手法で「何度も組み合わせてそれらしく見せる」のはかなり困難だと思うなあ。
0448名前は開発中のものです。2010/10/21(木) 06:34:20ID:RUyYzJpp
俺の考え方は、ミラーの面に対して逆側にモデルを反転して描画して、
その映像のミラーの部分をテクスチャとして使う

で出来るんじゃないかと

>>446と同じかな?

0449名前は開発中のものです。2010/10/21(木) 06:35:57ID:RUyYzJpp
多重になるとその繰り返しだから・・
限界あるよね

確かにシェーダーてどうやるんだ?
0450名前は開発中のものです。2010/10/21(木) 08:32:31ID:SvJvabf1
うんにゃ、困難じゃないよ。
仮に鏡の中の虚空間が無限だったとしても人間の視力は無限じゃないからね
「無限に反射を繰り返す」と思い込みが、いかにもすごそうだと勘違いさせるだけで
実際に構築する虚空間は5回程度で十分それらしくみえるよ。
0451名前は開発中のものです。2010/10/21(木) 08:51:34ID:Tb90fLMG
映画見てないの?
0452名前は開発中のものです。2010/10/21(木) 12:31:10ID:ztPOzFWh
5回程度、で、すむのだろうか...
2回反射としても、2 * 4回くらいバッファ作ることになるんじゃないかと思うんだけど...
3回反射なら、さらに * 10くらい?
狭い室内だからってことで視野を広角にするとさらに大変に...
0453名前は開発中のものです。2010/10/22(金) 05:11:54ID:d+rUZ45V
メガデモスレに依頼したら?
0454名前は開発中のものです。2010/10/23(土) 13:46:21ID:xgtuB2ri
オブジェクトが「点」になるまで収縮するのに、たかだか5回じゃ、
できあがるのは全くの別物過ぎるだろ。消失点とか完全に逸脱するし。

結論、無理。
0455名前は開発中のものです。2010/10/23(土) 14:37:37ID:MFcab25H
GPGPUによる高速レイトレースに頼るしかないね
鏡のモデルが単純だから解像度が低ければ数十回反射をトレースしてもそれなりに速度出るかも
0456名前は開発中のものです。2010/10/23(土) 22:34:14ID:1FVe8j8v
上で簡単にできるって言ってた奴は結局口だけってこと?

0457名前は開発中のものです。2010/10/23(土) 23:45:57ID:8OT+k5jH
え?この板口だけがデフェでしょ?
0458名前は開発中のものです。2010/10/23(土) 23:48:55ID:1FVe8j8v
それって板の存在意味ないじゃんねー

0459名前は開発中のものです。2010/11/06(土) 21:33:39ID:zrF4soKu
すみません。
フラグメントシェーダやっていて、どうしても理解できない現象が出てこまっています。
シェーダプログラムは↓みたいな感じなのですが、どうも自分の視点と向かい合っている面が
明るくなってしまうのです…。
(一応、ライトを動かすことでも陰影の様子は変わりますが、ライトは動かさずに視点だけがが
動いてもフラグメントの色が変わってしまう状態です。)

宜しくお願いします。


varying vec3 position;
varying vec3 normal;

void main (void)
{
vec4 color;

// アンビエントは強制的に反映
color = gl_FrontMaterial.ambient * gl_LightSource[0].ambient;

// 法線とライトベクトルとのcosθの度合いだけディフューズが反映される。
vec3 fnormal = normalize(normal);
vec3 light = normalize(gl_LightSource[0].position.xyz - position);
float diffuse = dot(light, fnormal);

if( diffuse > 0.0 ){
color += gl_FrontMaterial.diffuse * gl_LightSource[0].diffuse * diffuse;
}
gl_FragColor = color;
}
■ このスレッドは過去ログ倉庫に格納されています