【C++】 DirectX初心者質問スレ Part41 【C】

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/03/23(金) 15:24:12.95ID:1IsbON+l
回答する人も、質問する人も必ず読んでください

これらに当てはまる人のための質問スレです。
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リンク
341デフォルトの名無しさん
垢版 |
2019/05/30(木) 17:04:06.51ID:FYbqwzZe
>>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.96ID:hSaNNShT
しょーもないゲームを自分で作って周りに見せて喜んでるだけなので
バージョン8を使い続けてるけどヤバイ?急に動かなくなることある?
343デフォルトの名無しさん
垢版 |
2019/06/06(木) 12:21:12.48ID:vdYhIH7X
さすがに9未満は知らんわ
2019/06/06(木) 12:23:51.62ID:hSaNNShT
>>343 今んとこはWin10でも元気に動いてる。マイクロソフトも非推奨?
345デフォルトの名無しさん
垢版 |
2019/06/11(火) 04:05:17.78ID:1utxNven
DirectX8だとSDKも8のSDKで作ってるの?あとVisual Studioのバージョンは?

まあVC6+DirectX SDKの7で作ったやつがソース変更ナシかほぼナシで
VS2008+DX11でビルドできた覚えがあるから大して意味のある質問ではないかもしれないけど
2019/06/12(水) 11:03:28.52ID:zoFa+KX6
パーティクルトレイルってやっぱ見てるだけでかっけーってなるんですけど、
実装するにはどういう考え方たしたらいいですか?
347デフォルトの名無しさん
垢版 |
2019/06/12(水) 11:30:40.77ID:tqvE0DW+
うまー
http://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
2019/06/12(水) 11:38:18.03ID:zoFa+KX6
>>347

有難う
ただパーティクルシステムを基にUnityの機能じゃなくてジオメトリシェーダかなんかで
プログラマブルにやりたいんです。
環境はvvvv、windows10
349デフォルトの名無しさん
垢版 |
2019/06/12(水) 11:50:23.19ID:tqvE0DW+
>実装するにはどういう考え方

が描いてあるから貼った
2019/06/20(木) 10:08:17.58ID:MGTUiFfb
>>344
もう11以降使ってない奴はマイクロソフトとかじゃなくAMDとか普通にバグあっても
直さない宣言してるからな
2019/07/13(土) 11:48:07.77ID:mwaE/2px
12でそれなりの描画が実装できたけど、やはり複雑。
ルートシグネチャ、シェーダ、ディスクリプタで器を決めて、頂点、索引、定数、テクスチャをGPUにロード。
ディスクリプタにテクスチャ、定数を入力にbind、描画ターゲットと深度ステンシルを出力にbind。
頂点と索引、シェーダを専用スロットに繋いで、コマンドリストに描画命令をいれる。
リストはあロケータから取り出して、 コマンドキューに入れる。
コマンドキューにシグナルいれて、フェンスで完了を確認する。

コマンドキューはスレッドに一つづつのインスタンスを持たせて、コマンドリストはコマンドキューに複数突っ込んでもよいが、複数のコマンドキューに容れてはならない。

描画ターゲットと深度ステンシルは、たんなるメモリだが、テクスチャとして扱うので、参照保護のためにアクセス前にはバリアを遷移させて状態を明示的に制御する。

マルチレイヤの合成、オフラインサーフェスへの描画、スワップチェインから取り出したバックバッファへの描画、present。

一枚書くだけでもしんどいな
352デフォルトの名無しさん
垢版 |
2019/07/13(土) 11:58:32.38ID:mwaE/2px
字形は字形でFT使っているから、プロセッサメモリにレンダリングしてGPU上のテクスチャと宣言したメモリをマップしてアップロード。
それをパイプラインで扱うからテクスチャを参照する頂点バッファにテクスチャマップさせたポリゴンを容れる。

ウィンドウ処理(2d処理)を3dで扱うためひUV座標も手前で計算。
欲を出して、ウィジェットのパーツを1メッシュで扱えるようにして、1ウィジェットをジオメトリ扱いで管理し始めたら
吐きそうほどの複雑な実装になりました。

