[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 03/15 21:29 / Filesize : 177 KB / Number-of Response : 703
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

OpenGLスレ Part11



1 名前:デフォルトの名無しさん [2007/04/26(木) 02:43:38 ]
クロスプラットフォーム 3D API OpenGLに関する話題を扱うスレッド。

禁止事項
・「OpenGL終了」系のまず価値否定ありきの主観発言(客観的な懸念要素を挙げた上での建設的議論は可)
・学歴・理系か文系かに関連する差別発言
・その他の荒らし全て
これらは付き合うだけ無駄なので無視しましょう。

- 前スレ -
OpenGLスレ Part10
pc11.2ch.net/test/read.cgi/tech/1141034983/


- 関連サイト -
www.opengl.org/
www.mesa3d.org/

developer.nvidia.com/
www.ati.com/developer/
developer.3dlabs.com/

- 過去スレ -
Part 9: pc8.2ch.net/test/read.cgi/tech/1132403929/
Part 8: pc8.2ch.net/test/read.cgi/tech/1126267690/
Part 7: pc8.2ch.net/test/read.cgi/tech/1118151979/
Part 6: pc8.2ch.net/test/read.cgi/tech/1105612993/
Part 5: pc5.2ch.net/test/read.cgi/tech/1100085657/
Part 4: pc5.2ch.net/test/read.cgi/tech/1091724463/
Part 3: pc5.2ch.net/test/read.cgi/tech/1067529308/
Part 2: pc2.2ch.net/test/read.cgi/tech/1039984523/
Part 1: pc3.2ch.net/tech/kako/981/981044659.html (dat落ち)

488 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 11:17:11 ]
どう違うのか教えてください(;;


489 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 18:47:38 ]
ぎろっぎこっプー

490 名前:デフォルトの名無しさん [2007/12/13(木) 18:51:28 ]
powerpc版のLinux(Debian GNU/linux 4.0)で
OpenGLを実行したらこんな警告がでてくるんですが
どう解決すればよいのでしょうか?

*********************************WARN_ONCE*********************************
File r300_render.c function r300Fallback line 428
Software fallback:ctx->Line.SmoothFlag
***************************************************************************


491 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 20:42:26 ]
>>400
HWで対応してないからソフトウェアで処理すんぞってことでしょ
ビデオカードを換えるかglDisable(GL_LINE_SMOOTH)してみたらどうか

492 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 00:15:04 ]
1か月越しか

493 名前:デフォルトの名無しさん [2007/12/14(金) 00:59:11 ]
シェーダーとかあるの?

494 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 11:58:50 ]
OpenGLでテキスト描画したい場合ってどうするの?
プラットフォーム非依存なんだから、とうぜん標準で glDrawText 関数なんてものは
ないんだと思うんだけど、テキスト描画したい人はやっぱりゴリゴリコード書いて、
フォントイメージ持って来てそれを自力で転送してるの?

495 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 12:41:54 ]
>>494
環境依存(任意のフォントでディスプレイリストを作成)
glXUseXFont
wglUseFontBitmaps
wglUseFontOutlines

環境非依存(フォントの種類が少なく、ディスプレイリストを作らないので遅い)
glutBitmapCharacter
glutStrokeCharacter

496 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 14:02:41 ]
ここでくだらん質問するまえにNeheみれ



497 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 18:00:32 ]
>>490
mesa-r300は色々と未実装なフォールバックになるやつが結構ある。
それもfglrxならフォールバックなしに使えたりする。
内部的にはlinesmoothはvs使って実相しているらしいが、
仕様公開後もっと開発が進むんじゃないかな。

498 名前:453 mailto:sage [2007/12/14(金) 18:14:48 ]
>>494
FTGLがおすすめ

499 名前:498 mailto:sage [2007/12/14(金) 18:15:43 ]
すまん、名前はミスだ

500 名前:デフォルトの名無しさん [2007/12/15(土) 07:48:28 ]
二年前にCGのクラスでOpenGLを学んだが
忙しくてそれ以上続けられなかった俺様が
来年こそはと>>500をゲット

501 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 08:18:14 ]
>>500
大丈夫だ。若いんだから年末年始だけでOK
知的欲望全開で突っ走れ

