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

鬱だ氏のう DirectX (Part 6)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものでス02/10/07 01:00ID:???
DirectXについてマターリと技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。

■旧スレ(プログラム板)
http://piza.2ch.net/tech/kako/966/966655286.html  (Part 1)
http://pc.2ch.net/test/read.cgi/tech/997101556/   (Part 2)
http://game.2ch.net/test/read.cgi/gamedev/1005119775/ (Part 3)
http://game.2ch.net/test/read.cgi/gamedev/1016276254/ (Part 4)

コピペスマソ
0389名前は開発中のものです。02/11/04 10:07ID:???
>>370
IDirect3DDevice8::Reset( )
つまりコイツで
ビデオメモリの内容をクリア&フレームバッファの設定を更新
 
デバイスの再作成に限りなく近い内部処理だがこれでヨロシコ。
DirectX7以前とは勝手が違うのかもな。(よく覚えていない)
0390名前は開発中のものです。02/11/04 10:11ID:???
>ビデオメモリの内容をクリア&フレームバッファの設定を更新
ゴメンこの説明は変。正解はヘルプを見て知って。
0391名前は開発中のものです。02/11/04 10:44ID:???
>>389
DX8で、リソースがdiscardされるかどうか、されたかどうかが明確に
なったとよね。DX7ではサーフェスはロストすることは分かったけど
頂点バッファは明示してなかったと思った。
0392名前は開発中のものです。02/11/04 13:47ID:zHhCma6Y
dx8.1b のSDKってインストールディレクトリ選べない?
ざけんなゴラァ
0393名前は開発中のものです。02/11/04 13:58ID:???
自分で好きな場所に置けば良いだけだろ
知能低すぎ
0394名前は開発中のものです。02/11/04 14:27ID:zHhCma6Y
>>393
はぁ、ただDisk上に置いてあるだけだと思ってんの?
レジストリにディレクトリ情報、数十箇所書いてあって買い換えなんて面倒なんだよ

なんか未インストールの項目実行すると、勝手にインストーラーが立ち上がる仕様になってるのね
サンプルのショートカットって*.exeに直接リンクされてないし
ディレクトリ選べなかったのは、win上書きインストールの汚れ環境のせいみたい



0395名前は開発中のものです。02/11/04 14:45ID:???
ランタイムを除けばSDK部分は置いてあるだけだが、
サンプルがスタートメニューのショートカットが入るだけがそんなに重要なのか?
知能低すぎ
0396名前は開発中のものです。02/11/04 14:59ID:???
使用するデーターって一箇所にまとめてあって、それをレジストリに書いてあるじゃん
ディレクトリ移動すると、サンプル実行できませんが何か?

キミは全部の実行ファイルと同じディレクトリにデーターコピーして実行するのか?
0397名前は開発中のものです。02/11/04 15:27ID:???
それで実用上何の問題が?
知能低すぎ
0398名前は開発中のものです。02/11/04 15:32ID:???
哀れなやつがいるな…
039937002/11/04 15:35ID:???
>>389-391
遅くなりましたが、レスどうもです。
やっぱりウインドウサイズ変更だけでも、
デバイス再作成に近いことはやらなきゃいけないんですねぇ。
デバイスに関連するものも作り直しとなると結構面倒・・・。
0400名前は開発中のものです。02/11/04 15:38ID:???
2chでこんなどうでもいい話してる暇があるなら
レジストリ書き換えてればいいのに。
0401名前は開発中のものです。02/11/04 15:39ID:???
>>399
作り直さなくても、あらかじめ大きめのサイズのデバイスを
作っておけば良いだけだと思うが
0402名前は開発中のものです。02/11/04 15:39ID:???
>ディレクトリ選べなかったのは、win上書きインストールの汚れ環境のせいみたい
自分の環境の悪さを棚に上げて批判するなんて愚の骨頂だね
0403名前は開発中のものです。02/11/04 15:58ID:???
はぁ。おまえら暇だなぁ。
ストレス溜めた状態で2ch見るのは止そうぜ。な。
040437002/11/04 16:14ID:???
>>401
それって常に大きめのサイズでレンダリングしてしまうわけですよねー。
ウインドウが小さい時はそのサイズにあった速度にしたいし、うーむ。
0405名前は開発中のものです。02/11/04 16:37ID:???
>>404
SetViewportとPresentで調整すれば良いだけ
040637002/11/04 17:02ID:???
>>405
当分はその方向で逝こうと思います。
でもディスプレイモードが変更された時ならまだしも
CTRL+ALT+DELELE押された時もデバイスが死んじゃうんじゃ、
どっちにしろデバイス作り直す処理は必要かな。
OpenGL見たいに勝手にやってくれると有難いんだが、
DirectX9もここらへんは変わらないのかなぁ。
0407名前は開発中のものです。02/11/04 17:04ID:???
8なら作り直す必要は無いが?
0408名前は開発中のものです。02/11/04 18:03ID:???
>>407
ほら、もうちょっと言葉を足して書こうぜ。
誤解されて変なツッコミが入っちゃうぞ。
0409名前は開発中のものです。02/11/04 18:03ID:???
関係ないけど、DX9SDKではスタートメニューにサンプルが登録されねぇぞ。
0410名前は開発中のものです。02/11/04 21:02ID:???
>>370
 サンプルプログラムの、d3dapp.cppの中にある、メッセージプロシージャは見た?
