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

DirectX総合スレ (Part4)

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名前は開発中のものです。2005/11/26(土) 01:58:58ID:RjcSZKi5
※「鬱だ氏のうスレ」と「DirectX総合スレ」は統合され、
 ゲーム製作技術スレに戻ってきました。

DirectXについて、にいさま達がマターリと
技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。

ちなみに、言語はC++がメイン。
C# / VB.NET 使いは、専用スレの方が話がスムーズに進むと思われ。
0813 ◆zSSzMiD.Fo 2006/08/16(水) 20:59:41ID:aPX6ha4f
てすと
0814名前は開発中のものです。2006/08/16(水) 21:16:12ID:Gj5XmaVx
>>812
エラーが大量に出るのはdllとかちゃんとしないといけないんですかね?
0815名前は開発中のものです。2006/08/16(水) 21:21:12ID:apxX0PLW
>>814
実行ファイルと同じディレクトリには必要なDLLをつっこむ必要があるが
具体的にどんなエラーが出るのか書いてくれないと分からん
0816名前は開発中のものです。2006/08/16(水) 21:32:50ID:Gj5XmaVx
>>815
こんなかんじです
ttp://www.kurokichi.net/inside/up/src/up0858.jpg
0817名前は開発中のものです。2006/08/16(水) 21:36:27ID:AehsAfoZ
画像めどいから見てないがDLLが無いなら実行時のエラーにならないか?
0818名前は開発中のものです。2006/08/16(水) 21:36:36ID:apxX0PLW
>>816
単純にヘッダの読み込みに失敗してるだけのように見えるが…
エラーの中に「Ogre.hが見つかりませんでした」のようなものは出てないか?
0819名前は開発中のものです。2006/08/16(水) 21:52:12ID:MIi9u1h/
(おそらく)VC2003用に書かれたと思しきソースを
2005に突っ込んでるわけだから、書き直しは必要そうだよな。

宣言している場所を検索かけて調べて、
宣言が先行できるように書き直すしかなさげ。
0820名前は開発中のものです。2006/08/16(水) 22:12:58ID:Gj5XmaVx
>>818
ないです、100行超えたんで終了しますとしか

>>819
2005用ですよ
ttp://www.ogre3d.org/index.php?option=com_remository&Itemid=57&func=fileinfo&filecatid=42&parent=category
0821名前は開発中のものです。2006/08/16(水) 22:25:19ID:Gj5XmaVx
これらで設定あってますか?
ttp://www.kurokichi.net/inside/up/src/up0863.jpg
ttp://www.kurokichi.net/inside/up/src/up0864.jpg
0822名前は開発中のものです。2006/08/16(水) 22:35:27ID:MVYXzerW
ぶっちゃけここでもスレ違いだし開発環境ごとのスレ行っても
話が特殊すぎるし公式BBS言ったほうがよくないか
0823名前は開発中のものです。2006/08/16(水) 22:57:33ID:hBfKBKuk
おもしろそうだったので俺も入れてみた

Samples_vc8.slnをビルドしてみたがエラーも出ないし実行もできた
ワーニングはいくつか出てる
設定はincludeとlibのパス以外触ってない

環境はVC++express、DirectX SDK2004Oct、Microsoft Platform SDK
0824名前は開発中のものです。2006/08/16(水) 23:07:55ID:0R9/c9Np
>>821
公式フォーラムでも何回か全く同じ質問を見たことがあるような…
ttp://www.ogre3d.org/phpBB2/viewtopic.php?t=23106&start=0&postdays=0&postorder=asc&highlight=
でも回答がないんだよな。
STLportをいったん外して標準のSTLに戻してみたら?
0825名前は開発中のものです。2006/08/16(水) 23:32:55ID:P1MXvUJI
空のWindowsアプリケーションに BspCollision.cpp だけコピーして
一応ビルドできたわよ。(VC++2005Express+Platform SDK)
気づいたとこだけ書いとくわね。

・サンプルの各プロジェクトは ReferenceAppLayer という
 サブライブラリを利用してるから、流用するならこれをビルドして、
 include,libパスを通してリンクする。
 ライブラリプロジェクト C:\OgreSDK\samples\refapp\scripts\ReferenceAppLayer_vc8.vcproj
 インクルードパス C:\OgreSDK\samples\refapp\include
 ライブラリパス C:\OgreSDK\samples\lib\debug
 リンク ReferenceAppLayer.lib (OgreMain_d.libも)