502 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:13:22 ]
Dynabook A1/X85PMC(PenIII 450MHz メモリ384MB)
で、OPENGL動かそうとしたら、止まった


なぜ…研究が進められない


503 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:22:36 ]
>>502
随分古いマシンだな
とりあえずグラフィックスドライバ更新

でもOpenGLなんて所詮は最後に表示を担当するだけなんだから
研究は進められるんじゃ?

504 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:25:01 ]
www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=229374#Post229374
OpenGL 3 will not have support for the GL_DOUBLE token. This means it will not be possible to send double precision vertex data to OpenGL.

OpenGL3.0からGL_DOUBLEのサポートがなくなることは既出?

505 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:27:53 ]
doubleとか何に使うの?

506 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:35:58 ]
頂点シェーダのレジスタ精度が32/24/16/8bitしかないから無くても問題ないな



507 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:36:48 ]
>>503
画面サイズを小さくしたら出来ました。

研究室がいきなり工事やら停電やらで土日作業できず
自宅のはもらいもののノート。一応作業できますわ

508 名前:デフォルトの名無しさん mailto:sage [2007/12/21(金) 09:10:44 ]
ラデのドライバを最新にしたらツールが立ち上がらなくなったんで調べてみたら
ARB_fragment program_shadowのサポートが無くなってやがった

AMD氏ね

509 名前:デフォルトの名無しさん [2007/12/21(金) 12:38:19 ]
>>506
GL_FLOATが、16bitだよな?
32bitはなんだっけ?

510 名前:デフォルトの名無しさん mailto:sage [2007/12/21(金) 22:45:13 ]
テクスチャについての質問なんですが、ちょっと前までテクスチャが張れたのに、
アプリを再起動したらそれ以降全くテクスチャが張れなくなるのって何が原因
なんでしょうか?
昨日作ったソフトが今日になって全くテクスチャが張れなくなってしまって
困っています。バイナリ、テクスチャの元画像共に昨日テクスチャが張れた
時から全くいじっていません。また、ドライバの更新等もしていません。
思い当たるとしたらノートンの更新ぐらいですが…

511 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 01:03:45 ]
Z座標が同じポリゴンが重なったときに重なった部分のアルファのあるテクスチャを
合成するにはどうしたらいいでしょうか?
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
は実行しているのですが、なぜか合成してくれません。

┌―――┐
|      |
|      |
|  ┌―┼―┐
└―┼―┘  |
    |      |
    |      |
    └―――┘


こんな具合です。

512 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 02:46:14 ]
テクスチャのinternalformatはちゃんとGL_RGBA(あるいはその他アルファを含むフォーマット)
にしてるかい??

513 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 03:34:45 ]
はい、Z軸を0.0000001とかほんの少しずらすとアルファは通っているので
大丈夫です。ただ、Z軸が重なるとなぜか合成されずに上書きになってしまう orz

514 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 03:53:30 ]
>>513
glDepthMask(GL_FALSE);
glDepthFunc(GL_LEQUAL);
描画
glDepthFunc(GL_LESS);

515 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 20:22:14 ]
>>514
遅くなりましたが、上手くいきました!
ありがとうごさいます。

516 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 22:49:52 ]
>>509
GL_FLOAT は float だから32ビット。
16ビットは GL_NV_half_float の GL_HALF_FLOAT_NV とか VGL_ARB_half_float_pixel の GL_HALF_FLOAT_ARB とか。



517 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 22:50:46 ]
×VGL_ARB_half_float_pixel
○GL_ARB_half_float_pixel

518 名前:デフォルトの名無しさん [2007/12/22(土) 22:59:39 ]
>>516
float、32bitか。何年プログラマやっとんだ、アホか俺はw