その中にあるサイズ変更関連のメッセージ(特にWM_SIZING)あたりを読むことを
オススメする。
 デバイスの作り直しは、よほど特殊な要求(HAL→REFの切り替えとか)が無い限り
必要ないと思う。ヘルプのResetメソッドについても読もう。
0411DirectX9!!02/11/04 21:07ID:???
DirectX9!!
0412名前は開発中のものです。02/11/04 21:12ID:???
↑デマ
041341002/11/04 21:52ID:???
すまん。WM_SIZINGじゃなく、WM_EXITSIZEMOVEね
041437002/11/05 00:00ID:???
>>407,>>410
デバイスそのものを作り直さないまでも、
RenderState、VertexBuffer、テクスチャ、メッシュ全て設定し直さなきゃいけないなら、
デバイス作り直すのとほとんど変わらないなぁというお話でして。
041538902/11/05 00:29ID:???
>>414
>RenderState、VertexBuffer、テクスチャ、メッシュ全て設定し直さなきゃいけないなら
んなこたないよーヘルプ嫁ヘルプ。D3DPOOL要参照。
041637002/11/05 01:15ID:???
>>415
RenderState以外はMANAGEDにしておけば手間が省けるってことですね。
メッシュは物によって調べる必要があるみたいですが。

話はそれますがヘルプに
CreateVertexBufferのUsageに"次の 1 つ以上のフラグの組み合わせ"
って書いてあるのにサンプル見ると0指定してあるんだけど
どういう意味でしゅおうか??
0417名前は開発中のものです。02/11/05 01:22ID:???
どれかのフラグの値が0とか?
041838902/11/05 01:32ID:???
>>416
漏れも分かんない。
その部分は真似せんほうがええと思うよ。
>>417
んなこたーない
041937002/11/05 01:34ID:???
>>417
どれも0でないみたいです。
"0以上"の間違いだろうと思い込んで寝ます。
042038902/11/05 01:36ID:???
>漏れも分かんない。
>その部分は真似せんほうがええと思うよ。
嘘ですゴメン。
042137002/11/05 01:38ID:???
>>418,420
D3DUSAGE_DYNAMICに
"D3DUSAGE_DYNAMIC を指定しないと、頂点バッファは静的に作成される。"
って書いてあるんでこれが0なのかなと都合のいい解釈をしつつ寝ます。
042238902/11/05 01:44ID:???
>次の 1 つ以上のフラグの組み合わせ。
↑これ日本語ヘルプの誤訳。
「これらのフラグは組み合わせて使えるよ」というのが正解。
何も指定しなければ静的に確保される。
俺の知ってる範囲では、ハードウェアT&Lを搭載してるカードでは
ビデオメモリ上に確保される。ロック&書き込みが重いので静的な
データ以外には使わないほうがええ。 
0423名前は開発中のものです。02/11/05 05:14ID:???
>>422
原文は「A combination of one or more of the following flags」だから、
「次の 1 つ以上のフラグの組み合わせ」という翻訳は間違いではない。
日本語ヘルプに誤訳が非常に多いのは紛れもない事実だけど、
原文の説明自体が不適切・不十分であることも少なくないのだよ。
042441002/11/05 08:07ID:???
>>370
>メッシュはものによって調べる必要があるみたいですが
 既にヘルプを呼んでいるかもしれんが、メッシュを作る時にオプションに
