■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

【C++】 DirectX初心者質問スレ Part10 【C】
501 名前:デフォルトの名無しさん :2006/09/02(土) 11:16:33
ttp://pcmania.jp/~ringo/img/gaikan.jpg
ttp://pcmania.jp/~ringo/sfc01.jpg

502 名前:デフォルトの名無しさん :2006/09/02(土) 12:38:41
おそらくパーティクルみたいなのを1スプライト1DrawPrimitiveで大量に出していると見た。

503 名前:デフォルトの名無しさん :2006/09/02(土) 13:30:07
X68000の奴が正しいスプライト機能って誰が決めたんだろう・・・

504 名前:デフォルトの名無しさん :2006/09/02(土) 13:41:56
基準は別レイヤになっているかどうか。
なっていなければスプライト機能ではない。

505 名前:デフォルトの名無しさん :2006/09/02(土) 13:50:55
>>504
それはどこで定義されてるの?
君の脳内以外で。

506 名前:デフォルトの名無しさん :2006/09/02(土) 13:57:00
>>505の脳内以外の全域。

507 名前:デフォルトの名無しさん :2006/09/02(土) 14:03:25
http://www.google.co.jp/search?hl=ja&q=%E3%82%B9%E3%83%97%E3%83%A9%E3%82%A4%E3%83%88%E6%A9%9F%E8%83%BD&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=

508 名前:デフォルトの名無しさん :2006/09/02(土) 14:14:43
しかしMSも、イメージを描画するだけの機能によくSpriteとか、
頭の弱い馬鹿を勘違いさせるような名前を付けたよな。

509 名前:デフォルトの名無しさん :2006/09/02(土) 14:47:08
スプライトってID3DXSPRITEインターフェイスの話じゃないの?
描画するだけで糞重いんだが違うのか。

510 名前:デフォルトの名無しさん :2006/09/02(土) 14:49:35
また重いとしか書かない馬鹿が来た。
脳味噌が足りないのは十二分に分かったから最低限の情報ぐらい出せ。

511 名前:デフォルトの名無しさん :2006/09/02(土) 14:52:02
>>508
以後1000までスプライトの定義について話し合いますか?

ちなみにセガサターンみたいなのはどう認識してるわけ?

512 名前:デフォルトの名無しさん :2006/09/02(土) 14:53:44
もう放置しろよ。

513 名前:デフォルトの名無しさん :2006/09/02(土) 14:57:47
もう結論は出てるしね。

514 名前:デフォルトの名無しさん :2006/09/02(土) 15:05:58
        ゴガギーン
             ドッカン
         m    ドッカン
  =====) ))         ☆
      ∧_∧ | |         /          / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     (   )| |_____    ∧_∧   <  おらっ!出てこい>>479
     「 ⌒ ̄ |   |    ||   (´Д` )    \___________
     |   /  ̄   |    |/    「    \
     |   | |    |    ||    ||   /\\
     |    | |    |    |  へ//|  |  | |
     |    | |    ロ|ロ   |/,へ \|  |  | |
     | ∧ | |    |    |/  \  / ( )
     | | | |〈    |    |     | |
     / / / / |  /  |    〈|     | |
    / /  / / |    |    ||      | |
   / / / / =-----=--------     | |

515 名前:デフォルトの名無しさん :2006/09/02(土) 15:06:39
なんか最近無理やり2Dゲーム作ろうとしてるボーヤが
こことかゲーム製作技術板にも一定数いるみたいだな。
なんでそんな無駄なことしてるのか一体どんなゲーム目指してるのか一度聞いてみてぇ。

マップチップで作りたいとかもう時代じゃねぇんだよ。
色んなリソース食い潰した挙句そんなショボイもん作ってどうするのかと。
DirectXのスプライト機能なんて板ポリちゃうんかとあのクラスなにか恩恵あるのかと。
お前、どこまで脳みそ無いのかと。

516 名前:デフォルトの名無しさん :2006/09/02(土) 15:16:13
時代とか関係ないだろクズ

517 名前:デフォルトの名無しさん :2006/09/02(土) 15:19:51
結論
D3DX系の高レベルAPIは使うな。
APIそのものも腐っていれば使う奴はもっと腐っている。

518 名前:デフォルトの名無しさん :2006/09/02(土) 15:28:54
>>517
DirectXは腐っているから自前でGPU叩こうぜ。
Windowsは腐っているから自前でOS書こうぜ。
x86アーキテクチャは腐っているから自前で設計しようぜ。
この世界は腐っているから(ry

519 名前:デフォルトの名無しさん :2006/09/02(土) 15:29:10
テクスチャ読む('A`)マンドクセに

520 名前:デフォルトの名無しさん :2006/09/02(土) 15:32:14
>>516
あるよ。
マップチップ配置してるゲームって見た目ショボイもんしかできないじゃん。
一体何を目指してるのかマジで知りたい。
vectorにもマップチップ使ったショボイゲームが転がってるけど
何を目指してそんな見た目にしようとしたのかマジで聞いてみたい。

SRPG作るならFFTみたいなの作りたいとか思わないのかと。

521 名前:デフォルトの名無しさん :2006/09/02(土) 15:35:03
見た目信者はPS3でも買ってろw

522 名前:デフォルトの名無しさん :2006/09/02(土) 15:39:25
>>521
いや、見た目がすべてとはいわないけどさ。
わざわざショボクする必要はないわけじゃん。

523 名前:デフォルトの名無しさん :2006/09/02(土) 15:52:50
マップチップを使っている人は
わざとしょぼい物を選んでいるというわけではないと思うが…。
そんなに言うなら手当たり次第本人に忠告してやったらどうだ?

524 名前:デフォルトの名無しさん :2006/09/02(土) 15:55:14
>>523
なんかそれ荒らしっぽいじゃん。
それになんか参考にしてるゲームでもあるのかもしれないし。

525 名前:デフォルトの名無しさん :2006/09/02(土) 16:02:06
>また重いとしか書かない馬鹿が来た。
実際描画1つで糞重いんだからしょうがないだろうがwwwwww


526 名前:デフォルトの名無しさん :2006/09/02(土) 16:08:57
もうビデオカード増設しかないだろ。
http://akiba.ascii24.com/akiba/news/2006/05/26/imageview/images809266.jpg.html

527 名前:デフォルトの名無しさん :2006/09/02(土) 16:38:34
お前のPCが糞杉なんだよwwwwww

528 名前:デフォルトの名無しさん :2006/09/02(土) 16:48:04
>>525
描画一つで何十秒もかかるのか。
オマエの脳内PCも大変だな。

529 名前:デフォルトの名無しさん :2006/09/02(土) 16:49:29
無茶な結論を示してくれたり
人が作ってるものの内容を一々気にしてくれる親切な人がいたり
ほんとの初心者は実は見ないほうがいいスレになってるなここ

530 名前:デフォルトの名無しさん :2006/09/02(土) 16:52:39
実際の所、D3DXのSpriteとかFontとかX系の機能は使わない方がいい。

531 名前:デフォルトの名無しさん :2006/09/02(土) 16:54:22
昔から、DirectX初心者(が)質問(を叩く)スレだよ?

532 名前:デフォルトの名無しさん :2006/09/02(土) 17:10:11
>>526
何このゴキブリwww

533 名前:デフォルトの名無しさん :2006/09/02(土) 17:23:46
>>528
ID3DXSPRITEのDraw1回分でDrawPrimitiveで4角形(3角形2個分)24〜25個の描画が出来た。
後者はトランスフォーム済み頂点使ってるから対比するには合ってないかもしれないけど
お世辞にも「軽い」とか「同じぐらい」と言えるレベルじゃない。
なんでこんな関数消さずに残しているのだろうか。

534 名前:デフォルトの名無しさん :2006/09/02(土) 17:38:38
初心者ホイホイなんじゃね?w

535 名前:デフォルトの名無しさん :2006/09/02(土) 17:39:34
ちゃんとした例で示したのは偉すぎるが
4角形とか3角形とかって凄い表記だな。

536 名前:デフォルトの名無しさん :2006/09/02(土) 17:51:11
>>533
SDKのバージョンは?

537 名前:デフォルトの名無しさん :2006/09/02(土) 18:03:45
>>536
いや、本当に普通に遅いんじゃね?
俺も一度使っただけだけどそんとき「おっせ」って結論出した記憶がある。
厳密に数字出したわけじゃないけど。
まあ、それ以上に俺が思ってたようなことができなくて扱いづらくて止めたって記憶もあるが。