行数で30万ステップぐらいか?
セミコロンは、そろそろ100万いけそう
2019/07/13(土) 13:01:33.24ID:z78jYeW/
それだけの苦労をして得られるパフォーマンスは、
DX11に比べて如何ほどなのだろうか・・・?
354デフォルトの名無しさん
垢版 |
2019/07/22(月) 07:40:47.32ID:NFxt+0t6
一概には言えない。
よく言われる通り、コマンドキューとコマンドリストを複数持って並列に実行させられるから、GPUを無駄なく使うようにしやすい。

200の入力を3回するには、600の計算量となるが、それをシーケンシャルにやれば600時間単位係り、それを並列に計算できるなら3並列で200時間単位にまで落とせるかも知れない。
描画バス、遅延レンダリング(深度バッファシャドウ)なんかは前段の計算が完了する要件があるから並列できない。
ジオメトリやメッシュを描画する部分が適用しやすい。
つまりフレームレートに影響するのは、ポリゴン数と描画ターゲットの解像度。APIセットが計算性能に与える影響は大きくない。
APIセットは、ドライバとハードウェア設計を楽にした上で、オープン規格でプログラムをコーディングしやすくするもの。
12の良いところは、GPUを直接触るような気持ちよさだと思う
2019/08/14(水) 20:10:09.93ID:uomW9+HI
oggファイルをSlimDXのXAudio2で演奏しようとして、Ogg Vorbisを使って見たのですが、
ov_readで取得したchar *bufferをMultimedia::WaveStreamに入れこむ方法がわかりません
かなりスレ違いな質問だと思いましたが、適当なスレが見つからなかったので
2019/08/15(木) 15:20:56.41ID:JLpJCumi
>>355
なにも考えずに、そのまま複写する。
オッグぽルヴィスから取り出した時点でPCMチャンクになるはず。
気にするべきはチャネル数、量子化ビット数、サンプリングレート、フレーム(チャンクのデータ量、バイト数)を合わせること。

なお、詰まりやすいのは、サンプリングレート。
単純にデバイスが対応していれば良いが、非対応なら自力でリサンプリングする必要。
基本は、デバイスが対応しているサンプリングレートのデータをなんからのコンバータで変換した音源を用意する。

ちなオーディオプレーヤーなんかを書く場合は、入力音源のサンプリングレートを絞ると使えないツールになるから、リサンプリングが必須。
リサンプリング機能は、インストールされたCODECに依存するが、ウィンドウず標準のコーデックは使いにくい。

商用ゲームがセガ?のAMのファームを使うのは、このあたりに関係してんのかも。

ちらうら
357355
垢版 |
2019/08/16(金) 21:48:05.02ID:wxfU4TEg
WaveStreamを作成するときにヘッダー情報を入れてないだけでした。すんません

SlimDXのサンプルコードでは、AudioBufferにWaveStreamをそのまま入れているけど、ヘッダー情報を除いたStreamが正解ですよね?
ov_readで取得したデータでMemoryStreamを作成してAudioBufferに入れたら演奏できました
358デフォルトの名無しさん
垢版 |
2019/08/17(土) 10:03:25.52ID:BwITc4Uh
おま環

前半のような勘違いをしてる知能だと後半でも勘違いしてる可能性大
2019/08/17(土) 20:22:39.40ID:BIBNoJLn
>>357
音が出たならそれでいいかと。
チャンクのゴミはコーデックのハイパスフィルターで除去される。
ストリームにヘッダー情報が来るようなAPIはないと思う。
サンプルがファイル処理をやってんだと思う。
2019/08/17(土) 21:55:59.22ID:3MCL9drT
DirectX11でレンダーターゲット(画面全体)にシェーダを適用する方法を教えていただけませんでしょうか