519 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 20:39:34 ]
void display(void)
{
gluLookAt(3.0,2.0,5.0,0.0,0.0,0.0,0.0,1.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glRotated(x,0.0,0.0,1.0);
glColor3d(0.0,1.0,0.0);
glutWireTeapot(0.5);
glFlush();
}

void myKbd(unsigned char key, int x, int y)
{
if(key == KEY_ESC)
exit(0);
else if(key == 'g'){
x += 1;
glutPostRedisplay();
}
}

void init(void)
{
int width = 500, height = 500;
double aspect = (double)width/(double)height;
glClearColor(0.0,0.0,0.0,1.0);
glutCreateWindow("Sample");
glutDisplayFunc(display);
glutKeyboardFunc(myKbd);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(30.0,aspect,1.0,100.0);
}

520 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 20:40:54 ]
>>519
キーボードを押したらティーポットが回転するプログラムを書いたんですが、
ティーポットが回転してくれません。それどころかポットがどっかに移動して
しまいます。どうしたら良いですか? 教えてください。

521 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 23:49:54 ]
>>520
どう見てもコンパイルすら通りそうにないコードなんだが
C言語の基礎(変数のスコープとか)を勉強し直すことだな

522 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 01:06:44 ]
>>520
glRotated(x,0.0,0.0,1.0);
これでxを+1しても回転にならないぞw

523 名前:デフォルトの名無しさん [2007/12/25(火) 01:14:56 ]
XP上のMicrosft VC++6.0でOpenGLを使いたいのですが、
どうもこうもOpenGL/gl.hが無いと言われます。
ググってみると、
XPはデフォルトであるから心配ないとしか書かれていないのです(泣)

GLUTはインストール済みです。

もしよろしければ、対応策を教えていただけないでしょうか。

524 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 01:30:20 ]
>>523
もし
#include <OpenGL/gl.h>
ってやってるなら、その行は削除。いらない。

525 名前:522 mailto:sage [2007/12/25(火) 01:55:07 ]
hahaha!
勘違いしたw 酔ってるので許せ。

>>520
描画のたびに
gluLookAt(3.0,2.0,5.0,0.0,0.0,0.0,0.0,1.0,0.0);
で行列を掛けてるから、どっかへ飛ぶ。


526 名前:デフォルトの名無しさん [2007/12/25(火) 04:32:13 ]
> void myKbd(unsigned char key, int x, int y)
で、
x += 1;
は、何も影響を及ぼさない気がする・・・



527 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 19:22:57 ]
質問です

物体(glutSolidSphereなど)を3次元空間で動かして
動かした三次元座標空間だけマスクして
動かせば動かすほど、画像が変わっていく(3次元空間がマスクされて、隠れている画像が出てくる)
ということをしたいのですが。

どうやればいいかヒントをください

528 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 20:23:44 ]
>>527
日本語でおk

529 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 21:47:49 ]
伝わりにくくてすみません

要は3次元空間にマスクをマウスで書き込んでいく、ということをしたいのです。
フォトショップとかの2次元空間でのクイックマスク処理を
3次元でやるイメージです


530 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 22:09:50 ]
3次元でマスクってのが良くわからない…

もしSculptみたいなことをやりたいならボクセルでも使うのが早いかなぁ

531 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 22:30:36 ]
>>530
まさしくそんな感じです。

固体を削り取っていって、削られた部分だけ別の物体の色になっていくという感じです。
それか、マウスの範囲内の物体の色(不透明度)を強制的に0にしていければ…同じように出来ると考えてるのですが

マウスでglutSolidSphereの範囲内のカラーを変えていく、ということ出来ますか?


532 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 22:41:45 ]
正直に脱がせゲーを作るといえばみんな協力するはず

533 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 22:49:32 ]
…その発想はなかった!!!!!

そっちにシフトします><

534 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 23:45:14 ]
もし531のようなことやるのに
参考になるサンプルとか考え方あったら、レスお願いします。

535 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 01:04:05 ]
2Dじゃなくて、3Dでか。

そもそも、サーフェスモデルが基本なので、
「削り取る」というのをどのように表現するか・・・だな

536 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 01:18:27 ]
削り取るよりも
>マウスでglutSolidSphereの範囲内のカラーを変えていく
こっちのほうを実装するほうが、やりたいことが出来そうな気がしてきました

まだ研究室で、2時くらいに帰るのですが
かなりてんぱってきました



537 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 23:04:41 ]
536ですが

アキュムレーションバッファで変更したい部分を上書きしてく、ということはできるでしょうか?
もし出来るなら、エリア内の画素のαを0にして上書き・エリアを動かして0にして上書き…で削り取れるかもと思ったのですが