538 名前:デフォルトの名無しさん :2006/09/02(土) 19:08:03
・頂点バッファロック
・描画する分板ポリ情報を頂点バッファにCopyMemoryする
・頂点アンロック
・頂点ストリーム設定、頂点シェーダ設定とか諸々
・DrawIndexedPrimitiveで描画

これじゃあダメなんすか?

539 名前:デフォルトの名無しさん :2006/09/02(土) 19:54:31
>>538
ちょこっとだけシェーダ書けば(ホント5〜6行)
ロック、アンロックもする必要ないんじゃない?

540 名前:デフォルトの名無しさん :2006/09/02(土) 20:21:26
2Dの弾幕ゴチャキャラゲームがザラにあるのに
簡単に重い言うなよ

541 名前:デフォルトの名無しさん :2006/09/02(土) 20:39:24
>>540
ああいうのはDirectXのスプライトなんて使ってたらできないだろ。

542 名前:デフォルトの名無しさん :2006/09/02(土) 20:43:43
DirectXにスプライト機能など無い。

543 名前:デフォルトの名無しさん :2006/09/02(土) 20:46:09
>>542
いや、だからD3DXSpriteのこと。

544 名前:デフォルトの名無しさん :2006/09/02(土) 20:47:54
>>542
てか、いちいちうざいな。
日本語は話の流れを組み取るようにできた言語なんだよ。
だからよくあるセリフのほとんどに主語が存在しない。
まあ、言ってみれば馬鹿には扱えない言語ってことw

545 名前:デフォルトの名無しさん :2006/09/02(土) 20:50:37
間違いを正していかないと、勘違いする馬鹿が量産されるだろ。
省略していいものと間違いとは全く別の話。

546 名前:デフォルトの名無しさん :2006/09/02(土) 21:00:10
だいたい、そんな昔のスプライト機能なんて知ってる奴のがめずらしいだろw
まあ、知ってるけどさw
まさか、今、話題だしてそのスプライトのこと言ってるとは思わないよ。

547 名前:デフォルトの名無しさん :2006/09/02(土) 21:04:00
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。
DirectXにスプライト機能など無い。


548 名前:デフォルトの名無しさん :2006/09/02(土) 21:18:00
>>542は昔のスプライト好き過ぎ。
そんな古の技術が神秘大陸アトランティスと共に沈んだときに
>>542も一緒に心中すればよかったのに。

549 名前:デフォルトの名無しさん :2006/09/02(土) 21:21:54
背景の復元機能まで実装していたら、ソフトウエアスプライトとして名乗っても何の問題もない。
しかし少なくともDirectXにはそんなAPIは存在しない。

550 名前:デフォルトの名無しさん :2006/09/02(土) 21:33:21
間違いを指摘されても、頭が悪いのにプライドだけは高い奴は、
決して自分の間違いを認めず、間違ったまま恥の上塗りをし続ける。

しかしほとぼりが冷めた頃、いつの間にか間違いを正して、
以前の間違っていた事実を無かったことにする。

551 名前:デフォルトの名無しさん :2006/09/02(土) 21:38:29
なんか沸いてるなw

552 名前:デフォルトの名無しさん :2006/09/02(土) 21:52:37
で、話を元に戻すけどD3DXSpriteは遅いの?
(スプライトって書くと妙なのが湧くから面倒でもこう書こう)

553 名前:デフォルトの名無しさん :2006/09/02(土) 21:59:24
D3DXのSprite、Font、X関係は使い物にならない。

554 名前:デフォルトの名無しさん :2006/09/02(土) 22:32:56
じゃ、早いスプライトって何?

555 名前:デフォルトの名無しさん :2006/09/02(土) 22:33:34
飲み物。

556 名前:デフォルトの名無しさん :2006/09/02(土) 22:41:24
2004年頃のD3DXSpriteと比べると今のは段違いに速いよ
ただ基本的に楽するためのものだから速度や自由度に差はある

弾幕系だと楽になるわけでもないので他の方法で組めよ

557 名前:デフォルトの名無しさん :2006/09/03(日) 01:28:58
>>556
速度上がったんだ。
知らなかった。
つーか今までが理不尽なくらい遅くて使い物になら無かったからなあ。
普通にバラで使うなら楽でいいが、例によって弾幕系はあれか。
頂点バッファ自前で持ってトリプルバッファリングとかで回しつつロックしまくりか。
DrawPrimitiveUPでだだ書きしても速度なんか大して変わらんかった気もするが、どうでもいいね。

558 名前:デフォルトの名無しさん :2006/09/03(日) 01:33:14
D3DXのFontは、あれ英語圏に特化してるもんなー。
文字コードが散ってる国じゃ、レンダリング結果のキャッシュなんか使い物にならん。
普通に書いてたらGDIよか遅くなるくらいだし。
つーかご丁寧にWindowsGDIのフォーマット指定なんか真似しないでいいのに。
使い辛いったらない。

D3DXのX関係は、誰だこんなん作った奴はってくらいのわかり辛さだが、
機能自体はそれなりに充実してるよな。
アロケータを継承してカスタム化したりする一連の手続きを拒絶反応起こさずに
呑めるかどうかはあるが、素性としてはそんなに悪くない。
ゼロから自分で書くのも面倒くせーしな。

アニメーションコントローラは死んでいい。リアルで。

559 名前:デフォルトの名無しさん :2006/09/03(日) 07:09:17
使いこなせない奴の僻みキタ――(゚∀゚)――!!

560 名前:デフォルトの名無しさん :2006/09/03(日) 09:05:39
>>559
こんなもん使わなきゃできない時点で終わってるw

561 名前:デフォルトの名無しさん :2006/09/03(日) 09:11:54
(・∀・)ニヤニヤ

562 名前:デフォルトの名無しさん :2006/09/03(日) 09:16:42
>>561
いや、さすがにあるもの使えっていっても使えるものと使えないものがあるよ。
D3DXSpriteにしてもアニメーションコントローラーにしても作った奴のセンスが糞過ぎて
どうにも使い物にならない。

563 名前:デフォルトの名無しさん :2006/09/03(日) 09:41:49
そうそう、さすがに居る人使えっていっても使える人と使えない人って居るよね。

564 名前:デフォルトの名無しさん :2006/09/03(日) 10:02:58
>>563
お前のこと?w

565 名前:デフォルトの名無しさん :2006/09/03(日) 11:00:37
D3DXSpriteはまだ許せるがFontはどうしようもない

566 名前:デフォルトの名無しさん :2006/09/03(日) 11:07:23
DirectXにスプライト機能など無い。

567 名前:デフォルトの名無しさん :2006/09/03(日) 11:24:31
ドリキャスハァハァ

568 名前:デフォルトの名無しさん :2006/09/03(日) 19:11:39
 

569 名前:デフォルトの名無しさん :2006/09/05(火) 00:53:18
SDK(Augaust2006)で作ったプログラム動かそうと思ったら
d3dx9_30.dll←これがないって出るんだが…

570 名前:デフォルトの名無しさん :2006/09/05(火) 00:55:45
ふーん

571 名前:デフォルトの名無しさん :2006/09/05(火) 06:29:11
>>569
http://d.hatena.ne.jp/ginpei/20060805/1154783971

ワロスw
もう、グダグダもいいとこだなw>DirectX
同人かよw
ホントに1企業の企画するシステムなんかよw
開発担当者が1人だけ割り当てられてて、そいつしかチェックしてないだろw
しかも、気分で定期更新。

572 名前:デフォルトの名無しさん :2006/09/05(火) 07:03:20
そのdllはアプリケーションと一緒に配布しないといけないものなのに
配布しない奴が悪いんだろう。

573 名前:デフォルトの名無しさん :2006/09/05(火) 07:08:44
>>572
普通の感覚が失われつつあるがそのシステムからいって頭おかしいけどなw

574 名前:デフォルトの名無しさん :2006/09/05(火) 07:49:55
>>571
GameSDKの頃から統括してた人はDX7で辞めちゃって違う人になってる。
だからDX8でごちゃごちゃし始まって、DX9なんて好き勝手やってる状態。
周りに振り回されてその場しのぎで仕上げるのがバレバレ。

575 名前:デフォルトの名無しさん :2006/09/05(火) 08:14:06
こう言っちゃなんだが、DirectX7までだって非道かったけどな
特に5や6までは、初期化すら出来ない奴が多かったろう