D3DXMESH_MANAGEDを設定すればいいだけ。
>>415
 フォロー、サンクス。っていうか肝心なことを書き忘れてたんだな、俺(笑)。
042538902/11/05 10:10ID:???
>>423
>「次の 1 つ以上のフラグの組み合わせ」という翻訳は間違いではない。
そうだね。漏れ寝ぼけ過ぎ。
0426名前は開発中のものです。02/11/05 20:23ID:???
うちのグラカだと、どう調べても、スプライトで書くよりポリゴン作って
テクスチャはった方が描画が速いんだけど、そういうグラカって結構あるもんですか?

他のマシンがないので調べられません。
0427名前は開発中のものです。02/11/06 01:21ID:NGPM1Ygr
DirectInputで、なぜかZキーを押しながら、左と下を押すと、左か下の片方しか
キー入力が取れません。
自分のプログラムが悪いのかと思ったのですが、そこらへんに転がってる
DirectX8を使用したプログラム5個ほどでも同様の現象がありました。

これって、自分の環境が駄目なんですか?
それとも、Microsoftのバグ?
0428名前は開発中のものです。02/11/06 01:27ID:???
>>427
ハードウェアの仕様
0429名前は開発中のものです。02/11/06 05:59ID:???
洋ゲーが同時押しを必須としない設計をしてたりする理由だね。
CTRLやALTキーをデフォルトにするのも、
ほかのキーよりはこれの確率が低いから。
0430名前は開発中のものです。02/11/06 06:08ID:???
>>426
D3DXSpriteは内部でポリゴンにテクスチャ張って描画してます。
使うメリットがないなら、自前のスプライト描画クラスとか
作ったほうが良いものができるかもしれない。
0431名前は開発中のものです。02/11/06 09:03ID:???
>>427
キーボードが悪い。安物はそうなる。
USBキーボードはなりにくいのでお勧め。
0432名前は開発中のものです。02/11/06 10:11ID:???
安物云々は関係ない、知ったかするな
PS2の伝達経路の数が足りず、安物だろうが高級品だろうが、
バッティングする位置が変わるだけ
インタフェイスの問題
USBはなりにくいのではなくならない
0433名前は開発中のものです。02/11/06 11:24ID:???
>>432 Nキーロールオーバーって知ってる?
0434名前は開発中のものです。02/11/06 11:53ID:F7G6Kvvh
>>432
キーボードのようなキー数の多いデバイスはキーマトリクスを
作ってスキャンしている(大昔から変わらない)ので、
なんともトンチンカンだよ。
0435名前は開発中のものです。02/11/06 12:07ID:???
>>432
うちのUSBキーボードは同時押しできない組み合わせがある。
うちのはクソということでよいか?
0436名前は開発中のものです。02/11/06 12:44ID:???
432こそ知ったか野郎でFA?

ところで427ってノートPCでも使ってる?
そこまで同時押しできないキーボードは、俺が今まで使ってきたマシン
ではThinkPadしかなかったけど。
0437名前は開発中のものです。02/11/06 14:24ID:???
結論としてはキーボードのせい。
ひっそりと大人気のこのキーボードも何個同時押ししても受け付けるYO!

東プレ Realforce 106 キーボード Part1
http://pc3.2ch.net/test/read.cgi/hard/1033925111/