538 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 23:33:04 ]
サンプル弄くってみて

エリア内の指定
全体が変化する

でアウトでした。
もう夜も眠れません

539 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 01:58:55 ]
ん、もしかして2Dでマスクできればいいのか?
それならStencilBufferでいいと思うけど
初心者スレにそんな話題が出てたぞ

540 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 17:54:28 ]
質問させて頂きます。
@FBOテクスチャに適当に描画。
A上のレンダリングテクスチャに、上のレンダリングテクスチャを別のオブジェクトに貼って描画。
としう事をしたいのですが、Aを行う際、@で作ったテクスチャを別のテクスチャにコピーする必要があると思います。
その、テクスチャを別のテクスチャにコピーをしたいのですがどのようにすればいいのでしょうか?
できれば、高速な方法が良いです。宜しくお願いします。

541 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 17:55:05 ]
すいません、くだすれと間違えました・・・。

542 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 19:39:29 ]
OpenGL Distilledの邦訳OpenGLの神髄が出てたな
さっと立ち読みしただけだがタイトル通り要点を押さえた本だった
神髄とか言うと上級向けっぽいがそうでもなく
いきなり赤本を読む前に読んでおきたい本だな

543 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:41:32 ]
とりあえず(あえて)7Yでポチった

DirectXとか汎用言語書は自称初心者向け(笑)が増殖してるが、
買うヤツがほとんどいないOpenGL本をあえて出すということはそれなりのクオリティであると期待してみる

544 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 21:56:29 ]
>>543
だが需要はあると思うぞ。俺も買った。

545 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 07:55:58 ]
原書で読んだよ。邦訳出たのか。神髄ってのは何か違う気が……。
各章サンプルはあるんだけどあるだけって感じなんで、初心者で
手を動かしながら理解したいって人は合わせて別のチュートリアル読んだ方がいいかも。

546 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 17:31:13 ]
OpenGLでバナナの腹筋はできますか?
どこかからサンプルコードはダウンロードできないでしょうか?




547 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 17:37:40 ]
そんな質問どこかで見たと思ったらこのスレの頭の方だった
できるけど、OpenGLのサンプルコードがあるかどうかは知らない

548 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 18:09:29 ]
ろぼっとアームをバナナに置き換えれば

549 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 19:41:58 ]
Cgとかのシェーダ言語のスレってないね

550 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 20:27:55 ]
あったと思ったら違ったw

CGプログラムやれや、お前ら
pc11.2ch.net/test/read.cgi/cg/1025138347/

昔はあったんだけどね
落ちちゃったのかな

551 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 21:48:26 ]
シェーダのスレならゲーム製作技術板だがあった
ついでに過疎ってるが
pc11.2ch.net/test/read.cgi/gamedev/1005185166/l50

このスレもOpenGL3が出ないから話題が無いしCgとGLSLならここでもいいんじゃね?
今時DirectXでわざわざCgを使ってる奴がいるとも思えんし

あとは3Dグラフィックスプログラミングスレとかかな

552 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 04:27:47 ]
ndsやってるかたいらっさいますか

553 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 10:06:52 ]
仕事の質問なら帰れ
趣味でやってるなら聞くだけ聞いてやる

554 名前:デフォルトの名無しさん [2008/01/16(水) 12:50:17 ]
>>549
いっぱい有りますやん。
gpuでこの板検索してみそ。

555 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 14:25:25 ]
>>554
GPGPUのスレしか見つからないが
グラフィックでのシェーダと使い方大分違くないか?

556 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 23:53:32 ]
あっちで普通のシェーダ聞いたらすれ違い言われた



557 名前:デフォルトの名無しさん mailto:sage [2008/01/17(木) 01:28:03 ]
そりゃ当然

558 名前:デフォルトの名無しさん mailto:sage [2008/01/17(木) 21:30:29 ]
マウスで画面クリックしたら
3次元座標空間内の点が消える、という処理をしたいのですが


赤い○←クリック α値が0になって
αテストで画面内から消滅。という流れでやろうと思っています。