576 名前:デフォルトの名無しさん :2006/09/05(火) 09:42:18
>>575
いやそうではなくて
一貫して現場出身の人間が統括していたのがDX7までってこと
だから気難しいSDKだったと思う

577 名前:デフォルトの名無しさん :2006/09/05(火) 10:28:33
ごちゃごちゃし始めたのは、なにも8からじゃないわな

578 名前:デフォルトの名無しさん :2006/09/05(火) 10:47:57
ごちゃごちゃ所か、8以降は、もの凄いすっきりして来ている様な。
良くD3DXのアニメーション周りと、そのDLLの件が引き合いに出されるけど、俺にとってはどちらも瑣末だな。

579 名前:sage :2006/09/05(火) 12:01:13
シーン(カメラアニメーション、ライトアニメーション)付の人物モデルを
DirectX9で表示したいと思っていて、モーション付の人物モデルは.xファイル
で吐き出そうと思っているのですが、カメラやライトのアニメーションデータ
や背景データ(ビルボードで作成予定)はどのような形式で吐き出せばよい
のですか?(一般的なのですか?)ちなみに、3DSMAX8を使用します。
初めてDirectXを使って3Dプログラミングをやるため、どのような形式でデータ
を用意すればよいかわかりません。
どなたか教えていただけないでしょうか?

580 名前:デフォルトの名無しさん :2006/09/05(火) 13:57:44
DirectSoundで
コンパネで設定されているExclamationとかQuestionの設定を取得して鳴らせますか?

581 名前:デフォルトの名無しさん :2006/09/05(火) 16:57:01
助けてください。

Xファイルに頂点2点設定して
SDKのサンプルViewerでその線分を見ることは可能ですか?

582 名前:デフォルトの名無しさん :2006/09/05(火) 17:34:07
マルチウザ


はわわわわわ

583 名前:デフォルトの名無しさん :2006/09/05(火) 17:47:39
>Xファイル

584 名前:デフォルトの名無しさん :2006/09/05(火) 19:01:06
現在directXでキャプチャするソースをsdkについていた playcapを弄って書いています。
開発環境は VS.NET2005で、現在までに
フレームのサイズを落としたりインターレースの解除はできたのですが
fpsの変更というのがよくわかりません。

ヘルプを見ると
VIDEOINFOHEADERでできそうだったので

VIDEOINFOHEADER *pVih = (VIDEOINFOHEADER*)pmt->pbFormat;
pVih->AvgTimePerFrame = 666667;//フレームレート決定(100ナノ秒)
pConfig->SetFormat(pmt);

こんな感じで書いて見ましたが全く駄目だったので
IAMTimelineを使い

CoCreateInstance(CLSID_AMTimeline, NULL, CLSCTX_INPROC, IID_IAMTimeline, (void **)&g_pAmtime);
g_pAmtime->SetDefaultFPS(10);
みたいな感じで書いてみました。

がこちらも全く駄目した。

フレームレートを変更するにはどうしたらいいのでしょうか?




585 名前:デフォルトの名無しさん :2006/09/06(水) 16:08:42
>>584
http://www.microsoft.com/JAPAN/developer/library/jpdx8_c/ds/ref/iface/IAMStreamConfig.htm#SetFormat

「全く駄目」じゃ進歩がないよ。エラーコードをちゃんと調べなきゃ。

586 名前:デフォルトの名無しさん :2006/09/06(水) 17:28:06
DirectXを使ってプログラミングしているんですが
DirectXで描画した上にボタンやエディットボックスなどを表示できなかったのですが
ゲームなどで見かけるボタン等は自分で実装するものなのですか?
それとも自分のやり方が悪かったのでしょうか?

587 名前:デフォルトの名無しさん :2006/09/06(水) 18:00:06
単純な設定ミスと自己解決しました
スレ汚しごめんなさい

588 名前:デフォルトの名無しさん :2006/09/06(水) 22:07:14
>>586
いろんなアプリがあるからなんとも言えん。
もうぶっちゃけゲームゲームした画面なら99%が自前だと思うよ。
たまにWin32APIのを使ってるのもあるけどゲームアプリでイベント処理するの面倒臭いw

589 名前:デフォルトの名無しさん :2006/09/06(水) 23:09:48
>>586
コンフィグとかだけWin32APIで作って
本編のゲームと独立してるやつって結構ない?同人ゲーとか

590 名前:デフォルトの名無しさん :2006/09/07(木) 00:00:59
>>589
ああ、なんか主人公の名前入れるところで
日本語入力ができる(IME?)ゲーム画面みたことあるなぁ。
ちゃんとイベント処理すりゃできるんじゃねぇ?(とか、よくわからんけどテキトーなこと言ってみるw)
でも、俺だったらゲーム画面に取り込むようなことしないで設定なら
泥臭いMFCウィンドウだしちゃうかな。
主人公の名前ぐらいは用意したほうが雰囲気いいとおもうが、
さすがにIPやら解像度設定までゲーム画面で頑張らなくていいと思う。

591 名前:デフォルトの名無しさん :2006/09/07(木) 07:44:21
>>586
コントロールのためのWM_があるんでそれ拾えば対応できるよ
ソースはネットに転がってるからお好きなのどうぞ

592 名前:デフォルトの名無しさん :2006/09/07(木) 14:49:38
>>586
DXUTを解析すればいい

593 名前:デフォルトの名無しさん :2006/09/08(金) 02:53:44
これから目標のDirectXを学び始めようと思っています。
最低限動くソースに自分で追加改良して習うより慣れろ的なやり方で学びたいのですが
どこのサイトを見てみても2、3年前のものばかりでソースをそのままコピペしたものでは
ためしにコンパイルすることもできません。
dswごと入ったサンプルならもちろんコンパイルできるのですが、
これを編集していって慣れていくやり方で将来オリジナルのものを
作れるようになるものなんしょうか?
できれば勉強方法のアドバイスとかが欲しいです

594 名前:デフォルトの名無しさん :2006/09/08(金) 02:58:34
工学社からIO別冊でDirectX9の本が出てる。
必ずしも良書とは言いがたいし、DX7くらいの頃から内容も大して変わってないが、
高価いもんじゃないし、CDにソース付きでサンプルが大量に入ってる。
入門って意味ではそれなりにオススメ。

595 名前:デフォルトの名無しさん :2006/09/08(金) 03:16:23
拾ったシャキーンのソースをコンパイルしたらd3dx8.hが無いと起こられたのですが
DirectX9ではコンパイル不可なのですか?

