トップページgamedev
1001コメント372KB

DirectX総合スレ (Part5)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2006/09/08(金) 23:56:42ID:0F5D1JWX
言語はC++
他の言語使ってる奴はいますぐ消えろ
0639名前は開発中のものです。2006/10/09(月) 02:05:01ID:g6Zja+3M
>>638
そこまで決まってるんなら、なぜココで質問したのか?
0640名前は開発中のものです。2006/10/09(月) 13:09:14ID:rZ6e1XGZ
>>636
デフォルトの設定でフィルタかかってるビデオボードも結構多い
0641名前は開発中のものです。2006/10/09(月) 14:25:05ID:btmawUgC
まさか液晶使ってるってオチじゃないよな
06426362006/10/09(月) 14:43:29ID:3eM7knO2
レスあざーす

>>637
今のところそうです
文字とかはくっきり表示されてます
>>640
そうなんですか…
GDIだったらちゃんと表示されるからそっちにしようかな
>>641
えっ液晶だとだめなの?(汗
ノーパソなんですけど…
やっぱ古いノーパソでDirectX使ったゲーム作るのは間違ってたかな・・
0643名前は開発中のものです。2006/10/09(月) 15:02:44ID:rCZTHJGt
>>642
液晶はWindowed modeは別としてフルスクリーンにすると
標準の解像度以外だとぼやけるでしょ?

ってそういう話じゃなくって?
0644名前は開発中のものです。2006/10/09(月) 15:34:42ID:t31lpLSa
CRTモニタが減っているよな実際。
0645名前は開発中のものです。2006/10/09(月) 15:41:25ID:SdlywCzM
>>642
自分でボケないようにフィルタ設定すればいいだけだよ
0646名前は開発中のものです。2006/10/09(月) 16:35:44ID:ERqi5yh1
まぁ、あれだ
平面(じゃなくてもいいけど)ブラウン管ディスプレイを一台買え
ゲーム用に中古で
0647名前は開発中のものです。2006/10/09(月) 19:36:43ID:g6Zja+3M
> 自分でボケないようにフィルタ設定すればいいだけだよ
そういう問題なのか??

ノートとか液晶だと固定解像度だから、嫌でも引き伸ばされるはず。
まあ、液晶の解像度に合わせれば大丈夫って話なんだが。
0648名前は開発中のものです。2006/10/09(月) 20:33:37ID:L1UKMrZX
質問です。
左から右に行くほどどんどん透明になるテクスチャを表示したいんですけど
どうやるかわかりません。
スプライト->draw(〜,D3DCOLOR(r,g,b,a))でaの部分をいじるとテクスチャ全体
のアルファ値が変わるのでどうすればいいんでしょうか?
0649名前は開発中のものです。2006/10/09(月) 20:53:12ID:FuiQQBpr
最初からそういうアルファ値を持ったテクスチャを用意しておけば。
0650名前は開発中のものです。2006/10/09(月) 20:57:08ID:AkqysJFv
スプライト->drawでやるならpngでそういう画像用意した方がいいんじゃね?
あるいはサーフェスをロックして書き換えるとか
0651名前は開発中のものです。2006/10/09(月) 20:59:21ID:AkqysJFv
あ、かぶったw
あと用意するのマンドクセーけど、DDS使うとか
0652名前は開発中のものです。2006/10/09(月) 21:07:05ID:2wqecqNX
ID3DXSpriteを使わず、普通に頂点にαをセットすればいいだけ。
そんな物に頼っているから、その程度の簡単な処理すら出来ない。
06536482006/10/09(月) 21:48:49ID:L1UKMrZX
ddsを使ったらめっちゃ楽にできました。
ありがとうございました。
0654名前は開発中のものです。2006/10/09(月) 23:00:48ID:ujCaQUcv
>>652
無知は罪ですか?
0655名前は開発中のものです。2006/10/09(月) 23:05:49ID:EKjsv0Kz
罪ではないし、俺らにとってはどうでもいいコトだが。
仕組みの理解をしておくことは後々役に立つかも知れ無い。
0656名前は開発中のものです。2006/10/09(月) 23:15:43ID:vhVClLX6
そもそもDirectXに頼っている時点で素人がまともなゲームを作ることは論外
0657名前は開発中のものです。2006/10/09(月) 23:20:09ID:EKjsv0Kz
ではぷろふぇっしょなるな方はWindowsではGDIかOpenGLを使うのが常識ということですね。
0658名前は開発中のものです。2006/10/09(月) 23:26:17ID:btmawUgC
プロは必要に応じて最適なAPIを使い分ける

てゆうかDirectXに頼らないなら来なくていいよ>656
0659名前は開発中のものです。2006/10/09(月) 23:32:49ID:FuiQQBpr
コンピュータなんかに頼っている時点で(ry
0660名前は開発中のものです。2006/10/10(火) 04:07:10ID:VJTBF9e5
多細胞でしか生きていけない時点で(ry
0661名前は開発中のものです。2006/10/10(火) 05:51:58ID:xblaH6lZ
2chなんかに頼っている時点で(ry
0662名前は開発中のものです。2006/10/10(火) 08:00:49ID:j0PxGh8F
DirectXに頼っている時点で(ryって奴は確かにこのDirectX総合スレに来る意味無いなw
でも確かにD3DXに関してはもう頼れなくなったなぁ。
Oct2004まではD3DXに頼ってても何の不便も無かったのに・・・。
0663名前は開発中のものです。2006/10/10(火) 11:15:17ID:2TluMEZs
そうか、D3DX使わなきゃ不毛なdll問題起きないんだよな
そこに気づけなかった俺ヘボいぜ
調べたらD3DXCreate*Texture*()以外使ってないし、ddsのロードは別環境用に用意してあるし
面倒が一つ減ったぜヤッホイ
0664名前は開発中のものです。2006/10/10(火) 11:18:19ID:znCtx2eH
FXファイル周り、メッシュの最適化、ベクトル・行列クラスのアセンブラ化。
ここら辺が手放せないから、D3DX捨てるのは俺は無理だ。
どれも自分で書けないわけじゃないが、趣味プロだと他にやることが多すぎる。
0665名前は開発中のものです。2006/10/10(火) 14:31:39ID:2KxtSwlF
XBOXのソフト開発者に謝れ
0666名前は開発中のものです。2006/10/10(火) 15:40:47ID:VJTBF9e5
すいません

アニメーション付きのX Fileを読み込んで、複数アニメーションを切り替えて表示できる
ビューワってありますか?
DirectX Viewerではできないようなのですが!
0667名前は開発中のものです。2006/10/10(火) 15:42:57ID:0+hhpTt+
付属のViewerで普通にできる。
0668名前は開発中のものです。2006/10/10(火) 15:44:45ID:obWAIVxp
いやmviewで出来るんじゃね
それともDirectX Viewerってのは、mviewとは違うのか
mviewは少なくとも2004 Summerには入っているな
0669名前は開発中のものです。2006/10/10(火) 17:17:31ID:VJTBF9e5
最新版には入っていないようですね。
2004 summerをダウンロードしてみます。ありがとう。
早とちり氏ねよ。
0670名前は開発中のものです。2006/10/10(火) 17:53:26ID:KlJC55XH
付属のViewerでも読み込めないXファイルもあるが。
(自分で組んだプログラムでは動く)
0671名前は開発中のものです。2006/10/10(火) 18:31:07ID:VJTBF9e5
はいはい君は天才だ
DirectXを使わせたら右に出る者はいない良かったね
0672名前は開発中のものです。2006/10/10(火) 18:42:02ID:VJTBF9e5
?
0673名前は開発中のものです。2006/10/10(火) 18:54:10ID:2TluMEZs
ID:VJTBF9e5が不思議な挙動を見せている
0674名前は開発中のものです。2006/10/10(火) 18:56:03ID:4sC3iTHG
「今ひどい自演を見た」と書いていいものかどうか10秒くらい迷ったけど書かなかった
0675名前は開発中のものです。2006/10/10(火) 19:15:44ID:RntNEutj
しかたないので>>674の代わりに「今ひどい自演を見た」と書いてきた。
0676名前は開発中のものです。2006/10/10(火) 19:16:34ID:RntNEutj
>>675
おまえ正真正銘のバカだろwww
0677名前は開発中のものです。2006/10/10(火) 20:17:10ID:2KxtSwlF
言って欲しいの?
0678名前は開発中のものです。2006/10/10(火) 21:08:13ID:VJTBF9e5
君の口から聞きたいんだ
0679名前は開発中のものです。2006/10/11(水) 00:17:10ID:UlzNoGLX
行列Aと行列Bがあります。
行列Aに対して行列Cをかけて、行列Aが行列Bと同じになるようにしたいです。
その場合、行列Aに対してかけるべき行列Cはどうやったら求められますか。
0680名前は開発中のものです。2006/10/11(水) 00:19:37ID:trFIvV+b
>行列Aが行列Bと同じになるようにしたい
ムリ
0681名前は開発中のものです。2006/10/11(水) 00:19:54ID:UlzNoGLX
A=B;すりゃ良いじゃん・・・という事ではなく、行列Aと行列Bの差分の、行列C
そのものが欲しいのです。
よろしくおねがいします
0682名前は開発中のものです。2006/10/11(水) 00:21:06ID:UlzNoGLX
>>680
浮動小数点の計算誤差なんかは気にしないのですが
それでもムリですか?
0683名前は開発中のものです。2006/10/11(水) 00:24:19ID:rDqWvzjU
逆行列を掛けるだけ
0684名前は開発中のものです。2006/10/11(水) 00:25:36ID:UlzNoGLX
BにAの逆行列をかければCが得られるんですね
0685名前は開発中のものです。2006/10/11(水) 00:59:15ID:xBMfHgNK
A・C=B
→Inv(A)・A・C=Inv(A)・B
∴C=Inv(A)・B

でおk?
ようわからんけど・・・
0686名前は開発中のものです。2006/10/11(水) 01:01:45ID:1sECxPrk
いや無理なんじゃね?
逆行列は関係ない気がする。
そもそも行列で差分って何につかうんだ?
0687名前は開発中のものです。2006/10/11(水) 01:02:05ID:xBMfHgNK
たぶん間違えた。
A・C=B=A にしたいってことか。
難しいな・・・
0688名前は開発中のものです。2006/10/11(水) 01:23:10ID:U5zzbWGT
>>685でOKじゃないの?
0689名前は開発中のものです。2006/10/11(水) 01:36:32ID:RAcYP2kE
>>679
>>685で正解。

あとは、かける順序に注意。
それから、Aの逆行列が求まらない場合はCは一意とならない。
0690名前は開発中のものです。2006/10/11(水) 02:41:06ID:UlzNoGLX
>>685-689
ありがトン!
>Aの逆行列が求まらない場合はCは一意とならない。
はい、それはもう・・・
いや〜たすかりました
0691名前は開発中のものです。2006/10/11(水) 03:42:19ID:1ONjsgnr
>684が
「よつんばいになれば免許を返して頂けるですね」の改変に見えた俺はとっとと寝ろ
0692名前は開発中のものです。2006/10/11(水) 10:18:27ID:v2mXemUL
アッー!
0693名前は開発中のものです。2006/10/14(土) 01:39:42ID:pah3fq2S
ID3DXAnimationControllerでアニメーションをやっているのですが、
アニメーションの全長(時間)はどうやったら取得できるんでしょうか?
それから、アニメーションを構成するキーフレームがそれぞれ何秒のところにあるのか
を取得したいのですが、そういう手段はあるんでしょうか?
0694名前は開発中のものです。2006/10/14(土) 07:14:00ID:uIeEv6ah
>>693
ヒント:xファイルに書かれてる
0695名前は開発中のものです。2006/10/14(土) 13:23:21ID:sQHed/jL
そんな関数無い
0696名前は開発中のものです。2006/10/14(土) 14:05:43ID:E4qGi0KR
じゃフレームが出力できるxファイルを作る必要があるじゃん
メタセコで出来る?
0697名前は開発中のものです。2006/10/14(土) 15:14:09ID:urG12ahb
データ作った人間には何フレームあるかわかるだr
0698名前は開発中のものです。2006/10/14(土) 18:08:41ID:y7B7XSEr
ドラゴンボールのビームとか
ガンダムのビームとかの棒
どうやって描画してるの?
円柱モデルじゃないでそ
ビルボードは、点を中心のやつじゃないとダメだし
ぬう
0699名前は開発中のものです。2006/10/14(土) 18:41:11ID:urG12ahb
別に円柱でもそれっぽく見えればいいんだよ
0700名前は開発中のものです。2006/10/14(土) 18:47:28ID:rEq95AFn
6〜8角厨
0701名前は開発中のものです。2006/10/14(土) 19:46:32ID:5CSzso0u
>>698
六角柱だけをライトなしの真っ白でレンダしてぼかすんだよ
0702名前は開発中のものです。2006/10/15(日) 00:49:28ID:5NiZDasq
>>698
>ビルボードは、点を中心のやつじゃないとダメだし
んなわけない。
0703名前は開発中のものです。2006/10/15(日) 06:01:12ID:T/ORfnUd
>>698
Gems3に載ってるやつは?
長方形のポリゴンの端に三角形がついてるやつ
0704名前は開発中のものです。2006/10/15(日) 11:47:05ID:QPC2ckl/
>>698
「ビームの始点から終点までを結んだベクトル(以下、ビーム・ベクトル)」と
「カメラの位置からビームの端の点1つを結んだベクトル」の外積から
この2つベクトルに直角なベクトルを求める。
そのベクトルとビーム・ベクトルの外積からこの2つベクトルに直角なベクトルを求める。
このベクトルを法線ベクトルとする板ポリを描画するばOK

ただ、カメラの視線ベクトルとビーム・ベクトルが平行に近いと板ポリであることが
はっきりと分かってしまうので、それの対処方法は以下の2つがある。

1つは板ポリの両端に普通のビルボードをくっつける方法(>>703が言っている方法)と、
もう1つはカメラの視線ベクトルとビーム・ベクトルが平行に近いときには普通の
ビルボードに切り替える方法がある。
0705名前は開発中のものです。2006/10/15(日) 15:50:40ID:ncIQLCOH
光り系の加算テクスチャとかパーティクルも重要
0706名前は開発中のものです。2006/10/15(日) 17:38:15ID:lHeBAk5n
アクションゲームの連続攻撃とかみたいな、ボタンの連続入力判定って
DirectInputでやる場合やっぱりバッファリングでやった方がいいんですかね?
0707名前は開発中のものです。2006/10/15(日) 19:20:54ID:nExnDBy1
連続入力のときに1/60よりも速い単位でボタン入力を受け付けるならバッファリングだろうなぁ。
0708名前は開発中のものです。2006/10/15(日) 19:41:13ID:1awBMXDQ
ゲームコントローラは割り込みデバイスではないから、バッファリングでも
Pollを呼んだときしかデータ取得してないよ。
0709名前は開発中のものです。2006/10/15(日) 21:18:43ID:lHeBAk5n
バッファリングでやってもあまり利点無いってことですかね
とりあえず直接取得でやってみます
0710名前は開発中のものです。2006/10/16(月) 03:58:38ID:4O9ZIClz
1/60で連打できる奴以内だろ
0711名前は開発中のものです。2006/10/16(月) 11:47:04ID:akp78//4
連打機
0712名前は開発中のものです。2006/10/16(月) 11:47:31ID:1DRIsy8R
>>710
連打は無理だろうが、1/60フレーム風神拳とか入力できる変態はいるよなー

>>706
アクションとか格げーだとバッファリングしたほうが楽なような気がするが。
あとで、リプレイとかつけたくなるかもしれんし。
0713名前は開発中のものです。2006/10/16(月) 11:55:28ID:idfGKmvC
そういや、VF5のアキラの膝が
K+G→1フレーム後にG離す
だったな
個人的には最風よりむずい
0714名前は開発中のものです。2006/10/16(月) 12:33:55ID:dJZ5IjFP
VF5は知らないがいまだにそのコマンドなの?
VF2でバグでそのコマンドで膝が出てたけど。

>>712
バッファリングだろうと直接データだろうと、入力の履歴は
アプリケーションに組み込むもの。
リプレイ等にDirectInputの設定は関係ないと思うが。
0715名前は開発中のものです。2006/10/16(月) 12:47:06ID:uxehlBoP
VF1からの伝統なのにVF5のとか書いてるところを見ると
十代だろうな
0716名前は開発中のものです。2006/10/16(月) 14:17:08ID:idfGKmvC
26ですが
今、VF5やってるからVF5って書いてしまっただけ
0717名前は開発中のものです。2006/10/16(月) 16:54:09ID:cOg4Ko/j
>>714
入力の履歴を保持する場合って、ボタン毎に数回分の入力時間を保持してればだいたいOKかな?
0718名前は開発中のものです。2006/10/17(火) 00:01:47ID:Pi/yMn9O
>>717
最低でも、コマンド受付可能時間×FPS数だけは記憶させないとだめだろ。

すなわち、ファイナルターンパンチ(溜め60秒)×60FPSで記憶域3600個w
0719名前は開発中のものです。2006/10/17(火) 00:03:50ID:WKs3wEDm
VF1からの伝統なのにVF5のとか書いてるところを見ると
ちんぽが十代だろうな
0720名前は開発中のものです。2006/10/17(火) 00:11:33ID:xez2dOmh
>>719
元気そうでうらやましい… orz
0721名前は開発中のものです。2006/10/17(火) 00:40:46ID:MdWVn9/c
>最低でも、コマンド受付可能時間×FPS数だけは記憶させないとだめだろ。
正直な話、ボタンのため分をカウントしていれば、開始から発動までのバッファは要らない

「60秒押していたボタンを離した」と判定する、1フレーム分あればいい
波動拳コマンドの最長受付フレーム数が60フレームの場合なら バッファは60ほしい

これはバッファに入力を保存して、後からコマンドを検査する場合ね
0722名前は開発中のものです。2006/10/17(火) 01:41:52ID:b/Pd8rNN
>>718は語尾にwがついてるから冗談として極端な実装の例を挙げたんだろうけど、
>>721の実装は利点がよく分からんな。

>>721
> 「60秒押していたボタンを離した」と判定する、1フレーム分あればいい
その考えを押し進めると、
「押下したこと、離したこと、これらの時間間隔を記録すれば十分」ということになる。
だから、タメ時間を保持するためには、バッファの長さは60も要らなくて、2で済む。

最初に押下したときに、記録開始時刻からの時間を記録して、
次に離したときには、押下したときからの時間を記録して、
二度目に押下したときには、前に離したときからの時間を記録して、
……というように記録すればいい。
0723名前は開発中のものです。2006/10/17(火) 02:35:27ID:39vQ4qdS
入力が変化するまでの時間を記録する方式は、ワーストケースで
毎フレーム入力が変化していた場合に、結局は入力受付時間分の
バッファが必要になるという事実。
0724名前は開発中のものです。2006/10/17(火) 03:45:09ID:b/Pd8rNN
で?
0725名前は開発中のものです。2006/10/17(火) 05:27:56ID:q1fUJa/G
それでどうやってコマンド方式を判断するんだ?
0726名前は開発中のものです。2006/10/17(火) 09:47:10ID:WApPQYbc
カプコンは、ボタンを離したときもコマンド入力調べてる
SNKは、省略コマンドがある 21416→246
0727名前は開発中のものです。2006/10/17(火) 11:19:02ID:39vQ4qdS
>>726
それは省略コマンドじゃなくて、最初から246しか判定してないだけだよ。
むしろ発表されているコマンドが冗長なだけ。

ちなみにスト2のスクリューも斜め入力は必要なくて、4方向だけでいい。
0728名前は開発中のものです。2006/10/17(火) 12:48:13ID:PzA+Fa3w
つーかボタン入力制御も知らないような奴がなんでこんなところにいるんだ?
基本的な常識も知らないでゲームを作りたいとか論外なんだが。
0729名前は開発中のものです。2006/10/17(火) 12:59:54ID:Un2Q1nYv
そうだね、プロテインだね
0730名前は開発中のものです。2006/10/17(火) 15:35:29ID:ZPE2JhJ0
そう、常識だ。いや、常識だと多くの人々が思っている。
だが、実はCO2が地球温暖化の原因だという証拠は無いんだよ
0731名前は開発中のものです。2006/10/17(火) 15:55:16ID:HnFFLO9E
D3DLIGHT_DIRECTIONAL な光源で
メッシュを描画しているのですが
scale=1.0f な時 白→黒な球体が描画されるのですが
scale=10.0fな時 灰色になるんです

何の影響なんでしょうか?
0732名前は開発中のものです。2006/10/17(火) 16:36:26ID:g8mAqjlU
地球温暖化の影響



もしくは法線非正規化の影響
0733名前は開発中のものです。2006/10/17(火) 19:01:46ID:HnFFLO9E
dクス

拡大の温暖化を防ぐには
SetRenderState( D3DRS_NORMALIZENORMALS, TRUE );
すればいいのね

0734名前は開発中のものです。2006/10/17(火) 20:02:50ID:pnwQy0ug
RenderStateSet)TRUE, D3DRS_NORMALIZENORMALS(
が正解
0735名前は開発中のものです。2006/10/19(木) 11:57:34ID:KYn/6wBS
おっぱいスレで質問したけど、答えが返ってこないので、こっちにマルチします。

おっぱいをデフォメーションさせてたゆんたゆん揺らせるには
メッシュオブジェクトの乳の部分だけを属性バッファで指定して、さらにその頂点バッファにアクセスして
頂点を動かせばいいの?

↑でいいとしても、乳の部分だけの属性バッファを作る方法が分かんない。

ヒント、この辺読め、カス!だけでもいいので教えてください。
0736名前は開発中のものです。2006/10/19(木) 12:57:59ID:ux0Pyl4u
X-File?
だったら判定するためのデータ埋め込めばいいじゃない
0737名前は開発中のものです。2006/10/19(木) 14:02:37ID:Rx5m3XDA
人体にチップを埋め込まれる、の間違いだな
0738名前は開発中のものです。2006/10/19(木) 23:40:34ID:jUoY2I1o
モルダー落ち着いてモルダー
■ このスレッドは過去ログ倉庫に格納されています