板ポリゴンにシェーダを適用する方法は分かるのですが…
画面全体にピクセルシェーダを使って「GLSL Sandbox」のようなことがしたいです
ググったのですが、そういうサイトを見つけられませんでした
361デフォルトの名無しさん
垢版 |
2019/08/17(土) 23:37:46.48ID:BIBNoJLn
>>360
・シェーダで一切行列を使わない
・射影座標(-1〜+1)の範囲で頂点座標を指定して頂点配列を作る
要点はこの二つ

細かい点は
・ビューポートはウィンドウサイズに合わせる
・描画ターゲットはスワップチェインから取り出す
・深度ステンシルは取り敢えず忘れる
・固定機能ステートはすべてデフォルト値でつくり、コンテキストに設定する
・シェーダーは、とりあえずバーテックスとピクセルのみ(中身はパススルー。入力頂点要素複写だけにする)

あとD3D11デバイスだったかコンテキストとスワップチェインを同時につくるAPIがあるから、ネットサンプルを参考にせず、そっちを使う。
362デフォルトの名無しさん
垢版 |
2019/08/17(土) 23:52:33.15ID:BIBNoJLn
描画するまでに最低限やることリスト
・デバイス、コンテキスト、スワップチェインを作る
・スワップチェインから描画ターゲットを作る
・コンテキストに固定機能ステート(ラスタライズ、ブレンド)を設定
・コンテキストにシェーダー(バーテックスとピクセル)を設定


描画ループ(最適化なし))
・コンテキストに入力頂点配列レイアウトをつける
・コンテキストに入力プリミティブを指定する
・入力する頂点配列に適したdrawを呼ぶ
・スワップチェインにフロントとバックバッファを切り替えるようにつたえる(present)

必須なのは、このあたり。
やっちゃダメなこと
・神に祈るな
2019/08/18(日) 00:13:51.13ID:8LEpKI7v
>>361
ありがとうございます!
おっしゃるとおりVertexBufferで-1.0〜1.0の範囲の4頂点を作って、VertexShaderで行列を使わずにそのままinput→outputするだけでいけました

数時間悩んでたのですがスッキリしました
基礎が全然分かってないことに気づきました
ありがとうございました
2019/08/18(日) 01:20:27.90ID:0Ob94YMj
>>363
おめめ!
そこがわかれば、射影行列、ビュー行列、ワールド行列と芋づる式に理解できる。
射影行列は、行列で指定した範囲の8つの角をそのデバイス座標空間に納めるように座標変換する計算を指す。
その-1から+1の範囲の外におかれた頂点はラスタライズされなくなる。(ピクセルシェーダーに送られない)
2019/08/22(木) 00:48:20.80ID:Wwh8yM4I
(チラ裏)
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.00ID:xQsiKIbM
○|○|
2019/08/23(金) 21:30:01.80ID:Fmpmi7jg
>>363
いえいえ
お礼なんて入りませんよ
368デフォルトの名無しさん
垢版 |
2019/08/24(土) 09:30:16.20ID:u2q8uNB0
お礼は要らない
お札は要る
2019/08/28(水) 18:29:40.05ID:Uv4FOXbV
XAudioでモノラル音声のパン制御について質問です。
以下のページを参考にしているのですが、

https://docs.microsoft.com/en-us/windows/win32/xaudio2/how-to--pan-a-sound

IXAudio2MasteringVoice::GetChannelMask 関数が
無いようなのですが、どうすればいいでしょうか?
SDKはWindowsXPでも動かしたいので
DirecctX SDK(June 2010) を使用しています。
2019/08/28(水) 22:27:58.14ID:IxrF6DV7
>>369
そのSDKのXAudio2(2.7)ではサポートしてない機能だから無理じゃないかな