596 名前:デフォルトの名無しさん :2006/09/08(金) 05:00:51
(`・ω・´)

597 名前:デフォルトの名無しさん :2006/09/08(金) 09:20:49
>>593
お金かかるが、>>594の方法にしなさい。
どこのサイトの話かわからんけど、ソース公開してるのにコンパイルできないんじゃ
DirectXというよりWIN32API(もしかしたら言語レベル)とかの知識が全然足りないと思う。


598 名前:デフォルトの名無しさん :2006/09/08(金) 14:40:07
言語レベル以前に、ツールレベルで知識が足りないように見えるがね
コピペして出来たソースをプロジェクトに追加する方法すら分かってない気がする

599 名前:デフォルトの名無しさん :2006/09/08(金) 14:56:32
大文字英数字使うプログラマの助言は、なにか安っぽいなw

600 名前:デフォルトの名無しさん :2006/09/08(金) 15:31:26
>>599
ほとんどがアウト

601 名前:デフォルトの名無しさん :2006/09/08(金) 15:46:04
サンプル云々以前にチュートリアルをやればいい。

602 名前:デフォルトの名無しさん :2006/09/08(金) 15:54:23
工学社の本のサンプルこそ
そのままではコンパイルできないんじゃなかったっけ?

>>593はよく調べていないだけ。ちゃんと調べれば出てくる。

603 名前:デフォルトの名無しさん :2006/09/08(金) 16:03:49
今からDirectX9をやるならこの本が一番良いな
ttp://www.amazon.co.jp/gp/product/toc/4798013161/

工学社の奴は9.0cに対応していない

604 名前:593 :2006/09/08(金) 17:30:37
いろんなアドバイスありがとうございます。
Cを一通りとC++のクラスだけやった程度ではまだまだ
初心者の域にすら入れていなかったようです・・・。
もう一度勉強し直して初心者の域まできてからまたよろしくお願いします。

605 名前:デフォルトの名無しさん :2006/09/08(金) 17:35:00
いやぁ一時的にVC6.0を捨てようと思ったぜ・・・

もぅ.NETなのか・・・。
始めてVC見たとき感動したのにな・・・orz

606 名前:デフォルトの名無しさん :2006/09/08(金) 19:16:48
>>599
大文字/小文字と全角/半角を混同する方も大差ないと思うw

607 名前:デフォルトの名無しさん :2006/09/08(金) 21:07:45
>>604
君の言葉どおりだとC++はクラスだけだとしても、Cは使えるんだよな?
だったら、VC++EE2005とDirectX9SDKをDLすれば、とりあえず環境はバッチリ整うぞ。
無料だし。俺も同じ環境でやってる。

608 名前:デフォルトの名無しさん :2006/09/08(金) 21:22:51
頭の中の環境が整ってない

609 名前:593 :2006/09/08(金) 22:01:57
>>607
本当にいろいろありがとです

自分もVC++EE2005でC/C++の勉強してまして、そろそろDirectXの勉強もしてみたいと思い初め
DirectX9SDKとPlatform SDKも導入したので環境の方はばっちりなんですが>>608のとおり頭の方が・・・。
とりあえずいろんな解説サイトを周って見たもののサンプルはver8で作られたソースだったり、
そのままコンパイルしても突然増えたたくさんのヘッダとライブラリに関するエラーが続出して唖然としてばっかりです。
ツールの知識もディレクトリの設定やらリンカ→入力の設定など基本的なことしかわからないので
自分では対処もできそうにないのでまた最初から出直してこようと思った次第です。




610 名前:デフォルトの名無しさん :2006/09/08(金) 22:02:04
もうめんどうだしDXライブラリとか使っちゃえよ

611 名前:デフォルトの名無しさん :2006/09/08(金) 22:22:23
もうDirectX直いぢりは素人にはおすすめできんな。
仕事にするのでもなければ、大人しくライブラリ使ったほうが賢いと思う。

612 名前:デフォルトの名無しさん :2006/09/08(金) 22:26:41
ライブラリの楽なところは、Dx周りがバグってても掲示板で直せっていうだけで直るからな。

613 名前:593 :2006/09/08(金) 22:44:03
ホントにいろんな助言いただいて恐縮です。
実はここ↓のページで勉強しようとしていたときにライブラリ使ってやっていたのですが
ttp://ponk.jp/el/index.php?page=0
型が違うとエラーが出まくりでして・・・。どうもVC6時代のものだと最近のコンパイラでは
厳密に判断し過ぎて型チェックでエラーが出るとかなんとか。

もうホントどうしようもねーな俺・・・


614 名前:デフォルトの名無しさん :2006/09/08(金) 22:54:50
型は分かるが、CのI/O周りでエラー出すのはマジウザイ

615 名前:デフォルトの名無しさん :2006/09/08(金) 23:31:22
>>609
とりあえず、ウィンドウ出すだけのソースとかコピーしてみれば?
あれは毎回コピペだから変わんねーし。

それすらもコンパイル通せないんだったら、素直に本を買うといい。

616 名前:593 :2006/09/09(土) 00:28:01
>>615
ttp://www.shader.jp/xoops/html/masafumi/ready2.htm
このソースをコピペしてやってみましたが結局無理でした。
絶対的に知識がないこともわかり明日から書籍で勉強する決心もつきました。
結局出たエラーがこれ↓だったのですがエラーの原因だけ教えていただけないでしょうか。
たくさんやらかしてしまったスレ汚しはこれで最後にしますのでどうかよろしくお願いします
ttp://newsstation.info/up/img/ns12975.htm

617 名前:デフォルトの名無しさん :2006/09/09(土) 00:37:55
まんま。
文字コードセットをUNICODEにしてる。
文字列定義してるところにLつけてL"ぬるぽ"みたいにするか、
マルチバイト文字使用に切り替える。
VC2005とかEEだとUNICODE使用が標準なんで、少し前のソースは
そのままだとビルド通らないことは結構ある。

618 名前:デフォルトの名無しさん :2006/09/09(土) 00:47:36
>>616
つーか、超親切なエラーがでてるじゃん…

>>617の方法とか、TEXTマクロつかうとか。
この辺は自分で具ぐれ。

619 名前:デフォルトの名無しさん :2006/09/09(土) 01:40:45
>>616
ソースまるまるコピペじゃ力つかないよ。
他の人も言うようにウィンドウ作成から地道にやるべし。
ドキュメントのチュートリアル1オススメ
ウィンドウ表示できたらキャラクタ描画とかキー入力とか一つずつ入れていく。

620 名前:デフォルトの名無しさん :2006/09/09(土) 02:11:17
そうそう。
一見、わかりきった作業でもやってみなきゃわからんもんさ。
とくになんもかんもわからんときは、今わかってるつもりのものが
実はわかってなかったって場合が多い。

完全にブラックボックス扱いならまだしも、
触らなきゃいけない部分でおぼろげに見えてるだけのものなら一度は組んでみるべき。

621 名前:デフォルトの名無しさん :2006/09/09(土) 02:13:23
まあ、根気が続けばの話だがなー。
作りたいゲームがあるなら、DXUTとかをわけもわからず使うのも有りだろ。
細かなところを自分で書くのも、それはそれでまあまあ楽しいが。

622 名前:593 :2006/09/09(土) 02:46:45
>>617,618
このことがわかっただけでほかのエラーがぐっと減りました・・・。
やっぱり基礎から地道にですね・・。
大学生は暇なんでがんばってきます!


623 名前:デフォルトの名無しさん :2006/09/09(土) 03:08:41
>>622
プログラミングに関しては何事も経験だ。がんばれー!

624 名前:デフォルトの名無しさん :2006/09/09(土) 07:36:49
目的にもよるんだよなぁ。
DirectXを習熟するのが目的ならWindowsAPIから色々と調べて、
いずれは自前のライブラリを・・・・って感じだろうけど、
ゲームを作るのが目的ならありもものライブラリ引っ張ってくる方が
はるかにいいわけだし。
DirectXをまじめに習熟なんてゲーム作るよりまんどい。

ゲーム作るために自前ライブラリってパターンはほぼ確実に途中で投げるな。

625 名前:デフォルトの名無しさん :2006/09/09(土) 13:01:54
だな。
どうしてもゲーム作りたくて、最低限のスキルが欲しいなら、
いっそプロになってしまうのに限る。
毎日画面に向き合ってりゃ、その程度のスキルは嫌でも身につく。
ゲーム作る気力はごっそり萎えるが。

626 名前:デフォルトの名無しさん :2006/09/09(土) 23:51:36
DirectXを使った、チャットアプリを作りたいのですが、
参考になるサイトってありますでしょうか?

627 名前:デフォルトの名無しさん :2006/09/10(日) 00:12:05
ソース丸パクリできるレベルで参考になるサイトは知らない

628 名前:デフォルトの名無しさん :2006/09/10(日) 02:27:06
>>626
そもそもチャットのどこにDirectXを使いたいのか。

629 名前:デフォルトの名無しさん :2006/09/10(日) 03:01:01
頂点バッファを使った描画で、DrawPrimitive時に増えたVRAMを解放するにはどうすればいいのでしょうか?

630 名前:デフォルトの名無しさん :2006/09/10(日) 03:52:40
頂点バッファを開放しろ。
参照の期限はドライバだけが知っている。
管理しようと思うな。

631 名前:デフォルトの名無しさん :2006/09/10(日) 08:09:30
>>628
チャット画面とは別に3Dのおねぇさんが横で踊ります。
ここにDirectXを使います。
相手のレスを解読して反応を返します。

(例)
「こんにちは、いやー今日は・・・(略)・・・でしたよ」
→「○○さん、今日は機嫌がいいみたいだね!」

という感じです。
また、レス情報に付加して自分の状態を伝えるたり、ファイルを付加することもできます。

(例)
「こんにちは、いやー今日は・・・(略)・・・でしたよ」<state:楽>←感情コマンド(付加するとこっちの状態を伝える)
→「○○さん、今日は機嫌がいいみたいだね!」

「ちょっとみせたいものが・・・」<file:C:\Doc\bbbin.bin>←ファイル添付コマンド
→「はーい、○○さんから!贈り物!いつものところにおいておくね!」

というアフォなアプリケーションです。こっちは正直、キャラ萌え狙いでしょうか?
また、オプションで切り替えて画像チャット(画像掲示板のようなものです。レスといっしょに画像が送れます。)もできます。

と、いう仕様です。

632 名前:デフォルトの名無しさん :2006/09/10(日) 08:39:25
>>631
それはチャット部分とDirectXを使う部分に分離できるから
DirectXを使ったチャットと質問する意味がない。
別々に作って糊で張り合わせればいいだけ。

633 名前:デフォルトの名無しさん :2006/09/10(日) 09:15:59
チャット程度ならWinSock使ってTCP/IPで通信すりゃええ

634 名前:デフォルトの名無しさん :2006/09/10(日) 10:57:17
>>632
そうだな、「DirectX を使った、3Dのおねぇさんが踊るアプリを
作りたいのですが、」の方が回答者も真剣になると思う。(w

635 名前:デフォルトの名無しさん :2006/09/10(日) 11:03:09
626 = 某社の奴

このチャットは特典としてつく奴だろ

636 名前:デフォルトの名無しさん :2006/09/10(日) 11:47:37
>>635
くやしく

637 名前:629 :2006/09/10(日) 14:26:53
>>630
ありがとうございます。

638 名前:デフォルトの名無しさん :2006/09/10(日) 18:08:53
>>631
きめぇ・・・

639 名前:デフォルトの名無しさん :2006/09/10(日) 21:27:14
描画について質問させてください。
DirectXでSetRenderTargetを用いて、
BackBufferではなくCreateTexture関数を用いて生成したテクスチャーに
シーンを描画したいのです。

しかしながら、その際Zバッファーが適用されずポリゴンの描画順序が
おかしくなってしまいます。
CreateTextureを用いて生成したテクスチャーにZバッファーを適用
する方法はあるのでしょうか?どなたかお知恵を貸してください。

640 名前:デフォルトの名無しさん :2006/09/10(日) 21:35:22
>>639
俺は何も考えずにSetRenderTarget使ったら
勝手にバックバッファと同じZバッファが使われたけどな・・・

たぶん前の値が残ってるんだと思うからZバッファをクリアしてみたら?


641 名前:デフォルトの名無しさん :2006/09/10(日) 22:41:16
IDirect3DDevice9::SetDepthStencilSurface()

基本的にレンダリングターゲットを変更した場合はZバッファも設定しなおし。
Viewportも設定しなおす方がいい。

SetRenderState()でZ関係の設定も再設定すると安心。

デバイス生成時にZバッファ自動生成だとどうなるかワカラン。


642 名前:639 :2006/09/10(日) 22:56:50
で・・・できたー!テクスチャーにZバッファーを適用出来たよっ!
ご指摘された部分に加えて、テクスチャ生成時、サーフェイス生成時の
バックバッファと同じサイズに調整しなければならなかったようです。

640さん、641さん、ありがとうございます!

643 名前:デフォルトの名無しさん :2006/09/10(日) 23:03:24
同じサイズではなく、同じサイズ以上なら問題ない。

644 名前:デフォルトの名無しさん :2006/09/11(月) 00:18:34
小さいサイズでもViewportがサーフェイス内に収まってたら平気じゃないっけ?

645 名前:-403- :2006/09/11(月) 00:35:54
DirectX9の最新バージョンをインストールしたいのですが、自分のPCが清規Windowsか
いわれます。
どうにかダウンロードする方法教えていただけないでしょうか?・

646 名前:デフォルトの名無しさん :2006/09/11(月) 00:38:58
ダウンロード版に帰れ。
それが嫌ならMSに金払え。
いずれにしてもこのスレには帰ってくるな。

647 名前:デフォルトの名無しさん :2006/09/11(月) 00:42:31
こういうところで堂々と違法ソフト使ってますと書くのもすごいな

648 名前:デフォルトの名無しさん :2006/09/11(月) 06:35:50
>>645
>どうにかダウンロードする方法教えていただけないでしょうか?

正規版買えばいいんじゃね?w

649 名前:デフォルトの名無しさん :2006/09/11(月) 08:36:31
DirectXがWinが正規か判断するとは思えん。

650 名前:デフォルトの名無しさん :2006/09/11(月) 09:47:46
Microsoftのサイトが判断してるんだよ。
Windows UpdateやMicrosoft Updateなんかでも認証してないと
正規版使えハゲって言われる。

651 名前:デフォルトの名無しさん :2006/09/11(月) 09:49:30
じゃあその辺が突っ込んでくるActiveXをつつき回せば、
何を持ってして正規版か判別しているか解るから、
そこを適当に誤魔化してやれば回避できるって事だな。

652 名前:デフォルトの名無しさん :2006/09/11(月) 10:49:32
そんな面倒なことをしなくても普通に正規品を使えばいいだけの話。

653 名前:デフォルトの名無しさん :2006/09/11(月) 11:07:39
認証って何だ。シリアル入力のことか?
そんなのした覚えないけど。

654 名前:デフォルトの名無しさん :2006/09/11(月) 11:24:47
>>645
上のほうの 今すぐ確認 とか書いてあるところをクリックしたら確認される。

655 名前:デフォルトの名無しさん :2006/09/11(月) 11:25:32
>>651
それは不可だろ。

656 名前:デフォルトの名無しさん :2006/09/11(月) 13:39:43
つ[ スルー ]

657 名前:デフォルトの名無しさん :2006/09/11(月) 22:14:20
日給換算すれば、そんなの解析するより買ったほうが安上がりじゃないか?
まあ無職だというなら納得だけど。


658 名前:デフォルトの名無しさん :2006/09/12(火) 00:55:03
WindowsXPのProfessionalって3万くらいで買えなかったっけ?
Visual Studio Professionalの16万に比べたら安いもんだろ。

659 名前:デフォルトの名無しさん :2006/09/12(火) 01:19:04
無職でもなきゃ普通に買うだろうな。
その程度の買い物もできんモラル足らずの無職に恵んでやる知識なんかねーよ。
くたばれ。

660 名前:デフォルトの名無しさん :2006/09/12(火) 01:22:15
DirectPlayってデンジャラス?

661 名前:デフォルトの名無しさん :2006/09/12(火) 01:23:37
もうサポートされないって意味ではデンジャラス。

662 名前:デフォルトの名無しさん :2006/09/12(火) 01:27:41
>>661
d

663 名前:デフォルトの名無しさん :2006/09/12(火) 03:36:15
マルチテクスチャマッピングについての質問をさせてください。
テクスチャの上にアルファチャンネルを保持したテクスチャ(PNG画像を読込)を描画させることにかなり苦戦しています。
http://www.kurokichi.net/inside/up/src/up1881.jpg
この画像のように背景テクスチャ(Tex0)とα値保持のテクスチャ(Tex1)を合成して右端のを表示させたいのですが、
現状では白色が透明色になったり、元の画像では完全に透明の部分が黒で表示されたりします。
SetTextureStageStateに何の値を入れ組み合わせれば画像のような合成が出来るのでしょうか。

見た目はTex0をテクスチャにしたポリゴンの上にTex1をテクスチャにしたポリゴンを描画し、それを上から見たのと同じになります。
ただ、これだと処理が多くなるのでテクスチャの合成を試みています。

664 名前:デフォルトの名無しさん :2006/09/12(火) 04:06:23
3D(ライト無)で、テクスチャ付きで描画しようとしているのですが

struct LVERTEX_UV
{
D3DXVECTOR3pos;
D3DCOLORcol;
D3DXVECTOR2uv;

static const DWORDFVF;
};
const DWORD LVERTEX_UV::FVF = D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_TEX1;

と宣言しておいて
D3DXCreateMeshFVF( div*2, div*2, D3DXMESH_MANAGED , LVERTEX_UV::FVF , g_pd3dDevice , &m_pMesh );
で作成して
Lockして内部パラメータ設定して

g_pd3dDevice->SetTexture(0,m_tex);
m_pMesh->DrawSubset( 0 );
で描画してるのですが、テクスチャが表示されません。
形はきちんと表示されています。

ので座標系の設定は間違っていないと思います。
m_texもきちんとロード済みです。UVの範囲は0〜1.0fです。
何が間違っているのでしょうか?

665 名前:デフォルトの名無しさん :2006/09/12(火) 04:58:56
ポリゴンの姿勢制御で質問があります

ちょっと言葉で伝えるのが難しいのですが、
Y軸を45°傾けた状態でX軸を回転させるのではなく、
直接斜めに回転させたいのですがどうすればよいでしょうか?

1┌─┐2
3│ ..│4
5└─┘6

上の図で言うと、2-5で結んだ角度でぐるぐる回したいのです
よろしくお願いします

666 名前:デフォルトの名無しさん :2006/09/12(火) 06:40:27
>>665
一番楽なのがローカル座標を使うこと。
つまり、2-5の線を軸にもつマトリックスをもって普通に回転させる。

もう1つは、@Z軸に対して2-5がY軸に垂直になるように傾ける
→AY軸を回転させたいだけまわす→BZ軸に対して2-5が元の位置に戻るように傾ける。
具体的に>>665の図でいうと
@Z軸-45度傾ける(2-5をY軸に垂直に)
AY軸をまわす
BZ軸45度傾ける(2-5を元の位置に戻す)
ってやる。

667 名前:デフォルトの名無しさん :2006/09/12(火) 07:02:13
>>663
D3DTOP_BLENDTEXTUREALPHA

668 名前:663 :2006/09/12(火) 09:42:04
>>667
レスありがとうございます。
試してみましたが
http://www.kurokichi.net/inside/up/src/up1886.jpg
このように完全に透明な部分が真っ黒になってしまいます。

pDevice->SetTextureStageState(0,D3DTSS_COLOROP,D3DTOP_SELECTARG1);
pDevice->SetTextureStageState(0,D3DTSS_COLORARG1,D3DTA_TEXTURE);
pDevice->SetTextureStageState(1,D3DTSS_COLOROP,D3DTOP_BLENDTEXTUREALPHA );
pDevice->SetTextureStageState(1,D3DTSS_COLORARG1,D3DTA_CURRENT);
pDevice->SetTextureStageState(1,D3DTSS_COLORARG2,D3DTA_TEXTURE);
       ステージ0:Tex0(画像左上)    ステージ1:Tex1(画像左下)

これは間違っているのでしょうか?

669 名前:デフォルトの名無しさん :2006/09/12(火) 10:02:03
Zバッファについて質問なのですが、複数の描画先(レンダーターゲット)で
一つの深度バッファを使いまわすことは出来ないのでしょうか?

特定のモデルを描画したピクセルだけを別なテクスチャに抜き出したくて、
そのモデルを描画する際にレンダーターゲットに別なテクスチャを指定して、
深度バッファだけはいままで使用していたものを使いまそうとしています。

// 描画先の変更
LPDIRECT3DSURFACE9 rt;
newTexture->GetSurfaceLevel(0,&rt);
g_pD3DDevice->SetRenderTarget( 0, rt);
rt->Release();

//いったんクリア
g_pD3DDevice->Clear(0, NULL,
D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, D3DCOLOR_ARGB(255,0, 0, 0), 1, 0 );


//今まで使ってた深度バッファを適用
g_pD3DDevice->SetDepthStencilSurface( pZbuffer );

といったプログラムを組んでるのですが、描画先を変更する前の
深度バッファの値は新しい描画先では無視されてしまい、
レンダータゲット変更前に描画されたオブジェクトの影になる部分まで
表示されてしまいます。
深度バッファを使いまわすことは出来ないのでしょうか?

670 名前:デフォルトの名無しさん :2006/09/12(火) 10:43:57
>>666
ありがとうございます

D3DMATRIX m1, m2, m3;
D3DMatrixRotationZ( &m1, PI*0.25 );
D3DMatrixRotationY( &m2, y );
D3DMatrixRotationZ( &m3, -PI*0.25 );
m1 = m1*m2*m3;
という処理にしてみた所、上手くいきました、
45°ではなく任意の角度でやってみた所

D3DMATRIX m1, m2, m3;
D3DMatrixRotationZ( &m1, z );
D3DMatrixRotationY( &m2, PI*0.25 );
D3DMatrixRotationZ( &m3, -z );
m1 = m1*m2*m3;
こういう処理をした場合、zがどの角度であっても生成されるマトリクスは同じものになると思うのですが
実際には傾きが変化しつづけて相殺できません
回転軸を任意に回転させるにはどうすればよいでしょうか?

671 名前:デフォルトの名無しさん :2006/09/12(火) 12:03:41
>668
ARG1とARG2逆じゃね?

672 名前:663 :2006/09/12(火) 12:32:09
>>671
ありがとうございます
無事解決できました

673 名前:デフォルトの名無しさん :2006/09/12(火) 13:40:04
>>669
>無視されてしまい
D3DCLEAR_ZBUFFERしてるからじゃないのか
>>670
任意軸周りの回転行列を出すD3DXMatrixRotationなんとかっていう関数があるから探すんだ

674 名前:デフォルトの名無しさん :2006/09/12(火) 14:02:33
>>673
D3DXMatrixRotationAxisですね
ありがとうございます、希望の動きになりました

675 名前:デフォルトの名無しさん :2006/09/12(火) 14:18:26
>>664

676 名前:デフォルトの名無しさん :2006/09/12(火) 15:02:36
なんとなくはDirect3Dのサンプルプログラムや本買ってきて理解したんだけど、
複雑なモデルを表示させるには当然モデラーがいるんだよね?
そのへんがよく理解できてないんだけど、フリーウェアでDirect3Dでも読み込める
形式で出力可能なモデラーってあるんですかね?

677 名前:デフォルトの名無しさん :2006/09/12(火) 15:18:33
metasequiaが無料でxも出力する

けど、モーションはない

678 名前:デフォルトの名無しさん :2006/09/12(火) 15:23:41
>>677
さんくす。使ってみるよ。
でもモーションが使えないとかは残念な気がするけど、そこまで自分のスキルが
追いついてないからちょうど良いのかも。

679 名前:デフォルトの名無しさん :2006/09/12(火) 15:46:02
Metasequoia だった
http://www.metaseq.net/metaseq/index.html

680 名前:デフォルトの名無しさん :2006/09/12(火) 16:38:33
今はモーションまで吐けるフリーソフトが結構あるよ
Animadioとか、MotionWorksしかなかった頃に比べると便利になったもんだ
MotionWorksも良かったけど、フレームアニメーションだけだったしな

681 名前:デフォルトの名無しさん :2006/09/12(火) 16:44:21
kwsk

682 名前:デフォルトの名無しさん :2006/09/12(火) 18:53:33
親戚「大学どこよ?おいらっち早稲田なんやけど〜wwwwww」
俺「東大です」
親戚「・・・え・・・!?」
俺「東京帝国大学です。」
親戚「・・・う、うわあ・・・ああ・・・ああああああああああ(イスから転げ落ちる)」
俺「どうかしましたか?」
親戚「ああ、あふゥッ・・・ひいいい・・ガクガク(足が震える)」
俺「やだなあ、そんなにびびらないで下さいよ。ちょっと頭がいいだけです
  から^^」
親戚「ああ・・あ・うんっ・ああ・・・ビクンビクン(小水を漏らす)」
俺「ちなみに理3です。」
親戚「あんっ!ああん・・らめ・・・もうらめえ!ビクンビクン(射精する)」

683 名前:デフォルトの名無しさん :2006/09/12(火) 20:27:23
Windows2000のパソコンを親戚からお下がりでもらったので
ttp://www.amazon.co.jp/gp/product/4899771517/
この本で遊んでみようと思い、インストールしました。
コンパイル済みのサンプルを実行するとなにも起動せずに終了して、
exeと同じフォルダにログファイルが出来ていたのでそれを見ると
「0:DXライブラリは24ビットカラーモードに対応していません」
という文章が書き込まれていました。
このパソコンでは24ビットモード以上にはならないみたいなのですが、
どのようにプログラムを書き直せばうちのパソコンでも動くのでしょうか?
(16ビット以下には落としたくないです。)


684 名前:デフォルトの名無しさん :2006/09/12(火) 20:31:01
24ビット以上にならないのなら24ビットも使えない。

685 名前:デフォルトの名無しさん :2006/09/12(火) 20:41:27
>>683
16bitカラーで使うしかない。

686 名前:デフォルトの名無しさん :2006/09/12(火) 21:22:13
あの、法線マップとかいろいろ使うと
三角ストリップとかの高速化技術は意味なくなってくるものなんですか?
それはそういうものだとしてこのまま行っていいものでしょうか?

687 名前:デフォルトの名無しさん :2006/09/12(火) 21:25:43
>>681
メタセコイアで形を作ってmqoファイルに吐き出す
→RokDeBone2でmqoファイルを読み込んでモーションを作る
(→RDB2で複数のモーション合成)


688 名前:デフォルトの名無しさん :2006/09/13(水) 02:05:36
>>670
もう、解決したからどうでもいいっぽい?
でも、一応w

そのやり方だとY軸に垂直にしなきゃならんので
正方形なら必ず45度にしないといけないんだ

つまり、長方形だとすっげぇ半端な角度になったりする
まあ、D3DMatrixRotationAxisのほうがいいね(俺はその関数しらんかったけどw)

689 名前:デフォルトの名無しさん :2006/09/13(水) 20:00:28
>>681
mikotoデータを流用できるmikoto2x筆頭に
吐き出し部分書けば好きなデータも付けられるプログラマ向けのRokDeBone2、
αテスト中だけど一本で出来るMusket、
シェアで良いならエルフレイナも分かりやすくて良さそうだな
後はBlenderでも吐けそうだ。プラグイン誰か書いてたような

690 名前:デフォルトの名無しさん :2006/09/13(水) 23:09:05
初期化についての質問なんですが、
初期化の仕方によって、FPSって変わるものなんでしょうか?

書籍や、そこらのホームページに載ってる方法で、初期化したものは、
大体75FPSぐらいしか出ないのに、SDKのサンプルを利用したものだと
普通に100FPSを超えます(表示するものはポリゴン一個)

どこを弄ればこんなにも差が出るのでしょうか?
よろしくお願いします


691 名前:デフォルトの名無しさん :2006/09/13(水) 23:16:35
まさかとは思うが垂直同期とってるとかいう落ちはないよな?

692 名前:デフォルトの名無しさん :2006/09/13(水) 23:17:50
>>690
http://tpot.jpn.ph/t-pot/program/103_FPSFixing/index.html

レスした後で、「実はDirectX7SDKを使っています」とかいう攻撃を受けたぐらいじゃ俺は倒れない。

693 名前:デフォルトの名無しさん :2006/09/14(木) 00:01:04
>>691 >>692

ありがとうございます。
そのまさかの、垂直同期とってることが原因でした。
D3DPRESENT_PARAMETERS構造体のメンバーPresentationInterval
の設定をしなかったせいで、デフォルトの値0(D3DPRESENT_INTERVAL_DEFAULT)
になってしまい、垂直同期を行っていました。
そのため、D3DPRESENT_INTERVAL_IMMEDIATEを設定し、垂直同期しないように
した所、FPSが120ぐらいになり改善されました。

実際に、SDKのサンプルを見るとコメントに
↓こう書いてあったので、これで正解みたいです。
// For windowed, the framework defaults to D3DPRESENT_INTERVAL_IMMEDIATE
// which will wait not for the vertical retrace period to prevent tearing,
// but may introduce tearing



694 名前:デフォルトの名無しさん :2006/09/14(木) 00:13:57
Win98を無視するならフルスクリーンでならリフレッシュレート弄れるんだよなぁ

695 名前:デフォルトの名無しさん :2006/09/14(木) 00:44:25
>>686
> あの、法線マップとかいろいろ使うと
> 三角ストリップとかの高速化技術は意味なくなってくるものなんですか?

そんな質問をしているようじゃ、とても法線マップとか使えないから安心しな。


696 名前:デフォルトの名無しさん :2006/09/14(木) 01:26:34
ヒント:外積

697 名前:デフォルトの名無しさん :2006/09/14(木) 01:52:15
ストリップは単に頂点キャッシュの効率最大化が目的だしなー。
上に何張ろうと有効性は変わらないよ。

最近はもう少しすすんで、オブジェクトを外側から内側に書くよう
渦巻き状にストリップを進めるみたいだね。
こうすると無駄なフィルが減ってオクルージョンカリングの効率が向上し、
帯域保護に繋がると。
色々考えるもんだ。

698 名前:デフォルトの名無しさん :2006/09/14(木) 02:11:06
外積ってなんですか?

699 名前:デフォルトの名無しさん :2006/09/14(木) 02:20:41
法線マップとかを使ったときの負荷を考えると
ストリップ化した程度の高速化では焼け石に水。
とかいう意味でなら、>>686 も正解と言える。

外側→内側に描画するのはZテストで早期にはじくためにも
以前から言われてたことだけど、オクルージョンカリングがハード側で
行われるようになれば格段に速くなるかもね。

アルファブレンディングを考えると内側→外側なんだけどな(´Д`)