ただ、どうにもクリックしたオブジェクトの選択方法・クリックによる色・αの変換方法がわからず
どうにもわかりません。

参考サイトとかあったら教えてくださいませんか

559 名前:デフォルトの名無しさん mailto:sage [2008/01/17(木) 21:53:02 ]
定期的に同じような質問が来るな。
αで消すよりポリゴンそのものの描画をカットしたほうが楽じゃないか?
ポリゴン選択なら
glRenderMode(GL_SELECT);
gluPickMatrix
あたりで検索するといいよ。

560 名前:デフォルトの名無しさん mailto:sage [2008/01/17(木) 23:01:02 ]
>>559
ありがとうございます。

そこらでググって見ましたがいまいち、クリックしたオブジェクトを、消すというのが
どの時点で選択されているのかわからなく

ttp://wiki.livedoor.jp/mikk_ni3_92/d/%a5%b5%a5%f3%a5%d7%a5%eb%a5%b3%a1%bc%a5%c9%3a%3aOpenGL
ttp://son-son.sakura.ne.jp/programming/opengl_6.html

こちらを参考にしました。
消すのに、描画をカットする方法やαを0にするのがどこをいじくってよいのやら

無数に飛んでくる玉をクリック・クリックで消すというゲームを想定してます。

561 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 01:42:23 ]
それなら別にマウスピッキングなんかしないで、マウスポインタ座標と玉との距離で
処理すればいいんじゃない? 結構処理時間食うぞ、ピッキング。
他に意図があるなら別だけど。

562 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 03:20:46 ]
普通にやるならマウス座標とスクリーン座標に変換したオブジェクトのバウンディングスフィアとの衝突判定を
手前のオブジェクトから順に判定して行く感じかな

もはやOpenGL関係ないけど

563 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 06:12:05 ]
床井さん復活おめ。

564 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 14:54:14 ]
>>562
>もはやOpenGL関係ないけど
それが普通だよ。OpenGLの仕事は基本的に描画のみ。衝突判定やピッキングは別でやるのが当たり前。
セレクションモードとかは「場合によっては使えなくもない」ってだけの仕組み。

初心者は、無理してOpenGL使うより、適当なシーングラフライブラリを使ったほうがいいと思うんだよなー。
でも敷居の低いシーングラフってなかなか無いんだよなー。

565 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 16:23:17 ]
javaなら低レベルなJOGLか、高レベルなJava3Dっていう選択肢があるんだけどな。

と、JOGLをRhinoから遊んでる俺が言ってみる。

566 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 17:37:50 ]
JOGLってなんでGL.glHogeHogeみたくプレフィクスだぶらせてるんだ。
メソッドのglとか定数のGL_とか、クラス名があるんだから不要じゃん?
入力面倒だよ……。



567 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 17:42:16 ]
定数の GL. は static import すればいい
メソッドのはメンドイね

568 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 02:43:39 ]
下らない質問なんですが、
戦場の絆みたいなゲームって、
blenderみたいなソフトでモデル(ガンダム)を作って、
その情報を取り込んでOpenGLでプログラミングして動かしているのでしょうか?

569 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 02:54:16 ]
商業なら独自形式にエクスポートしたりしない?

絆のハード構成は最近のPCと同じ(チップセットがAMDでVGAがGF7800)でOpenGL使ってるからCg使ってるかもしれないけど。

570 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 03:05:48 ]
>>569
むむ、言ってることが難しくて分からないです。
自分が何でこんなこと思ったのかと言うと、
たとえばもうちょっと簡単な例で、同人ゲームとかで3Dな奴ありますよね。
でも、自分にはOpenGLであんな複雑な人の形を作るなんて、とっても大変だと思うんです。
それで、たとえば何かのCGソフト(blenderとか六角大王とか)で人間の形を作って、
その人間の形を出力して、OpenGLで取り込んでプログラミングして動かすのかなと思ったんです。
実際のところどうやって3Dゲームは人の形を動かしてるんでしょうか?


571 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 08:35:42 ]
>>570
基本はあってる。

3DCGソフト(ゲームなら、3DSMax、Maya、XSIあたり)でモデリングして、アニメーション付けて、
それを独自形式で適当に吐いて、
プログラムでデータとして読み込む。

