1 名前:デフォルトの名無しさん [2018/03/23(金) 15:24:12.95 ID:1IsbON+l.net] 回答する人も、質問する人も必ず読んでください これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。 前 【C++】 DirectX初心者質問スレ Part40 【C】(c)2ch.net https://mevius.5ch.net/test/read.cgi/tech/1474782237/ >>2 リンク
277 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 06:55:40.00 ID:9FBe/JT+.net] >>275 んだが?
278 名前:デフォルトの名無しさん [2019/02/19(火) 12:30:36.63 ID:1Fqwt8so.net] >>276 どこで観たか忘れたけどどこかで観たコピペ
279 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 19:28:09.94 ID:4FexZV5t.net] >>276 ワロタw
280 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 22:54:24.29 ID:fjUuFMdi.net] 面白い
281 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 02:03:51.93 ID:k2rjMpcY.net] DirectX12のwindows7対応って今更何がしたいのかさっぱり理解出来ないな
282 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 02:37:09.83 ID:KGoVXtPG.net] 常に我々の想像の斜め下を行くのがMicrosoftという会社なのだよ。
283 名前:デフォルトの名無しさん [2019/03/14(木) 11:30:54.43 ID:s2YvJJWc.net] GL4 > DX12 ですか?
284 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 11:40:31.87 ID:nYszdZlz.net] Windows10への移行が進まないのでまたWindows7からやり直す気になったんだな。 殊勝なこった。
285 名前:デフォルトの名無しさん [2019/03/14(木) 11:46:27.76 ID:gZUdQ9Pv.net] test https://mevius.5ch.net/test/read.cgi/tech/1402805092/
286 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 16:28:05.55 ID:4yIsYmxe.net] ほんまマジ7永続化しないかな 10使ってるけどクソすぎて腹立ってる
287 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 02:22:17.59 ID:FF9DOeDg.net] >>284 >>281 はwindows7なんてもう3割切ってるのになんで今更って意味だったんだけどな
288 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 02:34:49.06 ID:EXqPfFKm.net] ごめん>>284 だと思ってた
289 名前:デフォルトの名無しさん mailto:sage [2019/03/19(火) 11:14:30.65 ID:3vrqfuIl.net] 自分は、もう最新のDirectXの開発から身を引いている者なのですが、 下記のニュースにて、Windows7でDirectX Raytracingが 動作するのではと思いました。 ttps://www.4gamer.net/games/033/G003329/20190314031/
290 名前:デフォルトの名無しさん [2019/03/20(水) 11:12:13.30 ID:h/GW8QOA.net] pyopenglってあるけどpydxってある?
291 名前:デフォルトの名無しさん mailto:sage [2019/03/22(金) 01:48:43.46 ID:EWL/taeN.net] Havokってマイクロソフトから音沙汰内からそのまま消えるのかと思ってた https://automaton-media.com/articles/newsjp/20190319-87672/
292 名前:デフォルトの名無しさん mailto:sage [2019/03/22(金) 20:20:37.10 ID:uuuO+xYB.net] 質問です。 IDirect3DDevice9::Reset を呼び出すと、 D3DPOOL_SYSTEMMEM や D3DPOOL_SCRATCH で作成したテクスチャも消失しますか?
293 名前:デフォルトの名無しさん mailto:sage [2019/03/23(土) 00:15:23.81 ID:G5bW2EJf.net] >>292 しないよ
294 名前:デフォルトの名無しさん mailto:sage [2019/03/23(土) 00:33:31.63 ID:cVTLhDAF.net] >>292 するよ
295 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 18:48:01.60 ID:WJlW+twg.net] >>292 お礼も言えないのか情けない
296 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 21:33:35.30 ID:WKxcwvjT.net] いえ、すいません、 結局どっちかわからなかったもので・・・
297 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 21:38:24.49 ID:WKxcwvjT.net] >>293 >>294 ご回答ありがとうございます。 自分でも調べたところ、D3DPOOL_SYSTEMMEM で作成したテクスチャは内容が消失しているように思えました、 ただ、自分のプログラムが間違っているだけかもしれないですが・・・
298 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 22:46:32.62 ID:FpMCPtqa.net] どーしても9でやらんといかんのか
299 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 23:24:26.18 ID:WKxcwvjT.net] はい、もう9で色々作ってしまっているのと、WindowsXPで動かしたいので
300 名前:デフォルトの名無しさん mailto:sage [2019/03/24(日) 23:57:30.44 ID:z21lQS4L.net] >>297 うんまあ、どんな検証コード使ったのかしらんが結論がそれなら間違っとるな
301 名前:デフォルトの名無しさん [2019/03/25(月) 02:31:06.53 ID:MuEFgcsw.net] C/C++の使い方間違ってそう
302 名前:デフォルトの名無しさん mailto:sage [2019/03/25(月) 06:03:00.51 ID:9PsZkemJ.net] やはり間違ってますか。テクスチャ自体は消失してませんでしたが、 内容がおかしなグラフィックになっていました・・・ ご回答ありがとうございます。 >>294 さんのご意見も聞きたいです。
303 名前:デフォルトの名無しさん mailto:sage [2019/03/26(火) 00:15:35.28 ID:vv/6sgs4.net] おまいらアフォか IDirect3DDevice9::Reset を呼び出すと、すべてのテクスチャ メモリ サーフェイスが消失し、管理下のテクスチャがビデオ メモリからフラッシュされ、すべてのステート情報が失われます。 ってヘルプに書いてあるだろ
304 名前:デフォルトの名無しさん mailto:sage [2019/03/26(火) 00:54:58.78 ID:ocCrckc4.net] MSに限らずだけどフラグが明示されていないようなドキュメントの言い回しは鵜呑みにしない方が良いのよねえ https://docs.microsoft.com/en-us/windows/desktop/direct3d9/lost-devices > All video memory must be released before a device can be reset from a lost state to an operational state. > This means that the application should release any swap chains created with IDirect3DDevice9::CreateAdditionalSwapChain > and any resources placed in the D3DPOOL_DEFAULT memory class. > The application need not release resources in the D3DPOOL_MANAGED or D3DPOOL_SYSTEMMEM memory classes.
305 名前:デフォルトの名無しさん mailto:sage [2019/03/26(火) 01:11:40.91 ID:qhv8bmdJ.net] 情報ありがとうございます ResetするのにD3DPOOL_SYSTEMMEMを解放する必要はないが、 テクスチャの内容は保障しないよって事なのかなぁ・・・
306 名前:デフォルトの名無しさん mailto:sage [2019/03/26(火) 19:23:37.37 ID:NbUyZWCM.net] 誰でも頭が良くなる、プログラムが書けるようになる方法が発見される 79249 https://you-can-program.hatenablog.jp
307 名前:デフォルトの名無しさん mailto:sage [2019/03/31(日) 01:58:01.43 ID:ho8kk4O0.net] NOTE: As of 29 Mar 2019, SharpDX is no longer being under development or maintenance 終わってしまった
308 名前:デフォルトの名無しさん [2019/04/04(木) 10:48:34.03 ID:4Pg7/9jZ.net] dllimport edom18.hateblo.jp/entry/2018/02/21/120758
309 名前:デフォルトの名無しさん [2019/04/04(木) 11:46:51.89 ID:4Pg7/9jZ.net] https://qiita.com/exliko/items/e458c26a2e2389580872 native https://chirotec.hatenablog.com/entry/2018/06/17/212551 https://qiita.com/imura/items/39334a02bb77bdef9e91
310 名前:デフォルトの名無しさん [2019/04/04(木) 11:47:21.31 ID:4Pg7/9jZ.net] tecotec-engineer.hateblo.jp/entry/2017/07/27/201832 https://blog.applibot.co.jp/2018/10/31/grpc-in-unity/
311 名前:デフォルトの名無しさん mailto:sage [2019/04/07(日) 01:22:55.36 ID:LKp1E5sS.net] DX11勉強中で定数バッファの扱いがよくわからないので教えて欲しいです これは別々に複数個用意しておいて、シェーダと同様にその都度セットし直すものなのでしょうか? ネットに落ちてるサンプルを色々と見ているのですが、カメラ行列だけを入れている物もあれば、併せて材質色やライティング用のパラメータを入れている物もあって混乱しています
312 名前:デフォルトの名無しさん mailto:sage [2019/04/07(日) 03:34:29.88 ID:27fxqR4U.net] 必要なものをその都度送ればいいよ セットしたシェーダが変わらない上に定数バッファの内容も変わらないなら送り直す必要は無いはず 変えたいときに送る
313 名前:デフォルトの名無しさん [2019/04/07(日) 06:02:21.50 ID:q0gI4Bxg.net] >>312 回答ありがとうございます 土日の内に最低限の描画パイプラインを用意しておきたかったので助かります
314 名前:デフォルトの名無しさん mailto:sage [2019/04/07(日) 12:17:02.24 ID:xl9NNqpd.net] vs2019ほんとに軽くなってて驚いたんだけど ここ数年中の人らは何やってんだってレベル
315 名前:デフォルトの名無しさん mailto:sage [2019/04/07(日) 13:54:29.00 ID:vK2HJm7v.net] 開発者としてはやる気が削がれる感想だな
316 名前:デフォルトの名無しさん mailto:sage [2019/04/07(日) 19:26:52.08 ID:qKbFEigK.net] みんな、NTやVistaを思い出すんだ
317 名前:デフォルトの名無しさん mailto:sage [2019/04/09(火) 12:17:36.92 ID:39tv23SA.net] この板にはMSを持ち上げる記事が多いな。 まるでMS社員が書いているかのようだ。
318 名前:デフォルトの名無しさん mailto:sage [2019/04/09(火) 19:19:20.98 ID:2fmMiie1.net] >>317 初心者スレなどにふらりと現れてスレとは無関係の稚拙な演説を垂れ流し 「MSには潰れて欲しい」などと呪詛を吐いて去っていく怨霊みたいな輩はよく見かける
319 名前:デフォルトの名無しさん [2019/04/10(水) 12:54:35.85 ID:87jhN1vD.net] 【高感度が高い会社】 https://toyokeizai.net/articles/-/273471 1位セブンイレブン、2位トヨタ、3位無印良品、4位イオン、5位ニトリ、 27位ソニー、35位任天堂、 71位アップル *** 167位タカラトミー、169位セガ、 181位マイクロソフト *** 194位バンダイナムコゲームス、 197位コナミ、234位スクウェア・エニックス、251位カプコン、293位レベルファイブ
320 名前:デフォルトの名無しさん [2019/04/10(水) 12:57:23.01 ID:87jhN1vD.net] 39位、東急ハンズ 40位、アマゾンジャパン *** 41位、楽天 42位、セイコー 43位、雪印メグミルク 44位、Google *** 45位、伊藤園
321 名前:デフォルトの名無しさん [2019/04/10(水) 13:00:11.85 ID:87jhN1vD.net] トヨタ>SONY>任天堂>amazon>楽天>セイコー>Google>アップル> タカラトミー>セガ>マイクロソフト>バンダイナムコゲームス> コナミ>スクウェア・エニックス>カプコン
322 名前:デフォルトの名無しさん mailto:sage [2019/04/10(水) 14:50:59.28 ID:9YALwuYf.net] 感度が高いことを高感度という 高感度が高いとか危険が危ないとか 変な言葉遣いやめれ
323 名前:デフォルトの名無しさん mailto:sage [2019/04/10(水) 17:43:05.02 ID:kdQMwufV.net] >>322 あなたは中国人か何か?
324 名前:デフォルトの名無しさん mailto:sage [2019/04/10(水) 17:53:17.49 ID:9YALwuYf.net] >>323 なぜそゆこと聞くアルか?
325 名前:デフォルトの名無しさん mailto:sage [2019/04/11(木) 00:40:22.08 ID:2BS9kfoy.net] 実は漢字が間違っていただけで、「高感度」ではなくて、正しくは、 「好感度が高い会社」
326 名前:デフォルトの名無しさん [2019/04/11(木) 09:35:27.51 ID:bTGeujWN.net] ァィャー
327 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 11:35:16.07 ID:14JA99+8.net] すみませんつかぬことをお聞きしますが、 テクスチャをピクセル毎に分解して自由に動かしたいんです。 要はピクセル数分の?ゾリューションをもった板ポリに一ピクセルづつ テキスチャを割り当てればいいんじゃないかと思ってるんですが、 shader内で書く際にどういった書き方をすればいいかどなたかご指南ただけませんか。 あと考え方が間違ってたら指摘して頂けると助かります。
328 名前:デフォルトの名無しさん [2019/05/16(木) 12:03:47.64 ID:Ox4fjiQE.net] テクスチャは一枚でよくね
329 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 19:02:18.71 ID:1FTKDnmE.net] 何がしたいかわからんけどポイントスプライト使ってみるとか
330 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 07:11:21.55 ID:bam7LHTg.net] >>328 テクスチャは一枚です。 >>329 要はテクスチャを一ピクセル毎に分解して、それをパーティクル状に自由に動かしたいのです。 その前段階として、板ポリにテクスチャのピクセルを一つ一つ割り当てたいのです。
331 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 07:21:03.82 ID:5vJNf7cS.net] 別に1ピクセルだろうが板ポリにUV座標していする一般的なスプライトと同じ実装で良いと思うが
332 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 10:22:40.73 ID:bam7LHTg.net] ポインスプライト実装でできました。 有難うございました!
333 名前:デフォルトの名無しさん mailto:sage [2019/05/25(土) 16:17:49.68 ID:P9kv6fd4.net] 行列計算ってのがよくわからないんですが、簡単にどういうことをするのか教えてください ((0,0,0)(0,0,0)(0,0,0)) こういう行列があったとしたら vector3(10,10,10) += gyouretsu[1] などとすることで、2番目の列にvector3が代入されるかと思います これってなんの意味があるんですか? 3dにおいてどういうシチュエーションで必要7日イメージがワキません godot使用です
334 名前:デフォルトの名無しさん [2019/05/25(土) 16:48:26.68 ID:997oQV33.net] 逆行列無いから意味無いで
335 名前:デフォルトの名無しさん mailto:sage [2019/05/25(土) 16:58:28.00 ID:WTzpeFf8.net] >>333 > 代入されるかと思います されない > なんの意味があるんですか? 自分からなんの意味もないコードを見せておいて何言ってんだ? ここはDirectXスレだ 他のスレをあたれ どのスレが適切かは自分で考えろ
336 名前:デフォルトの名無しさん [2019/05/25(土) 17:24:26.26 ID:MU6iVjMm.net] ブレンドステートオブジェクトのRenderTagetって RenderTarget[0]以外使うにはどうすればいいですか。
337 名前:デフォルトの名無しさん [2019/05/25(土) 18:50:30.35 ID:MU6iVjMm.net] すみません よく考えたらいらなさそうなのでやっぱりいいです。 時間を取らせてしまったのなら申し訳ありません。
338 名前:デフォルトの名無しさん [2019/05/29(水) 21:18:56.08 ID:CfbGvgRn.net] PIX for Windowsを使ってみたのですが、以下のようなエラーが出てしまいました。 ・・・・ Frame 000001 ........POST: <S_OK><this=0x04f731e0> IDXGISwapChain::GetBuffer(0, IID_ID3D11Texture2D, 0x005EF60C) Frame 000001 ........PRE: <this=0x04f2de08>ID3D10Texture2D::Map(6223320, Unknown D3D10_MAP, 6223436, 0xCCCCCCCC) D3D11 CORRUPTION: ID3D10Texture2D::Map: Fourth parameter is corrupt or NULL. [ MISCELLANEOUS CORRUPTION #16: CORRUPTED_PARAMETER4] An unhandled exception occurred. Closing Run File どうすれば改善できますか。 GetBufferのあたりはこんな感じです。 HRESULT hr; // スワップ・チェインから最初のバック・バッファを取得する ID3D11Texture2D* pBackBuffer; //バッファのアクセスに使うインターフェイス hr = pSwapChain->GetBuffer( 0, // バック・バッファの番号 __uuidof(ID3D11Texture2D), // バッファにアクセスするインターフェイス (LPVOID*)&pBackBuffer); // バッファを受け取る変数
339 名前:デフォルトの名無しさん [2019/05/29(水) 21:25:35.46 ID:CfbGvgRn.net] ちなみに ID3D10Texture2D::Mapを呼び出した覚えはないです GetBufferなら使いました。
340 名前:デフォルトの名無しさん mailto:sage [2019/05/30(木) 08:06:03.66 ID:bb+aWtrz.net] 4つ目の引数が、0xCCCCCCCC だから!
341 名前:デフォルトの名無しさん [2019/05/30(木) 17:04:06.51 ID:FYbqwzZe.net] >>340 回答ありがとうございます。 ID3D10Texture2D::Mapの4つ目の引数がおかしいとエラーで出てきているのはわかるのですが、 引数が4つのMap関数が見当たらないのですが 引数が5つの奴ならあります。 HRESULT hr; D3D11_MAPPED_SUBRESOURCE MappedResource; hr = pImmediateContext->Map( pCBuffer[ID], // マップするリソース 0, // サブリソースのインデックス番号 D3D11_MAP_WRITE_DISCARD, // 書き込みアクセス 0, // &MappedResource); // データの書き込み先ポインタ ↑の内部でID3D10Texture2D::Mapが呼び出されていたりするのでしょうか。
342 名前:デフォルトの名無しさん [2019/06/06(木) 12:19:41.96 ID:hSaNNShT.net] しょーもないゲームを自分で作って周りに見せて喜んでるだけなので バージョン8を使い続けてるけどヤバイ?急に動かなくなることある?
343 名前:デフォルトの名無しさん [2019/06/06(木) 12:21:12.48 ID:vdYhIH7X.net] さすがに9未満は知らんわ
344 名前:デフォルトの名無しさん mailto:sage [2019/06/06(木) 12:23:51.62 ID:hSaNNShT.net] >>343 今んとこはWin10でも元気に動いてる。マイクロソフトも非推奨?
345 名前:デフォルトの名無しさん [2019/06/11(火) 04:05:17.78 ID:1utxNven.net] DirectX8だとSDKも8のSDKで作ってるの?あとVisual Studioのバージョンは? まあVC6+DirectX SDKの7で作ったやつがソース変更ナシかほぼナシで VS2008+DX11でビルドできた覚えがあるから大して意味のある質問ではないかもしれないけど
346 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 11:03:28.52 ID:zoFa+KX6.net] パーティクルトレイルってやっぱ見てるだけでかっけーってなるんですけど、 実装するにはどういう考え方たしたらいいですか?
347 名前:デフォルトの名無しさん [2019/06/12(水) 11:30:40.77 ID:tqvE0DW+.net] うまー daiki-evilone.hatenablog.com/entry/2017/02/28/151136 https://www.sawalemontea.com/entry/2017/09/09/133000 https://docs.unity3d.com/ja/current/Manual//PartSysTrailsModule.html
348 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 11:38:18.03 ID:zoFa+KX6.net] >>347 有難う ただパーティクルシステムを基にUnityの機能じゃなくてジオメトリシェーダかなんかで プログラマブルにやりたいんです。 環境はvvvv、windows10
349 名前:デフォルトの名無しさん [2019/06/12(水) 11:50:23.19 ID:tqvE0DW+.net] >実装するにはどういう考え方 が描いてあるから貼った
350 名前:デフォルトの名無しさん mailto:sage [2019/06/20(木) 10:08:17.58 ID:MGTUiFfb.net] >>344 もう11以降使ってない奴はマイクロソフトとかじゃなくAMDとか普通にバグあっても 直さない宣言してるからな
351 名前:デフォルトの名無しさん mailto:sage [2019/07/13(土) 11:48:07.77 ID:mwaE/2px.net] 12でそれなりの描画が実装できたけど、やはり複雑。 ルートシグネチャ、シェーダ、ディスクリプタで器を決めて、頂点、索引、定数、テクスチャをGPUにロード。 ディスクリプタにテクスチャ、定数を入力にbind、描画ターゲットと深度ステンシルを出力にbind。 頂点と索引、シェーダを専用スロットに繋いで、コマンドリストに描画命令をいれる。 リストはあロケータから取り出して、 コマンドキューに入れる。 コマンドキューにシグナルいれて、フェンスで完了を確認する。 コマンドキューはスレッドに一つづつのインスタンスを持たせて、コマンドリストはコマンドキューに複数突っ込んでもよいが、複数のコマンドキューに容れてはならない。 描画ターゲットと深度ステンシルは、たんなるメモリだが、テクスチャとして扱うので、参照保護のためにアクセス前にはバリアを遷移させて状態を明示的に制御する。 マルチレイヤの合成、オフラインサーフェスへの描画、スワップチェインから取り出したバックバッファへの描画、present。 一枚書くだけでもしんどいな
352 名前:デフォルトの名無しさん [2019/07/13(土) 11:58:32.38 ID:mwaE/2px.net] 字形は字形でFT使っているから、プロセッサメモリにレンダリングしてGPU上のテクスチャと宣言したメモリをマップしてアップロード。 それをパイプラインで扱うからテクスチャを参照する頂点バッファにテクスチャマップさせたポリゴンを容れる。 ウィンドウ処理(2d処理)を3dで扱うためひUV座標も手前で計算。 欲を出して、ウィジェットのパーツを1メッシュで扱えるようにして、1ウィジェットをジオメトリ扱いで管理し始めたら 吐きそうほどの複雑な実装になりました。 行数で30万ステップぐらいか? セミコロンは、そろそろ100万いけそう
353 名前:デフォルトの名無しさん mailto:sage [2019/07/13(土) 13:01:33.24 ID:z78jYeW/.net] それだけの苦労をして得られるパフォーマンスは、 DX11に比べて如何ほどなのだろうか・・・?
354 名前:デフォルトの名無しさん [2019/07/22(月) 07:40:47.32 ID:NFxt+0t6.net] 一概には言えない。 よく言われる通り、コマンドキューとコマンドリストを複数持って並列に実行させられるから、GPUを無駄なく使うようにしやすい。 200の入力を3回するには、600の計算量となるが、それをシーケンシャルにやれば600時間単位係り、それを並列に計算できるなら3並列で200時間単位にまで落とせるかも知れない。 描画バス、遅延レンダリング(深度バッファシャドウ)なんかは前段の計算が完了する要件があるから並列できない。 ジオメトリやメッシュを描画する部分が適用しやすい。 つまりフレームレートに影響するのは、ポリゴン数と描画ターゲットの解像度。APIセットが計算性能に与える影響は大きくない。 APIセットは、ドライバとハードウェア設計を楽にした上で、オープン規格でプログラムをコーディングしやすくするもの。 12の良いところは、GPUを直接触るような気持ちよさだと思う
355 名前:デフォルトの名無しさん mailto:sage [2019/08/14(水) 20:10:09.93 ID:uomW9+HI.net] oggファイルをSlimDXのXAudio2で演奏しようとして、Ogg Vorbisを使って見たのですが、 ov_readで取得したchar *bufferをMultimedia::WaveStreamに入れこむ方法がわかりません かなりスレ違いな質問だと思いましたが、適当なスレが見つからなかったので
356 名前:デフォルトの名無しさん mailto:sage [2019/08/15(木) 15:20:56.41 ID:JLpJCumi.net] >>355 なにも考えずに、そのまま複写する。 オッグぽルヴィスから取り出した時点でPCMチャンクになるはず。 気にするべきはチャネル数、量子化ビット数、サンプリングレート、フレーム(チャンクのデータ量、バイト数)を合わせること。 なお、詰まりやすいのは、サンプリングレート。 単純にデバイスが対応していれば良いが、非対応なら自力でリサンプリングする必要。 基本は、デバイスが対応しているサンプリングレートのデータをなんからのコンバータで変換した音源を用意する。 ちなオーディオプレーヤーなんかを書く場合は、入力音源のサンプリングレートを絞ると使えないツールになるから、リサンプリングが必須。 リサンプリング機能は、インストールされたCODECに依存するが、ウィンドウず標準のコーデックは使いにくい。 商用ゲームがセガ?のAMのファームを使うのは、このあたりに関係してんのかも。 ちらうら
357 名前:355 mailto:sage [2019/08/16(金) 21:48:05.02 ID:wxfU4TEg.net] WaveStreamを作成するときにヘッダー情報を入れてないだけでした。すんません SlimDXのサンプルコードでは、AudioBufferにWaveStreamをそのまま入れているけど、ヘッダー情報を除いたStreamが正解ですよね? ov_readで取得したデータでMemoryStreamを作成してAudioBufferに入れたら演奏できました
358 名前:デフォルトの名無しさん [2019/08/17(土) 10:03:25.52 ID:BwITc4Uh.net] おま環 前半のような勘違いをしてる知能だと後半でも勘違いしてる可能性大
359 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 20:22:39.40 ID:BIBNoJLn.net] >>357 音が出たならそれでいいかと。 チャンクのゴミはコーデックのハイパスフィルターで除去される。 ストリームにヘッダー情報が来るようなAPIはないと思う。 サンプルがファイル処理をやってんだと思う。
360 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 21:55:59.22 ID:3MCL9drT.net] DirectX11でレンダーターゲット(画面全体)にシェーダを適用する方法を教えていただけませんでしょうか 板ポリゴンにシェーダを適用する方法は分かるのですが… 画面全体にピクセルシェーダを使って「GLSL Sandbox」のようなことがしたいです ググったのですが、そういうサイトを見つけられませんでした
361 名前:デフォルトの名無しさん [2019/08/17(土) 23:37:46.48 ID:BIBNoJLn.net] >>360 ・シェーダで一切行列を使わない ・射影座標(-1〜+1)の範囲で頂点座標を指定して頂点配列を作る 要点はこの二つ 細かい点は ・ビューポートはウィンドウサイズに合わせる ・描画ターゲットはスワップチェインから取り出す ・深度ステンシルは取り敢えず忘れる ・固定機能ステートはすべてデフォルト値でつくり、コンテキストに設定する ・シェーダーは、とりあえずバーテックスとピクセルのみ(中身はパススルー。入力頂点要素複写だけにする) あとD3D11デバイスだったかコンテキストとスワップチェインを同時につくるAPIがあるから、ネットサンプルを参考にせず、そっちを使う。
362 名前:デフォルトの名無しさん [2019/08/17(土) 23:52:33.15 ID:BIBNoJLn.net] 描画するまでに最低限やることリスト ・デバイス、コンテキスト、スワップチェインを作る ・スワップチェインから描画ターゲットを作る ・コンテキストに固定機能ステート(ラスタライズ、ブレンド)を設定 ・コンテキストにシェーダー(バーテックスとピクセル)を設定 描画ループ(最適化なし)) ・コンテキストに入力頂点配列レイアウトをつける ・コンテキストに入力プリミティブを指定する ・入力する頂点配列に適したdrawを呼ぶ ・スワップチェインにフロントとバックバッファを切り替えるようにつたえる(present) 必須なのは、このあたり。 やっちゃダメなこと ・神に祈るな
363 名前:デフォルトの名無しさん mailto:sage [2019/08/18(日) 00:13:51.13 ID:8LEpKI7v.net] >>361 ありがとうございます! おっしゃるとおりVertexBufferで-1.0〜1.0の範囲の4頂点を作って、VertexShaderで行列を使わずにそのままinput→outputするだけでいけました 数時間悩んでたのですがスッキリしました 基礎が全然分かってないことに気づきました ありがとうございました
364 名前:デフォルトの名無しさん mailto:sage [2019/08/18(日) 01:20:27.90 ID:0Ob94YMj.net] >>363 おめめ! そこがわかれば、射影行列、ビュー行列、ワールド行列と芋づる式に理解できる。 射影行列は、行列で指定した範囲の8つの角をそのデバイス座標空間に納めるように座標変換する計算を指す。 その-1から+1の範囲の外におかれた頂点はラスタライズされなくなる。(ピクセルシェーダーに送られない)
365 名前:デフォルトの名無しさん mailto:sage [2019/08/22(木) 00:48:20.80 ID:Wwh8yM4I.net] (チラ裏) VulkanとDirect3D12の両方でオフラインサーフェースへのレンダリングとレイヤ合成しての描画は実装できるようなったけど、 UnityやUnrealで使われているスクリプトやデータ構造を使ったレンダリングパスの可変実装ってのは、 必須なんだな、ってシミジミと感じる。 ・平面に描画するパス(1:n) ・立体を描画するパス(1:n) ・立体に影を付けるシャドウマップ用の計算目的のパス(1:n) ・字形をプロセッサで描画したテクスチャをGPUに流し込むパス(1:n) ・ウィンドウ(をウィジェット単位に)描画するパス(n:n) ・上記を合成してスワップチェインに描画するパス(n:n) 今まで描画パスは全部個別にC++で書いていたが、 動的に「描画ターゲット」「シェーダ」「ブレンディングに代表される固定機能ステート」をスクリプトや外部データ参照で実装できるようにしないと 映像的な演出を工夫する際のコード実装でコード量が爆発しそう。 ウィンドウ処理は、描画ターゲットを複数枚要求し、立体の描画は描画ターゲットが一枚でもいいが、複数のジオメトリとポリゴン集合別のブレンディングパラメータを欲する。 やっぱりUnityは、よく出来ている。
366 名前:デフォルトの名無しさん [2019/08/22(木) 09:44:48.00 ID:xQsiKIbM.net] ○|○|
367 名前:デフォルトの名無しさん mailto:sage [2019/08/23(金) 21:30:01.80 ID:Fmpmi7jg.net] >>363 いえいえ お礼なんて入りませんよ
368 名前:デフォルトの名無しさん [2019/08/24(土) 09:30:16.20 ID:u2q8uNB0.net] お礼は要らない お札は要る
369 名前:デフォルトの名無しさん mailto:sage [2019/08/28(水) 18:29:40.05 ID:Uv4FOXbV.net] XAudioでモノラル音声のパン制御について質問です。 以下のページを参考にしているのですが、 https://docs.microsoft.com/en-us/windows/win32/xaudio2/how-to--pan-a-sound IXAudio2MasteringVoice::GetChannelMask 関数が 無いようなのですが、どうすればいいでしょうか? SDKはWindowsXPでも動かしたいので DirecctX SDK(June 2010) を使用しています。
370 名前:デフォルトの名無しさん mailto:sage [2019/08/28(水) 22:27:58.14 ID:IxrF6DV7.net] >>369 そのSDKのXAudio2(2.7)ではサポートしてない機能だから無理じゃないかな IXAudio2MasteringVoice::GetChannelMask Platform Requirements Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8)
371 名前:デフォルトの名無しさん mailto:sage [2019/08/28(水) 22:46:59.14 ID:Uv4FOXbV.net] このバージョンではサポートしてない機能でしたか 代わりの手段があれば知りたかったのですが ありがとうございます
372 名前:デフォルトの名無しさん mailto:sage [2019/08/28(水) 23:32:26.60 ID:HDEnmqbf.net] >>371 どうしてもやりたければ自力でパンを考慮したステレオデータに変換からXAudio2に渡す 完全な興味本位だけど、XPは何に使ってるの?
373 名前:デフォルトの名無しさん mailto:sage [2019/08/29(木) 07:46:12.69 ID:h0m6WSA+.net] イメージとしては、モノラルからステレオへの変換は、モノラルデータの開始位置に差をつけて、右チャネルデータとして扱い、後ろに詰め物を入れる。 パンは出力したい左右の比率に合わせてPCMデータに比率を掛ける。 これで行けそうな気はする。 チャネルを分離する部分なんかはキチンと実測して試行錯誤しないと、ステレオじゃなくエコーに聴こえるか、モノラルのままに聴こえそう。
374 名前:デフォルトの名無しさん mailto:sage [2019/08/29(木) 08:53:04.16 ID:cxVYJcua.net] ありがとうございます どのチャネルが左右のスピーカーのどちらなのかを知る手段がないと厳しそうに思えました
375 名前:デフォルトの名無しさん mailto:sage [2019/08/29(木) 09:05:01.10 ID:O22RpEfF.net] WindowsXPは古いゲームをプレイするのに使っています
376 名前:デフォルトの名無しさん mailto:sage [2019/08/29(木) 09:08:46.27 ID:DrrCjElh.net] 第三科学研究所のDPPケーブルがUSBよりも入力遅延が小さいのと マルチタップが使えるので気に入ってます
377 名前:デフォルトの名無しさん [2019/09/03(火) 09:29:38.14 ID:HHkXD8DX.net] 「DirectX9必携」という本が良いと聞き DL版をカートに入れてPayPalで支払いしたんですが お店からなんの音沙汰もありません 手続き間違えたんでしょうか? ノースブレインコンピュータのペイパル店です