700 名前:デフォルトの名無しさん :2006/09/14(木) 06:48:59
俺もストリップ化なんてやらねー。
全然、速くなんてならない。
貼るものが固定だったときはそれなりだったけど
もうメッシュごとにテクスチャ切り替えまくって描画してるし
ストリップ化してもマテリアルが違うからほとんど結びつかない→ストリップ化してない状態とほとんど変わらない。

701 名前:デフォルトの名無しさん :2006/09/14(木) 21:17:49
C++(orC)/DirectXでゲームを作ってる人、エディタは何使ってる?
何かのパッケージを買おうと思うものの・・・・・・どれもそれなりの値段だからなぁ・・・・・

イマイチ踏み切れない俺

702 名前:デフォルトの名無しさん :2006/09/14(木) 21:27:10
>>701
VC++2005EEでいいじゃん。

703 名前:デフォルトの名無しさん :2006/09/14(木) 21:28:01
ee jumpを思い出した

704 名前:デフォルトの名無しさん :2006/09/14(木) 22:52:09
FPSを100くらいに抑えてある状態だと問題ないんですが
抑えないで300くらいの状態で動かすと一定間隔でがくっっとなってしまいます
何が原因なんでしょうか・・・
FPSを抑えてるときは問題ないことから
ハードウェアのほうがいっぱいいっぱいなのかな?と思うんですが
情報が少なすぎかもしれませんが、思い当たることがあればご教授ください