IXAudio2MasteringVoice::GetChannelMask
Platform Requirements
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8)
2019/08/28(水) 22:46:59.14ID:Uv4FOXbV
このバージョンではサポートしてない機能でしたか
代わりの手段があれば知りたかったのですが
ありがとうございます
2019/08/28(水) 23:32:26.60ID:HDEnmqbf
>>371
どうしてもやりたければ自力でパンを考慮したステレオデータに変換からXAudio2に渡す
完全な興味本位だけど、XPは何に使ってるの?
2019/08/29(木) 07:46:12.69ID:h0m6WSA+
イメージとしては、モノラルからステレオへの変換は、モノラルデータの開始位置に差をつけて、右チャネルデータとして扱い、後ろに詰め物を入れる。
パンは出力したい左右の比率に合わせてPCMデータに比率を掛ける。
これで行けそうな気はする。
チャネルを分離する部分なんかはキチンと実測して試行錯誤しないと、ステレオじゃなくエコーに聴こえるか、モノラルのままに聴こえそう。
2019/08/29(木) 08:53:04.16ID:cxVYJcua
ありがとうございます
どのチャネルが左右のスピーカーのどちらなのかを知る手段がないと厳しそうに思えました
2019/08/29(木) 09:05:01.10ID:O22RpEfF
WindowsXPは古いゲームをプレイするのに使っています
2019/08/29(木) 09:08:46.27ID:DrrCjElh
第三科学研究所のDPPケーブルがUSBよりも入力遅延が小さいのと
マルチタップが使えるので気に入ってます
377デフォルトの名無しさん
垢版 |
2019/09/03(火) 09:29:38.14ID:HHkXD8DX
「DirectX9必携」という本が良いと聞き
DL版をカートに入れてPayPalで支払いしたんですが
お店からなんの音沙汰もありません
手続き間違えたんでしょうか?
ノースブレインコンピュータのペイパル店です
378デフォルトの名無しさん
垢版 |
2019/09/03(火) 09:54:38.42ID:gWEsYspA
いまさら9ですか
2019/09/03(火) 11:40:23.76ID:e/AAMAV1
>>377
店に聞けよここを何だと思ってるの?
2019/09/03(火) 11:56:46.00ID:doM/k/48
>>378
日本語資料が豊富だしな
2019/09/03(火) 21:18:41.77ID:RMsO9mA3
それ結構アレな筆者がひとりでやってる会社だから
音沙汰ないならペイパル通さないと埒が明かないかもしれない
2019/09/04(水) 08:46:25.91ID:rcf0zyN5
dx9は、環境を整えるのが苦労するような。
プログマブルシェーダーはよいもの。
固定機能シェーダーは難解。
383デフォルトの名無しさん
垢版 |
2019/09/04(水) 10:33:43.46ID:Z0seKSTe
>dx9は、環境を整えるのが苦労する

昔はともかく今は全然苦労しない
っていうか最近のVS(VC)入れたら勝手に入る
2019/09/04(水) 18:48:52.95ID:XtIpVxxL
固定使わなければいいだけね
初学者には難易度逆な気もするが
385デフォルトの名無しさん
垢版 |
2019/09/04(水) 19:40:21.43ID:bgyq61vw
memo
http://www.kagami.org/diary/2004-12-07-1.html
http://mossan99.hatenabl●g.com/entry/2013/03/28/160907
2019/09/05(木) 20:43:15.44ID:j9MLZBFM
初学ならウニかアンリ。
レンダリングパスをプログマブルにスクリプトに出来るのは、かなりいい。