いや、買っちゃったもんで嬉しくて。
0438名前は開発中のものです。02/11/06 14:40ID:???
           ドッカン
         ,、、  ドッカン
  ━━━━━) )=          ☆ゴガギーン
      ∧_∧ | |          /         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     (   )| |_____     ∧_∧   <  おらっ!>>432出てこいゴルァ!
     r ⌒ ̄ ノ  __.  |    (´Д` )    \
     |   イ   |__|   |    /     \       ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     |    | |          .|    | |   /\\
     |    | |          .|  へ//|  |   | |
     |    | |       (\/,へ \|  |  | |
     | ∧ | |      ◎\/  \  / ( )
      | | | |.|          .|     | |
      / / / / |          .|     | |
    / / / /.| |三三三| |      |. |
    / / / /...|       |    ||


0439名前は開発中のものです。02/11/06 14:52ID:???
俺のノートPCはCtrlとCapsを入れ替えた時に、Ctrl+Shift+Zが押せずRedoできなくて泣けるんだよ、ボケが
0440名前は開発中のものです。02/11/06 15:05ID:???
問題はそこじゃなくて、ユーザがそれ買わなきゃ意味ないとこだろ( ´∀`)
0441DirectX9!!02/11/06 16:40ID:???
DirectX9!!
0442名前は開発中のものです。02/11/06 18:17ID:HmH3fN4E
http://www.theinquirer.net/?article=5168
ハヨコイ
0443名前は開発中のものです。02/11/06 20:06ID:???
DirectPlay“8.2”だってさ。
http://www.microsoft.com/downloads/release.asp?ReleaseID=43347&area=search&ordinal=4
正式版のリリースは年明けとの電波をキャッチ。
0444名前は開発中のものです。02/11/06 20:07ID:???
(DirectX9のね)
0445名前は開発中のものです。02/11/06 20:14ID:F7G6Kvvh
でもそのページにはそんなことないよね?
0446名前は開発中のものです。02/11/06 20:28ID:???
98のキーボードはよかった…
0447名前は開発中のものです。02/11/07 00:51ID:???
>>436
427ですが、ノートVAIO使っております。
家で使うときはUSB使おうかなぁ。
ということで、プログラム自体は変更することないんだね。ありがとう。
0448名前は開発中のものです。02/11/07 10:15ID:???
>>447
変更する点があるとするならば、キーコンフィグをつける点。
0449名前は開発中のものです。02/11/07 17:05ID:2yv67rKD
LPDIRECT3DDEVICE8 dev;

↑このdevを別のファイルで扱おうと思ったらどうすればいい?
別のファイルで

LPDIRECT3DDVICE8 dev2;
dev2=dev;

てやったら2重定義でゴラされた。
0450名前は開発中のものです。02/11/07 17:11ID:???
>449
Cの勉強をしなおせ
0451名前は開発中のものです。02/11/07 17:12ID:???
extern LPDIRECT3DDEVICE8 dev;
045244902/11/07 17:35ID:2yv67rKD
俺、Cは6年やってるけどな。そうかexternだな!ありがとう。
もう一つ、聞きたいのだがいいかい?

LPDIRECT3D8 d3d=NULL,d3d2=NULL;

2個用意してd3dの方でDirect3dCreate8をする。
その後、

d3d2=d3d;

とする。こうしたら以後の処理はd3dでもd3d2でもどちらを使っても
良いのかだよな?中身をコピーする、すなわちIDirect3Dインタフェースへの
ポインタがd3d2へコピーされるんだからなw
その後、オブジェクトを開放する時はどちらか一方だけリリースを呼び出せばいいんだよな?
ん?
045344902/11/07 17:40ID:2yv67rKD
>>452
よいのかだよな? ×
よいのだな?   ○

鬱だ・・・逝こう
0454まっつん02/11/07 17:48ID:???
うぜ・・・
0455名前は開発中のものです。02/11/07 17:51ID:???
449みたいなのと組まされたくは無い罠
0456名前は開発中のものです。02/11/07 17:51ID:???
>>452
はいはい、正解、あってるからさっさと仕事に戻れよ!
休憩時間はおわったんだからさ・・・・・・・・
0457名前は開発中のものです。02/11/07 17:52ID:???
>449
ム版に逝けよ。DirectX以前の問題だ。
0458名前は開発中のものです。02/11/07 17:54ID:???
どうやったら、そんなソースの書き方になるんだか不思議だ
045944902/11/07 17:54ID:2yv67rKD
うるせー馬鹿!
0460名前は開発中のものです。02/11/07 17:58ID:???
それが人にものをお願いする態度?
人生おしまいだね
0461名前は開発中のものです。02/11/07 19:17ID:???
今朝、最後のβっぽいのが出たよ>DX9
次はRelease Candidateみたい。
うまく行けば年内に来るかな?
0462名前は開発中のものです。02/11/07 20:59ID:???
449やべーよ。6年とは信じられん
d3d2=d3dはまあいいとして、どちらか一方だけReleaseとか頭いたい。