705 名前:デフォルトの名無しさん :2006/09/14(木) 22:58:54
>>704
時々でいいので、OSにも処理を戻してあげてください。
イベント残業が溜まってしまいますので・・・

706 名前:デフォルトの名無しさん :2006/09/14(木) 23:09:35
即レスありがとうございます
一応レンダリングが終わったらSleepしてたんですが・・・1だけ
ちょっと増やしたらその分FPSも落ちますが制限しなくても大丈夫になりました

707 名前:デフォルトの名無しさん :2006/09/15(金) 00:14:15
つーかFPSなんて60ありゃ十分だろう

708 名前:デフォルトの名無しさん :2006/09/15(金) 00:21:29
>>707
やだよ。
なんか最近75はほしいと思うようになった。

709 名前:デフォルトの名無しさん :2006/09/15(金) 00:29:45
FPS75を維持するってことは実際問題として
グラフィック的なクオリティはかなり妥協するってコトだぞ。

2Dゲームなら余裕だろうけど。

710 名前:デフォルトの名無しさん :2006/09/15(金) 00:38:34
>>709
結構すらすら動いてるよ。

711 名前:デフォルトの名無しさん :2006/09/15(金) 00:42:43
FPS75で3Dすらすら動くとか言ったら、どんだけポリゴンが少なくてショボイかがばれちゃうぞ

