1 名前:デフォルトの名無しさん mailto:ライシンマハケン [2008/07/17(木) 13:50:04 ] 1 名前:デフォルトの名無しさん[sage] 投稿日:2008/04/09(水) 09:55:56 ※回答する人も、質問する人も必ず読んでください これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。 【C++】 DirectX初心者質問スレ Part17 【C】 pc11.2ch.net/test/read.cgi/tech/1207702556/
283 名前:デフォルトの名無しさん [2008/08/26(火) 23:03:10 ] とりあえず280GTXってのを買ってきました。これでコミケに出れます。
284 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 23:06:12 ] 今からDirectXの勉強を始めようと思うのですが 入門書としてDirectXゲームグラフィックスプログラミングVer2.1 を買いました。 DirectXGraphicsの初期化などは暗記して見ないで打てるようにしたほうがいいですか?
285 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 23:10:38 ] 初期化なんかゲーム1本につき1回しか書かないから、ちゃんと動くの1回書けたら忘れていいよ
286 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 23:10:39 ] なんか暗記とか数学どこまで勉強とかって・・・ 日曜プログラマならみんなコピペでいいよ コピペで駄目になってから考えろ
287 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 01:11:50 ] みんなでコピペした結果がこれだよ! www.watch.impress.co.jp/game/docs/20070927/wv.htm
288 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 07:18:41 ] >>283 待つんだゲフォの280は地雷だ。 らでの4850にしとけ。 大差ないスペックで大量の消費電力と3倍近い値段するんだぞ280は。
289 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 07:52:34 ] >>287 March 2008でも直ってねーじゃん
290 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 07:58:17 ] 日曜プログラマでも脳みそは使わなきゃダメだ
291 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 09:43:51 ] 提供元のサンプルはコピペのためにあるようなもんだしなw DVD出たときにパイオニアと東芝がしょっちゅう同じバグ出してたのもコピペだったんだろうなあ
292 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 11:30:57 ] >>291 昔買ったNECのマウスのファームウェアがサンプルのコピペでワロタ CY7C63101のサンプルコードに書いてあった仮のベンダーIDとかそのまんまになってた
293 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 13:49:52 ] DC版VF3がSAMPLE GAMEなのと同じですね、違いますね。
294 名前:デフォルトの名無しさん [2008/08/28(木) 00:58:23 ] Windosゲームを作っていて、 ゲーム起動時に32*32のフォント画像のテクスチャーを約8000個作りたいんですが、 その処理に15秒くらいかかってしまいます。 CreateTextureやバッファにフォント画像を書き込むこと自体は、 全然時間がかからないんですが、 ↓の処理が凄く遅いです。 D3DLOCKED_RECT lockRect; pTexture->LockRect(0, &lockRect, NULL, D3DLOCK_DISCARD); 高速化する方法ってないでしょうか。
295 名前:294 mailto:sage [2008/08/28(木) 01:12:25 ] 自己解決しました。 CreateTextureのプールを、 D3DPOOL_DEFAULT から D3DPOOL_MANAGED に変えたらちょっぱやになりました。 理由はよく分かりませんが、 D3DPOOL_DEFAULTだとLockRectでVRAMにアクセスするから遅い?
296 名前:294 [2008/08/28(木) 01:20:42 ] LPDIRECT3DVERTEXBUFFER9を頻繁にLockして色を変えたりする場合も、 もしかして、D3DPOOL_MANAGEDの方が速いのでしょうか? D3DPOOL_MANAGEDとD3DPOOL_DEFAULTの長所短所がよく分からないんですが、 詳しい人いたら教えてもらえませんか?
297 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 06:54:13 ] POOL_DEFAULTは適切な使い方をすればちょっぱやになります。 あなたの使い方は論外です、今は素直にPOOL_MANAGEDを利用して いつか分かるようになったらそのとき色々考えましょう。 っていうかDEFAULTのテクスチャをロックするなよ。
298 名前:294 [2008/08/28(木) 08:47:12 ] 今までリソースは全てPOOL_DEFAULTで作ってたんですが、 POOL_DEFAULTはどういう場合に使うのが適切なんでしょうか? いつかじゃなくて今知りたいんですが、教えてもらえないでしょうか。
299 名前:294 mailto:sage [2008/08/28(木) 09:23:29 ] かなり苦労してデバイスロスト時のリソース開放復帰処理を作ったので、 適切なところはPOOL_DEFAULTを使いたいんです。
300 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 10:53:32 ] その前にテクスチャ8000個の方に突っ込むべきな気もする…
301 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 11:24:46 ] 淫乱負数からディスプレイアダプタを取得する方法が分からないのですが 誰か教えていただけませんか? // ディスプレイアダプタを表すためのデバイスを作成 // 描画と頂点処理はハードウェアで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { // 失敗した場合 // 描画処理はハードウェアで、頂点処理はCUPで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SPFTWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { // 失敗した場合 // 描画と頂点処理をCUPで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_REF, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { //取得失敗 return E_FAIL; これだとコンパイルエラーが出ます。。。
302 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 11:45:18 ] D3DPOOL_DEFAULT とかD3DPOOL_MANAGED考える前に テクスチャ8000個ってのを改善しろよ 8000個なんて使うときあるか?
303 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 12:41:51 ] >>302 日本語全部だとそのくらいじゃないの 知らないけど
304 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 12:44:54 ] 1文字ずつバラしてんのか
305 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 12:51:47 ] 1枚でつくって切りだして使えよ
306 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:22:12 ] >>305 じゃあ聞きますけど1枚に全部入りますか? 書き込む前に考えるクセをつけるべきだと思います。
307 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:27:35 ] jpeg3なら可能なんでない? マトリョーカシからの圧縮も対応してるし 12000*8000のサイズも余裕で収まるっしょ?
308 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:27:56 ] 糞設計ブーム到来中
309 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:31:38 ] 「1枚じゃはいらないなぁ」 「でも複数にするとどの文字が どのテクスチャに収納されてるのか考えないと・・・」 「そうだ!1文字テクスチャでつくればいいんじゃね」←いまここ こういうことだろ? どんだけ手抜きなんだよ
310 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:35:26 ] 書き込む前に考えるクセをつけるべきなのは>>306 だなwwww
311 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 13:52:55 ] ---煽りあいはここまで---
312 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 17:22:10 ] 32*32を8000枚って、30MB超えたんだが、いったいどんな富豪グラボを想定してるんだろうw
313 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 17:55:04 ] 大丈夫 いまどきの富豪なグラボは1GBある
314 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 17:57:52 ] 淫乱負数からディスプレイアダプタを取得する方法が分からないのですが 誰か教えていただけませんか? // ディスプレイアダプタを表すためのデバイスを作成 // 描画と頂点処理はハードウェアで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { // 失敗した場合 // 描画処理はハードウェアで、頂点処理はCUPで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SPFTWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { // 失敗した場合 // 描画と頂点処理をCUPで行う if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_REF, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &m_D3DPP, &m_pD3DDevice))) { //取得失敗 return E_FAIL; これだとコンパイルエラーが出ます。。。
315 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 18:42:55 ] とりあえずエラーの内容も書こうぜ
316 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 18:55:45 ] Renderer.cpp(266行目) 淫乱負数からのポインタが取得できません ちなみに使っているコンパイラは現役専門学生の友達が作ってくれたものです。
317 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 19:53:57 ] DEFAULTはそれこそ毎フレーム書き換えるようなデータに使うのが一般的。 その場合は当然DYNAMICフラグとセットにしてな。 それ以外のただの画像テクスチャなんてものはMANAGEDで問題ない。 速度的にDEFAULTが速いとか勘違いしてるかもしれないが 作成時に1回だけ書き換える程度の静的なデータには無意味だ。 一般的といっていいかは分からないけど、 MMOみたいな大量の文字を使うようなゲームでも普通は事前に テクスチャに展開してUVで切り出して描画をするぞ。 1文字1テクスチャは色々とおかしいといわざるを得ない。 1文字単位でテクスチャの切り替えが発生するしキャッシュ効率も最悪。
318 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 22:45:27 ] >>316 淫乱負数について詳しく
319 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 23:23:35 ] 【淫乱負数】 デクリメント負数のサイズ (バイト単位)。柔軟な頂点フォーマット (デクリメント) 頂点バッファの場合は、 淫乱負数 は少なくとも 1 つの頂点を格納できる大きさでなければならないが、頂点サイズの倍数である必要はない。 淫乱負数 は非 FVF バッファについては検証されない。
320 名前:294 mailto:sage [2008/08/29(金) 00:13:09 ] >>309 手抜きじゃなくて、無知で初心者なだけです。 常に最善を求めて頑張っています。 >>310 とりあえず>>306 は私じゃないのであしからず。 >>312 いまどきのグラボは30MBくらいいけると想定して、 古いグラボはすっぱりと切る心づもりでした。
321 名前:294 mailto:sage [2008/08/29(金) 00:14:46 ] >>317 参考意見ありがとうございます。 charがどの文字に対応するかは絶対1つずつ判定が必要ですよね。 そしたら後は、1枚から特定の場所を切り出す処理がない分、 1つずつのテクスチャにした方が効率がいいかと思ったんですが、 そうではないんでしょうか? 私はプログラムやコンピュータに触りだしたのが最近で、 キャッシュ効率(たぶんハード寄りなこと?)というのがよく分からないんですが、 大量のテクスチャを使えば一時保存領域などを頻繁に入れ替えることになるから、 その分オーバーヘッドが生じて遅くなるってことでしょうか?
322 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 01:21:10 ] >>317 その書き方では、DEFAULTはロック書き換え用だと読めるが、 そうなの? 別に実測値を出せとは言わんが、それを示すドキュメントとかあるか?
323 名前:デフォルトの名無しさん [2008/08/29(金) 01:25:44 ] 扇形を簡単に描画させる方法ってないですか? 60度の角度で上方向に扇形を描画さしたいのですが(円弧の方が上) 開始地点は275から半径50の扇形を描画さしたいのですが pD3Device->SetTexture(0, pTexture[0]); pt[0].x = 250.0f; pt[1].x = 300.0f; pt[3].x = 275.0f; pt[2].x = 275.0f; pt[0].y = 225.0f; pt[1].y = 225.0f; pt[2].y = 275.0f; pt[3].y = 275.0f; pt[0].tu = pt[3].tu = 0.0f / 1024; pt[1].tu = pt[2].tu = 200.0f / 1024; pt[0].tv = pt[1].tv = 0.0f / 1024; pt[2].tv = pt[3].tv = 200.0f / 1024; pD3Device->DrawPrimitiveUP(D3DPT_TRIANGLEFAN,2,pt,sizeof(CUSTOMVERTEX)); これでは普通に三角形ができただけで・・・ 角度計算とかで簡単に扇形にできないでしょうか?
324 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 04:00:28 ] >>321 テクスチャの切り替えはなるべく少なくした方が高速
325 名前:233 mailto:sage [2008/08/29(金) 05:00:57 ] 解決しました 粗末な物を張ってすみませんでした
326 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 07:17:27 ] 淫乱負数って一体何なんだ
327 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 07:33:53 ] >>321 テクスチャの切り出しなんて文字コードをインデックスにして テーブルからUVを引っ張ってくるだけだろ。 今のCPUのキャッシュ容量なら余裕で全部乗る程度のキャッシュサイズだし、 別にテクスチャ自体を切り出して作るわけじゃないぞ。 「テクスチャの切り替えをする」ということはそのつど「DrawPrimitive」を呼ぶということだ。 昨今のグラフィックカードは細かいデータをたくさん出すようには設計されてないので致命的なほど遅い。 なので可能なら1枚のテクスチャに格納⇒文字全てを1個の頂点バッファに格納⇒DrawPrimitive1回で全ての文字を描画 これが実測でも理論でも最速になる。 DrawPrimitiveの連打に比べたら頂点データの作成やUVテーブルの参照なんてゴミみたいな負荷。 >322 SDKに入ってるドキュメントに書かれてるよ。 >動的な頂点バッファおよびインデックス バッファの使い方 > >理想は頂点データまたはインデックス データがまったく変化しないことですが、これは必ずしも可能ではありません。 >アプリケーションがフレームごとに頂点データまたはインデックス データを変更する場合は多くあり、 >フレームあたり複数回変更することさえあります。 >このような場合は、D3DUSAGE_DYNAMIC を使って頂点バッファまたはインデックス バッファを作成する必要があります。 >この利用法フラグによって Direct3D を頻繁なロック処理用に最適化します。 >D3DUSAGE_DYNAMIC はバッファを頻繁にロックする場合にのみ有用であり、 >変化しないデータは静的な頂点バッファまたはインデックス バッファに格納する必要があります。 テクスチャやサーフェイスの場合だとシステムメモリにコピーをいちいち作れない、 レンダリングターゲットや深度バッファなんかもDEFAULTで作る必要あるけど。
328 名前:327 mailto:sage [2008/08/29(金) 07:43:05 ] 補足。 D3DUSAGE_DYNAMICフラグはD3DPOOL_DEFAULTと一緒じゃないと使えない。 D3DPOOL_MANAGEDって単にシステムメモリにコピーもってて、 システム側のバッファ⇒DMA転送⇒VRAMのバッファってやってるだけ。 だからデバイスがロストしても復旧できる。 当然だけど描画中のバッファをLock()しようとした場合は描画終わるまで待たされる。 そうなると頻繁にバッファ書き換えるなら直接VRAMのバッファ変えるほうが速いのは当然だし DYNAMICフラグの場合はLock()する度に別のアドレス返してくるからMANAGEDみたいに データの保障は出来ないってことだな。 DYNAMICしたバッファは Lock()→新しいビデオメモリ領域をmalloc()→そのアドレスを返す→描画終わったらドライバがfree() っていう処理だから他のバッファみたいに描画中のバッファに干渉してパイプラインを止めなくてすむ。 だから書き換えないならMANAGEDでいいし、頻繁に書き換えるならDEFAULT+DYNAMICにしとけってな話。 ドキュメントの「DirectXGraphics」→「プログラミング ガイド」→「プログラミングのヒント」→「パフォーマンスの最適化」を参照。
329 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 11:06:50 ] 書き込むスレ間違えたのでマルチスレッドになるかもですが、 シーンの作成時やレンダラーの初期化時に HRESULTをいうのを使っているのですが HRESULT Renderer::Initialize(HWND hWnd, BOOL isFullScreen, int clientWidth, int clientHeight) LRESULTとの違いってなんですか? LRESULT CALLBACK WindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); ウィンドウプロシージャルを定義するときはLのほうを使って DirectXの初期化の時などはHを使うって事ですか?
330 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 11:23:45 ] LRESULTはもともとlongだったものからきてる、longで結果を返すものと思っていい。 HRESULTは内容が決まってる。COMが返すものと思っていい。 自分で作った関数は、よそから返ってきたHRESULTをそのまま返すもの以外はあまり使わないと思うよ。
331 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 11:36:43 ] >>330 なるほど〜〜 ありがとうございました!
332 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:29:25 ] テイルズっぽいゲームを作ろうと思っているのですがエフェクトの所で悩んでます 戦闘時のエフェクトとかってDirectXで描写するのとAdobeEffectsとかで作ったのを描写するのどっちが一般的なんですか?
333 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:39:54 ] 3Dなら、プログラム率高い 2Dなら、ベタでいいんじゃね? 絵の量が多いと、プログラムしないとメモリが足りないけど
334 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:40:58 ] 参考 ttp://rayz.skr.jp/?rayz.skr.jp/zakki/_zakki.html
335 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:47:28 ] >>332 このスレ64から嫁 一般的かって話なら3Dで作るのが一般的
336 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 13:30:03 ] 質問もマルチスレッドの時代になったか
337 名前:294 mailto:sage [2008/08/29(金) 20:40:02 ] >>327 文字列全てを1個の頂点バッファに格納するというのは、 同じ板ポリゴンに、位置をずらしながら1文字ずつ貼り付けていくということですよね。 板ポリの4頂点にテクスチャのUVを指定して、 板ポリ全体にテクスチャを貼り付ける方法しか知らないんですが、 板ポリゴンの一部にテクスチャを貼り付けるにはどうすればいいんでしょうか?
338 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 20:44:59 ] >>337 いうてる意味がわからんが「描画する文字数 x 4角形」分の大きさの頂点バッファをこしらえるだろ。
339 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 21:19:35 ] 1文字あたりポリゴン2枚(三角形×2) 1個の頂点バッファにたくさんポリゴンを詰め込んで、1回のDrawPrimitiveで全部描く
340 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:21:31 ] >>328 D3DPOOL_MANAGEDはレンダリングターゲットには出来ない。 ということはGPUによる書き換えは発生せず、内容の書き換えが起こるとするとすれば それは常にCPUからの場合のみ。 だとすれば、D3DPOOL_MANAGEDのリソースは、 メインメモリ側がマスタで、ビデオメモリ側がスレーブという考え方でかまわない訳で、 lockした場合は、常にメインメモリ側のポインタを返し、 unlockした時点でスレーブに反映させればいいから、別にCPUはストールしない。 と、勝手に思っていた訳だが。根拠はないが。
341 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 22:26:55 ] また、SDKの記述だが D3DUSAGE_DYNAMIC+D3DPOOL_DEFAULTが D3DPOOOL_MANAGEDより優位だとは特に書いていないぞ。
342 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 23:51:45 ] >>340 CPUのメモリに書き込む⇒CPU→GPUの転送をする⇒GPUのバッファが描画待ち状態だった⇒さぁどうなる? >>341 毎フレームロックするような2Dのスプライトみたいなものとか、 3Dのパーティクルみたいなものには有利とは書かれているぞ。 モデルみたいな作りっぱのデータにはむしろマイナスだろう。
343 名前:294 mailto:sage [2008/08/30(土) 00:45:36 ] >>338 >>339 理解しました。頂点バッファって三角形何個でも繋げられるんですね。 今まで常に三角形2枚の長方形で1個の頂点バッファにしてました。 どうもありがとうございます。
344 名前:294 mailto:sage [2008/08/30(土) 00:47:27 ] >>328 起動時のフォントテクスチャ作成を、 D3DPOOL_DEFAULT、D3DUSAGE_DYNAMICから、 D3DPOOL_MANAGED、USAGEなしに変えたら、 LPDIRECT3DTEXTURE9#LockRectが20倍くらい速くなったんですが、 描画中だとD3DPOOL_DEFAULTの方がロック速いけど、 描画してない状態だとD3DPOOL_MANAGEDの方がロック速いってことでしょうか。 いずれにせよ、色々実測してみようと思います。
345 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 22:46:27 ] dxerr.lib dxguid.lib d3dx9.lib d3d9.lib このライブラリの中で ゲーム会社の採用試験の作品提出の時に使ったまずいのってありますか?
346 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 22:53:47 ] まずいのはそんなことを質問するお前の頭 その時点で不採用決定だから気にするな
347 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 22:58:44 ] 流石にネタだろw
348 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 22:59:47 ] >>345 windowsアプリケーションを作る時 #include <windows.h> がないとの同じだぞ?
349 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 23:03:22 ] >>345 お前は心臓がなくて生きてられるか?(ペースメーカーなど除く)
350 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 23:25:28 ] >>345 d3d9.libだけは使ったらまずい。ほかは使っても大丈夫だよ 採用試験がんがれ! >>346-349 しんだほうがいい
351 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 23:28:48 ] >>345 プログラマーって>>350 みたいなの多いから気をつけた方がいいよ 別に気に入らなければ答えなきゃいいだろうっていう質問をネタに遊ぶ連中だから
352 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 23:32:30 ] 再配布禁止なのはd3dx9***.dll系だろ・・・
353 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 00:28:48 ] こういうくだらない話に喰いつく奴をみると ネット経験が浅いんだろうなぁ、ウザいなぁと何時も思う。
354 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 01:01:16 ] >>352 実行ファイルの隣に置いておくのが駄目なだけで 再配布が禁止されてるわけじゃないよ
355 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 01:49:17 ] 採用担当はいちいちそんな所みてねぇよ
356 名前:294 mailto:sage [2008/08/31(日) 04:38:21 ] 色々試してみましたが、 やっぱうちだとPOOL_DEFAULT より POOL_MANAGEDの方が速いっぽいです。 あと、HARDWARE_VERTEX_PROCESSING より SOFTWARE_VERTEX_PROCESSINGの方が速い。
357 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 05:24:16 ] >>356 システムメモリとビデオメモリを理解してないんですね わかります
358 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 08:08:45 ] >>356 そりゃロック速度は速いだろうけど描画は遅くなるだろ・・・
359 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 08:47:02 ] >356 測定条件が明確じゃないのに、ここでどっちが早いとか 書いても意味ねーぞ
360 名前:294 mailto:sage [2008/08/31(日) 14:24:52 ] C#で測定ツールを作ってみたんですが、 測定条件こんな感じでどうですか? www.sepia.dti.ne.jp/zigzag/test.zip Managed DirectXは少し遅いらしいけど。
361 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 14:33:26 ] >>354 エーダメだったの?
362 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 16:28:42 ] >>360 いやぁ その前にシステムメモリとビデオメモリの違い ってわかる? 多分、そんなの測ってもケースバイケースよ? いまのままだとどんな条件のときにそのプログラムが速くて そんな条件のときにそのプログラムが遅いのかわかんないでしょ? それを知りたい? それとも虚構の条件でのみ速いって主張するそのプログラムを みんなに認めてもらいたいだけ? どっちか選んで方針決めてよ
363 名前:294 mailto:sage [2008/08/31(日) 16:59:03 ] 何の違いですか?転送速度とか? 詳しい違いはしりません。 >それを知りたい? 知りたい。
364 名前:294 mailto:sage [2008/08/31(日) 17:00:47 ] あとはうち以外の環境でも実測して、 結果と理論を合致させたいです。
365 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 17:01:41 ] 何で敢えて「その前にシステムメモリとビデオメモリの違い」を無視しているのかなぁ。
366 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 18:59:07 ] iPhoneのように画像をマウスの動きに合わせて左右にスライドさせて見るような画像ブラウザを作りたいのですがDirectXで可能でしょうか お勧めのライブラリーなどあればよろしくお願いします
367 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 18:59:37 ] >>361 ちゃんと書いてあっただろ・・・。 もし商業でやってたらアウトだぞ。 再配布していいのは「再配布パッケージ」だけで 「再配布パッケージの中のファイル(d3dx9_32.dllなど)」を 単独で再配布してはいけない >>363 その詳しい違いを調べてるんじゃないの? ただロックして書き込み速度だけみたいなら mallocしたバッファにでも書けば?
368 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 19:32:36 ] >>363 んじゃ システムメモリってのはPCのCPUで演算させるときに データをおかなきゃならんところなんよ ビデオメモリってのはグラフィックボードのGPUで 演算させるときにデータをおかなきゃならんところよ >あと、HARDWARE_VERTEX_PROCESSING より SOFTWARE_VERTEX_PROCESSINGの方が速い。 これもさ、LockとかDrawPrimitiveUpやってんじゃねぇの? なのでそんな結果になっちゃうわけよ つまりな、描画方法がグラボの能力をまったく使えてないw
369 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 20:35:00 ] >>367 エーそうだったのか ありがとう
370 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 13:49:43 ] 2Dスプライトを実装する際の 頂点バッファ、インデックスバッファの扱いについて質問です これらはスプライト毎に用意したほうがいいのでしょうか? それともシステムに対して一つ用意してそれを使いまわせばいいのでしょうか?
371 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 14:56:14 ] >>370 1個だけ作っておいて スプライトを順次埋め込んでいけばオッケ 表示するときに一発で済む
372 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 17:59:13 ] >>371 一つの頂点バッファに動的に頂点を追加し テクスチャごとにインデックスバッファを作成して描画ということでしょうか? 一つの動的な頂点バッファをマイフレームロックして書き換えるのと テクスチャごとに静的頂点バッファを生成して切り替えて使うのだと どちらがパフォーマンスにやさしいのでしょうか?
373 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 19:01:41 ] 初めてDirectXクリックしたら はい いいえの文字が出たのでいいえクリックしたら DirectX診断ツールが出てきた・・・はい いいえの内容教えてください たしか はい がおすすめですと書いてあった バージョンが最新?DirectX 9.0cになってたいいえクリックすると自動で9.0cがインストールするの? 詳しい方教えてくださいおねがいします。
374 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 21:59:35 ] なんでこの文はFAILEDが2個もあるんですか? //-------------------------------------- // モデルを生成 //-------------------------------------- // 球体(Sphere)の生成 if(FAILED( FAILED(D3DXCreateSphere( pD3DDevice, 1.0f, 36, 36, &m_pMesh, NULL)))) { return E_FAIL; }
375 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 21:59:50 ] とりあえず ・プログラミングの話しではない ・日本語がおかしい
376 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:10:08 ] >話しではない お前も日本語がおかしい
377 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:15:36 ] if(FAILED(D3DXCreateSphere( pD3DDevice, これでいいと思うんですけど if(FAILED( FAILED(D3DXCreateSphere( pD3DDevice, これにする理由ってなんですか?
378 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:36:14 ] >>377 後生ですからFAILEDマクロの定義を調べた上で初心者スレに出直してください。DirectXには関係がありませんから。
379 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 00:56:57 ] DirectXの画面上にエディットコントロールを貼り付けると激しくちらつきますが、 これは相性が悪いのであきらめろということですか?
380 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 08:26:34 ] >>372 異なるテクスチャを要求されるか 頂点バッファが一定量(例えばスプライト100個)を越えるまで 一つの頂点バッファに溜め込んで 上記条件を満たしたら表示する >>379 DX搭載のUIを使うか エディットコントロールの部分をクリッピングする
381 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 10:24:08 ] >>380 その手法はヘルプには書いてありましたが たとえば スプライト0〜49がテクスチャA スプライト50〜99がテクスチャBを資源にしている場合 ひとつの頂点バッファで一括で100個描画をする方法あるのでしょうか? パーティクルみたいに同じテクスチャを数100個表示するようなときには有効そうですが
382 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 11:31:27 ] >>381 テクスチャごとに(その例では50)表示しても マルチテクスチャで無理して全部(その例では100)表示しても 速度差は出ないぞ
383 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 11:49:29 ] >>380 ハァハァ・・・めんどいよぉ〜
384 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:01:55 ] ウィンドウならWS_CLIPCHILDRENで
385 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:02:54 ] 超初心者でプログラミングのサイトを読み進めながら組んでるんですが、 "error C2065: 'm_pD3Ddev' : 定義されていない識別子です。" こんなエラーが出てビルドする事が出来ません。 恐れ入りますが、よろしくお願いします。
386 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:04:57 ] LPDIRECT3DDEVICE8 m_pD3DDev; をクラス定義に入れろ。
387 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:44:28 ] >>386 有難うございます。 無事に解決する事が出来ました。
388 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 13:28:41 ] って8でよかったのか?
389 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 16:48:14 ] >>384 わおすげー できた!おじちゃんありがとー!
390 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 23:57:18 ] LWでXファイルを書きだしたあとDirectXで読み込むときテクスチャーが読み込まれないの何でですか? DirectXのほうでテクスチャーを張り付ける処理をしなければいけないってことです?
391 名前:デフォルトの名無しさん [2008/09/03(水) 00:10:54 ] DirectXをダウンロードしたのですがスタートメニューから[DirectX]を検索して プログラム欄のフォルダを見ても中が空なんですがこれできちんとダウンロードされているのでしょうか? よろしくお願いします。。
392 名前:デフォルトの名無しさん [2008/09/03(水) 00:14:21 ] OSはvista DirectX10.0です いまいち効果が感じられないので質問するに至りました
393 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:14:51 ] DirectXってどれ? ランタイム?SDK?
394 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 09:19:46 ] >>390 DirectXの何で読み込んでいるかにもよる ポリゴンしか読んでないなら そりゃテクスチャも読まないとダメでしょう よくあるトラブルは テクスチャへのパスが間違っていること 一度Xファイルを覗いてみてパスが正しいか確認すべし
395 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 17:33:09 ] DirectXとOpenGLで共用できるようなメッシュクラスを作りたいと思っているのですが、 OpenGLのように頂点座標や法線、テクスチャ座標が別々の配列に分かれているデータを 一度に描画する方法はないのでしょうか? どなたか教えて下さい。
396 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 17:53:30 ] FVFに直すしかないんじゃね?
397 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 18:53:35 ] >>395 このへんが参考になるんじゃね? ttp://marupeke296.com/DXG_No53_DrawUsingStream.html
398 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 19:59:01 ] そんなのあったんだ!
399 名前:デフォルトの名無しさん [2008/09/04(木) 20:41:08 ] スキンメッシュAと普通のメッシュaをそれぞれD3DXLoadMeshHierarchyFromXとD3DXLoadMeshFromX で読み込ませたところ、なぜかaがAのモーションに引き寄せられるのですが。 解決方法が分かる人はいませんか?
400 名前:399の補足 [2008/09/04(木) 20:47:16 ] 普通のメッシュを複数読み込んだ場合、最初の一つ以外は普通に描画されます。
401 名前:399 [2008/09/04(木) 21:16:59 ] >>399 >>400 すいません。直りました。レンダリングさせる順番を間違えてました。
402 名前:395 mailto:sage [2008/09/05(金) 08:36:21 ] >>397 どうもありがとうございます! とても参考になりました。
403 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 19:28:57 ] テ゜バイスがなくなったときの処理はなくてもいいの?
404 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 19:46:37 ] ×テ゜バイス ○デバイス
405 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 21:58:35 ] 突然、何の前提条件の説明もなく質問する脳味噌の足りない馬鹿って、 どうして発生するんだろう?
406 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 22:04:21 ] DirectX以外の事もおおむね初心者だからです あなたのESP能力が試されているのです というわけでデバイスロストでググってまたきなさい
407 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:00:33 ] if(pD3DDevice->present(0,0,0,0)) { pD3DDevice->Reset(&m_D3DPP);
408 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:33:22 ] >>407 そんな最低のソース組むやつと仕事は出来ない。
409 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:40:01 ] >>408 トンマ ドベ アンポンタン ダボ アホ
410 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:47:58 ] 2000ミリ秒って何秒ですか?
411 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:51:59 ] 2秒?
412 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:33:11 ] >>410 PG辞めろ
413 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:34:06 ] >>412 トンマ ドベ アンポンタン ダボ アホ
414 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:43:22 ] >>413 トンマ ドベ アンポンタン ダボ アホ
415 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:46:28 ] >>414 トンマ ドベ アンポンタン ダボ アホ
416 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:06:00 ] この流れを何とかしてくれ 無視するわけにはいかない
417 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:07:42 ] >>41 トンマ ドベ アンポンタン ダボ アホ
418 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:20:20 ] 自演にしては手が込んでるな・・・ ID出ないからって調子乗りすぎ
419 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:21:24 ] >>418 トンマ ドベ アンポンタン ダボ アホ スケベ ノロマ
420 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 23:39:23 ] キーフレームアニメーションの分野に入ったんですけど この分野の概念は重要ですか?
421 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 00:52:12 ] >>420 それが重要かどうかは、420が何をしようとしているか分からなければ答えられないんじゃないか? まずはそれよりも、 >キーフレームアニメーションの分野に入ったんですけど もうちょっと、自分が言わんとしていることが人に伝わる文章になっているか、それを気にしたほうがいい。
422 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:35:57 ] コリジョンが簡単にできるPosbiliedクラスって本当に売ってるんですか
423 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 20:38:25 ] >>420 そのぐれー理解しとけレベルとして聞いてるならもちろん理解しなきゃダメレベル っていうかこれ嫌がったらキャラのアニメーション、エフェクトのアニメーションとか アニメーションまわり全部苦手になるじゃん 理解しろ
424 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 16:27:56 ] 板ポリに張り付けたテクスチャの透明度を動的に変化させたいのですが いままではカラー情報無の頂点(座標+テクスチャ座標のみ)をつかって ピクセルシェーダーで直接テクスチャカラーを 指定したアルファ値で書き換えていたのですが これを固定機能パイプラインで再現するにはどうしたらよいのでしょうか? 調べた限りでは頂点情報にカラー情報を入れて そこのアルファ値を使ってブレンドしているようなものは見つけましたが これだとアルファ値を変化させるたびにLockして書き換えることになるような気がします なにかさっくりとブレンド比を指定することはできないのでしょうか? 固定機能パイプラインを使ったプログラムほとんどしたことがないのでよろしくお願いします
425 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 17:16:48 ] 板ポリなんだから、DrawPrimitiveUPを使えばいいんじゃない? いちいちロックしなくて済むし
426 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 18:49:08 ] DrawPrimitiveUPのUPって何の略ですか?
427 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 18:55:05 ] ウンポーコ
428 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 19:04:09 ] User memory Pointer
429 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 19:46:21 ] >>428 THXRY
430 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 04:52:39 ] >>424 俺も悩んだ。頂点毎に色を変える必要がなければ、 1.レンダーステートでライトを有効にする。 2.ライト自体は全てOFF。 3.マテリアルカラーのデヒューズあたりをいぢる。 で変わったはず。 ただし、この方法だとなぜか元々頂点カラーの入っているポリゴン(グーローポリゴン) は変えることができなかった。解決方法は今も模索中。
431 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 10:33:18 ] >>430 ありがとうございます D3DRS_BLENDFACTORにて対応することにしました
432 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:33:59 ] StreamDataサンプル ttp://msdn.microsoft.com/ja-jp/library/cc370842.aspx が見つからないんですが、どのバージョン落とせば入ってるんでしょうか・・・ February2007を使っています。 どこかでサンプルだけ落とすことって出来るんですか? あとDirect Sound詳しく解説しているページや書籍があったら教えて頂きたいです。。。
433 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 22:48:19 ] drawprimitiveとLPD3DXSPRITE->Drawによる描画を同時に使っているのですが 描画した結果をキャプチャして一枚のテクスチャにするにはどうすればいいですか?
434 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 22:58:04 ] テクスチャをターゲットにする
435 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:06:31 ] スプライトに関連づけられたデバイスがSetRenderTargetでテクスチャ指定すれば DrawPrimitiveのものだけでなくスプライトもそのテクスチャに描画されるということですか?
436 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:09:45 ] グダグダ言う前にとっととやれ
437 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:48:51 ] D3DUSAGE_RENDERTARGETでテクスチャを作成して ・レンダーターゲットに設定して描画 ・GetRenderTarget→StretchRectでフレームバッファからコピー お好きな方をどうぞ
438 名前:デフォルトの名無しさん [2008/09/14(日) 17:04:12 ] DirectInput使ってキー入力してるんですが、ウィンドウを一旦非アクティブにすると、それ以降全てのキーが押された状態になるようです。 どうすれば直るでしょうか・・・
439 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 17:56:34 ] 協調レベルの設定を見直したら大丈夫になりました。 自己完結です。ご迷惑おかけしました
440 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 21:24:29 ] 行列計算とか距離計算だけをGPU?にやって欲しいんだけども、どうしたらそこで計算してくれますか?
441 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 21:42:21 ] ちょっと立ち止まって ホントにGPUで計算したほうが結果的にはやくなるのか考えてみよう
442 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 22:41:23 ] 昔はGPUでやってたよね(´・ω・`)
443 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 23:53:34 ] ゲームの場合 どう考えてもCPUの遊んでる時間のほうが長いんじゃね?
444 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 23:54:32 ] >>443 何いってるんだ・・・?
445 名前:デフォルトの名無しさん [2008/09/15(月) 08:37:45 ] つかFPU以上に速く処理できる場所ってあるのか?
446 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 10:10:32 ] 頂点毎に行列計算があるっていうなら止めないけど あくまでキャラのローカル座標程度ならCPUのほうがいいと思うよ
447 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 10:42:46 ] そろそろ破線描画について考えようぜ
448 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 11:46:16 ] 1軸固定のビルボードで余裕
449 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 12:50:24 ] >>445 GPU
450 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 20:09:45 ] 今まで全然気づかなかったんだけど、Manaded DirextX9のDirectDrawって もしかしてアルファブレンドに対応してるんですか? SDK見てたらAlphaSourceConstantプロパティとか見つけたけど また実装されてないとか・・・かな。
451 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 12:51:44 ] よく考えたらこれスプライトのことだな、すまん
452 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 15:43:38 ] DirectXをマスターしたいんですがお勧めの本教えてください。
453 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 15:46:51 ] その前にマスターの基準を明確にしてください。
454 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 15:48:00 ] MikuMikuDanceが作りたいです。
455 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 18:01:31 ] つDirectX逆引き500 つGameProgramingGems1〜6 つGPUGems つリアルタイムレンダリング
456 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 12:08:13 ] DirectXゲームグラフィックスプログラミングを買ってきました。
457 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 17:40:28 ] ウィンドウのクライアント領域サイズのテクスチャと変換済み座標を持つ頂点をつかって、 画面全体に画像を表示しようとすると、微妙にゆがんでしまいます。 これはどういったことが原因として考えられるでしょうか。
458 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 18:36:45 ] どうゆがむのかな
459 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:11:48 ] 1ピクセルおきの格子画像を作って表示させると、モワレ見たいになってしまいます
460 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:14:53 ] ノートパソコンじゃあるまいな
461 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:17:32 ] 普通に画像を表示させたらモワレがでないので、ディスプレイの問題とは思えないのです
462 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:24:20 ] 普通って?
463 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:25:13 ] すいません、ペイントとかで開くとってことです
464 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:27:41 ] クライアント領域の大きさはいくつ? DrawPrimitiveUPとかでやってるのならUVの設定とか頂点位置の設定が怪しいような
465 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:28:17 ] 同じ画面モードで表示してみてダメなのか?違うモードでは?複数のビデオカードでも同じなのか?ドライバのバージョンは?CRTや液晶では?
466 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 19:42:25 ] 0.5ずらして書いてないとかいうふざけた理由じゃあるまいな
467 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 12:24:04 ] いきなり返事がなくなったな
468 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:31:47 ] どうも困ったことになってしまいましたので、教えてください。 今まで何の問題もなく快適な速度で動いていた3Dベンチや3Dゲームなんですが、 久々に動かしてみると「3D処理系のゲーム全般含めて…」初めのほうはいいんですど、 途中でいきなり60fps前後のものが30〜20fpsにまでフレームが落ち込んで処理落ちしています。。。 3年ほど前に購入したFFXIベンチ動作認定済みのハイエンド型のノート型なんですけど、 実際に動かしている3Dゲームはこれよりも遥かに要求スペックの低いものです。 おかしなことに2Dゲームのときもこの症状が出てきます。これって何が原因かと思いますか? ツールを使って自分でチェックしたけど、もうダメ・・・解らなかったです。。。 ビデヲメモリの容量も問題ないと思うし、バス幅も問題ないと思う。CPU&GPUの性能も問題ないと思います。 メインメモリの一部の領域が壊れたら、こんな症状になるのかな?と、思ってMEMTEST86+にてメモリチェック を行ってみましたが、エラーもなく正常でした。 他に、ゲーム中にいきなりフレームが2/1にまで落ち込む原因は何が考えられるでしょうか? 教えてくだされば助かります。よろしくお願いします。 ---------------------------------------------------------------- 原因のパソコン : [DynaBook G8 / 型番:X20PDEW] OS : WindowsXP SP2 / DirectX 9c 詳細仕様 : dynabook.com/pc/catalog/dynabook/030512g8/spec.htm URL : dynabook.com/pc/catalog/dynabook/030512g8/hard.htm ----------------------------------------------------------------
469 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:44:37 ] で、C/C++と何の関係があるのかをまずは明確に説明しろ。
470 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:46:44 ] DirectX初心者質問スレ、って言ってもここはプログラム板なんだが…
471 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:49:53 ] >>468 リカバリーしる!
472 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 23:01:33 ] そういうときはOS再インスコでまっさらな状態にするのと簡単に直る。 長年使ってると色々な所でボトルネックが増えてきて新品時とはありえないほどパフォーマンスが落ちる。
473 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 00:52:58 ] リカバリーだな それでも「途中で落ちてくる」場合は放熱系の性能が落ちてるかもしれんね なら分解して掃除機orサポート逝きだな
474 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 00:56:10 ] サポートやってるとそれぐらいのは来るんじゃね?
475 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 09:54:47 ] DirectX勉強中なのですがDirectXにはテキストボックスとかは 無いのでしょうか? 全部自前でやるのでしょうか?
476 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 10:04:49 ] なんか定期的にその話出るな・・・ やり方は複数ある。もちろん自前でやってもいい
477 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 13:06:00 ] ヘタレの俺はダイアログ出してそこにエディットコントロールだがな・・・
478 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 13:11:07 ] 勉強中ならDXUTでいいんじゃね? てか、最近のサンプルって全部DXUT使って書いてあるよね
479 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 13:27:30 ] 凝り性の俺は自前で処理する どうでもいい部分に凝るのはなかなかに楽しい 進捗に貢献しないのでほどほどにしておかないといけないけれど・・・
480 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 13:30:37 ] 給料泥棒ですね
481 名前:デフォルトの名無しさん [2008/09/22(月) 15:00:38 ] 質問です。 xファイルを読み込んでプログラムでボーンを動かして アニメーションしたいと考えてますが ボーンを動かす方法がわかりません ヒントください...
482 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 15:39:19 ] ひどい質問だな
483 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 16:12:57 ] 単にスキンメッシュがしたいんです。 ってことなのか 頂点シェーダや固定機能パイプラインを使わないで CPUでボーンを動かしたいんです。 のどっちなんだ?
484 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 17:55:35 ] DirectXを使うならbccじゃなくてvc++のほうを使ったほうがいいんでせうか?
485 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 17:57:03 ] C++自体もVCの方がいいよ
486 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 18:41:22 ] XFile なんとかAllocaterとか使わず 自前で読み込んでやってみたら意外と簡単で感動した
487 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 18:02:38 ] すいません、ここの処理がよく分からないのですが //-------------------------------------- // 背景を描画 //-------------------------------------- // Z比較を行なう pD3DDevice->SetRenderState(D3DRS_ZENABLE, TRUE); // 元画像に合わせてオブジェクトのスケールを変える if(m_imgInfoBack.Height != 0) { aspect = (float)m_imgInfoBack.Width / (float)m_imgInfoBack.Height; } vScale.x = aspect; D3DXMatrixScaling(&mScale, vScale.x, vScale.y, vScale.z); mWorld = mScale; // ワールド変換マトリックスをパイプラインにセット pD3DDevice->SetTransform(D3DTS_WORLD, &mWorld); これだけじゃ質問の意味が分からないかもしれません・・・、申し訳ない // 元画像に合わせてオブジェクトのスケールを変える の所の処理について説明してもらえませんか よろしくお願いします
488 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 18:26:42 ] 正方形状に頂点を配置してるから、元画像の縦横比を保つために変換行列で正方形を横に広げることを指示してる。
489 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 19:14:07 ] >>488 ありがとうございます
490 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 16:13:21 ] GPUの描画能力を活かして描画ソフト(ポリゴンで二次元的な線や図形を描く)を作りたいのですが、 最終的にレンダリングされた画面をファイルに保存するときはどのような手順を踏めばよいでしょうか?
491 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 16:24:40 ] つD3DXSaveTextureToFile
492 名前:490 mailto:sage [2008/09/24(水) 17:28:10 ] >>491 ありがとうございました!!
493 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 18:19:38 ] 最強の入門書は?
494 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 19:15:33 ] DirectX以前の質問になってしまうが、教えて欲しい。 直方体や円柱の林の中を一人称視点で移動できるようなプログラムが 組める位までの知識が欲しいんだけどお勧めの書籍とかある? 当方のスキルは算数は困らん程度に出来るが、数学は微妙だ。 プログラムの言語はCとC++は一通り出来る(はず)。 MFC使って自分用のツールを作る程度のことは出来る。
495 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 20:45:39 ] sorceryforce.com/programing/mdx/ こんなわかりやすいサイトないですか?
496 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 22:49:58 ] キーボード、マウス、ゲームコントローラーとして認識されていない機器をDirectInputで扱うことはできますか? トランジスタ技術8月号についてきた78k0マイコンにスイッチを付けてコントローラーの様にしようと思ったのですが、 パソコンには仮想comポートとして認識されているため途方に暮れてます。
497 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 09:55:44 ] ドライバ書くのがいいかも。 って署名なしは入れにくいか
498 名前:デフォルトの名無しさん [2008/09/25(木) 11:39:02 ] >>494 三角関数、ベクトル、行列あたりの知識は絶対必要。
499 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 11:46:47 ] >>494 程度なら行列は使い方だけ分かれば数学的な知識なくても何とかなるけどな
500 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 12:14:29 ] すみません超初心者版で質問したのですが スレが消えてしまったのでこちらに改めて質問させてください リアルタイムロードシステムの妄想をしているのですが テクスチャをロードする際にMipMapの低レベルサーフェイスから順に 読み込めないかといろいろ試しているのですがいい方法が浮かびません デバイスのCreateTextureで必要なバッファを確保し、あとから自力で DDSファイルなりを読み込んでロックして放り込めば出来るかと思ったのですが D3DPOOL_DEFAULTで作成したものしかロックできないんだとか USAGE_DYNAMICは効率が悪いから使いたくないよ・・・・ なんかいい方法ないでしょうか?
501 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 12:40:31 ] >USAGE_DYNAMICは効率が悪いから使いたくないよ・・・・ この考えが間違っている 使え 以上
502 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 13:47:54 ] >>501 回答ありがとうございます! リファレンスのD3DUSAGE_DYNAMICを見直してみたところ、 頂点バッファに関しては配置場所が変わる可能性があるようですが、 テクスチャに関しては特にそういった記述が見当たりませんでした。 つまりテクスチャに関してはDYNAMICにしても、速度的なデメリットは無いんでしょうか? 宜しくお願いしますm(_ _)m
503 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 15:15:51 ] MipMapの低レベルサーフェスから順に読み込む理由が知りたい。 っていうか、Lockできる条件を勘違いしてるだろ。 >D3DPOOL_DEFAULT で作成されたテクスチャはロックできない。 (SDKのヘルプより)
504 名前:494 mailto:sage [2008/09/25(木) 16:02:40 ] >>498 、499 とりあえず教えて貰ったキーワードを元に、 ググる先生に参考書になりそうな本を聞いてくる。
505 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 16:05:47 ] >>504 来月始め頃にちょうどいいのが出るような気がした
506 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 16:08:09 ] っと、名前忘れてたんで探してきた、これだ ttp://www.oreilly.co.jp/books/9784873113777/ もちろん1行も読んでないので、どんなもんかはわからん。
507 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 16:12:26 ] 移動するくらいなら算数だけできればおk
508 名前:500 mailto:sage [2008/09/25(木) 16:20:39 ] 低レベルから順にロードする理由は、数フレームにわたってリアルタイムロードする場合は 低解像度でもいいので出来る限り早く読み込んで表示したいからです それから >D3DPOOL_DEFAULTで作成したものしかロックできないんだとか は >D3DPOOL_DEFAULTで作成したものは、USAGE_DYNAMICを指定しないとロックできないんだとか の間違いでした。すみません
509 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 17:00:08 ] >>508 D3DPOOL_DEFAULTならLockするより、UpdateTextureや UpdateSurfaceを使った方が速い。
510 名前:500 mailto:sage [2008/09/25(木) 17:45:03 ] ご意見どうもです UpdateSurfaceでやると、ロックするのと違いなぜ速くなるのでしょうか? システムメモリ上にもテクスチャを作ることになりそうであまりやりたくないかなと^^; また、D3DXLoadSurfaceFromMemoryと言う関数を見つけたのですが、 これで代用することもできますでしょうか?
511 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 17:58:41 ] 入門書はなにがよろしくって?
512 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 19:22:44 ] >>510 UpdateTextureはDMAが使用される。 転送速度そのものは、DMAを使おうが使うまいが大差ないが DMAの場合は転送中にCPUがフリーになって他の処理ができる。
513 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 21:32:03 ] >>512 それならMANAGEDでいいですやんって話
514 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 23:44:30 ] ポイントプリミティブを同じ座標に描画して色のブレンドを行いたいのですが上手く行きません。 これは無理なことなんでしょうか?
515 名前:デフォルトの名無しさん [2008/09/26(金) 02:42:55 ] directx10 SDK だとdirectsoundが使えないとかないよね? 音が鳴らない・・・
516 名前:デフォルトの名無しさん [2008/09/26(金) 07:46:42 ] ↑ 音だけ鳴らす最小限のサンプルを見つけて、そこからチェックしてみたら?
517 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 07:49:48 ] DirectX10のSDKなんてないだろ。 DirectSound自体はDirectX8の頃から変わってないし最新SDK使ってても普通に鳴るぞ。
518 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 12:12:09 ] 自分のプラグラムのバグだとは思わないのかね 何でも人のせいにするんじゃないよ
519 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 12:18:32 ] directx10 SDK→Vistaを使ってる VistaとDirectSoundの相性関係でうまく再生できてない って事はない? 何れにしろ再生できるはず
520 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 12:54:06 ] 存在しないSDKの名を上げ、何をどうしたのかも書かず、 自分のプログラムを疑わず他人のせいにする。 プログラマ適性0だから、そのそも足を洗うのが正しい選択だろう。
521 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:27:24 ] OpenALへようこそ
522 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:41:30 ] やっぱそういう流れなのかな^^; 日本語ドキュメントさえあればそれでもいいんだけど XAudio2ってどうなってんの?未だ未完成だよね
523 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:46:29 ] 3DCGツールにボーンってあるじゃないですか? あれってDirectXの機能じゃないですよね? 自分で実装する領域ですよね? 素人ですまそ。
524 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:48:16 ] 補助機能みたいなのはあるにはあるが自分で実装する部分だね
525 名前:デフォルトの名無しさん mailto:sage [2008/09/26(金) 17:50:46 ] >>524 そうですよね。ありがとうございます。 例えば人体のモデルがあったとしても ボーンを入れるならボーンごとにモデルを分けないと いけないってことですよね。
526 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 15:14:37 ] >ボーンごとにモデルを分けないと 頂点バッファやインデックスバッファ自体はひとつでもいい。 各頂点にボーンの番号付けて、頂点シェーダでそれ見て変換する。
527 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 15:29:06 ] >>525 別のボーンに限らずモデル描画自体は自分で全部実装する部分なのでボーンだけが特別なわけじゃない。
528 名前:デフォルトの名無しさん [2008/09/27(土) 15:58:52 ] >>459 と同じ状況に陥りました。拡大するとより一層モアレが目立ちます。 デバイスタイプをHALからREFに変えたら画像がはっきりするのですが、 かなり重たくなってしまいます。 REFを使わないでモアレを消す方法を知っている方がいればお願いします。 PCは「Let'Note」で「directx9 」使ってます。
529 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 16:48:55 ] ビデオカードを変える
530 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 16:52:16 ] ビデオカードによって見た目は変わるんだよ 現状でモアレを消すならミップマップを使う、モアレの出ないような絵にする
531 名前:デフォルトの名無しさん [2008/09/27(土) 17:29:54 ] >>529 >>530 ビデオカード変えたらかなり綺麗になりました。 こんなに変わるものなんですね・・・ ミップマップの方も挑戦しようと思います。 アドバイスくれた方ありがとう御座いました m(>_<)m
532 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 20:38:37 ] >>531 デバイスの初期値もあまりあてにはならない。 全てのステートを起動時に初期化するべき。 あとビデオカードのユーティリティで強制的に 異法性フィルタやMSAAとかがONになっている可能性もある。
533 名前:468 mailto:sage [2008/09/28(日) 00:10:55 ] >>471-473 レスが遅れてしまいましてすみません。 貴重なご意見をありがとうございました。 皆さんの意見を参考に、こちらで色々と作業をやってみたいと思います。 原因解消の復旧というか、最後の手段はやはりOSの再セットアップしかなさそうですね。 がっばってみます。
534 名前:504 mailto:sage [2008/09/29(月) 14:06:49 ] >>505-506 レスが遅くなってすまん。 まさにぴったりなタイトルだよ。 マジサンクス。 早速、密林に予約した。
535 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 18:24:39 ] DirectX9勉強して1年になるのですが、関数が多すぎて全部覚えられそうにありません・・・。 皆さんはどんなふうに覚えてますか?
536 名前:デフォルトの名無しさん [2008/09/29(月) 18:26:36 ] 名前とかスコア表示用にアルファベットと数字のビットマップを等間隔で出力するツールってないかな?
537 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 18:29:14 ] >>536 SentSentBampTool ???
538 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 18:39:28 ] >>535 覚えない いつもMSDNを参照してる
539 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 18:53:09 ] >>535 関数を沢山覚える必要はないが、 貴方のやりたい事にもよるけど、例えば マルチパスレンダリングの手順などは覚えていた方がいいと思う。 皆はどう思う?
540 名前:デフォルトの名無しさん [2008/09/29(月) 21:32:07 ] DirectX 初心者です。 DirectX9 を用いて下記のことを やっているのですが、上手く表示が出来なくて困っています。 DrawPrimitiveにてD3DPT_TRIANGLELISTを指定して 4つ三角形をテクスチャを貼り付けてレンダリングしようと しているのですが、D3DRS_ZENABLE=TRUE , D3DRS_ZWRITEENABLE=TRUE とした時にテクスチャがうまく貼り付けられなくて困っています。 D3DRS_ZENABLE=FALSE とすると、うまく貼り付けられるのですが 今度は各三角形を個別に描画したような絵になってしまいます。 D3DRS_ZENABLE=TRUE, D3DRS_ZWRITEENABLE=TRUEでも、D3DRS_ZFUNCに D3DCMP_ALWAYS とするとテクスチャはうまく貼り付けられるのですが、 D3DRS_ZENABLE=FALSE とした場合同様、各三角形を個別に描画した ような絵になってしまいます。 よろしくおねがいします。
541 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 22:29:13 ] Zの問題とテクスチャの問題は別だ まずZENABLE=FALSEの状態で正しく描画されるようにしよう うまく描けたら、ZENABLE=TRUEの状態でもいけるように直す テクスチャ座標がまずいんでない?
542 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 22:39:00 ] >>541 ありがとうございます。 こんな感じで定義しています。 #define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ | D3DFVF_TEX1 ) typedef struct { FLOAT x, y, z; FLOAT u,v; } CUSTOMVERTEX; CUSTOMVERTEX vertices[] = { { 0.0f, 0.5f, -0.5f, 0.0f, 0.0f }, { 0.0f, 0.5f, 0.5f, 1.0f, 0.0f }, { 0.0f, -0.5f, -0.5f, 0.0f, 1.0f }, { 0.0f, 0.5f, 0.5f, 1.0f, 0.0f }, { 0.0f, -0.5f, 0.5f, 1.0f, 1.0f }, { 0.0f, -0.5f, -0.5f, 0.0f, 1.0f }, { -0.5f, 0.5f, 0.0f, 0.0f, 0.0f }, { 0.5f, 0.5f, 0.0f, 1.0f, 0.0f }, { -0.5f, -0.5f, 0.0f, 0.0f, 1.0f }, { 0.5f, 0.5f, 0.0f, 1.0f, 0.0f }, { 0.5f, -0.5f, 0.0f, 1.0f, 1.0f }, { -0.5f, -0.5f, 0.0f, 0.0f, 1.0f } }; よろしくお願いします。
543 名前:デフォルトの名無しさん [2008/09/29(月) 23:18:37 ] >>541 すみません。 ZENABLE=FALSE の時には正しく描画されているように見えます。 ただ、1つ1つの三角形を個別にレンダリングしたような感じになっ てしまいます。(陰影などが全く反映されません) よろしくお願いします。
544 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 23:47:55 ] それは、テクスチャが貼れてないだけ? ポリゴン自体は描けてる? Zバッファのクリアをミスってるとか
545 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 23:51:19 ] 法線がないようだが、ライティングはオフにしてる?
546 名前:デフォルトの名無しさん [2008/09/29(月) 23:57:28 ] >>544 >>545 ありがとうございます。 はい、テクスチャがうまく描画されないだけみたいです。 Zバッファのクリアはとくにしていないのですが、どうやれば 良いでしょうか? はい、ライティングは無効にしてあります。 SetRenderState( D3DRS_CULLMODE, D3DCULL_NONE ); SetRenderState( D3DRS_LIGHTING, FALSE ); SetRenderState( D3DRS_ZENABLE, TRUE ); SetRenderState( D3DRS_ZFUNC, D3DCMP_LESSEQUAL ); SetRenderState( D3DRS_ZWRITEENABLE, TRUE ); SetRenderState( D3DRS_ALPHATESTENABLE, FALSE ); SetRenderState( D3DRS_SPECULARENABLE, FALSE ); SetRenderState( D3DRS_DITHERENABLE, FALSE ); SetRenderState( D3DRS_FOGENABLE, FALSE ); SetRenderState( D3DRS_SPECULARENABLE, FALSE ); SetRenderState( D3DRS_RANGEFOGENABLE, FALSE ); SetRenderState( D3DRS_STENCILENABLE, FALSE ); よろしくお願いします。
547 名前:デフォルトの名無しさん [2008/09/30(火) 00:10:28 ] >>544 >>545 ありがとうございます 動きました! Zバッファをクリアする必要があることを知りませんでした。。。orz... 本当にありがとうございました。
548 名前:デフォルトの名無しさん [2008/09/30(火) 13:02:49 ] すごく初歩的な質問で恥ずかしいのですが・・・ DirectXで3Dゲームを作る場合、3Dグラフィクス自体は(キャラクターのモーションなど)専用のグラフィックツールで作ると言う形なのでしょうか?
549 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 13:09:52 ] あ・た・り・ま・え
550 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:44:47 ] 1>gamemain.cpp 1>c:\documents and settings\^^^^^^\デスクトップ\src\test90walking\test1\../../class/classlib.h(70) : fatal error C1083: include ファイルを開けません。'dpaddr.h': No such file or directory これと同じエラーが20個もでてコンパイルできないのですがどう対処すればいいのでしょうか・・・? 3Dリアルタイムアニメーションという書籍のサンプルです。
551 名前:550 mailto:sage [2008/09/30(火) 17:45:25 ] dpaddrというヘッダファイルがどこにもなくて・・・。
552 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:56:38 ] DirectX SDK には以下のコンポーネントは含まれなくなりました。 Direct3D 8 とそれ以前のすべてのバージョン Direct3D RM DirectAnimation DirectMusic DirectInput7 およびそれ以前のすべてのバージョン DirectPlay DirectPlayVoice DirectX 8 時代の HRESULT 変換ルーチン Managed DirectX サンプルとドキュメント これらのコンポーネントをご利用になりたいデベロッパーは、MSDN から入手可能な August 2007 DirectX SDK をダウンロードする必要があります。
553 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:56:48 ] DirectPlay関連のヘッダーだろ DirectX8のSDKにあるんじゃないかな。
554 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 18:09:13 ] ありがとうございます インストールしてみます
555 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 22:17:42 ] BCCでDirectXを使うにはどうすればいいんですか?
556 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 22:20:24 ] SDK入れよう
557 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 00:45:19 ] >>548 に便乗して質問。 どんなグラフィックソフト使ってる?
558 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 07:37:30 ] 3DS MAX
559 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 08:36:05 ] うらやましい限りだぜ 俺はBlender
560 名前:デフォルトの名無しさん [2008/10/01(水) 09:14:54 ] Mayaってどうなんだろ
561 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 09:39:52 ] この手のツールは無料から始めたほうがよさげ。 使い切れずに放り投げるには高すぎるからなw
562 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 09:50:07 ] 金があったら ZBrush+3DSMAXが最強な希ガス
563 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 10:30:15 ] 俺はMikuMikuDance
564 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 10:35:51 ] MAXの無料版ってもう無いの?
565 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 10:42:11 ] 先日買った書籍に3Dリアルタイムアニメーションというのがあるのですが。 LightWaveで作ったアニメーションをUViewで読み込んでOBJ形式で描きだして DirectXで読み込む方法を使っているのですがUViewは現在販売していないらしく 他のソフトで代用して欲しいと最後に筆者が記述していたのですが 他のソフトってどんな物があるのですか? 何個か教えてもらえたら嬉しいです!
566 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 11:41:51 ] obj形式なら普通にエクスポート出来ると思うが? じゃなくてOBJ形式をXファイルに変換とか? 何れにしてもLightWaveの標準機能で出来た希ガス
567 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 10:46:19 ] ID3DXEffectを使用した場合、シェーダのグローバル変数の共有や、ステートの一括変更などが可能ですが これらの処理をID3DXEffectを使用しないで自前で実装することは可能でしょうか? リファレンスを見ているのですが、変数を共有する方法は全く見当たりませんし ステートブロックを自前で管理したとしても、API呼び出しは回数は減らせないですよね? ID3DXEffectを使用しないという人は結構いると思うのですが、この辺はどうやって解決しているんでしょうか・・・ 宜しくお願いしますm(_ _)m
568 名前:567 mailto:sage [2008/10/02(木) 10:51:24 ] すみません、ステートブロックに関してはIDirect3DStateBlock9が使えることが分かりました これに関しては何とかなりそうです。
569 名前:デフォルトの名無しさん [2008/10/02(木) 11:06:45 ] 俺はMayaかってしまった。マジすごいなこれ。
570 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 12:05:45 ] ブルジョワジーめ
571 名前:デフォルトの名無しさん [2008/10/02(木) 16:20:40 ] August 2007のDirectX SDKを入れていますが、IA64のライブラリがついていません。 付属してるバージョンのSDKを知ってる方はいませんか?
572 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 16:34:22 ] うああああああ シェーダー定数の共有のさせ方わっかんねーwww 燃えてきたぜ
573 名前:567 mailto:sage [2008/10/02(木) 17:22:54 ] 結局sharedキーワードでうまく共有する方法は分からないが レジスタを直接指定すれば共有できることは分かった 取りあえずこれでいこうと思います。もっといい方法があったら教えていただけると助かりますm(_ _)m
574 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 22:51:57 ] >>573 1、ID3DXEffectPoolオブジェクトを作成(D3DXCreateEffectPoolを使用) 2、sharedをつけた変数を宣言したFXファイルを作成 3、共有したいFXファイル全てに2のFXファイルをインクルード 4、3のFXファイルをコンパイル時、D3DXCreateEffectに1のID3DXEffectPoolオブジェクトを引数で渡す。
575 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 22:59:03 ] ん? ID3DXEffectを使わないで変数の共有をしたいって言ってるのか? そりゃー、逆アセンブルしてD3DXがどう解決しているか確認してみりゃいいんじゃね まーEffectPoolなんて使ってる以上、力技だろってのは想像がつくがな
576 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 23:04:30 ] 単純に変数を一時的にEffectPoolに入れておいてるだけで、 結局描画時に全部毎回マッチングしてレジスタに設定してるんじゃ無いっけ? あくまでユーザー側からは同じ変数のように見えているだけで。
577 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 08:32:57 ] >>576 マジすかw だとしたら効率的には何の意味もないんだな^^;
578 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 10:58:52 ] 頂点シェーダーにハードウェア対応していないグラフィックカードでは 頂点処理はCPUで実行されると思いますが、その場合に D3DPOOL_DEFAULTを指定して作成したっ頂点データは システムメモリ上に配置される可能性が高いんでしょうか? システムメモリ上に配置されるということはレンダリングの度にシステムメモリから ビデオカードへのデータ転送が発生しているのでしょうか?
579 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 13:08:38 ] >>576 そういえば、頂点シェーダー(VS)とピクセルシェーダ(PS)を別々にビルドしてセットする場合って、 VSとPSそれぞれの定数テーブルに値をセットする必要があると思うけど (VSとPSでレジスタ空間が違うからなのか?違うよね?) この辺もD3DXEffect系使った時って意識しないから、やっぱD3DXEffect系は内部でいろいろやってるのか…
580 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:26:43 ] 1>.\MapModel.cpp(622) : error C2065: 'DXFILEFORMAT_BINARY' : 定義されていない識別子です 最後にこのエラーだけ解決できません・・・。 対処方法を教えていただけませんか?
581 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:32:44 ] >>578 頂点変換をハードウェアで対応してなければ システムメモリから転送するしかない。 RadeonHD3450が5000円で買えるんだから 素直にDirectX10対応のビデオカード買えばいい。 >>579 かといって自分で全部管理した方が速くなるのか?という話になると どちらかといえば遅くなるだろうから素直にID3DXEffect使う方がいい。 すでにDirectX10ではそれしかないし。
582 名前:580 mailto:sage [2008/10/03(金) 20:37:52 ] if (FAILED(D3DXSaveMeshToX(name, pMesh, NULL, material, NULL, 3, DXFILEFORMAT_BINARY))) return false; return true; } コードです
583 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:55:18 ] >>582 使ってるSDKが新しすぎるんじゃね? よく分からんわ
584 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:28:42 ] >>580 それは、dxfile.hに定義がある。 使いたければ、includeしろ。 てか、それ間違ってるんで #include <d3dx9xof.h> を追加して D3DXF_FILEFORMAT_BINARYを使え。
585 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:33:51 ] おまいらどうやってDirectX勉強したの? 独学?
586 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:45:02 ] 独学
587 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 23:00:30 ] すっげー
588 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 23:05:32 ] 俺はDirectX5の頃からだぞ、なめんな あと歳は聞くな
589 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 23:13:15 ] WinGから じじい言うな
590 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:11:11 ] d3dx9_xx.dllにはいろんなバージョンがありますが、ロードするのは一番数字が大きいものでいいのでしょうか。 それとも、各バージョンごとで互換性が低いのでしょうか。
591 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 01:15:57 ] つかってるSDKによって勝手に対応するバージョンのものが呼ばれる
592 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 01:23:05 ] それはd3dx9.libをリンクしていたらってことですよね。 友達にプログラムを渡したら二人が二人ともd3dx9_xx.dllがないとエラーが出るといっていたので、 とりあえず一番に、最新のDirectXを入れるように言ったのですが、 プログラム側で選択してもよいものなのかと疑問に思ったのです。
593 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 01:28:19 ] >>592 >プログラム側で選択してもよいものなのかと疑問に思ったのです。 それをやれるだけのスキルがあるならやればいいと思うけど、 「やってみたいんですけどうまくいきません」というのならやるなと言いたい。
594 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 01:31:04 ] >>592 Web Installerで全部のd3dx9_xx.dllをインストールしてくれるから、これ実行してもらうといいよ。 www.microsoft.com/downloads/details.aspx?familyid=2da43d38-db71-4c1b-bc6a-9b6652cd92a3&displaylang=ja
595 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 01:37:51 ] ということは少なからず差異があるようですね。 >>594 のページを教えて、インストールさせようと思います。 ありがとうございました。
596 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 05:27:32 ] Direct3D 9 Driver Development Kitなんて何処にあるんだ・・・?
597 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 07:23:51 ] ぶっちゃけ 自分のPCにはいってる一番番号の大きいdllを exeと同じフォルダに入れて渡せば動くよ
598 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 10:49:32 ] >>588 WinG〜GameSDK
599 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 13:29:21 ] typedef struct _D3DLVERTEX { D3DXVECTOR3 pos; D3DCOLOR color; D3DCOLOR specular; D3DVALUE tu; D3DVALUE tv; } D3DLVERTEX, *LPD3DLVERTEX; #define D3DFVF_LVERTEX (D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | D3DFVF_TEX1) _D3DLVERTEX についている_の意味ってなんですか?
600 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 13:44:02 ] 別にそこで使った名前は他で使わないから適当でううんだけど よそと名前がぶつかったら困るでしょ。 そのために自分たちだけで決めたルール
601 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 14:30:43 ] なるほど そういうことですか ありがとうございjます
602 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 22:58:01 ] おしえてください。 ウィンドウサイズの変更イベント OnSize() の中で、 Reset() を使っているのですが、D3DERR_INVALIDCALL というエラーが出て先に進めなくてこまっています。orz... D3DPRESENT_PARAMETER の中身は、 BackBufferWidth 0 BackBufferHeight 0 BackBufferFormat D3DFMT_X8R8G8B8 BackBufferCount 0 MultiSampleType D3DMULTISAMPLE_NONE MultiSampleQuality 0 SwapEffect D3DSWAPEFFECT_DISCARD hDeviceWindow = GetSafeHwnd() で取得したハンドル Windowed 1 EnableAutoDepthStencil 1 AutoDepthStencilFormat D3DFMT_D16 Flags 0 FullScreen_RefreshRateInHz 0 PresentationInterval 0 です。 よろしくお願いします m(_ _)m
603 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 23:02:45 ] ウィンドウハンドルがNULLとか
604 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 23:23:42 ] >>603 ありがとうございます。 D3DERR_INVALIDCALLが発生する原因がわかりました。 リソースをD3DPOOL_DEFAULTで確保するとダメみたいです。 OnSize() でウィンドウサイズを可変した時に3D画像のアスペクト比が 変わってしまうのを防ぎたかったのですが、Resetを呼び出してもダメ みたいです。 アスペクト比を固定するにはどのようにすれば良いでしょうか? よろしくお願いします。
605 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 23:32:34 ] D3DPOOL_DEFAULTで作成したリソースをいったん削除してからデバイスをリセットして、その後でリソースを作り直す。
606 名前:デフォルトの名無しさん [2008/10/04(土) 23:39:07 ] >>605 ありがとうございます。 早速ためしてみます。
607 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 23:41:30 ] >>604 何がしたいのかわからないんだが ウインドウサイズが変わった時点で 変更後のサイズからアス比を再計算して 射影行列を作る時に指定しているアス比を変更するだけじゃだめなのか? D3DXMatrixPerspectiveFovLHとかの話 ついでに流れ的に関係あるようでないような質問 テクスチャとかメッシュとかはパフォーマンス的には置いといて デバイスのロストを気にしなくても良い様にできるけど ID3DXEffectだけは対応しなくちゃいけない感じなんだが これって何かの設定で対応しなくて良いようにできるものなの?
608 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 23:50:09 ] >>607 バックバッファの大きさは変わらないんだからぼんやりしちゃうだろ
609 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 00:23:15 ] デフォルトのバックバッファを使わないで、 後から確保した物を使えばリセットする必要性は皆無
610 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 00:48:32 ] >>607 ID3DXEffectの仕様として管理下はサポートされていないので それは無理だろ。 ただ、ロスト対応が必要な理由として、シェーダ引数のテクスチャと ステートブロックがあるからだろうと考えられるので エフェクトに渡すテクスチャは管理下のみ、 pass内でステートの変更はしない、ステートブロックは使わない、などの 対策をすれば、大丈夫になるかもね。
611 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 00:51:57 ] マルチディスプレイで WindowモードのWindowを他方のWindowへ移動すると presentが遅くなるのはどうしようも無いですか?
612 名前:デフォルトの名無しさん mailto:sage [2008/10/07(火) 16:03:48 ] VOID DrawText(ID3DXFont* pFont, char* text, DWORD x, DWORD y, D3DCOLOR Color) { RECT Rect; SetRect(&Rect, x, y, CW_USEDEFAULT, CW_USEDEFAULT); pFont->DrawTextA(text, -1, &Rect, DT_LEFT | DT_NOCLIP, Color); } の pFont->DrawTextA(text, -1, &Rect, DT_LEFT | DT_NOCLIP, Color); この部分で error C2660: 'ID3DXFont::DrawTextA' : 関数に 5 個の引数を指定できません。 と言うエラーが出てしまいます 自力で調べた所DirectX SDKの仕様が変わったためにコンパイルできないらしいと言うところまではわかったんですが どのように書き直せば良いのかわかりません どのように直せば良いのでしょうか ちなみにSDKはaugust 2007です よろしくお願いします
613 名前:デフォルトの名無しさん mailto:sage [2008/10/07(火) 16:14:53 ] 第一引数にD3DXSPRITEを渡さないとダメ 最新のSDKのマニュアルとサンプルを見るべし
614 名前:612 mailto:sage [2008/10/08(水) 14:40:09 ] ありがとうございました やってみます
615 名前:デフォルトの名無しさん [2008/10/08(水) 15:35:55 ] これからDirectXをまなぼうと思っています ゲームをつくりながら解説していくようなサイトを探しています オススメがありましたら教えてください C++とWINAPIの基本は理解しています
616 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 15:36:41 ] age失礼しました
617 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 16:12:12 ] DirectInputで作成したマウスデバイスで、強調レベルを非排他に設定したときだけAquireメソッドが成功しません。 どういうときに失敗するのでしょうか。
618 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 18:39:17 ] >>617 Aquireは排他制御のためのメソッドだから、非排他設定なら必要ないだろう。
619 名前:617 mailto:sage [2008/10/08(水) 21:22:12 ] どんなサイトの解説を見ても、必ずAcquireメソッドをよんでるんですが・・・ 少なくともサイトの管理人の環境では、実行できてるってことですよね?
620 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 21:40:22 ] >>619 Acquireを呼んでいるのと、Acquireが成功するかは別問題。 MSのサンプルだってAcquireは呼んでいる。 でも、それが成功したかなんて気にしていない。
621 名前:617 mailto:sage [2008/10/08(水) 21:54:33 ] 日本語版のMSDNでようやく該当する記述を見つけました。 Acquireの戻り値として、 >DIERR_OTHERAPPHASPRIO 他のアプリケーションの優先レベルの方が高いので、この呼び出しを実行できない。 >この値は、標準の COM 戻り値である E_ACCESSDENIED に等しい。このエラーが返されるのは、 >デバイスに対するアプリケーションのアクセス権がフォアグラウンド アクセス権であるにもかかわらず、 >バックグラウンドであるときにデバイスを取得しようとした場合である。 とありました。WM_CREATEの処理内で呼び出していたために失敗していたようです。 大変お騒がせしました。まさか日本語ページの方が詳しいなんて・・・
622 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 00:11:47 ] DirectSoundはDirextX8も9も一緒なんですか? DirectSoundCreate8からDirectSoundCreate9になるのかと思ったんですがないといわれます。 ライブラリの追加はdsound.lib dxguid.lib winmm.lib だけでいいんですか?
623 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 02:15:01 ] 質問です。 DirectXで作られたゲームを公開する場合、マイクロソフトの著作権表記などは 必要なのでしょうか? ttp://www.microsoft.com/japan/msdn/directx/japan/license/eula.aspx ttp://www.microsoft.com/japan/msdn/directx/japan/license/dx_license.aspx 一応上を読んでみたのですが、ごちゃごちゃ書いてあって正直よくわかりません。
624 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 08:26:40 ] >>622 dsound.hの中を見ればわかるよ DIRECTSOUND_VERSION >= 0x0800 なので8も9も同じ libはそれでいいんじゃない 未解決とか言われたら追加すればいい
625 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 10:12:20 ] 質問です DirectX8で作られた古いソースが出てきたのですが、現在PCには9.0cのSDKが入っています。 上記ソースをコンパイルしようとしたところ #include <d3d8.h> #include <d3dx8.h> こいつらがないと言われてしまったのですが、DirectX8のSDKをインストールしないとダメってことでしょうか。 (普段は9のプログラムを組んでいるので)競合しそうで怖いのですが、何か良い手はありますでしょうか
626 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 10:19:36 ] 俺も場合は複数バージョンのSDKをインストールしないで解凍して保管する で、includeやlibは新しいバージョンを優先しとけばないものだけ古いものから参照される
627 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 12:46:20 ] >>625 >>552
628 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 13:06:39 ] >>625 オプションのVC++ディレクトリを C:\Program Files\Microsoft DirectX SDK (March 2008)\Include C:\Program Files\Microsoft DirectX SDK (August 2007)\Include ・ ・ こんな感じにしてるが心配ならDX8のときは順番を入れ替えればいいんじゃない
629 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 15:14:18 ] DirectInputのマウスデバイスで相対座標のデータを得るとき、値1が1pxと対応しているわけではないと思うのですが、 どうやってピクセル単位の座標変化を求めればいいでしょうか。
630 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 15:59:32 ] 対応してた気がするが?
631 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 16:09:01 ] 629 つまりプログラムのミスですか。確認してみますorz
632 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 17:09:17 ] サウンドバッファはプライマリとセカンダリ両方作る必要はあるんですか?サンプルを見たんですが、2つ作ってるのにセカンダリしかつかってないように見えるんですが
633 名前:629 mailto:sage [2008/10/09(木) 19:43:32 ] やっぱりどうしても、実際のカーソルの位置と、DirectInputで求めたカーソル移動量が食い違います。 スクリーン上で1000px水平に移動させると、移動量の合計が600〜800くらいになっています。 下がそのコードなのですが、どこか間違っているところがありますか? void MouseDevice::UpdateState() { HRESULT hr; if (hr = pDevice_->Acquire(), FAILED(hr)) { LOG_WARN("IDirectInputDevice8::Acquire 非アクティブになった?"); return; } DIMOUSESTATE mouseState; if (hr = pDevice_->GetDeviceState(sizeof(mouseState), &mouseState), FAILED(hr)) { LOG_ERROR("IDirectInput8::GetDeviceState"); return; } cursorPos_.x = clamp(cursorPos_.x + mouseState.lX, 0L, 1279L); cursorPos_.y = clamp(cursorPos_.y + mouseState.lY, 0L, 1023L); //SetCursorPos(cursorPos_.x, cursorPos_.y); POINT pt; GetCursorPos(&pt); std::stringstream ss; ss << "MOUSE " << cursorPos_.x << "," << cursorPos_.y << " (" << pt.x << "," << pt.y << ")"; LOG_INFO(ss.str().c_str()); }
634 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:07:33 ] >>633 関係ないけど ,演算子をそんな風に使う人は初めて見た
635 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:10:37 ] WAVEFORMATEX構造体のnSamplesPerSecに値がはいらないんですが、どうしてですか? WAVEFORMATEX FEX; ZeroMemory(&FEX, sizeof(WAVEFORMATEX)); FEX.nSamplesPerSec = 44100; ここで変数をみても44100が入ってなくて0なんですけど
636 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:12:16 ] >>633 試してないのでわからんけど、マウスカーソルの加速の分がずれてるとか・・・?
637 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:25:37 ] >>636 ありがとうございます。「directinput マウス 加速」で検索したら解決しました。 DirectInputではマウスドライバから直接データを得るので、ウィンドウズのカーソルを意識するアプリケーションは Win32関数かメッセージを使うように書いてありました。
638 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:30:29 ] //ローカル回転&ワールド移動 >> ワールド変換行列設定 // //角度はRAD HRESULT CDXDevice::SetWorldTransformLW(D3DVECTOR &l_rot, D3DVECTOR &w_trans, int index) { D3DXMATRIX mat,mat2; D3DXMatrixIdentity(&mat); if (l_rot.x) { D3DXMatrixRotationX(&mat2, l_rot.x); D3DXMatrixMultiply( &mat, &mat, &mat2); } if (l_rot.z) { D3DXMatrixRotationZ(&mat2, l_rot.z); D3DXMatrixMultiply( &mat, &mat, &mat2); } if (l_rot.y) { D3DXMatrixRotationY(&mat2, l_rot.y); D3DXMatrixMultiply( &mat, &mat, &mat2); } D3DXMatrixTranslation( &mat2, w_trans.x, w_trans.y, w_trans.z); D3DXMatrixMultiply( &mat, &mat, &mat2); return SetWorldTransform( &mat, index); } 行列を掛ける順番って x z yなんですか?
639 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 20:36:35 ] 望む結果に応じて好きな順序で掛ければ良い
640 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 21:37:53 ] どなたか>>623 の質問に答えられる人はいませんか?
641 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 23:19:49 ] DIRECTXで描画をしながら、Windowsのテキストボックスなどを表示したいのですが どのような方法がありますでしょうか? 普通にウィンドウにコントロールを作成するだけでは DIRECTX側のpresentで上書きされてしまい、表示することができません。 ウィンドウモードならば、ウィンドウ作成時にWS_CLIPCHILDRENを指定することで テキストボックスを部分のみをクリッピングすることができたのですが フルスクリーンモードでは、当然上書きされてしまいます。 フルスクリーンモードでも通用する、何か良い方法はありませんでしょうか?
642 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 23:25:12 ] GXUT custom UI
643 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:00:03 ] ニセフルスクリーンモードにする
644 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:01:41 ] >>641 上書きしないところに描かなければ良いだけ そんな当たり前なことを聞く意味が分からない
645 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:11:34 ] >>644 日本語でおk
646 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:14:58 ] 上書きしたくなければ、その位置に描くなということだろ
647 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:21:06 ] >>644 上書きしなきゃいいって問題じゃない。 GDIサーフェスについて勉強してこい。
648 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:34:59 ] 設定をフリップにせず、present時に適切に描画位置を指定すれば上書きされない。 いくら無能でもその程度のことぐらい理解出来るだろ。
649 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 01:31:48 ] 別途専用ウィンドウを描画する
650 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 07:31:36 ] このメソッドは、Microsoft Windows Graphics Device Interface (GDI) のダイアログ ボックスを、フルスクリーン モードのアプリケーションで使えるようにします。 構文 HRESULT SetDialogBoxMode( BOOL bEnableDialogs );
651 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 13:22:58 ] >>635 どうやって確認してるの ブレークポイント?
652 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 23:28:45 ] StretchRectでモザイク的なもの作ろうと思ってるんだが、どうもメソッドが失敗しちゃう。 GetRenderTargetで成功しているコピー元とコピー先と同じの使ってるから何とかなると思ったが・・・ しかもMSDNの言ってることがよー分からん。RTテクスチャって何ですか?単純なオフスクリーンってなんですか・・・ 天才が居たら助言頼む
653 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 00:31:44 ] そういう用途に使うのなら素直にテクスチャとして、適切に位置指定して描画しろ。
654 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 00:47:19 ] 規制で書き込めませんでした… >>642 DXUTでしょうか? ちょっと調べてみます。 >>643 自前で解像度変更して、ごまかすことも考えたのですが 強制終了した場合に解像度が戻らなくなってしまったりしそうで悩んでいます >>644 >>648 言ってることはわかりますし、以前にその方法も考えたのですが コントロールが単純な位置にあり、少ない方形でまとめられるのならまだしも、 「コントロールの位置が固定でなく、しかも複数が散らばる」という 状況ではどうしようもなくなってしまうので止めました。 >>649 テキストボックスから入力が必要な場面のみダイアログを描画、という 方法も考えたのですが、できるだけ1ウィンドウでやりたいと思っております。 (どうしようもなかったら、ダイアログを出そうかとも思っていますが…) >>650 使用してみましたが、やはりフルスクリーンでは効果がないようです。 色々と調べてみた限りでは、ダイアログやメニューに対して効果があるようですが ウィンドウに、子ウィンドウとして貼り付けたコントロールにも使用できるのでしょうか?
655 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 00:55:41 ] クリッピング程度の単純な処理すら書けないのなら、 そもそもプログラムを組むのを諦めろ。
656 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:01:18 ] >>654 逆に考えるんだ ダイアログに効果があるのならダイアログに貼り付ければいいだろ
657 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:21:36 ] >>655 >>648 で言われたようにクリッピング的な処理は調べてみたのですけども、 今回の条件の場合には適切な方法なのでしょうか? presentにはrect単位で転送領域を区切る方法などもあるようです。 ですが、仮にど真ん中にBOXがあったら、これを避けるように方形で区切ると 上下左右の4個の領域に区切るということになり、 仮にこのコントロールが複数ある場合には、非現実的に思えました。 (見当違いな意見を言っているようでしたら、すいません) >>656 やはり難しいようなので、ダイアログを使って別ウィンドウに出すか、 もしくは最初に言われたDXUTとやらの勉強を始めてみたいと思います。 一応、presentの「後に」GDIでコントロールの画像を転送する、 という方法でトライしてみましたが、どうもちらついたりしてダメみたいです。
658 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 02:16:27 ] 複数矩形があろうが、その分だけ分解すればいいだけ。 その程度のことが非現実的だったら、 Windowsが行っているGUIのクリッピングは超常現象なのか?
659 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 02:50:44 ] まっさきにDXUTのサンプル動かしてみるようじゃないと、今後も苦労しそうだな・・・
660 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 20:30:03 ] hr = device->CreateIndexBuffer( sizeof(WORD)*m_index_count, 0, D3DFMT_INDEX16, (fVRAM ? D3DPOOL_MANAGED : D3DPOOL_SYSTEMMEM), &m_index, NULL); 最初のsizeof(WORD)*m_index_count,って *は乗算ですか?ポインタですか? 初心者すぎる質問ですいません。。。。。
661 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 20:48:44 ] >>660 つ、釣られないぞ・・・・。
662 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 21:08:24 ] どうみても乗算
663 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 21:08:27 ] DirectX関係なさ過ぎる・・・ お前に必要なのはCの参考書だ。
664 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 21:18:22 ] ポインタだよ。 次の方どうぞ
665 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:18:14 ] HRESULT CDXPrimitive::SetVertex(LPVOID lpvertex, int point_num) { HRESULT hr; LPVOID p; //有効なデータ個数 m_point_active = point_num; //バッファをロック hr = m_vertex->Lock( 0, 0, (void**)&p, 0 ); if (FAILED(hr)) return hr; //copy CopyMemory( p, lpvertex, (DWORD)(point_num * m_pointsize)); //バッファのロックを解除 hr = m_vertex->Unlock(); return hr; } return hr と return S_OKの違いってなんですか? 調べても分からなかったので教えてください
666 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:28:51 ] returnの意味がわかってないのか?
667 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:34:15 ] return は この場合はHRESULTに返す値の事ですか? hrとS_OKの違いが分からないです;;。 MSDNライブラリーでHRESULTで検索しても解りませんでした
668 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:36:40 ] >>665 まず入門書でもいいから Cの本を一冊以上読破して C++の本を一冊以上読破して Win32の本を一冊以上読破してから来い
669 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 10:05:26 ] >>667 S_OK 定数 hr 変数
670 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 10:50:59 ] ちょっと質問です。 トランスフォーム済み頂点を使って、たとえば 100×100 の画像を表示したいと思います。 テクスチャの1辺は 2^n にしたいので、128×128のテクスチャを作るのですが…。 頂点座標をどうしようか迷っています。 1.xy=(0,0)-(100,100), uv=(100/128, 100/128) 2.テクスチャのあまりの部分を透明にして、頂点座標は xy=(0,0)-(128,128), uv=(0,0)-(1,1) どちらが一般的でしょう? 1の方が管理が楽だし、あまりの部分を別の画像を置くのに使えるし、いいことづくめなのですが、 ピクセル単位で画像をそのまま表示したいので、誤差がでないかどうかが心配です。 (試してみたら問題はなかったのですが、うちの環境でたまたま問題がなかっただけかもしれないので) よろしくお願いします。
671 名前:デフォルトの名無しさん [2008/10/12(日) 20:18:37 ] 教えて下さい。 64x64のテクスチャをプリミティブで表示しています。 用意したテクスチャは、1色の青で塗りつぶして縁を白で 囲んだだけのものなのですが、表示した時に縁がギザギザ した感じになってしまいます。 綺麗に表示する方法はないでしょうか? よろしくおねがいします。
672 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 22:06:17 ] >>589 今回の特集(いつもなんだがw)見てるとまず視聴率の数値ありきなんだよな その作品の時代的位置付けやアニメ史上の位置付けを説明するってことを NHKなんかが特集する時はやるもんだけどそういうことを数字だけで済ませて怠ってる 構成の仕方でもっといろんな作品を見せて興味を惹かせることは可能なはずなんだよ。 それをせずに、最近のものは数字が取れない、て最初から可能性を閉じてしまっている。
673 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 22:41:29 ] テレビはダメ NHKに期待 そのNHKはちゃんと期待にこたえてアレを年末にやるっていうんだからよくわかってる 2ch殺すつもりだよ
674 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 22:48:26 ] いいから消えろカスども
675 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 00:43:40 ] //画像をスプライト表示 LPDIRECT3DTEXTURE9 g_pTexture = NULL; LPD3DXSPRITE g_pSprite = NULL; LPDIRECT3DDEVICE9 g_pd3dDevice = NULL; D3DXVECTOR3 center,position; void DrawStartMenu(void) { g_pSprite->Begin( NULL ); RECT rc; rc.left = 0; rc.top = 0; rc.right = 256; rc.bottom = 256; D3DXCreateTextureFromFile(g_pd3dDevice,"data\\sky2.jpg",&g_pTexture ); D3DXCreateSprite(g_pd3dDevice,&g_pSprite); g_pSprite->Draw(g_pTexture,&rc,¢er,&position,0xFFFFFFFF); g_pSprite->End(); } g_pTexture->Release(); g_pSprite->Release(); ビルドは通るのですが、実行するとアクセス違反が起きます どこに問題があるのでしょうか?
676 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 01:56:18 ] >>675 とりあえず、DrawStartMenu関数を後半から1行ずつコメントアウトで削っていって正常に動く部分を調べろ
677 名前:676 mailto:sage [2008/10/13(月) 02:10:27 ] ・・・とは言ったがこれじゃ正常に動く部分なさそうだ。 最初のg_pSprite->Begin( NULL );を消してD3DXCreateSprite(g_pd3dDevice,&g_pSprite)の 後ろに移動させてくれ。
678 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:20:59 ] 移動したけどアクセス違反が起きる
679 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:24:47 ] ブレイクポイントつかってどの行ででるのか調べるぐらいしろよカス
680 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:33:01 ] そもそも論としてデバイスはちゃんと作ったのかよ Beginを上にもってくるぐらいだから手順が全く理解できてなさそう
681 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:37:28 ] 独学の初心者だから勘弁してくれ
682 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:37:59 ] ttp://princess-tiara.biz/directx/?chapter=3 ここを参照して完成されたサンプルに追加する形で作ってる
683 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:41:42 ] お前の追加したコードが糞なんだから 元のコードにリンク張られても困る
684 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:44:15 ] とりあえず>>676 か>>679 をやってから出直してこい。 つーかデバッガの使い方を覚えろ。
685 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:46:01 ] 分かった頑張ってみるよ こんな夜中に有難う
686 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 03:51:52 ] 画像が見つからなくてD3DXCreateTextureFromFileが失敗してるに一票
687 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 10:35:46 ] >>675 のコードを見て、まさか g_pSprite = NULL のまま使ってるんじゃ・・・とか思うのは俺だけ?
688 名前:687 mailto:sage [2008/10/14(火) 10:38:53 ] って、指摘済みだったか
689 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 20:16:43 ] 板ポリゴンにテクスチャ貼り付けて縦スクロールの背景を作ったんですけど ポリゴンの境界がうっすらと見えてしまうのはどうにかならないでしょうか?
690 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 20:25:22 ] (´∩ω∩`)
691 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 20:44:05 ] 見ちゃダメ
692 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 20:49:47 ] >>689 1ピクセルずらして重ね合わせればいいんじゃね
693 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 21:29:24 ] >>692 それも試してみたんですが駄目なんですよね… PS初期だとこういうゲーム結構ありましたよねー。 原因がさっぱりわからない…
694 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 21:33:58 ] >>689 つくりが悪いだけじゃ?
695 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:03:52 ] >>693 ダメというのがどうダメなのかによるが どうせ補間されてるせいで0.5ピクセルずれてるんだろ。 指定範囲を1ピクセル分元絵の内側にずらして その分重ね合わせるようにすれば普通はいけるはず。
696 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:08:54 ] とりあえず複雑な絵じゃなくて境界がわかりやすい 縞模様とかでテストしてみればいい
697 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:12:40 ] 背景を単色にしよお
698 名前:デフォルトの名無しさん [2008/10/15(水) 22:21:23 ] 環境: C++ VisualStudio2008 DirectX9 立方体のXファイルを合計2000個弱ばかり表示する単純な(自分ではそう思ってる)プログラムを書いてみたのですが これの動作が檄重で、タスクマネージャで調べてみたらメモリを700MB程喰らってます。 (ちなみに自分のマシンはメモリ3GB超積んでるのでスワップアウトは発生してないと思います) テクスチャをいちいち読み込んでるのが原因かと推測してるのですが、 これは普通どう処理するもんなんでしょう? 独自のファイルハンドラみたいなのを書いて、プログラム本体の下に敷いて、 同一ファイル名のテクスチャを要求されたらメモリキャッシュのアドレスを渡すとか そんな感じで処理するのが普通なんでしょうか。
699 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:26:57 ] うん、そう
700 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:26:58 ] スプライトでテクスチャを描くときに ポジションの奥行きを0以外にすると表示されないのね。 どうすればいいの?
701 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:28:30 ] >>700 スプライトでテクスチャを描くのをやめるか、 ポジションの奥行きを0にすればいいと思うよ。
702 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:29:10 ] >>700 スプライトなんて面倒だから使うなってのが2chで聞くと大抵返ってくるレス ポリ使って描画したほうが死ぬほど応用利くしなにより楽 どーしてもスプライトでやんなきゃ俺の気がすまねーっていうなら 詳しい人探すっきゃないw
703 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:31:09 ] 同じファイルを2000個も別々に読み込んだらどうなるかぐらい カバでもわかるだろ
704 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:33:04 ] >>703 うまくキャッシュに決まれば気にしない程度になることはあるのかもしれん
705 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 22:33:48 ] Zが0〜1じゃないとか
706 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 23:13:59 ] >>695 こんな感じにズレてます。 ttp://hishou.ddo.jp/~bbs/up/img/up134.jpg 線形補間はこのように使用しています。 theDevice->SetSamplerState(0 ,D3DSAMP_MINFILTER, D3DTEXF_LINEAR); theDevice->SetSamplerState(0 ,D3DSAMP_MAGFILTER, D3DTEXF_LINEAR); 指定範囲を1ピクセル元絵の内側にずらすってことは ポリゴンからテクスチャが1ピクセルはみ出るように設定するということですか? 一応そう仮定して動かしてみましたが駄目でした…
707 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 23:20:15 ] >>706 アドレッシングモードがクランプじゃなくね? ヘルプに「三角形ラスタ化ルール」ってのがあって読むとわかる
708 名前:689 mailto:sage [2008/10/15(水) 23:43:33 ] あ、すいません。 ポリゴンの境界が見えるって意味なんですが。 下から上に1枚のポリゴンを継続的に流してスクロールさせてるんですが その1枚1枚のポリゴンの境界が出てしまうってことを言いたかったんです。 日本語が下手ですいません…
709 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 23:52:16 ] >>706 サンプリングの設定とUVと表示座標の問題だと思うが・・・。
710 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 02:06:25 ] >>706 どうみてもそれ元画像の下または上のラインが表示されてるでしょ ポリゴンの境界が見えるとかいう問題ではない。 元画像のつなぎ目の部分を別のテクスチャで使用してないんなら 1ピクセル幅だけでいいからとなりの画像の端を書いておけば そういう白い線はとりあえず消えるよ。 みっちり書き込んでるなら範囲を縮めるしかないが、 試したんならそっちの画像もうpしてみ。 白い線が出てないならあとはポリゴンの座標を調整すればいいだけ。
711 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 02:10:32 ] ちょっと日本語がおかしいな。 ・元画像のつなぎ目の部分を別のテクスチャで使用してないんなら ・元画像の指定範囲の上下を別のテクスチャ用に使用してないんなら
712 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 02:12:56 ] ダメだ。眠くてミスしまくりだ。 >>710 の修正部分 ×元画像のつなぎ目の部分を別のテクスチャで使用してないんなら ↓ ○元画像の指定範囲の上下を別のテクスチャ用に使用してないんなら
713 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 03:48:31 ] 昨日に別スレで質問させていただいたのですが、このスレのほうが適しているようなので質問させていただきます。 現在VisualC++2008ExpressとDirectX SDK March 2008 をインストールしているのですが、DirectX App Wizard でサンプルプログラムを実行するにはどうすればいいでしょうか? 今もっている本ではVisualC++6.0で開発しているので、ファイル→新規作成→プロジェクト とやってもコンソールアプリケーションやWinプロジェクトなどしか出ない状態です。 ツール→オプションでDirectXのライブラリなどが追加されているのは確認しました。 初歩的な質問ですがよろしくお願いします
714 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 07:42:21 ] >>713 Winプロジェクトでいいよ
715 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 07:44:41 ] 最近のSDKには無いんじゃ? 普通に好きなように書けばいい
716 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 07:52:34 ] Sample BrowserにEmptyProjectってのがあるからそれ使え
717 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 12:45:56 ] レスありがとうございます。 もう最近のにはティーポットなどは含まれていないようです。 本ではフレームワークを基本に進めているので別の本を探してみます。図書館の本でよかった・・・ 親切にありがとうございました。
718 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 15:26:23 ] C#からは使えなくなったの?
719 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 16:18:29 ] C#にはManagedDirectXがある
720 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 16:31:00 ] スレ違うけど、C#はMDX1.1とXNAだな、本家のは。
721 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 17:34:21 ] しかしここは質問しっぱなしで結果報告もお礼も言わない奴が多いな
722 名前:689 mailto:sage [2008/10/16(木) 17:38:31 ] >>710 画像の下の1ピクセルだけが何故か若干薄くなっていたみたいです。 画像の方に原因があるとは考えてませんでした… 助かりましたー、ありがとうございました。
723 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 17:44:58 ] >>721 煽るだけでまともな回答がされてないからじゃね?
724 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 18:15:37 ] どう質問するのも自由 どう答えるのも自由 お礼も必要ないし答える必要もない フリーダムだよ
725 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 18:42:53 ] 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。
726 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 19:11:07 ] 守られていないテンプレ貼ってもな。
727 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 19:20:54 ] 平たいポリゴン作ってテクスチャを張ると こんな感じでちぎれたみたいになるんだけど どうすればいいの? ttp://image02.wiki.livedoor.jp/n/o/nijiguro/a17cc0db.jpg
728 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 19:41:58 ] ブラックジャックによろしく!
729 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 19:48:03 ] >>727 にゅう
730 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 19:48:57 ] >>727 Zバッファが薄すぎるんじゃね?
731 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 20:11:51 ] あー床に刺さったポリゴンがテロテロになってるんだね エエエー('д`)
732 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 20:36:05 ] EDITコントロールもDXUTも使わずに DirectXで描画してる画面で文字入力ができるゲームとか どんな技術つかってるんだろうか
733 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 21:33:10 ] 別にEDITコントロールだって 普通にウィンドウプロシージャ だけでやってるんだぜ?
734 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 21:40:03 ] DXUTだってDirectXで描画して文字入力が出来るんだから、 同じこと自分でやれば出来るに決まってると思うが
735 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 21:47:42 ] そんな当たり前のこと言われても そのやりかたが分かんないからすごいなと言ってるんだが
736 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 21:54:57 ] 単に文字表示をやってるだけでしょうに 文字変換ならIMEやIMMやTSFを呼んだり
737 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 01:18:38 ] >>735 やり方もなにも、エディットコントロールの自作くらいで 疑問に思うことなんてほとんどないと思うが。 プロポーショナルフォントだと面倒だなーと思う程度。
738 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 01:51:16 ] DirectXってMFCのダイアログウィンドウ上にも表示できるんですか?DirectX用の画面が必要なんですか?
739 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 04:27:06 ] できるよ。 がんばれ。
740 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 07:04:21 ] >>735 はプログラマ向いてないと思う
741 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 08:17:39 ] >>838 ピクチャーボックスとか適当なコントロールを配置して そいつのウィンドウハンドルでデバイスつくれば そのコントロールに対して描画できる
742 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 08:32:57 ] そんなんせんでも、Present()時に書きたいウィンドウのハンドル指定すりゃドコにでもかけるぞ。
743 名前:デフォルトの名無しさん [2008/10/17(金) 09:35:58 ] ソフトバンククリエイティブの3D格闘ゲームプログラミング、ちょっと読んでみたんですが Xファイルを、メッシュ、面、法線と、順番にトークンごとに区切って読み込んでいたのですが そんな方法しかないのでしょうか? 上から読んで行き、メッシュという文字があれば。。。のような感じでした。
744 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 09:41:26 ] D3DXの関数使って読めばいいじゃないか。 Xファイルなんていちいち自前でパースする意味がわからんし。
745 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 09:48:33 ] はー こんなのマスターできる気がしねー 俺はおまいらに劣っているニカ?
746 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 09:55:15 ] >>747 そうですよね。 テンプレートの読み飛ばしなどを意図してのことだったんでしょうか・・・
747 名前:デフォルトの名無しさん [2008/10/17(金) 09:57:17 ] >>744 さんでしたorz
748 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 11:41:49 ] >>743 あの本は一通り読んだけど ファイルフォーマットとしてXファイルを使っているが プログラム的にはオリジナルの頂点形式のデータとして扱うために 自力でファイル解析しながら読み込んでる感じだ 解析が甘いから出力したソフトによって読めないファイルとかあるけどな なぜそんなことしてるかっていうと ハードの行列レジスタ数に依存せずに CPUで無制限のボーン行列を変換してスキニングするため サンプルのモデルは100本くらいボーンが入っててアホかと思ったが いずれはオリジナルフォーマットとか作りたくなるだろうからいらない知識というわけではない
749 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 12:03:08 ] 行列レジスタなんてないけどね あと100本くらいなら頂点処理をソフトウェアで走らせればいいだけなのでは? まあフォーマット理解するのには自前で読み込むのも悪くない
750 名前:743 mailto:sage [2008/10/17(金) 14:26:36 ] レスありがとうございます。 なるほど・・・ボーンの数を無制限にするなどのために自力で読み込んでいたのですね。 じっくり最後まで読んだわけではないのでボーンが100もあるとは気づきませんでした。 あの本を参考に3Dアクションゲームを作ってみようと思います。 ありがとうございました。
751 名前:デフォルトの名無しさん [2008/10/17(金) 19:03:40 ] DirectX難しいよね・・・ C/C++は学んだけど、DirectXはどこから手をつけたら良いかわからない。 Win32APIの知識がいるのかな? みなさんどうやって勉強したんでしょう・・・
752 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 19:12:27 ] とりあえずソース付きのサンプルをいじってみる。 SDK付属のでもWEBに転がってるのでも本に付いてるのでも構わない。 Win32APIの知識はそんなに要らない。 Win32Applicationとして実装する最低限のことができればおk。
753 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 21:23:55 ] managed directxを先にやると楽だよ
754 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 21:26:04 ] 骨が多い場合は頂点レジスタ数に合わせてメッシュを分割して描画するのが一般的だと思うが・・・。 D3DXで読めば分割後のテーブルデータも一緒に出してくれるので 自前フォーマットを使う場合でも中間データとしてはかなり便利だと思うがね。
755 名前:デフォルトの名無しさん mailto:sage [2008/10/17(金) 21:28:35 ] >>751 Win32APIじゃなくても、MFCやDXUTにしても、 必要かどうか疑問に思ったら、まず触ってみて簡単な プログラムを作ってみるといい。 完璧に理解しようなんて思わなくてもいいから。 DirectXを主体にゲームなり作るにしても 他のものに触れるのは決して無駄にならないよ。
756 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 00:39:12 ] >>745 >>751 やっぱ最小サンプルからだよね。Windowが出るだけ→四角形が出るだけみたいな。 いきなりゲームの完成形とか考えずに、サンプルを継ぎ足しながら理解していき、 そのつど必要になった技術を習得していった方がモチベーションが続くのでは。 俺はMSX-BASICからプログラムとお付き合いのあるオサーンだが、 何を作るにも膨大な基礎知識とコーディング量が必要な現状で、 今からプログラムやライブラリを習得する気概のある人達を素直に尊敬する。
757 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 02:42:31 ] 俺がDirectXを勉強した過程は、挫折、超挫折の繰り返しだなぁ。 そのうち周辺知識がついてすることもなくなって、改めてDirectXの入門書を読んだらすげー理解できてオレすげーってなった。 5年くらいずっと挫折し続けてこれだからなw ゲームを作りたいだけならそこら辺のライブラリ使った方がいいわ。 まぁ焦らず勉強を続けてくれ。
758 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 09:38:27 ] 5年くらい掛けて勉強するか 5年後というと40歳なわけだがw
759 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 09:41:12 ] それは流石にはじめるのが遅すぎだろう
760 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 09:45:00 ] ただの趣味でもダメですか?
761 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 09:58:56 ] ただの趣味なら10年は掛かるとお伝えしておこう
762 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 12:09:39 ] 1に根気、2に根気だな。 DirectXは精神論で超越できる
763 名前:デフォルトの名無しさん [2008/10/18(土) 17:24:12 ] こんなにもレスが(゜Д゜ ありがとうございます。 やっぱり入門するのが一番根気がいりそうですね。 簡単なプログラムを弄るとはいえ、どれが簡単なプログラムなのかも一々ググらないとダメな現状。 そもそもダイレクトXの入門書で詳しくかかれているのが無いようなきもします。
764 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 17:38:40 ] DirectX = COM + 基礎知識 * 100 + 経験知識 って感じ
765 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 17:44:17 ] 根気もそうだが 何から勉強するかわからないでいきなり入門書買うとかNG とくにVCBCの入門書はほんとに何もわかってない初心者には意味のないものが多い そのへんも飛ばして「初心者でもわかるDirectX」みたいな本を手に取ったら挫折確定 まずCを理解してその後win32APIについてキモイくらいに丁寧に解説してる本から入るのが吉 何も知らないでいきなりDirectXの解説書かう馬鹿なんて居ないと思ったアナタ ここに少なくとも一人いますよ
766 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 18:29:11 ] 学校の図書館にDirectXの本があって 一番後ろのページに、今までどれぐらいの人が借りたか わかる紙がついてるんだけど、 それは大体10回ぐらい借りられていた。 Game Programing Gemsは誰も借りてなかった。
767 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 18:30:33 ] DirectXあきらめてWebプログラミングでもやろう
768 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 18:58:21 ] DirectX6SDKの本買って武器として使った奴ならココにいるぜ
769 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 20:50:51 ] >>763 片っ端からやれよ はじめに苦労した分が土台になる はじめに「本なんていらなかったよw俺がいらなかったもんw」とか 言ってるボケに会うこともあるだろうがそいつはゴミなので無視していい 建築に大事な基礎が死んでるから伸びない 大きいビルを建てるにはそれなりの土台が必要 いまのうちに死ぬほど苦労してちゃんとした土台を作っておけ っていってもプログラマになんてなったって金になんないんだよね(笑)
770 名前:デフォルトの名無しさん [2008/10/18(土) 21:22:15 ] win32の知識も必要だと思う。じゃないと何やってるかわからんだろ。 C++→Win32→DirectXってかんじかな。 C学んだくらいでいきなりDirectXは挫折させる力がある。 弄って覚えるにしても、今はもうサンプルが入ってないみたいだし(上に書いてあったの見ただけだが)
771 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 21:57:45 ] 本なんていらんよ。ネットも使えないゴミはのびない
772 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 22:46:13 ] >>748 IDirectXFileは元々汎用的に作られてるし XFileに乗っかるぶんには、自前でパースする必要はない。 何でも自分でやりたがるのは結構だが、本出すならベストな方法を載せろって感じ。 >>743 のように勘違いする人もいるようだし、迷惑な話。
773 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 22:49:20 ] DirectXは最近日本語ドキュメントが出てないのがキツイな。 Direct3D10とかVista専用とあいまって、ますます手を出しにくい。
774 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 23:36:14 ] ベストな方法載せろってあーた^^; 自分で自分なりのベストな方法を考える事ができない奴は プログラマとしてはやっていけないよ。 あくまで「参考書」であって「マニュアル」じゃーないぞ。
775 名前:デフォルトの名無しさん [2008/10/18(土) 23:43:01 ] 本がいらないとかww ネットでやりたいことの表面の知識しか集めてないのがまるわかり。 DirectXの前にC++とWin32は学ぶべき。後々自分が本当にしたいことが出来たときのためにも
776 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 23:49:48 ] 必要なのはWin32というよりウィンドウシステムの仕組みについて、かな。 デバイス作るのに何でHWNDが必要なのかとかスレッドの流れがどうなってるのかとか 知ってた方が学習しやすいだろう。
777 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 23:59:01 ] >>775 別に本が役に立たんとは言わんけど、別に必要性はないでしょ。 C++もWin32もネットに十分な情報が転がってるし。 最新の情報は常にネットが先だしな。 その程度の情報も調べられないなら、ネット音痴と言わざるをえない。 「これはこの本にしか載ってない情報なんだ!」 ってのがあればぜひ教えて欲しい所だが、巷にあふれるほとんどの本は ネットで事足りるような情報しか載っていないよ。
778 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:02:42 ] >>777 本自体の信頼性も、あとで読み返してみるとアレなのもあるよね 昔HTMLのトンデモ本持ってたw
779 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:03:45 ] 本にしろネットにしろ、書いてある事だけを丸写しで 自分で何も考えない奴は、結局成長はしないんだよ。 「●●って本に書いてある通りにしたけど動きません」とか こういう所ですぐ聞くような奴ね。
780 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:06:24 ] それじゃこのスレの意味がなくなるんじゃないか?
781 名前:デフォルトの名無しさん [2008/10/19(日) 00:10:49 ] >>780 スレ以前につーちゃんねるが必要ない。
782 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:11:39 ] ネットより本派だけどネットで調べるのが面倒だから本に金払ったっていいやん。 情報のスピードでは負けるけど、そんな事言ったらベンダーが書いてるマニュアルが最速で それ以外が二次情報になるのは一緒だし
783 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:13:40 ] 本がよくないなんて言ってないよ すごい本ももちろんたくさんある
784 名前:デフォルトの名無しさん [2008/10/19(日) 00:18:21 ] 本の良いところはどこでも読めるところだな。 てか本代くらいケチるなww ダイレクトX学ぶには下準備いるんだし
785 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:20:23 ] とりあえずDirectXの本はいっぱい買った。 寝る前にパラパラ見る。これでいつかはマスターできるはずと 思っている。
786 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:26:51 ] 本は電車の中で読むためのもんだと思ってる。 どんな本でも1ページくらいは有用だと思える情報があるし。
787 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:28:58 ] 著名な人が推奨してる本ってのはやっぱりいいよ
788 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 02:05:28 ] やねうらおですね、わかります
789 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 12:46:19 ] 本って、やっぱ売れてナンボだから書く側のターゲットがブレる時がある。 ”初心者向けは基本の技術解説だけでいいから楽だけど、それだとターゲットが 狭いので中級者向けにも書いて、ただページが膨大だと定価や作業量の問題もあるから 一部の技術だけに特化して深いところをー”なんて感じ。 最初はネットで良いと思うよ。誰かに説明したい、自称中級者の方々が山ほどいて 丁寧に教えてくれる。ただ、その人達が「それはできません。」と断言したことが 本当にできないかとか、教わった技術が適切か等の精査は必要。
790 名前:デフォルトの名無しさん [2008/10/19(日) 16:30:18 ] 俺はDirectXよりもWindowsプログラミングを先に学んだほうが良いと思うわ。 そのほうがすんなりDirectXのコードを読める。 それに今出版されてるDirectXの本はSDKのサンプルからやってるから、サンプルがなくなった今 (SampleBrowserは昔のとはちょっと違うね)DirectXの学習は困難だよな。特にC++終えたての人とかは。 あと、本は買ったほうがいい。ネットの知識ってのは上でも言われてるけど表面上でしかないよ。 だからちょっとバージョンが違ってエラーが出たときとかにも対処しきれない。 勘違いしないでほしいのは、本がすべてというわけではないし、関数とか、ここはどうすればいいのか ってのをちょっと調べるだけならネットでも全然おkだと思う。 ただ、本で学んでからネットを見たほうが応用が利く気がする。 異論は認める
791 名前:デフォルトの名無しさん [2008/10/19(日) 16:48:08 ] 実際本見てからのほうが応用が利くと思うぜ クソ本でなければ 本いらないとか言ってるやつはネットでどうやって調べるか ノウハウがわかってるからそんなこと言ってるだけ ほんとにわかってないやつは何から調べればいいかわからないから ネットだけではどうにもならない
792 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 16:51:47 ] 買わずとも図書館で借りてきたらいいと思うのは俺だけ? 流れを一通り学んだら必要なAPIをMSDNライブラリサイトで調べたらいいだけだし。
793 名前:デフォルトの名無しさん [2008/10/19(日) 16:52:33 ] あらかた同意だが、ネットで予備知識仕入れて、書店で選ぶ参考にはなる。 その点でもネットは必要。 あとネットが使えるかどうかは関係なく本の知識は偉大と思う。
794 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:01:19 ] ここはいつから本の必要性を語るスレになったんだ? 本を読む前に>>1 ぐらい嫁よ
795 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:13:32 ] ネットは広いけどあまりにも薄すぎる 本は濃く知るのにどうしても必要 こういう特色を人に説明できないのも本を読んでいないから と俺は思う
796 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:16:34 ] お前の妄想なんてどうでもいい
797 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:19:19 ] そもそも本を読んで無い奴に本を否定はできない 自分は本を読んでいて他の人間には薦めないってのは陥れてるとしか思えない
798 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:27:17 ] ウィンドウを画面の中心で開くやり方ってどうやるんでしょうか・・・? CW_USEDEFAULTしか分からないので ヒントいただけませんか><
799 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:31:05 ] GetDesktopWindow GetWindowRect 必要ならAdjustWindowRectExも
800 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:39:19 ] >>798 本を読めよ
801 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:43:42 ] ※ただしマルチディスプレイは考慮しないものとする
802 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 17:51:01 ] >>795 みたいにネットは広いけど浅いとか思い込んでいる人は ネットの使い方の本でも読んだ方がいいと思う どっちが深いも浅いもない。 必要な情報を個々がどうやって見つけるかという違いがあるだけ。 ネットで探すのが下手なら本を読めばいい。
803 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:06:47 ] ネットで十分っていってるやつは ちゃんとした専門書を読んだことがないんだろうなぁ
804 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:10:48 ] 本は(物によっては)有用な部分はあるけど、必要ではない。それでFA。 で、ここは質問スレであって、こんなどうでもいい事を延々と繰り返すスレではない。 >>1 にある文章も読めないような奴に本が読めるとは到底思えん。
805 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:15:35 ] >>803 あなたの持っている「専門書」のタイトルを全て教えてくだちぃ
806 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:15:59 ] >>804 ネットは(サイトによっては)有用な部分はあるけど、必要ではない。それでFA。 で、ここは質問スレであって、こんなどうでもいい事をにいちいち突っ込むスレでもない。 >>1 にある文章も読めないような奴にネットが使いこなせるとは到底思えん。
807 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:17:00 ] もう刺激するなよ
808 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:21:29 ] ネットは必要だよね ネットに繋がってないプログラマーのデスクが今時あるだろうか ネットだけでやってる奴はいても、本だけでやってる奴なんていないだろ
809 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:23:45 ] ネット→ものによっては「必要」 本→ものによっては「有用」 でファィナルアンサー
810 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:26:23 ] ネットの回線切って一週間仕事する自信はないな あーでも漫画を一週間読まないでプライベートをすごす自信もないw
811 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:28:01 ] もう刺激すんなって
812 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 18:33:58 ] それでDirectXの習得にお勧めの書籍はなんですか
813 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:12:22 ] とりあえずWeb上で入手できる サンプル、情報で自分がやってみたいことに挑戦する ただ、なんとなくDirectXをマスターしたいとか言う目的意識のない方はお帰りください まずDirectXで何をしたいのか目標を定めることから始めましょう そこに対し自分で思考錯誤していると 必ずWeb上だけの情報では解決できないことがでてきます 本を選ぶ基準はただなんとなく習得したいための本ではなく 自分が知りたい情報の載っている本を探せばいいだけなのです おそらくその本の半分以上の内容は必要のないものでしょうが 自分の知りたい情報の値段がその本の値段につりあうと思えば買えばいいのです 本の値段とそこに乗っている情報の値踏みができないレベルの人は本に手を出すべきではないでしょう
814 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:19:25 ] >>813 先輩方が何をやりたいと思ってなんという本を読んでその知識を得たという情報で結構です いきなりWebで入手しろといわれても、何から手をつければいいかさっぱりなんです
815 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:25:51 ] >>801 マルチディスプレイ環境で Windowモードのアプリを別のディスプレイへ移動すると遅くなるのはなんでだろう どうやっても回避できない
816 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:29:41 ] >>815 本を読めばわかるよ
817 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:33:51 ] MSDN Library読んだらどうすべきか書いてあるよ
818 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:36:39 ] 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。
819 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:39:17 ] ×必ずWeb上だけの情報では解決できないことがでてきます ○ひょっとしたらWeb上だけの情報では解決できない場合があるかも知れません
820 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:41:20 ] またWeb狂信者か
821 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:41:58 ] まったくだ。本を読めばあらゆる事象が解決する
822 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:43:05 ] また本狂信者か
823 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:44:14 ] Webだと解決できない事って具体的になんですか。教えてください。 ようはそのWebで解決できない事が書いてある本さえあればいいんですよね。 俺頭いい。
824 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:46:34 ] 輪廻転生は本当にあるのか
825 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:47:57 ] このスレで一番詳しい奴が本書けば解決 早くかけよ、さぼるな、仕事なんて辞めて本書け本
826 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:48:44 ] >>825 別に書いてやってもいいけど、いくらくれんの?
827 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:50:02 ] 売れた数次第だぼけ
828 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:54:32 ] 印税は1割
829 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:58:48 ] 盛り上がって増すな
830 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 20:01:29 ] >書いてやってもいい ワロタw
831 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 20:03:49 ] 読んでやってもいいからタダで書けよ
832 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 21:06:00 ] 俺はネットにうpしてやんよ、タダで
833 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 21:10:51 ] じゃあ、オレはタダで読んでやる。
834 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 22:28:34 ] 別に選択肢をわざわざ減らす必要はねーし 読まないって奴は読む奴に比べて単純に頭が悪くなるってただそれだけ
835 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 22:38:26 ] 使えない本やサイトは逆に頭が悪くなるけどな
836 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 22:44:18 ] >>835 数をこなすことでダメなものをダメと見切れるようになる タスクシステムに飛びつくこともなくなる
837 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 22:45:05 ] >>834 あなたが選択した、頭がよくなった本をぜひぜひ教えてください。お願いします。
838 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 22:51:28 ] タスクシステム使いこなせないとかもうね
839 名前:デフォルトの名無しさん [2008/10/19(日) 23:16:50 ] 流れにワロタww なんか一人のネット狂信者がわめいてるみたい。 コピペでプログラム組んで『俺すげーww』とか言ってる。 俺も昔はそうでした。まぁ今は暖かい目で見てあげよう。いつか書籍の必要性がわかる。
840 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 23:31:59 ] 自分がネットや付属CD-ROMからコピペするしかできない無能だったから 他人もそうだと思い込みたいんだろうなぁ
841 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 23:36:06 ] 誰も書籍を否定してるわけじゃないのにな。 何をするにも絶対本が必要という事にしないと気が済まんのかな。
842 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 23:45:29 ] もうそれぐらいにしてやれよw >>839 はわざわざageてまで必死に自分の無能さを主張してるんだからw
843 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 23:58:46 ] いい加減にしろ だからどっちでもいいだろ。ネットで済む事はネットで済ませりゃいいだろうし 本が欲しいと思うんだったらそう思った時買えばいいだよ そんな個人差がある事を必要/不必要なんて言葉で線引きしようとするのが愚の極み
844 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:02:21 ] すげー、まだやってる。
845 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:02:48 ] お前だけ
846 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:10:57 ] >>842 そうやって煽る自分が一番無能と思わんかね? 本もネットも必要で終わろう
847 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:12:23 ] まだ言ってるよ^^;
848 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:24:40 ] 人によっては必要だし人によっては不必要。 個々の目的が違うんだからそんなの当然だろ。頭にうじわいてんじゃね。
849 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:37:26 ] 人によってはじゃなくて場合によってはだろ なにも選択肢からわざわざはずす必要がない それともどうしても本が不必要だと決定する何かがほしいのかな? そういうわけじゃないだろ? もしかしたら、今後ネットにはない転載不可のすばらしい本が出る可能性だってあるわけだしね
850 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 01:56:05 ] 選択肢選択肢としつこい子だな。エロゲ界の住人かよ。 別に人によってはでも場合によってはでもどちらでもかまわないよ。 これで満足かい?
851 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 02:01:31 ] エロゲ界の住人ワロタw
852 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 02:20:01 ] >>850 何、カッカしてんの? 育ちが悪いな 親もロクなもんじゃねぇだろ ああ、貧乏だから本も買えないのか
853 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 02:25:16 ] 何鏡に向かって独り言言ってんの^^;
854 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 02:36:19 ] / // / // ______ / // / / // /| r'7\ ,.ヘ‐'"´iヾ、/\ニ''ー- 、., / / / / | |::|ァ'⌒',ヽ:::ヽrヘ_,,.!-‐-'、二7-ァ'´|、__ `'ー-‐''" ヽ、_'´ `| |:::::|'" 二.,_> ,.へ_ / //__// / / / `ヽ7::/ か っ も | / // メ,/_,,. /./ /| i Y // ァ て う. |'´/ ∠. -‐'ァ'"´'`iヽ.// メ、,_ハ , |〉 | 約 醜. ヽ! O .|/。〈ハ、 rリ '´ ,ァ=;、`| ,ハ |、 / | 束 い > o ゜,,´ ̄ . ト i 〉.レ'i iヽ|ヽ、.,____ | し 煽 / ハ | u ,.--- 、 `' ゜o O/、.,___,,..-‐'"´ | た り | / ハ, / 〉 "从 ヽ! / | じ 合 |,.イ,.!-‐'-'、,ヘ. !、_ _,/ ,.イヘ. ` ヽ. ッ .ゃ .い |/ ヽ!7>rァ''7´| / ', 〉`ヽ〉 ! ! な は .', `Y_,/、レ'ヘ/レ' レ' い .し ヽ、_ !:::::ハiヽ. // / で .な ./‐r'、.,_,.イ\/_」ヽ ', / / す い / `/:::::::/ /,」:::iン、 / / 〈 ,,..-‐''"´ ̄ ̄77ー--、_\.,__ / ,.:'⌒ヽ ´ | | , i |ノ `ヾr-、
855 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 02:36:41 ] >>852 とうとう、お前のかーちゃんでーべそとか言い出しちゃったよ もうね、プログラムの本の前に読むべき本があるんじゃないかな? 手に取る本の選択肢を間違えたね
856 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 03:19:28 ] 煽りあいとかどうでもいいので、とりあえずここは建設的に、 ネットに載ってない情報を持っているDirectXの本を紹介してくれますでしょうか? 必要だと言ってる人は少なくとも一冊はそういった本を持ってるわけですし。 それが他人から見ても必要だと感じられるなら必要性の高いお勧め本ってことで。 書籍名: 出版社名: 価格: ネットに載ってない情報: よろしくお願いします。
857 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 04:17:21 ] 需要:情報が欲しい 供給: ・紙媒体:本→有料、概ね著作者が明確。 ・電子媒体:ネット→概ね無料、著作者が不明確の場合あり。 その情報だけでお金取れそうなら本にした方が得だよね。 ただ、それを読んだ人が無料でネットに公開しちゃう場合があるよね。 (盗用と、技術解説ギリギリのラインで。) 「猫でもわかる〜」みたいに、ネットで情報公開しつつ製本化されてるものもあるよね。 それでも売れるよね。「無料で手に入る情報に金払うなんて」という考えもあるけど、 その辺は案外、読み手の好みの問題だったりしてね。 読み手も書き手も多種多様で、媒体とそれに伴うルールが違うだけなので、 優劣はつかないんじゃないかなー。 ってゆーか、このスレの流れ、信者同士の罵り合いっていうよりかは 反応が面白くて適当に煽ってる人が多そうだよねー。 ってゆーか俺スレチだねー。ごめんねー。
858 名前:デフォルトの名無しさん [2008/10/20(月) 06:20:21 ] >>856 子供みたいw
859 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 07:11:04 ] >>855 は? 誰にレスしてるの? そんなのどこにも書いてないじゃん 捏造? 育ちの悪さがレスにあふれ出てるねw まあ、本も買う金がないほど貧乏だししょうがないとは思うけどねw
860 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 07:25:45 ] / // / // ______ / // / / // /| r'7\ ,.ヘ‐'"´iヾ、/\ニ''ー- 、., / / / / | |::|ァ'⌒',ヽ:::ヽrヘ_,,.!-‐-'、二7-ァ'´|、__ `'ー-‐''" ヽ、_'´ `| |:::::|'" 二.,_> ,.へ_ / //__// / / / `ヽ7::/ か っ も | / // メ,/_,,. /./ /| i Y // ァ て う. |'´/ ∠. -‐'ァ'"´'`iヽ.// メ、,_ハ , |〉 | 約 醜. ヽ! O .|/。〈ハ、 rリ '´ ,ァ=;、`| ,ハ |、 / | 束 い > o ゜,,´ ̄ . ト i 〉.レ'i iヽ|ヽ、.,____ | し 煽 / ハ | u ,.--- 、 `' ゜o O/、.,___,,..-‐'"´ | た り | / ハ, / 〉 "从 ヽ! / | じ 合 |,.イ,.!-‐'-'、,ヘ. !、_ _,/ ,.イヘ. ` ヽ. ッ .ゃ .い |/ ヽ!7>rァ''7´| / ', 〉`ヽ〉 ! ! な は .', `Y_,/、レ'ヘ/レ' レ' い .し ヽ、_ !:::::ハiヽ. // / で .な ./‐r'、.,_,.イ\/_」ヽ ', / / す い / `/:::::::/ /,」:::iン、 / / 〈 ,,..-‐''"´ ̄ ̄77ー--、_\.,__ / ,.:'⌒ヽ ´ | | , i |ノ `ヾr-、
861 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 09:28:46 ] ゴメンナサイ
862 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 10:00:14 ] イエイエ 僕も悪かったです。本もネットも素晴らしいです。
863 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:08:33 ] 本もネットもいらね
864 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:16:00 ] 自分自身の親や貧乏に対するコンプレックスを 相手に置き換えることでうさを晴らしてるんだろうな 察してやろうぜ
865 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:24:25 ] もうやめてえええええええええええ 彼を許してあげてええええええええええ
866 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:25:43 ] 個人差の問題を他人に必要とか言って押し付けてる時点で終わってる
867 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:41:13 ] 個人差じゃなくて選択肢の問題だよ よくわからんけど
868 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 12:53:30 ] イベントフラグが立たないと選択肢は発生しないよ よくわからんけど
869 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 14:46:23 ] >>858 の>>856 は>>852 へのアンカーミスですた すまそ
870 名前:858 [2008/10/20(月) 16:16:10 ] >>869 いいえ。違います。
871 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 16:38:45 ] D3DRECTって何のために存在するの? 中身はRECTの並びと一緒だし。 操作用の関数が用意されてるでもないし 受け渡しにいちいちキャストが必要だし。
872 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 16:43:26 ] windows.h
873 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 16:46:22 ] >>871 本を読めばわかる
874 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 17:07:17 ] >>871 座標をx y で扱うためだろ left, top, right, bottomじゃわかりにくくなる
875 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 17:28:46 ] 871が聞きたいのは なんでRECTが存在するのに、DirectXはわざわざ同じフォーマットの 別名構造体を独自に作って使うの?ってことかな?
876 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 17:52:28 ] >>875 そうかと思われ おれもなんであるのか知りたい
877 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 17:57:40 ] あれはGDIのRECTだし
878 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 17:58:08 ] そんなどうでもいい事の為に一人で必死だな
879 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 18:01:44 ] managed版とかとの兼ね合いじゃないの? WinAPI群と同調させるよりかは、DirectX群での同一性を求めたとか
880 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 18:44:20 ] どのスレで質問していいのか分からなかったので一番なじみのあるこのスレで質問させてもらいます。 自分のメインパソコンでコンパイルしたアプリを他のパソコンでも起動できるか試したのですが メインのPCだと appleloader.bbsnow.net/pic_loader/nomal/html/1_12.html 普通に起動できて。 学校のPCと家のサブパソコンだと appleloader.bbsnow.net/pic_loader/nomal/html/33.html エラーが出て起動できません・・・・。 自分で考えられる対処法は試したのですがわかりません・・・。 アドバイスよろしくお願いします。 家メイン(デスクトップ) WINXP32BIT Geforce8800GTS メモリ4G CPU コア2DUO 家サブ(デスクトップ) WINXP32BIT マザーボード内臓?(sis741) メモリ512M アスロン3000? 学校 WINXP32BIT(ノート) わかりません // // / すれ違いだったら誘導お願いします><
881 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 18:47:03 ] 家と学校PCにDirectX入ってるんか?
882 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 18:50:44 ] manifestファイルはなかった?
883 名前:880 mailto:sage [2008/10/20(月) 18:53:58 ] >>882 プロジェクト全体を探しましたがなかったです。 USBにフォルダごとコピーして他のPCに持っていったので 足りないファイルなどはないと思います。
884 名前:880 mailto:sage [2008/10/20(月) 19:03:16 ] 連レスすいません。。 mainfestファイルありました。 出力を上記のファイルと別の所にしてあるからでしょうか?
885 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:05:01 ] 必要なDirectX Runtimeが無い
886 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:05:58 ] エラーとはどんなエラーかすらも書かないのに 原因教えろと言われても サブPCや学校でコンパイルできるんならそっちでデバッグしてみろ
887 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:09:24 ] どうせDLL使用してて読み込んでないとかだろ ここじゃなくてVCスレ行った方がいいよ
888 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:12:42 ] >>886 書いてるだろ。htmlリンクだから恐いが
889 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:16:02 ] エラーメッセージでぐぐったら原因出てくるじゃん
890 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:35:22 ] c++のコード生成の設定変えたらできました ありがとうございます
891 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:45:16 ] DirectX10を使っていて、 シェーダで結果を書き込んだテクスチャを CPUで処理するためにCPUのメモリにコピーしたいんですが、 どのような手順でやればよいでしょうか?
892 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:54:08 ] CPUのメモリってあーた
893 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:56:08 ] 二次キャッシュってこと?
894 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 19:58:51 ] CPUのメモリって俺的にはしっくり来る用語なのは メモコン内蔵だからか
895 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:02:03 ] VRAMに対するメインRAMってことでは?
896 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:14:30 ] DirectDrawはDrawLineとかDrawRectとかありましたが direct3dスプライトはDirectDrawみたいに 画面に線引いたり円描いたり四角描いたりできますか?
897 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:19:10 ] >>871 Direct3Dの部分にwindows.hを取り込まないためでしょ。 D3DCOLORなんかも
898 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:52:16 ] >>891 です すみません>>895 の方の意味です シェーダでテクスチャにスムーズフィルタとかかけて、 CPUでその結果を使って画像処理を行いたいので、 そのためにテクスチャからメモリにコピーする方法を 知りたいんです
899 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:59:48 ] そもそもレンダリング終わった時点で テクスチャをロックして情報すえばいいんじゃ?
900 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:05:07 ] 情報!情報らめぇ〜
901 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:09:36 ] フレームごとに1増えていき 50を超えたら-50に移動 m_position.x += 0.01f; if(m_position.x > 2.0f) { m_position.x = -2.0f; } 本ではこういう風に定義されているのですが数字がよくわかりません・・・。 説明お願いできませんか。
902 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:18:27 ] sin使えばいいのに
903 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:27:29 ] DirectXにかすりもしないくらい関係ない 50って何だ
904 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:41:03 ] >>901 C言語やった事あるのか?
905 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:44:10 ] >>901 本読めばわかる
906 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:49:41 ] 書いた人間にしか分からないだろ
907 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:53:21 ] 説明をおねがいしたいのはこっちだよ^^;
908 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:55:32 ] エスパーすると コメントごとコピってきたソースの パラメーターだけ変えたけどコメントがコピー元のまま
909 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 22:54:37 ] D3DXVECTOR3 m_pos; m_pos.x += 1.0f; 1.0fって1mですか?
910 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 23:01:39 ] 自分で1mって決めればそれが1mだよ
911 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 00:24:32 ] 本とWEBサイトって同じようなもん。
912 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 02:19:57 ] 1.0fは(float)1.0だと思う。 こんなこと言っても分からんと思うがw
913 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 18:31:52 ] 自分で 1m と決めてもいい 俺は 1.61624 * 10e-35 m だな
914 名前:デフォルトの名無しさん [2008/10/21(火) 20:01:37 ] DirectXを、ディレクトックスと呼ぶのは我慢できるとしてもだ Direct3Dを ダイレクトサンディー っていうのは我慢ならぬ。
915 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:07:39 ] >>909 正直、コーヒー噴き出したw どうしてくれんのよ
916 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:22:17 ] 1mは計算式で書くと、1024*1024 初歩の初歩だと思うんだが
917 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:24:21 ] mとか書いてるような奴に言われたくないな
918 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:34:01 ] わけわかだーね ミリとメガの区別もつかないのって感じだね (そうだ、もし1miBと言う単位があれば 1/1024バイト?)
919 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 21:45:44 ] 書籍の次は1.0の単位の話か
920 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 21:52:02 ] 1単位
921 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 21:56:22 ] で 結局何aなの?
922 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:01:55 ] プランク長さだよ
923 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:02:42 ] >>921 だから君の好きなように定義すればいいんだってば
924 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:35:52 ] 好きにスケールしる
925 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:38:40 ] それか、ゲーム内単位でいいんじゃね? 1000fで1クリメライとか
926 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:40:14 ] 私は1パーセクにしている。
927 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 23:13:15 ] ビッグだな!
928 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 23:47:01 ] よそのスレであったなw 1kmから始まってパーセクで終わったw
929 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 01:29:37 ] ピクセルシェーダで迷子になってます。 float4 pixelS(float4 src : COLOR0) : COLOR { return src; } technique Techs { pass P0 { VertexShader = compile vs_1_1 vertexS(); PixelShader = compile ps_1_1 pixelS(); } } このピクセルシェーダを使ってそのまま出力するテストをしているのですが、テクスチャが全面真っ白になって 表示されてしまいます。シェーダのコンパイルは1.1です。使用箇所では D3DXHANDLE tech=shader->GetTechniqueByName("Techs"); shader->SetTechnique(tech); UINT pass; shader->Begin(&pass,0); shader->BeginPass(0); device->SetTexture(); device->SetFVF();//変換済み頂点を設定 device->DrawPrimitiveUP(); shader->EndPass(); shader->End(); となっています。シェーダ関係を取り払うと正しく表示されるので描画部分は問題なさそうです。
930 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 01:30:18 ] 頂点シェーダは割愛させてもらいました。連レススマソ。
931 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 06:30:40 ] >>929 シェーダでテクスチャ読んでないんだから、頂点カラーのまま表示されるに決まっとる
932 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 08:57:08 ] PSがソースをそのまま出力するだけならせめてVSも晒してくれ
933 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 12:00:34 ] >>931 できました!ありがとうございます。 でもこれだと今までの表示方法ではすんなりピクセルシェーダを利用することができないというミスorz
934 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 17:50:11 ] テクスチャに線とか四角とか円とか描くにはどうすればいいですか?
935 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 18:02:10 ] スプライトはつかっqoe:uek?
936 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 18:06:57 ] 1ドットのビットマップを引き伸ばしたり回転したりで四角やら線を描いたことはあるが・・・
937 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 18:13:54 ] ゲーデーイー
938 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 18:30:39 ] >>935 最後のほうがよくきこえんかった >>936 同じような感じで無理してたけど やっぱりそういう手しかないのかな DirectDrawでできるならD3Dスプライトではできると思ってたんだが
939 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:00:27 ] 新しいノートPCでDirectXを作ったゲーム開発を行おうと思うのですが メモリ4Gと2Gじゃかなり違いますか?(XP32BIT) 事情でデスクトップは買えません。。。
940 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:02:05 ] 富豪的プログラミング乙
941 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 21:19:39 ] なにが4Gだボケ 普通に開発作業を快適にしたいならまずHDDをSSDに、D3Dでの開発重視なら何よりGPUの選択が中心 それだけだ
942 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 20:36:11 ] まず0x0fffffff(適当)の背景色で透けた四角い枠を書いて テクスチャを張り付けて、透過色のとこは下の枠と その後ろのモノが見えるってのは可能?
943 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 20:39:01 ] 日本語でおk
944 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 20:46:54 ] エスパーを試みたが仕事で疲れた脳みそじゃ無理だったぜ
945 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 21:09:34 ] このスレに居るのはSEと学生だけか?
946 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 21:12:27 ] そもそも「枠」が何を意味してるのかがわからん
947 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 21:15:05 ] よくわからんが ピクセルシェーダー使っていいなら余裕 固定機能ならテクスチャステージで RGBは乗算、αは加算とかにすればいけるんじゃね?
948 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 22:26:43 ] あきらめろ! あきらめれば100%解決できる。保証する
949 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 22:52:38 ] D3DXは使ったらイケないの?
950 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 23:42:40 ] うん
951 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 23:51:28 ] 何もないところに山をつくって挫折するくらいなら 使ったほうが100倍マシと思われる 車輪の再発明
952 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 23:52:49 ] STLとか無意味に毛嫌いしてる人いるよね
953 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:01:14 ] STLを使うとマネージドな言語になってパフォーマンスが落ちるといわんばかりの勢いで嫌う人と テンプレートが何なのかよく分らなくて敷居をまたげないで居る人の2種類がいると思う
954 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:14:30 ] 最近のD3DXフォントってグリフの作り置きできるんだね。
955 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:38:22 ] サイズを指定してCreateTectureでテクスチャを作ったときGetLevelDescでテクスチャ内のトップレベルの サーフェイスの情報を取得したら、例えば642*480で指定した場合、そのサイズがそのまま帰るんですが、 実際には2の累乗サイズに設定されているんでしょうか?それとも見たままなんでしょうか nVIDIaです
956 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:44:51 ] boostはまだしもSTLは必須だろ。
957 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:45:30 ] CAPSの中を見ろ。 作ったサイズそのままのビデオカードと2の累乗になるビデオカードがある。
958 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 00:57:23 ] >>957 D3DCAPS9のTextureCapsですよね? D3DPTEXTURECAPS_NONPOW2CONDITIONAL D3DPTEXTURECAPS_POW2 D3DPTEXTURECAPS_SQUAREONLY は全て0でした・・・。
959 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 01:54:01 ] 俺はなんとなく、例で出した642*480という半端な数値が気になったw 2の累乗のテクスチャしか作れないGPUなんて5年くらい前から出て無いんじゃない?
960 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 02:50:06 ] >>959 補間でふちが見えないようにだろ
961 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 06:28:43 ] みなさん、頭の体操の時間デス レンダリングターゲットをテクスチャBにて描画したい場合、 @コメントアウトすると画面がぐちゃぐちゃになるものの書込まれているが、 そののままだとテクスチャBへの書込みは正常に処理されない どうしてでしょうか?(回答時間 20分) @GetRenderTarget(0,バックバッファ);//ここだよ AテクスチャB->GetSurfaceLevel(0,サーフェイスA); BSetRenderTarget(0,サーフェイスA); CSetTexture(0,テクスチャB); DDrawPrimitive ESetRenderTarget(0,バックバッファ) ヨロシクオネガイシマス(´・ω・`)つ
962 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 06:57:59 ] マルチかよ
963 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 07:13:29 ] >>960 それなら642*482にしないと
964 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 13:55:05 ] 質問したいなら やりたいことを相手に伝わるように書いてほしいものだ それができないなら全ソース晒せ
965 名前:961 mailto:sage [2008/10/24(金) 14:33:26 ] ちょっと文章変ですね >@コメントアウトすると画面がぐちゃぐちゃになるものの書込まれているが 言いたいことは、@をコメントアウトすると半透明になって激しくちらつくのに 次にコメントアウトを外して実行するとテクスチャに書込まれている、と言いたかった やりたいのはテクスチャを貼った板ポリゴンをサーフェイスに関連付けたテクスチャ内 に描画したい・・・その処理のもっともシンプルなコードを知りたいのです
966 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 14:40:19 ] シンプルなコード・・・つってもそんなの DrawPrimitiveするだけだろ・・・。 細かいステートの説明までいちいちしてられん。
967 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 16:44:44 ] >>965 頭の体操の時間ですやら回答時間20分やら、君は何様だよ
968 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 16:46:50 ] 質問だったのか、、、、なんかのネタかとおもってスルーしてた・・・
969 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 17:54:36 ] ちなみにこいつはゲハ板でもマルチしてるゴミクズ
970 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 16:47:36 ] スプライトの概念がよく分からないのですが、 板ポリゴンにテクスチャを貼って表示するのと、スプライトで表示するのは どのような違いがあるのですか? プログラムの中身ではなくて表示方法? 色々調べたのですが分からなかったのでアドバイスお願いします。
971 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 16:57:16 ] 普通の板ポリと実態は同じだと思っていい だからスプライトとか言ってもDirectDrawなんかと比べると遅い そのかわりに回転・拡大・半透明とかは板ポリと同じで簡単 そしてポリと違ってウインドウ平面への描画がしやすい機能が一通りそろってる
972 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 17:10:04 ] テクスチャーとスプライトとサーフェヘスはなにが違うの?
973 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 17:42:58 ] >>970 何も違わない。D3DXのスプライト描画は中でDrawPrimitiveを呼んでいるだけ。 D3DXは補助ライブラリで、中身はD3Dを使って誰でも実装できるような機能。 必須ではないがよく使う関数をMSが用意してくれたのがD3DX。
974 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 19:21:49 ] テクスチャー 絵 スプライト、サーフェス 画用紙
975 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 19:36:18 ] 概念の違いを聞いてるのに実装を答えても意味なくね
976 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 19:47:05 ] 2Dの絵を表示するための設定なんかを勝手によろしくやってくれるのが D3DXのスプライトってとこだな。 パフォーマンスのことも気を使ってくれるので、何も知らない素人が 自分でDrawPrimitive呼ぶよりはマシ。 よく分かってる奴なら、自分で描画した方がもっと良い。
977 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 19:51:24 ] スプライト が よろしくやってくれるんじゃなくて スプライト を よろしくやってくれる
978 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 20:00:50 ] スプライト関数の中みれねぇから何が影響あって何が影響ないのかさっぱりわかんねぇよ って感じで絶対に使わなくなると思う
979 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 20:19:36 ] カプセル化だお
980 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:00:42 ] DirectXをまじめに使おうと思ったら、スプライト関数はデバッグ用くらいにしか使えないと思う。
981 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:12:52 ] ビデオカードとドライバも自作しないと怖くて使えないよね 中で何やってるかわからないからね!
982 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:15:24 ] ビデオカードw カワイイ言い方ですねw
983 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:19:48 ] MDCCLXXVI NOVUS ORDO SECLORUM
984 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:38:56 ] ビデオカードがかわいい言い方だとすると かわいくない言い方ってどんなんなの?
985 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:40:54 ] >>984 お前かわいいなちょっとこっち来いよ
986 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:51:51 ] そもそもスプライトなどどこにもない インタフェイスの名前を不正確なカタカナに置き換える馬鹿が大勢いるから、 内容を誤解させているんだぞ
987 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 21:59:56 ] >>980 まじめに使うのは大いに結構なんだけど スプライト関数はデバッグ用くらいにしか使えないとか 初心者すれで言っててもしょうがないと思うんだ 初心者相手に遅いだの仕えないだの言って 簡単な質問をややこしくしすぎかと思うんだが そんなもんは使ってみて遅いとか使えないとか 思った奴が次を模索すればいい話であって それで満足する奴もいるんだからいんじゃないのか? おまえさんが使えないと決め付ける必要はないと思うんだ >>984 ビデオカード グラフィックカード ビデオボード グラフィックボード 他にもいろんな呼ばれかたがあるけど どれで言おうと相手に伝わればいいと思うが どういうわけかカッコイイとかカッコワルイとかこだわるやつがいて そういうやつをみるとカッコワルイなと思う あと半角にやたらこだわるやつとかもいい加減時代遅れだと思う
988 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:03:57 ] ID3DXSpriteをスプライトと言っている馬鹿、 迷惑だからもうプログラムをやめろ
989 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:07:06 ] じゃなんて読むんすか先輩
990 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:12:58 ] カタカナ表記せずにID3DXSpriteと書けばいいだけ 何故誤解を生むカタカナでわざわざ書くのか、馬鹿の考えはさっぱり理解出来ない
991 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:14:32 ] 先輩会話の中ではどういえばいいんすか
992 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:19:26 ] ハァ?お前は会話の中でどうやって書いているんだ?
993 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:20:36 ] あいでぃーすりーでぃえっくすすぷらいと
994 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:21:27 ] いーでーどらいでーいくすえすぺーえーるいーてーえー
995 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:31:16 ] スプライトと言ったらID3DXSprite、メッシュと言ったらID3DXMesh、 フォントと言ったらID3DXFont、バッファと言ったらID3DXBuffer、 どれだけ超能力が必用なんだよ?
996 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:32:23 ] >ID3DXSprite インターフェイスは、 >Microsoft Direct3D を使ってスプライトを描画するプロセスを >単純化する一連のメソッドを提供します。 マニュアルの中の人は、スプライトと言ってる件について
997 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:41:32 ] >>996 馬鹿の考えはさっぱり理解出来ない
998 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:41:55 ] 機械翻訳の中の人なんていない
999 名前:デフォルトの名無しさん [2008/10/25(土) 22:55:49 ] よそ者だけど立ててみた。 【C++】 DirectX初心者質問スレ Part19 【C】 pc11.2ch.net/test/read.cgi/tech/1224942911/
1000 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 22:57:26 ] >>999 よそ者だけど乙
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。