最近、自作プログラムでディスクリプタとコマンドリストを工夫したが、12とバルカンはかなり面白い。
ディスクリプタが最適化の要とかかれたウェブページを見かけるが、コマンドリストもかなりいい。
専門用語チックな単語を使うけど、モデルデータ単位でコマンドリストを作ることが出来るのは11の特殊な実装と12とバルカンだけだと思う。
「コマンドリストへの命令詰め込みを描画パスの外側に追いやることができる」
簡単な実装で試してみたが、目に見える効果があった。
2019/09/05(木) 20:47:00.55ID:j9MLZBFM
ちなみにこのアイデアは、バルカンチュートリアルの受け売り。
あれのサンプルがしれっと実装していた。
2019/09/05(木) 21:13:35.59ID:ZpSYObk3
(どうせ使わん知見)
ディスクリプタとは?
→ テクスチャと定数バッファに対する入力アセンブラに位置付くメカニズム
入力アセンブ
389デフォルトの名無しさん
垢版 |
2019/09/05(木) 21:14:01.92ID:ZpSYObk3
もうやだ。スマホ嫌い
2019/09/06(金) 00:03:17.80ID:WZ5InqQx
12へのモチベが上がる書き込み、ありがとう。
391デフォルトの名無しさん
垢版 |
2019/09/29(日) 01:19:13.34ID:RNbbFQK1
>>390
いえいえ
2019/10/03(木) 17:54:30.21ID:63G+g9tm
ちらうら。VRMというものがある。
ファイルフォーマットは、glTFを拡張したもので比較的に統一されたボーンデータを含めて人形モデルを扱える。
おおこれは!と思って調べてみた。
メッシュデータを覗いて無かったことにした。
データ交換にはよいけど、これをランタイムでロードする気にはならない。
終わり。興味がありそうな規格なので書いてみた。
2019/10/03(木) 22:15:21.34ID:eYbtAfjo
技術者なら肝心なとこ書いてよ
2019/10/04(金) 08:25:25.88ID:MVQV/kgg
voltage regulator module
395デフォルトの名無しさん
垢版 |
2019/10/09(水) 18:27:49.27ID:HTzGAas7
VRMというよりglTFのデータ構造がランタイムで使うには不適切てのは、
GPUに流し込む頂点配列は、予め流し込んで扱いやすく整理しておかないと、ロード時に頂点構造をいちいちフェッチ、整理(積み替え)が必要になるということ。

GPUメモリをマップしたアドレスにストレージからダイレクトに流し込むことが最効率となる。