・文字セットをマルチバイト文字セットにする。
・デバッグは C:\OgreSDK\bin\debug を作業ディレクトリにしないとうまく動かない。
0826名前は開発中のものです。2006/08/17(木) 06:18:41ID:WYymsySA
>>824
うわ・・・stlport下のほうにしたらできた
0827名前は開発中のものです。2006/08/17(木) 06:46:06ID:sb2zu4ho
>>810
調べてみたらなんとかなりそうです。thx!
0828名前は開発中のものです。2006/08/17(木) 17:32:28ID:DHkW3eSE
C#のDirectInputのGetCurrentKeyboardState()で
キーが押されたか離されたか分かる?
0829名前は開発中のものです。2006/08/18(金) 04:32:11ID:gdkYz1mu
>>828
わからん
自前で前回のキー状態を取っておくか
GetBufferedDataしる
0830名前は開発中のものです。2006/08/18(金) 08:46:25ID:RfMw83Dv
マネージドじゃないのはバッファしなくてもわかるお
0831名前は開発中のものです。2006/08/18(金) 16:26:49ID:LJmttCzI
Direct3DのFPSはどうやって設定するの?
0832名前は開発中のものです。2006/08/18(金) 16:33:13ID:2vFjQPe3
QueryPerformanceCounterとかRDTSCとか何かで時間を取得して(ry
0833名前は開発中のものです。2006/08/18(金) 16:52:03ID:LJmttCzI
手動ですか?
0834名前は開発中のものです。2006/08/18(金) 17:28:21ID:7TzL2I2R
>>833
「手動」ってw
お前プログラマだろ?
違うのか?
0835名前は開発中のものです。2006/08/18(金) 19:22:32ID:LVwpbsbn
FPSの設定って。。。
0836名前は開発中のものです。2006/08/18(金) 20:07:00ID:TdY2AdVa
XNAツールにならそういった機能もあるのかな?
0837名前は開発中のものです。2006/08/18(金) 20:09:32ID:TdY2AdVa
とりあえずの参考ね
ttp://clks.sakura.ne.jp/csg/gt002.html
0838名前は開発中のものです。2006/08/18(金) 23:03:44ID:LJmttCzI
そこのは去年読んだけど
今はもっと便利な機能ができてるのかなと。
0839名前は開発中のものです。2006/08/18(金) 23:06:07ID:OOf8Pyjv
俺は、関数を2〜3回呼び出すだけで、
仕事が終わって定時に帰れるのに残業代がつく機能が欲しいな。
0840名前は開発中のものです。2006/08/18(金) 23:21:33ID:+8vnGZ2u
関数一発でFPSが固定される機能のことなら、無い。
DXUTにはあるけどDXUTは(ry
0841名前は開発中のものです。2006/08/19(土) 08:02:47ID:NrNZREyo
Presentで垂直同期を待っていたらだいたい一定になるべ
0842名前は開発中のものです。2006/08/19(土) 08:32:42ID:Tg9yyder
ここ的にXNAってどうなん
わかりやすく解説してあるサイトとか見つからないけど
0843名前は開発中のものです。2006/08/19(土) 09:06:36ID:berRaXYm
(翻訳)
XNAについて詳しく教えてくれ。
わかりやすく解説してあるサイトとかあったら教えてくれ。
俺は調べる気なんて全くないからそのへんヨロシク。
さっさと教えろクズ野郎。
0844名前は開発中のものです。2006/08/19(土) 12:44:32ID:W2KSnKqO
君の人生つまらなそうだね
0845名前は開発中のものです。2006/08/19(土) 14:11:13ID:WfZnPINb
典型的な2chメンタリティの奴って人生損してるよな。
「太った豚より(ry」って言葉もあるが
0846名前は開発中のものです。2006/08/19(土) 16:26:27ID:iyWXwWdL
>>842
ほれ
ttp://msdn.microsoft.com/directx/xna/

分かり易く解説してるぞ。英語で。
0847名前は開発中のものです。2006/08/19(土) 19:10:57ID:/EsN1VOc
>841
ウインドウモード
0848名前は開発中のものです。2006/08/19(土) 19:53:02ID:37KpmdJ1
XNAってなんて読むんだ?日本語で説明してくれ。
0849名前は開発中のものです。2006/08/19(土) 19:59:18ID:uSIG1YiQ
えっきすえぬえー
0850名前は開発中のものです。2006/08/19(土) 20:57:57ID:MEXb7Ck5
ばつな
0851名前は開発中のものです。2006/08/21(月) 01:50:59ID:FQoJph8b
ゼナ
0852名前は開発中のものです。2006/08/21(月) 06:29:40ID:yzBDNZf/
んあ
0853名前は開発中のものです。2006/08/21(月) 20:28:05ID:L7HZ4TIv
2次元のライブラリは「DXライブラリ置き場」のところのが定番だと思うけど
3次元のはこれといったのがないな
0854名前は開発中のものです。2006/08/21(月) 21:05:17ID:g71L6l//
Lunaは?
0855名前は開発中のものです。2006/08/21(月) 22:02:32ID:iTJ/bXcs
OGREは?
0856名前は開発中のものです。2006/08/22(火) 20:03:30ID:Qv5zJjNN
ELかYJだな
0857名前は開発中のものです。2006/08/22(火) 21:25:46ID:KNXfujt3
>>853
Lunaが定番
他は オ ワ ッ ト ル
0858名前は開発中のものです。2006/08/22(火) 23:08:30ID:sJaWqPA5
DirectXSDKのバージョン古いのがなんかな、って気はするけど>>Luna
今新しいの作ってるんだっけ?
0859名前は開発中のものです。2006/08/22(火) 23:16:07ID:yLQPRyq8
なんか問題あるの
0860名前は開発中のものです。2006/08/23(水) 00:06:04ID:wxMVbQ1J
>>659
いや、意味もなく本当になんかな、ってだけ。
気になったなら悪い。
08618582006/08/23(水) 00:06:50ID:wxMVbQ1J
ミス。
>>859
0862名前は開発中のものです。2006/08/23(水) 00:20:24ID:0eXVSviZ
LunaはDirectx9なんだよなぁ

9はちょっと古いマシンだと9をダウンロードしたところで
ビデオカード自体で無理だからオンボードユーザーや
ノートユーザーへの対応が辛い

そろそろ8ユーザー切っても良い頃かもしれんけど
0863名前は開発中のものです。2006/08/23(水) 00:29:44ID:zxCULmJH
3Dデバイスとして動作するのなら、どんなに古いビデオカードでも、
DirectX9の元で動作するが、なにが無理なんだ?
単に機能の制約を受けるだけで動作するし、その制約は8だろうが9だろうが変わらない。
0864名前は開発中のものです。2006/08/23(水) 00:43:48ID:s1oY+lEc
>>862はビデオカードの機能に合わせた
デバイスオブジェクトの生成をしない人ですか?
0865名前は開発中のものです。2006/08/23(水) 00:57:38ID:0eXVSviZ
>>863
dxdiagのDirect3D 9 テストが動かなかった気がする。
あと、なんか9必須のゲームが起動できんかった気が。
数年前のことなのでかなり怪しい記憶だが

ちょっと手元にそのマシンないからすぐには確認できんけど
0866名前は開発中のものです。2006/08/23(水) 01:02:15ID:aMs7vavy
うーん、この誤解って結構あるみたいだね。
プログラマーっぽい書き込みで間違えているのは、初めて見るけど。
0867名前は開発中のものです。2006/08/23(水) 01:03:59ID:qBq8Z9Uj
つーか、>>862の話が分かる人は滅多にいないと思う。
VRAM8M位のオンボードだと、DirectX9のランタイム入れた途端に
今までD3DDEVTYPE_HALで動いてたDirectX8製のゲームも、D3DDEVTYPE_REFでしか起動しなくなったりする。

って書いてる間にレスがキタ
0868名前は開発中のものです。2006/08/23(水) 01:18:13ID:aMs7vavy
何のビデオカードか知らないけど、それはドライバがおかしいだけじゃない?
ドライバを最新にしてみたらいいと思うよ。
0869名前は開発中のものです。2006/08/23(水) 01:31:17ID:qBq8Z9Uj
うん、それでドライバをメーカーに探しに行ったら、DirectX8までのしかなかったw
ちなみにメーカーは牛さんw
つーか、ちょっと古いマシンって、俺はげふぉ5200位だと思ってるんだけど皆違うんかな・・・

って書いてる最中に巨大な黒い虫がデタ・・orz
0870名前は開発中のものです。2006/08/23(水) 01:41:46ID:vu6oApIq
同人ゲームとかに興味ある人は基本的にスペックは気を使しねぇ・・・
DirectX9だって公式にWin98以降のOSは全部サポートしてるんだし環境としては悪くない。
Lunaは確かVC6とWin2000の対応を切らないから古いSDKなんだよな。

こないだ会社でD3D使ったツールが起動しねぇって苦情きて調べたら
GeForce2だった・・・気にしない人はほんと動けばいいやレベルだぞ。
0871名前は開発中のものです。2006/08/23(水) 02:46:00ID:g11SjHQW
3Dゲーム作ろうとしてるんだが、最初ってskinnedmeshを改造していく程度で良いよな
萎えるくらい入り組んでるが・・・
0872名前は開発中のものです。2006/08/23(水) 07:33:24ID:qBq8Z9Uj
GeForce2かぁ・・・
2Dゲームとか、スキンアニメしないメカ物とかだと結構いけるんだけどなぁ。

>>871
最初はインデックス付き頂点ブレンディングとか、いらん描画部分を消すと良いかも
0873名前は開発中のものです。2006/08/23(水) 07:47:38ID:bZGvxDdu
>>869
マザーは具体的にどこのメーカー?
Intel?VIA?SIS?
マザーのメーカーサイトにいけばドライバあるよ。
0874名前は開発中のものです。2006/08/23(水) 08:07:27ID:XaEADeCl
>>863は正しいはずなのだけど、どうも面倒なカードって有るんだよな。

うちで不具合報告が多いのは、PenIII 1Gくらいの世代の、ノートのオンボード。
もう買い換えろと言いたくなるくらい、わけのわからない挙動してくれる。
capsで間違った値返しているとしか思えないぜ…。
0875名前は開発中のものです。2006/08/23(水) 08:12:52ID:qBq8Z9Uj
>>873
あ、ごめん>>869のマシンは俺のじゃない上に昔の話だから、
あんまり気にしないで・・・
今あったらいろいろ試してみたいけど
じゃあ、なんか漏れレスしすぎなんでそろそろ消えまつ。
0876名前は開発中のものです。2006/08/23(水) 18:48:00ID:3o00L+nM
>>863
ソフトウェアでエミュレートするって話か?
それってどのマシンでもそんなに実用に耐えうる?
どのマシンでも対応できるってのは
あくまでも理屈の上での話しだからなぁ。
それが通るならWin9x系のOSは落ちないよw
旧マシン使用ユーザーにもやってもらいたいゲームを作るなら
その辺を充分に考慮しないとダメだぁって思った。
0877名前は開発中のものです。2006/08/23(水) 19:35:50ID:bZGvxDdu
>>876
863じゃないけど、基本的にはDirectXを使うのとハードウェアを使うのは別なんだ。
DirectXのバージョンを上げても、DirectX9ハードウェアの機能を使わなければ
エミュレートするまでもなくそのまま使える。

例えるなら、Win95をWin98に上げた。
メモ帳でテキストを書いて保存するという機能は変わらない、って所。

うちのDirectX6相当のビデオカードでも、DirectX9ランタイムで普通に動くよ。

>>875
悪いけど、そんな答えが返ってくると思ってた。
0878名前は開発中のものです。2006/08/23(水) 19:35:51ID:zxCULmJH
エミュレーション云々ではなく、対応していない機能を使わければ3Dデバイスとして機能するという話。
ステンシルバッファが作れないのにデバイス作成時に指定していたり、
32bitカラーに対応していないのに32ビット決めうちにしたり、
そこで使えないんだと勝手に勘違しているだけ。

3Dが扱えた最古のノートPCのオンボードSavageIVでさえきっちりDirectX9の元で動く。
で、動かない動かない言っている奴に、動かなかった具体的な製品名を聞くと答えられない。
その程度の内容を答えられないレベルだから、自分のプログラムミスをハードのせいだと勝手に勘違いする。
0879名前は開発中のものです。2006/08/23(水) 20:11:23ID:zxCULmJH
ちなみに何故そういう勘違いが横行するかというと、
各種サイトにある古いバージョン用に書かれたソースは、
当然古いビデオカードが前提で組まれているが、
DirectX9用のソースは、ほとんど古いビデオカードを考慮しないで書かれている。

それを何も考えずに丸写しにしかしていなければ、デバイスが作成できないのは当たり前なのに、
ビデオカードの能力と作成時のオプションを照合しない、原因追及もしない、
何にもしないのに動かなかったと騒ぐだけだから。
0880名前は開発中のものです。2006/08/23(水) 21:22:37ID:3o00L+nM
>>877
おk、把握。
DirectX9対応のビデオボードの機能使って
何かすると勘違いしてた。
0881名前は開発中のものです。2006/08/23(水) 22:58:52ID:qBq8Z9Uj
>>877
一応、勘違いさせちゃったかも知れないのでレス。
もちろんSISのサイト行ってみたけどD3DDEVTYPE_REFでしか動かなかった。
今も確認してきたけど、2002-11-14のが最後っぽい。
ドライバがあれば、ちゃんと動作するというのは勿論同意です。
スレ汚しスマソ。
0882名前は開発中のものです。2006/08/24(木) 01:20:34ID:/s1qBh40
プログラマが頑張ればいいんやね
FFオンラインは…
0883名前は開発中のものです。2006/08/26(土) 13:36:34ID:A1ml0iLv
ピクセルシェーダも使えないビデオカードなんて何の価値もないが・・・
あと古いDirectXも使うべきではない。
0884名前は開発中のものです。2006/08/26(土) 13:46:41ID:++nLAWuP
DX10に完全対応してないビデオカードなんて何の価値もないよな、確かに
0885名前は開発中のものです。2006/08/26(土) 16:25:08ID:vn8c9Lao
非常に初歩的な質問で申し訳ないですが
Direct3Dで、今は単色で塗りつぶしているだけの背景に
新たに画像を貼りたいと思っています。

星空とか夕焼け空とか、それ以上"奥"が必要ない極めて遠いところを想定してるんですが
単に巨大なテクスチャを上方に置くだけなんでしょうか?
あるいは単色の代わりにビットマップを指定したりできるんでしょうか
0886名前は開発中のものです。2006/08/26(土) 17:38:41ID:BYHzVu6Y
テクスチャマッピングを知らんとな。
DirectXドキュメントのチュートリアル5を見てみそ
0887名前は開発中のものです。2006/08/26(土) 19:31:41ID:YFMMn+h3
?
「投視変換済みFVF」のことなんじゃないの?
0888名前は開発中のものです。2006/08/27(日) 04:16:37ID:isHJk/4t
華麗にスルーされた>>884がカワイソス
0889名前は開発中のものです。2006/08/27(日) 04:18:22ID:8IJYN4+M
>>888
本人乙 よしよし
0890名前は開発中のものです。2006/08/27(日) 12:07:07ID:X+6yWPse
誰か知っている人がいたら教えてほしいのですが、
最新版のDirectXをインストールしてサンプルを読みまくっているんですが
その前のバージョンのDirectXをインストールした時には入っているFEditとか
Sampleとかがないのはどういうことなんでしょうか?
これは技術として推奨していなかったり、いずれ消えるからみたいなニュアンスなのか、
それとも以前のバージョンのサンプルで入っているからよりコアなサンプルだけでいいか
というニュアンスなのか知りたいです。
0891名前は開発中のものです。2006/08/27(日) 12:17:26ID:/5a53IWQ
>>885
基本的にそう、内側(カメラ側)を向いた三角形なり平面なりに
背景用のテクスチャをつけて全方向分配置してるだけ。
スカイボックスとかスカイドームで検索するとよろし
0892名前は開発中のものです。2006/08/27(日) 12:58:38ID:gJ3V1wN2
>>890
そのバージョンでアピールしたい機能を使ったサンプルが添付されてる。
当たり前になった機能とか枯れた機能は、よほど基本的でもないかぎりいちいちサンプルにしないよ。
0893名前は開発中のものです。2006/08/27(日) 13:34:08ID:wIP3Rb+0
>>891
885じゃないけどd、参考になった。
0894名前は開発中のものです。2006/08/27(日) 14:13:57ID:QYpNXx6K
スプライトを消すにはどうすればいいですか?
0895名前は開発中のものです。2006/08/27(日) 14:21:30ID:FSDqLTxg
表示するための処理をしなければ勝手に消えるだろう
0896名前は開発中のものです。2006/08/27(日) 14:43:29ID:X5wfAJxD
画面をクリアのは最初だけなんですが
消さずに移動させると((((((((((((((((((((((((^_^;)みたいになるし
0897名前は開発中のものです。2006/08/27(日) 14:46:22ID:DcPmG1mi
>消さずに移動させると
答えでてるじゃんw
0898名前は開発中のものです。2006/08/27(日) 15:10:11ID:BuKids+5
XORで書き込んでおいて、消す時はもう一度同じ位置に描けばよい
と提言してみる
0899名前は開発中のものです。2006/08/27(日) 15:35:14ID:anaDdjuk
今時のマシンなら毎回クリアーして全部描き直してもいいんじゃないの
0900名前は開発中のものです。2006/08/27(日) 15:47:48ID:SPVJkQ+b
空気嫁
0901名前は開発中のものです。2006/08/27(日) 16:28:41ID:ixnv/hCf
背景と同じテクスチャから物と同じ領域切り抜いてスプライト表示。
0902名前は開発中のものです。2006/08/27(日) 18:17:32ID:UmbkaMJJ
それは逐一VRAMからサーフェスを取らないといけないね。ドライバを
直接叩かないとDirectX経由じゃむずかしいかな。
0903名前は開発中のものです。2006/08/28(月) 09:46:55ID:PB65JuLR
DirectX 9.0と9.0cの違いってどっかにない?
あと、最新のSDKで9.0で動くアプリ作るのに必要なこととか教えてくれー。
DXUTとか使っても大丈夫なんかな。
0904名前は開発中のものです。2006/08/28(月) 09:57:49ID:Iy93bO0r
公式のchange histryはだめ?
0905名前は開発中のものです。2006/08/28(月) 10:56:02ID:ie2ZSq0M
>あと、最新のSDKで9.0で動くアプリ作るのに必要なこと
質問の意味がよくわからないがなんだか笑ってしまった。
0906名前は開発中のものです。2006/08/28(月) 20:16:36ID:PB65JuLR
むう、やっぱり笑われるような質問なのか。だって9.0と9.0cでランタイム違うみたいじゃん。
てか本気でよくわからんのですが。ずっと8.1だったのでオイルショックというか。
0907名前は開発中のものです。2006/08/28(月) 20:40:10ID:Dq5yTrCe
>>オイルショック
不覚にもワロタ。意味がよくわからんw
0908名前は開発中のものです。2006/08/28(月) 20:46:09ID:GIrtn6Nb
カルチャーショックの間違いか?
0909名前は開発中のものです。2006/08/28(月) 20:50:05ID:wxTDaWwE
>>903
いわんとすることはよくわかる
0910名前は開発中のものです。2006/08/28(月) 20:54:50ID:ep/sxsQr
>>903は何となく分かるんだがオイルショックは全く分からないw
0911名前は開発中のものです。2006/08/28(月) 21:01:22ID:wxTDaWwE
>>903
超能力を駆使してレスすると

最新のSDK使って古いバージョン(9.0)でも動くソフトを
作るにはどういう点に留意したらいいの?
この機能は○○以降じゃないと動かない みたいな一覧とかないの?
ずっと8.1使ってたから9.0cは米騒動?みたいな

ってことであってる?
0912名前は開発中のものです。2006/08/28(月) 22:06:24ID:umC9Mqvm
Pーか、そんなことって出来たっけ?
動く動かない以前にDLLがないとか言われそうなオカン
レス数が900を超えています。1000を超えると表示できなくなるよ。