712 名前:デフォルトの名無しさん :2006/09/15(金) 00:48:46
>>711
60で動くもんは75でもだいたい動くよ。
カメラの設定が悪かったりデザイナが腐れミカンだと一画面にポリゴン敷き詰めすぎてよろしくない。
俺は、速度が出ないのって最適化とかグラボの処理速度より、
この辺のセンスが悪いことが原因の方が大きい気がするけどね。

713 名前:デフォルトの名無しさん :2006/09/15(金) 00:55:58
全部デザイナーのせいって言ってるようなものじゃねぇか....

714 名前:デフォルトの名無しさん :2006/09/15(金) 01:01:07
BumpとかHDRとかやってないなら十分出そうではあるが・・・
あとはゲームのシステムにもよるか。

715 名前:デフォルトの名無しさん :2006/09/15(金) 01:53:49
60FPSは半ば以上慣習的なもんだしなー。

ときに一応人間の筋反射は1/16秒前後が限界、
連続量の見切りだけなら1/100程度までいくらしい。

PCが速くなった分フレームレートを上げるのはいいんだが、
今度は昔に比べて遥かにメジャーになった液晶の反応速度の問題が出てくるな。
こっちの反応速度は高級品でもなければ実質50FPS程度。
それ以上にしたところで残像まみれで見れたもんじゃなくなる。
つーか下手すると回路の都合で信号を捨てられたりしてしまう。

75FPSあたりからフリッカフリーになるとは言うが、
それは走査線走らせてるモニタの話で、液晶とかでは関係ない。

あんまり速くしたところで、今度はノッキングの問題が出てくるし、
結局のところ自己満足の世界だな、今のところは。