d3d2->AddRef();
d3d2->Release();
だろう
0463名前は開発中のものです。02/11/07 21:08ID:???
AddRef?
0464名前は開発中のものです。02/11/07 21:26ID:???
ときどき dialect を堂々と使う田舎者と中学生の合いの子のようなあんぽんたんがいるよね。
0465名前は開発中のものです。02/11/07 21:59ID:???
>>462
年数なんてかんけーねーよ。
馬鹿はいつまでたっても馬鹿だ。
0466名前は開発中のものです。02/11/07 22:07ID:???
むしろ年季の入った馬鹿の方が
矯正が利かない分タチが悪い。
0467名前は開発中のものです。02/11/07 23:07ID:???
インターフェイスを2つ用意する意味が全然わかんないんですが…

0468名前は開発中のものです。02/11/07 23:13ID:oHLaAcmh
教えてください。
四角形ポリゴンで描画した後に、スプライトで画像を表示させようとしても、
表示できません。

ポリゴンの後ろにスプライトが隠れているようなのですが、これをどうやったら
前に出せますか?

座標変換は行っていません。
0469名前は開発中のものです。02/11/07 23:38ID:???
>>468
スプライトのZ位置を前にすれ
0470DirectX9!!02/11/07 23:44ID:???
DirectX9!!
0471名前は開発中のものです。02/11/08 14:02ID:mLnGgDjl
>>468
Z比較ですべて書き込むALWAYSではうまくいかないのでしょうか?
0472アフォプロ ◆P6rBQWtf4. 02/11/08 14:24ID:NMeEcAJo
>>471

プログラム的に先にスプライトを描画しようとしてたらうまくいかないだろうね。
あとならたぶん描画できる。
047347102/11/08 14:33ID:mLnGgDjl
>>472
勉強になりました ありがとー
0474アフォプロ ◆P6rBQWtf4. 02/11/08 17:15ID:???
>>473

スマヌ、嘘ついたカモ。
描画されるのはZ比較を無効とした場合。
0475まっつん02/11/08 18:43ID:???
こいつつかえねー
0476名前は開発中のものです。02/11/08 20:04ID:???
相変わらずここの板は雑魚キャラ満載だな
0477名前は開発中のものです。02/11/08 23:36ID:???
Windows版FF11はなぜあんなにも画面は汚く糞重いんだろ。
何の理由で重くなってるんだか想像つく人います?
それとも、案外これがSquareの実力なのかな。
0478名前は開発中のものです。02/11/08 23:40ID:???
CPUのウェイト大きいし、CPUでスキンとか頂点処理してたりして
HWでシェーダー使えるの少ないし…
0479名前は開発中のものです。02/11/09 01:52ID:WtQZiHWM
画面がさあ、ビクッ!ビクッ!ってなるの
0480DirectX9!!02/11/09 02:05ID:???
DirectX9!!
0481DirectX10!!02/11/09 02:33ID:???
DirectX10!!
0482名前は開発中のものです。02/11/09 06:07ID:???
X9まだかよ・・・マジでNV30あわせなのか?
0483名前は開発中のものです。02/11/09 06:21ID:???
ワンスキンアニメ付きX形式に吐き出せるツールどういうのがありますか?
学校でDirectX付属のMAX用プラグイン使ったのですがスキンアニメにはならない&テクスチャが貼られないという状態なのですが。

または、ここの方々はどうやってファイル作ってますか?
自前形式と言われたらそれまでなんですが。
0484名前は開発中のものです。02/11/09 10:27ID:???
>>477
スペック低いPCなんじゃないの?
アナタのPCがどんなハードウェア構成なのかわかんないから答えようがないよ。

# UOでBantheeチップ使ってると激しく重くなる、とかそういう相性かもしれないし。
0485名前は開発中のものです。02/11/09 12:37ID:IwFQStjk
DXUtilsのDxTexというツールでDDS形式のファイルを作りたいのですが、
何を読み込んでも画像が真っ黒に表示されてしまいます。

何か改善策は無いでしょうか。
0486名前は開発中のものです。02/11/09 13:19ID:???
>>485
明日秋葉原に来な。そしたら教えてやる。
0487名前は開発中のものです。02/11/09 13:35ID:???
>>477
エミュレータで動作してるとか?
048848502/11/09 13:44ID:IwFQStjk
貧乏学生です。
明日秋葉原へ旅立てば十中八九餓死します。
■ このスレッドは過去ログ倉庫に格納されています