つまりそういうこと。
こんぐらいは説明なしで理解出来ているのが殆どだろう。
396デフォルトの名無しさん
垢版 |
2019/10/10(木) 12:44:05.49ID:yMym0WfO
Q面だと焦点なし
https://ja.wikipedia.org/wiki/%E6%94%BE%E7%89%A9%E9%9D%A2%E9%8F%A1
http://atsuko.boo.jp/kumonoito/?p=6457
2019/10/10(木) 20:53:12.74ID:64KQQK84
>>396
反射鏡面に歪みがないなら、当然焦点はないだろ。
398デフォルトの名無しさん
垢版 |
2019/10/23(水) 14:37:08.12ID:QC9Y9kT9
>>397
うるさいよ、知ったか振りするな!
2019/10/25(金) 20:17:40.43ID:iMBN9GZO
DXRやってる?
2019/10/29(火) 13:18:37.30ID:VnFOd7CY
お前らしっかり読んどくんだぞ(`・ω・´)

https://devblogs.microsoft.com/directx/dev-preview-of-new-directx-12-features/
2019/10/29(火) 21:37:00.60ID:emlP2fTE
なるほど分からん
2019/10/30(水) 19:45:37.73ID:s/TbJkTe
描画パイプラインが新しくなるんだね。
増幅シェーダとメッシュシェーダに変化する。
増幅がIAからテッセレータあたりまでをカバーし、メッシュシェーダが評価シェーダからジオメトリシェーダをカバー。
そのあとはラスタライザに繋がり、ピクセル補完なんかに続く。
増幅シェーダに与える頂点バッファ索引バッファを複数一気に与えることが可能っぽいから、
ほとんど計算シェーダになって、シェーダが意識して頂点を参照するような気がする
2019/11/05(火) 23:25:17.33ID:Ja5qzbTk
>>399
>>402
また気がするだけかよw
404デフォルトの名無しさん
垢版 |
2019/11/06(水) 11:00:45.54ID:o3tEvZiY
AIがプログラム描くようになって
中で何やってるか人間に判らないレベルになると
みんな気がするしか言えなくなる気がする
2019/11/06(水) 18:03:49.13ID:K9Jg3ggd
>>403
まあ、答えを書く義務なんてないからね。
キチンと読まんと頭の中身がおばちゃんになっちゃうよ。
2019/11/06(水) 18:08:47.84ID:NbQf6fI7
DirectXはオワコンな気がする。
2019/11/06(水) 18:19:33.54ID:lAs+fg6D
ぶっちゃけ俺もVulkan移行中だけどこっちも驚くほど盛り上がってない
低レベルAPI叩く時代が終わっている気がする
2019/11/06(水) 20:43:12.56ID:JYHUzJTW
Unityに行くしかない…!!


気がする
2019/11/06(水) 21:46:54.62ID:QoFxEMxR
Unityって重くね?
2019/11/09(土) 03:29:30.96ID:LHynUEuR
UnityでグラフィックAPI選べるからねぇ
DirectX、Metal、OpenGL、Vulkan
2019/11/09(土) 11:25:43.09ID:baqU1blV
そのユニティバルカンは、たぶんスマホ向けだろうから、機能制限が多そうな予感がする。
いずれスマホ向けユニティと、コンソール向けユニティ、PC向けユニティに三分割されるか、
フレームワークが双互換性になしになる気がした。
2019/11/26(火) 20:52:47.79ID:CQHZf02y
お尻の穴がかゆい気がしたよな。
2019/12/15(日) 23:11:29.08ID:Sa6ad6lJ
DX12触ろうかと思うんだが
VisualStudioのバージョンて何がいいとかある?
サンプル見ると2015ばっかりなんだけど何使っても変わらん?
2019/12/15(日) 23:45:13.69ID:o5hhJvrb
変わらん
普通に2019でもバシバシ開いてビルドできてる
DXRのサンプルとか2019オンリーだったりするし
特に理由がなければ新しいの使った方がええんでないの
2019/12/15(日) 23:48:53.12ID:Sa6ad6lJ
ありがと!沼に突進してくるわ
2019/12/16(月) 08:36:50.24ID:Rw6rl1n6
c++ってクソだよな
いつの間にかdxtlビルド通らなくなってるし
2019/12/16(月) 09:45:17.78ID:djKm22LW
dxtlってなんや
2019/12/16(月) 11:06:30.96ID:Rw6rl1n6
DirectXTKやったわ
メンゴォォメンゴォォメンゴォォッッ!!
2019/12/18(水) 01:30:49.20ID:aVgFSCVh
DirectX11で十分すわ
2019/12/18(水) 07:37:42.76ID:GKUrym6d
11でひとつの完成形に到達した感がある。
2019/12/18(水) 17:03:44.60ID:FHjyKMjC
9じゃないのか。
2019/12/18(水) 20:00:16.50ID:MGSBCRcM
所詮9は固定機能とプログラマブルシェーダが入り混じった半端者
DirectXの面汚しよ…
2019/12/19(木) 08:21:35.32ID:5f7aejUK
>>422
機能の増改築が重なってツギハギだらけだったよね
2019/12/20(金) 01:21:43.78ID:FwqrbZI8
DirectXは9で終わったよ。今はゲームエンジンでポチっとな。
2019/12/20(金) 01:31:12.98ID:Gct6FZIp
ゲーム作ったこと無いのに詳しいね
2019/12/21(土) 19:39:28.09ID:RjL9jsR6
ボクが一番、DirectX11をうまく使えるんだ!!!
2019/12/21(土) 19:48:09.16ID:Joe1GsFZ
Direct2Dの話題もここ?
2019/12/22(日) 10:33:09.77ID:E4oNS+z9
Direct2Dの解説サイトとか本とかほぼないね
2019/12/27(金) 08:21:42.24ID:xCA2uxOH
DirectX12の本出るのか
11も出してくれ
2019/12/27(金) 08:23:30.66ID:ex5Fn87f
>>429
マジか
2019/12/27(金) 09:28:09.21ID:x/bcNiXU
DirectXの本ってモノクロのイメージあるわ。
偏見かな?
2019/12/29(日) 11:25:56.84ID:renrqc+H
13はまだ?
2020/01/15(水) 01:16:57.98ID:v2GhIEBl
Windows7サポート終了でやっとこさDirectX11.1/11.2が使えるようになって嬉しい
XPのせいで息絶えたDirectX10の悲劇を忘れてはならない
>>422
DirectX9の初期の汚点NV3x GeforceFXとかいうゴミ
ハード的にPS1.3相当のパイプが半数を占めるので固定機能+DirectX9それもFloatが遅いのでHalfを多用しないと使い物にならない
内部的には演算 テクスチャ命令X2 の組み合わせでないとテクスチャユニットが片方使えないとか並列性にも難があったのでボロボロだった

あと頂点シェーダーがCPU任せでパフォーマンスが劣悪なIntel GMA系列も
底辺のAtomとCore2Duoで頂点処理とメモリ帯域のの比重が違うからロースペックほどパフォーマンスが非力で過酷なGPUだった
どちらもMRT4も浮動小数点テクスチャ使えないから骨抜きにされSM2.0はゴミ同然だった

まあDirectx11.1でHalf精度は再サポートを果したが
Intel Broadwell(Gen8)
AMD RavenRidge(Vega)
Nvidia Turing以降なのでやっと足並みは揃った所
※NV30ことGeforceFXはx86なら8.1で動く…ので試したい人はどうぞ尚FeatureLevel9_1だと固定機能無しなのでHalf型で足搔こうが鈍足だろうけどね…
https://m.youtube.com/watch?v=T1GfenBaQxM
2020/01/19(日) 11:36:23.61ID:J1LU0dVW
マカーみたいなアホが増えたな。
435デフォルトの名無しさん
垢版 |
2020/01/25(土) 07:26:18.16ID:thQWAkUM
Direct3Dの話というより射影行列作る時の話なのですがお願いします。
初期化する時の、fovy(視界)とアスペクト比についてです。
アスペクト比を変えた時にfovy(視界)を調整して、画面に写り込む範囲を出来る限り一定にしたいのですが
どうすればいいでしょうか?例えば縦に縮んだ時に縦は変化あってもいいですが、横幅の映る範囲は一定にしたいとかです。
今は、fovyに入力する値を適当にそれっぽいものにしてある程度一定っぽい結果を得てますが、出来ればちゃんとした計算式でやりたいです。
お願いします。
2020/01/25(土) 07:57:56.62ID:tBRSgsGs
FieldOfViewじゃなくてFrustumの方(XMMatrixPerspective(OffCenter)とか)で射影を作るべき案件に見えるが
2020/01/25(土) 09:47:14.19ID:vOHwAcHq
三角関数で割り出せないか?
先に水平視野角決めて、そこからアスペクト比をもとにFovYを計算。
2020/01/25(土) 16:06:32.61ID:thQWAkUM
>>437
そうですね。普通に三角関数で出せそうですよね。何か難しく考え過ぎてたような気がしました。

>>436
今回は自分で計算してみようと思います。ありがとうございました。
2020/01/26(日) 02:04:34.68ID:e70d2n5R
やべえ、このスレ10年ぶりの
普通のレスきたわ
2020/01/27(月) 20:43:21.06ID:7jNlWdbx
DirectXの話ではなくて申し訳ないんだがここでしか質問できないので

DirectShow で Enhanced Video Renderer (EVR)を使って動画を再生してるんだけど
ビデオカードのユーティリティーソフトで GPU のクロックをダウンクロックしているにも関わらず
EVR を作成したら設定が無視されてGPUのクロックがブワーって上がる
この現象を抑えるのに何か有効な手段はない?
てか何でこんなことになるのかしら

ビデオカード: AMD Radeon R9 200系
OS: Windows 10

とりあえずの対策で EVR を VMR9 と カスタムアロケーター に置き換えて凌いでいるけど
気持ちが悪い
441デフォルトの名無しさん
垢版 |
2020/01/28(火) 14:40:43.31ID:a5T6EpQP
初歩的な質問で悪いんだけど
D3DXMatrixPerspectiveFovLH()関数で設定したカメラの
視界からオブジェクトが消えたかどうかの判定方法について
どういう方法があるか教えてくだせえませ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況