716 名前:デフォルトの名無しさん :2006/09/15(金) 03:29:28
絶望した!垂直同期の話がまったく出てこない現状に絶望した!
ディスプレイが60回しかフレームの更新してないのに、200回300回更新して何の意味があるよ。

717 名前:デフォルトの名無しさん :2006/09/15(金) 03:34:45
75以上出るデバイスはあるのと、操作自体の感度は上がるので。
まあ、絵に描いた餅だけどな。

液晶は大抵60固定で、実質30未満なんてのもザラだけど。
そんなんでも普通に使うには困らんからなー。

718 名前:デフォルトの名無しさん :2006/09/15(金) 06:15:53
別に液晶の話なんてしてねーし。
ただ、いいディスプレイ使ってる奴にはいい画でプレイしてほしいね。ってだけ。

719 名前:デフォルトの名無しさん :2006/09/15(金) 09:06:27
TVも60くらいじゃなかったけ?
FPS30で何が困るっちゅうんだろう?

720 名前:デフォルトの名無しさん :2006/09/15(金) 09:28:50
そもそも映画はFPS24だしな。
垂直同期に関してはソフト側でリフレッシュレートを
Win9X系では自由に変えられなかったから
その流れでWindowsはタイマーで管理って流れがあるし。

いっちゃ何だが今は液晶の方が利用者は多いと思うぞ。
FPS75だと半分に落とすことが出来ないしいっそ80で作ったら?

721 名前:デフォルトの名無しさん :2006/09/15(金) 09:38:01
CRTほしんだけどな・・・・

722 名前:デフォルトの名無しさん :2006/09/15(金) 10:53:24
つーかハードごとに違ってメンドくせーから、DirectXが標準で60FPS、ディスプレイも60FPSを必ずサポートして
初期化で完全に同期するようにしてほしい。
それ以上の解像度は性能の高いものだけサポートされると。

コンシューマはこの点でうらやましい。

723 名前:デフォルトの名無しさん :2006/09/15(金) 12:31:22
>>717
> 75以上出るデバイスはあるのと、操作自体の感度は上がるので。
操作系の処理は別スレッドでやれよ・・(;´д`)


724 名前:デフォルトの名無しさん :2006/09/15(金) 13:02:39
FPSとかリフレッシュレートの話をすると、最後は宗教論争になるぞ。
警告はした、あとは知らん。

725 名前:デフォルトの名無しさん :2006/09/15(金) 13:55:54
アニメは24fps

726 名前:デフォルトの名無しさん :2006/09/15(金) 18:23:12
俺の携帯は5fps

727 名前:デフォルトの名無しさん :2006/09/15(金) 19:50:59
FPSを固定しなければすべて解決。

728 名前:デフォルトの名無しさん :2006/09/15(金) 21:46:13
それもそうだ
なぜ皆固定したがるんだ?

729 名前:デフォルトの名無しさん :2006/09/15(金) 21:54:09
じゃ、FPS非固定のゲーム作ってくれ。
リプレイ付きで。

730 名前:デフォルトの名無しさん :2006/09/15(金) 21:55:22
>>728
可変だと色々調節するの面倒だからじゃん。

731 名前:デフォルトの名無しさん :2006/09/15(金) 21:56:06
>>729
まだ、STG作ってんのか?w

732 名前:デフォルトの名無しさん :2006/09/15(金) 22:16:28
可変でもリプレイは普通に作れるゾ

733 名前:デフォルトの名無しさん :2006/09/15(金) 22:36:31
>>730
しずちゃーん、平成18年だよ? 平成3年の知識ひけらかすのやめてよー。

734 名前:デフォルトの名無しさん :2006/09/15(金) 22:37:01
別にユーザーの環境によって多少速度変わっても
ええんじゃね?と思う。
どうせわかんねえよ。
'60FPS'って適当に文字列を表示してたら。

バーチャとかアーケード筐体の対戦ゲームの開発者ならともかく

735 名前:デフォルトの名無しさん :2006/09/15(金) 22:54:13
>>734
甜菜現る

736 名前:デフォルトの名無しさん :2006/09/15(金) 23:12:40
FPSは固定した方が断然楽だからな。
可変(非固定)にすると衝突した時の計算とかスゲー大変。

>>734
可変=速度が変わる ってのは間違いだぞ。
FPS非固定っていうのは要するにカクカクな動きになるってことだ。
移動速度とかは変わらない。(変わらないようにしなくてはいけない)

737 名前:まさかこのスレでゲームのマジ話はないだろ :2006/09/15(金) 23:25:30
FPS可変なら、敵が弾幕撒いたときに回避が楽になるジャマイカ。

738 名前:デフォルトの名無しさん :2006/09/15(金) 23:34:17
>>737
オマエもか(;´д`)

739 名前:デフォルトの名無しさん :2006/09/15(金) 23:59:25
>>737
また馬鹿が一人。

740 名前:デフォルトの名無しさん :2006/09/16(土) 00:03:20
ヒント:名前欄

741 名前:デフォルトの名無しさん :2006/09/16(土) 00:20:14
固定にしてても描画が追い付かなければOUT(;´Д`)

742 名前:デフォルトの名無しさん :2006/09/16(土) 00:41:55
論点が違うのでOUT(;´Д`)

743 名前:デフォルトの名無しさん :2006/09/16(土) 02:21:58
固定で描画が追いつかなければ計算部分だけ落ちた分回せばいい

744 名前:デフォルトの名無しさん :2006/09/16(土) 11:23:43
>>743
それをやるために1フレの目標FPSを決めてそれを基準にするんじゃないか?

745 名前:716 :2006/09/16(土) 21:21:52
>>724
>FPSとかリフレッシュレートの話をすると、最後は宗教論争になるぞ。

分かってるんだけどきれーにスルーされてるのがむかついたもんでついな。

てか、皆泥沼を恐れてこの話題避けてるから、
D3DPRESENT_INTERVAL_IMMEDIATEにしたら速くなったぞやったーで終わっちゃう無邪気な初心者と、
カクカク動くゲームが量産されてるんだよ。DirectXローカルで閉じてるのならまだいいが、
最近はゲーム機やアーケードにまでそういう無頓着な作りのゲームが紛れ込んできてるからな。
たぶんDirectX出身のプログラマがアホやってるんだろう。

ディスプレイがハードウェア的に固定回数のフレームの刷新をしていることを無視して、
究極の映像美などありえんのだよ。

と燃料投下

746 名前:デフォルトの名無しさん :2006/09/16(土) 21:32:34
>>745
無頓着とかDirectXは関係ないだろう。
処理落ちなんてアーケードでは普通にあること。
2Dの頃は処理落ちしたらそのままゲームのスピードまで遅くなっていたんだから
今よりよっぽど無頓着だったかと。

747 名前:デフォルトの名無しさん :2006/09/16(土) 21:57:28
>>746
ちと論点がずれてるっぽい。
処理オチだけの話じゃないし、そういうレベルの話じゃない。

俺は >>716 が危惧してることも分からなくはないが、
垂直同期というのもを理解しようとしない人が多いのと
FPSには強い信念を持ってる人が強情なのと、とにかく議論が平行なんだよね。

基本的にコンシューマ機ではティアリングとか無視できないけど
PCではリフレッシュレートが一様じゃないのと、スペック的に
60FPSで回すこと自体が満足にできないマシンが多いから、諦められる。

知って実装してる人と、知らなくて理解をしようともしなくてゲームを作ってる
人がいることは、大変な危機感を抱く。本当はみんなに理解してほしい。

748 名前:デフォルトの名無しさん :2006/09/16(土) 22:18:01
理解してない人が心配ってのは、ようするに60fpsを下回るような
プログラムで満足しちゃうってこと?
常時48fpsくらいで回ってるみたいな。

749 名前:デフォルトの名無しさん :2006/09/16(土) 22:28:24
>>748
そういう心配じゃなくて、ハードの特性を理解しないままでいるってことが。

垂直同期が60/秒だったら、それ以上速いタイミングで画面を更新しても
意味がないっていうか、そもそも更新することができないってこととか。
垂直同期を無視した場合に、画面にチラチラ何かが横切ってる(ティアリング)
原因がわからないとか。

無知を心配してるんじゃなくて、「でも、まあ動いてるからいいか」とか
「こっちの方が速くなった」とかで満足してる人が心配。


750 名前:デフォルトの名無しさん :2006/09/16(土) 22:36:58
ユーザが同じハードを使うなんて
どこのゲームメーカだ?


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.