後は、それをOpenGLなり、DirectXなりで画面に出力する。

572 名前:デフォルトの名無しさん [2008/01/19(土) 09:05:08 ]
>>571
なるほど!
とてもよく分かる説明、ありがとうございます。
ちなみに、モデリングしてアニメーションつける人と
OpenGLなりDirectXで動かす人は普通別なんですよね?

573 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 12:08:24 ]
普通は別だろう
別である必要はないけど
技術的につらいし作業量的にも無理あるよな

574 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 12:33:58 ]
そこそこ以上の規模のゲームでは
前者はデザイナー、後者はプログラマーの仕事だよな

575 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 12:52:20 ]
今時の同人ソフトだってグラフィックデザイナとプログラマは別れてるんじゃないかな?

規模のでかいゲーム屋ならWebの募集要項の種類眺めるだけでも雰囲気つかめるんじゃないの>>572


576 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 16:55:18 ]
規模によるとしか言えない。1週間も3Dソフト触ればまずまずの絵は出てくるようになるよ。
ただゲームに適したポリーを吐くのは難しいときもある。



577 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 21:25:19 ]
GLUTによる「手抜き」OpenGL入門読んだら、次に読むべきお勧めの本は何かありますか?
赤本より簡単なやつで。

578 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 21:30:35 ]
>>577
続きという事なら、これはどうかな。俺もまだ読んでないけど。

GLUTによるOpenGL入門2 テクスチャマッピング
www.kohgakusha.co.jp/books/detail/978-4-7775-1332-1

579 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 21:30:54 ]
とりあえず自分で何か作ってみる、のがいいんじゃないかなぁ
太陽系の模型とか、三次元テトリスとか

580 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 23:55:33 ]
赤本は分厚いだけで難しくはないだろ。

581 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 17:37:44 ]
OpenGLで3次元で人体を描画するとしたら
各関節を座標で与えて表示することは可能でしょうか?
現在は例として肩から肘まではxyz座標でそれぞれの軸に何度回転しているかで
描画しているのですが…
よろしくお願いします

582 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 17:49:17 ]
座標から角度を計算すればいいだろ

583 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 00:17:40 ]
すいません、質問させて下さい。
今、複数のポリゴンに動画を貼り付けるようなことをやっているのですが、
どうしても8fps位しか出ず、複数のポリゴンと複数の動画を描画すると、0.5fps位になって
しまいます。なにか高速化のヒントだけでもいただけるとうれしいのですが…

テスト時の動画は400*400、処理は大体以下のような感じです。

1、カメラの設定
2、変換座標の設定
3、テクスチャの生成(1つの名前をglTexSubImage2Dで使い回し)
4、ポリゴン描画
1に戻る

584 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 00:25:19 ]
どこが遅いか調べればいいじゃないか。
エスパーは出張中だ。

585 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 08:06:43 ]
>>583
動画のデコードが遅いだけじゃないだろうな
動画でなく同じサイズの静止画を毎フレームglTexSubImageで設定してみて
遅いかどうかを確認してみなよ

586 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 17:01:41 ]
>>585
試したところ、無変形では静止画の方が速くなりました。
ところが、回転や移動をすると、なぜか静止画の方はフレームレートが
半分ぐらいにまで落ちたのに対し、動画の方は変わりませんでした。
これはデコード以外の別なところにもネックがあると考えた方がいいんでしょうか?



587 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 18:05:51 ]
>>ところが、回転や移動をすると、なぜか静止画の方はフレームレートが
>>半分ぐらいにまで落ちた

これはおかしいな。考えにくい。
プログラムうp。

588 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 18:31:42 ]
>>587
ちょっといろいろ処理がからみついていて長くなっているのでうpは出来ませんが、モデルビューや
プロジェクションの設定は動画と静止画の時は全く同じ処理で動いてます。
違うとしたら、動画から静止画を切り出すか、静止画をコピーするかの違いしかないのですが、
それは無変形の時に速度差が出てるので原因になってるわけ無いですし…
動画と静止画のサイズは一緒で、800*800ですが、サイズによっては高速に
動くようです。400*400では問題ありませんでした。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<177KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef