DirectX総合スレ (Part8)
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/03/12(水) 16:15:18ID:Jo1vXsg5他の言語使ってる奴はいますぐ消えろ
■過去スレ
DirectX総合スレ
Part 7: http://pc11.2ch.net/test/read.cgi/gamedev/1179516297/
Part 6: http://pc11.2ch.net/test/read.cgi/gamedev/1163691532/
Part 5: http://pc8.2ch.net/test/read.cgi/gamedev/1157727402/
Part 4: http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/
Part 3: http://pc5.2ch.net/test/read.cgi/gamedev/1105333209/
Part 2: http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/
Part 1: http://pc5.2ch.net/test/read.cgi/gamedev/1083728025/
0452名前は開発中のものです。
2008/11/19(水) 00:41:27ID:U55fYg17たしかにWinGゲーでもDirectX1.0ゲーでもMSの推奨する組み方してたお行儀のよいソフトは今でも動く。
ところが実際はWin9x系前提で発売されていたDirectXゲーの多くがWinNT系で動かなくなったりした。
原因は色々だが、ひどいものだとサウンド周りの処理がSoundBlaster16依存してるとか、Win9x系で
見逃してもらっていたメモリアクセス絡みのバグがWinNT系で表面化したとか。(サーフェスロックし忘れ)
一番多いのがファイル入出力絡みのコードがFAT32に依存していてNTFSなシステムで動かないやつ
0453名前は開発中のものです。
2008/11/19(水) 04:38:26ID:OtJGUXTD0454名前は開発中のものです。
2008/11/19(水) 06:42:12ID:atHBMZoj0455名前は開発中のものです。
2008/11/19(水) 06:49:33ID:6ztnRgTS0456名前は開発中のものです。
2008/11/19(水) 07:46:22ID:ViCloH610457名前は開発中のものです。
2008/11/19(水) 09:29:00ID:Y7H+QDiA0458名前は開発中のものです。
2008/11/25(火) 01:33:12ID:8fK3fWHoクォータニオンでモデルの向きを管理しており、Slerpを利用して回転させようと思っています。
目標の向きは自分の位置に対する目標の位置を使用するのでベクトルだと思うのですが、
モデルの回転が最短ようにするには、目標のクォータニオンをどのように作ればいいのでしょうか?
それとも、元のクォータニオンから向きのベクトルを求め、外積を軸にして回転させたほうがいいでしょうか?
0459名前は開発中のものです。
2008/11/25(火) 08:49:37ID:T6onPkkQ最短ってどこから?現在の姿勢から?デフォルトの姿勢から?
あとupベクトルはどうでもいいのかによる
0460名前は開発中のものです。
2008/11/25(火) 21:36:24ID:8fK3fWHoワールド座標軸ではなくモデルに対してピッチ、ヨー、ロール回転します。(これは実装でできているので問題ないです。)
フライトシミュレーターをイメージしているので、ロールはせず、ピッチとヨーのみで目標の向きまで持って行きます。
目標の向きはわかっているので、ベクトルからクォータニオンを生成する必要があると思います。
なんだか自分で言ってて分けがわからなくなってきた。
どうもクォータニオン周りの制御がわかっていないので、他にもやりたいことがあるのですがそのたびに質問するわけにも行かないですね。
(向きを変えずにupベクトルを可能な限りワールド座標のどれかの軸に近づくように回転させる、など)
何か参考サイトがあればうれしいのですが・・・
0461名前は開発中のものです。
2008/11/26(水) 01:12:15ID:KSRTsz+W飛行機が一番得意な動きはローリングだと思うけど。
0462名前は開発中のものです。
2008/11/26(水) 01:49:04ID:yNQxm2umミサイルの誘導だろ?
いろいろやり方はあるだろうけど「比例航法」でぐぐってみれば?
0463名前は開発中のものです。
2008/11/26(水) 07:58:09ID:DDkykNTl飛行機の制御でロールがないなんてありえないしから違うんだろうし。
0464名前は開発中のものです。
2008/11/27(木) 18:03:43ID:6vE621eWDirect3D9 で、バックバッファを320x240でつくって、
スクリーンのサイズを640x480にしたのですが、
無理矢理拡大しているせいで画面全体がぼやけてしまいます。
IDirect3DDevice9::SetSamplerState で D3DSAMP_MAGFILTER を渡す方法は、
テクスチャ->バックバッファ のときのフィルタ設定ですよね?
バックバッファ->スクリーンでのフィルタはどこで設定すればよいでしょうか?
補完しないように設定したいのですが。。。
それとも、レンダーターゲットで生成したテクスチャに描画してから拡大するしかありませんか?
0465名前は開発中のものです。
2008/11/27(木) 18:16:31ID:zVQcu/j2バックバッファ>フロントバッファの補間方法は指定できない。
0466名前は開発中のものです。
2008/11/30(日) 11:27:51ID:OyLB96GRポストプロセスシェーダーに関して、
レンダーターゲットのサイズが大きいほど、ピクセルシェーダが処理するピクセルが増えるので
結果、負荷が増える、という解釈で合ってますか?
それに対して、ピクセルシェーダでフェッチするテクスチャのサイズの大小による負荷の違いはあるのでしょうか?
texture Tex;
sampler Samp = sampler_state{//略
tex2D(Samp, IN.tex);
↑Texに渡すテクスチャのサイズが256x256であろうが1024x1024であろうが
レンダーターゲットのサイズが同じならばフェッチされる回数は変わらない(フェッチされるテクスチャ座標は変わりますが)ので
ピクセルシェーダの負荷は変わらないと考えているのですが、これは合っているのでしょうか?
変わるのはメモリ使用量とサイズの違いによる解像度だけですか?
0467名前は開発中のものです。
2008/11/30(日) 11:39:46ID:Z547nq7Zレンダリングターゲットを大きくするとピクセルシェーダーの負荷も増えるが
テクスチャと同じ理由で帯域を圧迫するから急激に速度が落ちやすい。
0468名前は開発中のものです。
2008/11/30(日) 11:42:21ID:KLYmFB56動作困難なほど激重にならない?
0469名前は開発中のものです。
2008/11/30(日) 11:50:10ID:Z547nq7ZWRAPで2の累乗の大きさなら&演算1つで求まる計算だぞ。
0470名前は開発中のものです。
2008/11/30(日) 13:39:08ID:OyLB96GRありがとうございます。
そうだったんですか。どこにもない情報なのでためになります。
>>468
自分もそんな風に感じたことがあります。
別の要因かな・・・。
0471名前は開発中のものです。
2008/11/30(日) 13:50:26ID:OyLB96GRわざわざミップマップでテクスチャの解像度を切り替える必要ないですもんね。
ミップマップって射影後のzを見てサンプリングされるんでしたっけ?z/w?
0472名前は開発中のものです。
2008/11/30(日) 13:56:14ID:OyLB96GR0473名前は開発中のものです。
2008/11/30(日) 14:26:10ID:Z547nq7Z隣接するピクセルのテクセル座標との勾配
0474名前は開発中のものです。
2008/11/30(日) 17:10:56ID:KLYmFB56なるって
頼むやってみてくれ
尋常じゃねぇ重さになる
0475名前は開発中のものです。
2008/12/04(木) 22:49:43ID:IIMhMqlID3DXMatrixRotationYawPitchRollRHみたいな回転処理を作る必要があったりするの?
0476475
2008/12/04(木) 22:50:42ID:IIMhMqlI0477名前は開発中のものです。
2008/12/06(土) 05:38:01ID:srRxdFJ7複数サンプリングするときにサンプリング数を変えずに
サンプリング範囲が広がるだけで異様に重くなることがあったんだけど
こういうもんなのかな?
例えば一つのピクセルを描画するために、その描画ピクセルのUVを中心として
別テクスチャから半径rの範囲で6点サンプリングするとき
rの値が大きくなればなるほど重くなるような現象が起きた
アドレッシングモードをWrap、Clamp、Borderどれに変えても同じだった
0478名前は開発中のものです。
2008/12/06(土) 07:12:45ID:jieOLbiAスキンメッシュマルチアニメーションだと思います、tinyのmultiAnimationをいじくってます
0479名前は開発中のものです。
2008/12/06(土) 07:21:53ID:C5uhrN+X0480名前は開発中のものです。
2008/12/06(土) 07:42:16ID:j6JjVozi行列は理解してるとかいってただろ?
0481名前は開発中のものです。
2008/12/06(土) 07:50:24ID:jieOLbiAポジションはちゃんと合ってる
デバッグのやり方はよくわからないけど、変数を見てみたら文字化けがパネえ
Xファイルをメモ帳でいじりまくってるのが悪いのかな?
0482名前は開発中のものです。
2008/12/06(土) 07:58:07ID:j6JjVoziポジションあってるだ?あってないと断言してやる
変数見れてないのになんでわかるんだよ。
ハルモードとかを変える時に
それ以外も表示できてないんだろ?
0483名前は開発中のものです。
2008/12/06(土) 08:07:15ID:jieOLbiAだから変えまくったらどこを移動してるかわかる。
0484名前は開発中のものです。
2008/12/06(土) 08:11:42ID:j6JjVoziモードを変えてるんだから新たにアニメーションしてるんだろ
変えたときに、始めの場所でずっと同じのが見えてるんだろ
それとも違うのだというつもりか?
いじっくってないtinyでためせまずそこからだろ
0485名前は開発中のものです。
2008/12/06(土) 08:12:32ID:j6JjVozi0486名前は開発中のものです。
2008/12/06(土) 08:39:10ID:jieOLbiAtiny.xなら90度横になって真っ黒でアニメーション種類は1つだけでちゃんとアニメーションしてる
自作だとアニメーションしないのかな。
>変えたときに、始めの場所でずっと同じのが見えてるんだろ
移動はしてる。ちゃんと同じコースを行ってる
背景の色変えたけどなにも無かった
アニメーション描画しない理由って・・・?
0487名前は開発中のものです。
2008/12/06(土) 08:44:23ID:v6Lduw0u0488名前は開発中のものです。
2008/12/06(土) 08:48:12ID:j6JjVoziわかりきってるだろ、大体いじったファイルはどこいじりましたか?
数字しかないんだから数字を変えただけだろ
画面外に飛んでいってるんだろ
同じコースって意味がわかんないしな
アニメーションではその場での挙動じゃなかったか?
立ち位置変えてそこでアニメーション
で立ち位置のアニメーションで、立ち位置の移動の瞬間
アニメーション始まる前だけ見えてるんだろ
アニメーションしたら画面外にいってるんだろ
0489名前は開発中のものです。
2008/12/06(土) 08:55:22ID:jieOLbiAでも移動するようなアニメーションじゃないぜ、角度がちょっと変わるような10枚くらいのボーンアニメーション
Xファイル上げようか?それでそのまま\MultiAnimationにxファイル入れてL"tiny_4anim.x"のとこをそれに変えてるだけだからな
0490名前は開発中のものです。
2008/12/06(土) 09:01:39ID:jieOLbiA0491名前は開発中のものです。
2008/12/06(土) 09:03:31ID:TnnmPkif聞きたいんだがそれどうやって作った?
あとはxviwerだったか旧式ので見れるかためしてみ
0492名前は開発中のものです。
2008/12/06(土) 09:15:36ID:TnnmPkifてことは移動させないでアニメーションは表示できるだろ?
後はアニメーションがやたら早いな
xファイルに
AnimTicksPerSecond {
10;
}
小さい数字で書く
0493名前は開発中のものです。
2008/12/06(土) 09:26:18ID:jieOLbiAメタセコでモデル、rokdebone2でアニメーション付け、メモ帳でtiny_4animに似るようにテンプレとアニメーションセット名を変えました
テンプレでAnimTicksPerSecondを付けないどビューワーで見られなかったので消しませんでした
フレームとボーンの入り組み具合をtinyに似せるようにしました、メッシュを独立させるみたいなイメージです
気になってるのは、アニメーションキーにフレームの一番外側、1つ目が使われてないことぐらいです
頂点座標の並び方についてはわかる術もありません
0494名前は開発中のものです。
2008/12/06(土) 09:36:34ID:TnnmPkifmesh.viewで開いてanimation addで同じファイルを選択する
するとアニメーション追加されてそれぞれ動くのが見える
プロジェクトそのままでも表示できない
確かにおかしいな、すまん時間掛かりそうだ
0495名前は開発中のものです。
2008/12/06(土) 09:45:30ID:jieOLbiAどうぞ2ちゃんねらーのお力をお貸しください
0496名前は開発中のものです。
2008/12/06(土) 10:11:56ID:TnnmPkif自分で切り替えできて表示できればいいんだろ?
他のサンプルから始めたほうがよくないか
ちょっと見た限りではAnimationKeyの定義が違うな
0497名前は開発中のものです。
2008/12/06(土) 10:23:37ID:jieOLbiA切り替えでアニメできるならそれでいいけど、収穫なしで諦めるのはちょっと・・・
この際聞きたいけど、複数アニメーションと切り替えで複数のアニメーション出すのってどっちが軽く動くの?
>animationkeyの定義が違う
kwsk
0498名前は開発中のものです。
2008/12/06(土) 10:43:39ID:H7gLDNRDXファイルに問題はない
エスパーすると
境界球のサイズが半径75とか巨大なので
カメラが近すぎてモデルの中にめり込んでる
0499名前は開発中のものです。
2008/12/06(土) 10:57:00ID:jieOLbiAいけたぞ!!!!!!!!!!!!!!!!!!!!!!!!!
0500名前は開発中のものです。
2008/12/06(土) 10:57:48ID:jieOLbiA0501名前は開発中のものです。
2008/12/06(土) 11:06:43ID:TnnmPkif0502名前は開発中のものです。
2008/12/06(土) 11:08:28ID:H7gLDNRD0503名前は開発中のものです。
2008/12/06(土) 11:08:58ID:jieOLbiA上でも書いたけどそうだと思ってたんだよwおれwwwプログラムのww才能あるかもww
0504名前は開発中のものです。
2008/12/06(土) 11:13:00ID:jvHJrtvD0505名前は開発中のものです。
2008/12/06(土) 11:14:25ID:jieOLbiAすいません
0506名前は開発中のものです。
2008/12/06(土) 11:17:16ID:gOAp6PdO0507名前は開発中のものです。
2008/12/10(水) 08:26:57ID:hl9895eVogre3dのceguiみたいなの
0508名前は開発中のものです。
2008/12/10(水) 10:23:28ID:Lep6/wfQ0509名前は開発中のものです。
2008/12/10(水) 12:02:18ID:/t44/XCDサンプルに時々あるスライダーとか。そういうGUIライブラリ。
DirectX用のないかな?
ttp://www.cegui.org.uk/gallery/displayimage.php?album=random&cat=0&pos=-12
0510名前は開発中のものです。
2008/12/10(水) 12:29:42ID:6WmgiCfPDXUTでいいじゃない?
0511名前は開発中のものです。
2008/12/10(水) 14:02:22ID:zVU/Qh+5サンプルのCustomUIを見てみたら?
0512名前は開発中のものです。
2008/12/10(水) 14:17:05ID:/t44/XCDGLUTみたいにウィンドウ初期化とか、そこら辺省いてくるれる機能しかないと
思ってた。調べてみる。
0513名前は開発中のものです。
2008/12/11(木) 08:43:08ID:ekk69rdZ不安でないの?
0514名前は開発中のものです。
2008/12/11(木) 09:16:58ID:Ye5mnUYl変わったら改造するなり移植するなりすりゃいい
ころころ仕様の変わるDIRECTXにはよくあること
0515名前は開発中のものです。
2008/12/11(木) 09:25:08ID:maquBGCiいくつかの有名なライブラリには専用のGUIのってるのあるし。
0516名前は開発中のものです。
2008/12/11(木) 09:37:31ID:o8TGxkYW0517名前は開発中のものです。
2008/12/11(木) 09:38:56ID:maquBGCi0518名前は開発中のものです。
2008/12/11(木) 10:16:49ID:5B33Nrb10519名前は開発中のものです。
2008/12/11(木) 12:49:28ID:p/gFTgLVDXUTは一般で言われているところのライブラリというより
単なるソース群だから
SDKに付属してくるものの仕様が変わろうが使えなくなることはないし
今のDXUT路線から別のものに方向転換したとしても
使えなくなるものではないんだが
0520名前は開発中のものです。
2008/12/11(木) 14:08:08ID:YKpxZm+3自分で書いたソース以外信用しなかったり
車輪の再発明をして俺SUGEEしたがるような人種ばっかだから
0521名前は開発中のものです。
2008/12/11(木) 14:10:37ID:wOtKY2ap0522名前は開発中のものです。
2008/12/11(木) 14:30:35ID:bH7kHLoR0523名前は開発中のものです。
2008/12/13(土) 17:06:00ID:/PbeHoQkウィンドウモードにて強調モードをDDSCL_NORMAL
にしてるんですが、
アプリ終了後画像の左下のように 最上画面に描画されるのが
残るのです
Flipが原因かもしれませんが DDSCL_NORMAL にしてるので
問題ないと認識しているのですが、
他に何か原因などないでしょうか?
http://bull.s11.x-beat.com/src/bull62081.jpg
0524名前は開発中のものです。
2008/12/13(土) 17:52:33ID:/PbeHoQk0525名前は開発中のものです。
2008/12/13(土) 18:05:39ID:QQGllQVw0526名前は開発中のものです。
2008/12/13(土) 18:17:14ID:tZ+ZhXK1スペックの問題とかVRAMのリークとか
リソースの解放し忘れとか
アプリの終了とD3Dの終了のタイミングがおかしいとか
たぶんくだらない問題が原因だろう
もはやまともなレスは付かないと思うが
0527名前は開発中のものです。
2008/12/13(土) 19:25:44ID:1u8g2R1Vどこが違うか比べてみるんだ
0528名前は開発中のものです。
2008/12/13(土) 19:27:06ID:n0m4sj/UドライバかOS側の問題だろう。
0529名前は開発中のものです。
2008/12/13(土) 19:53:22ID:1u8g2R1VそれともDirect3Dでも起こるの?
0530名前は開発中のものです。
2008/12/14(日) 22:21:47ID:DRRW6jxIどうするのかなぁ、2D時代のようにテクスチャ貼りまくる
必要あるの?とか思ってヘルプ読んだらアドレッシングモード
っていうのがあるみたいだけれどハードにより制限が…みたいな
事が書かれていたんですけど、実際みんなどうしています?
0531名前は開発中のものです。
2008/12/14(日) 22:24:49ID:lqJQIjR0頂点バッファに貯めて一気に描画
使用数は設定できるはず
0532名前は開発中のものです。
2008/12/14(日) 22:26:20ID:lqJQIjR0たしか具合がいいのがCLAMP?
ところでこの時代にチップ張りたい奴ってまだいるんだ
就職作品でチップはってあったら正直嫌な顔しちゃうぜ俺
0533名前は開発中のものです。
2008/12/14(日) 22:57:55ID:gU1KqvRJ繰り返しにしたいならwrap
0534名前は開発中のものです。
2008/12/14(日) 23:06:52ID:lqJQIjR0繰り返し使うとアフォかって遅くなるぞ
やってみそ
0535名前は開発中のものです。
2008/12/14(日) 23:41:19ID:DRRW6jxIもう、複数ポリゴン描画しまくればいいか。
一枚のポリゴンに複数テクスチャ貼ろうかと考えていたのですが、
可視範囲を操作できなくて馬鹿らしいと気がつきました・・・。
プログラマブルシェーダーは全然勉強していないので
わからんです。
0536名前は開発中のものです。
2008/12/15(月) 11:16:55ID:2h9yKge1アドレッシングモードとは関係無いけど
テクスチャサイズが大きくなるとテクスチャの繰り返し枚数によって
描画面積は変えてなくても描画負荷が極端に変わってくる
32bit2048x2048ピクセルのテクスチャを使って
100x100回で1万枚分の繰り返しとかやってみると
VSyncOffでFPSが半分ぐらいになる
DXT5(何bitか忘れた)512x512ピクセルのテクスチャでは
1x1でも100x100でもFPSはほとんど変わらなかった
これはWrap、Clampともに繰り返し枚数が同じになるように調整すると同じ結果になった
0537名前は開発中のものです。
2008/12/15(月) 12:46:17ID:4jmX/x5+道路の模様を複数ポリゴンの同テクスチャで貼らない奴なんておらんよ
繰り返し使ったでかいポリゴンなんて実用性全くないしな
広大なフィールドの表現をチップを使わず1枚絵なんて論外
君みたいな上司だと部下は苦労するね
0538名前は開発中のものです。
2008/12/15(月) 16:06:13ID:6tkoLh5D一枚のでかい板にWrap使ってテクスチャを繰り返し描画させるんじゃなくて
一枚の小さい板にふつうに描画して、板自体を並べるってことですか?
でもそれぞれの頂点にUV値を1,0,1,0と交互に設定しないといけないから面倒だな
0539名前は開発中のものです。
2008/12/15(月) 16:28:50ID:j0hd9p0h0540名前は開発中のものです。
2008/12/15(月) 23:21:38ID:A6pVWDv7エースコンバット4のマップはそのでかいテクスチャを1枚貼り付けたものなんですけど。
0541名前は開発中のものです。
2008/12/15(月) 23:30:15ID:1XOA9Cp7グラフィックの立場でもプログラマーの立場でも
0542名前は開発中のものです。
2008/12/16(火) 01:09:37ID:znAlqrZxもし板違いでしたら誘導お願いします。
-----------------------------------
■ヘッダー
ID3DXSprite* g_pSp;
■ソース
// テスクチャ読み込み
if ( FAILED( D3DXCreateTextureFromFile( pD3DDevice, "..\\splite.bmp", &g_pTex)))
{
return(false);
}
// 座標設定
D3DXVECTOR3 pos;
pos.x = 320;
pos.y = 240;
pos.z = 0;
■描画開始宣言した中で
// 描画
g_pSp->Draw( g_pTex, NULL, NULL, &pos, 0xffffffff);
----------------------------------
エラーメッセージは
「error C2065: 'pos' : 定義されていない識別子です。」と出ます。
どうやら変数の型の宣言がおかしいらしいのですが・・
ちなみに「逆引きゲームプログラミング」という本を参考にしています。
よろしくお願いします orz
0543sage
2008/12/16(火) 01:57:02ID:00JIbTse全文載せてくれないとなんとも言えないけど、posの有効範囲は。。
話かわって愚痴なんだけど、Mayaって.fbxだから.xに変換するのがすごくめんどくさい。
もしMaya使ってる人がいたら、やっま自分独自のフォーマットに加工して読み込んでるのかな?
俺はもうJavaで.fbxをxファイルに近い形にするプログラム組んだほうが速いと思ってまる1日かけて作ったんだけどほかの人も苦労してるのかと思いまして・・・
0544名前は開発中のものです。
2008/12/16(火) 01:57:47ID:00JIbTseすいませんでした。
0545名前は開発中のものです。
2008/12/16(火) 02:03:51ID:o7evPB2e0546名前は開発中のものです。
2008/12/16(火) 02:25:36ID:NDYU1QyK当たり前。C言語の基礎から勉強すれば?
0547542
2008/12/16(火) 02:37:11ID:znAlqrZxレスありがとうございます。
posを使ってる範囲は上記の範囲だけです。
C++の基礎がなってないのか、純粋にD3DXVERTEX3の宣言方法がわからないだけで;
あと、この他の部分は、別書のサンプルをMixしてXファイルの表示等をしていますが、
一切干渉せず、上記を省けば正常動作しています。
よろしくお願いします orz
0548名前は開発中のものです。
2008/12/16(火) 02:38:26ID:00JIbTsecvXporterとかあるにはあるんですが、ボーン非対応だったりテクスチャ名がなぜか抜けたり、、といろいろ問題があるみたいで使ってません。
メタセコイヤ経由してもメタセコもボーンは無いし、結局自分で作った次第です。
要らない情報が多すぎるんだよ('A`)
0549名前は開発中のものです。
2008/12/16(火) 04:48:18ID:NDYU1QyK君、グローバルとかローカルって言葉知ってる?
サンプルをコピペすりゃいいってもんじゃねーんだよ
C++っつーよりCから勉強しろ
0550542
2008/12/16(火) 06:16:45ID:znAlqrZxコピペじゃなく全て手打ちで解らない関数はMSDNで調べてメモしているのですが
解らなくて聞いてしまいました。
CやC++・・書籍2〜3冊は数通りソース手打ちして学習はしたのですが
よろしければどこが解ってないのか指摘して頂けると幸いです。
申し訳ありませんでした。
0551名前は開発中のものです。
2008/12/16(火) 06:23:05ID:4ckjIOJCD3DXVECTOR3 pos;
の行をヘッダに移動するだけ。
■ このスレッドは過去ログ倉庫に格納されています