回答する人も、質問する人も必ず読んでください
これらに当てはまる人のための質問スレです。
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リンク
探検
【C++】 DirectX初心者質問スレ Part41 【C】
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/03/23(金) 15:24:12.95ID:1IsbON+l569デフォルトの名無しさん
2020/07/06(月) 10:42:09.95ID:vjiPzzt6570デフォルトの名無しさん
2020/07/06(月) 15:46:36.76ID:E8Fr3pVT ワイもわからんわ
すまんな
すまんな
571デフォルトの名無しさん
2020/07/06(月) 16:37:43.67ID:adqlPIIW 描ける順序やろな
572デフォルトの名無しさん
2020/07/07(火) 00:13:36.61ID:wqab1oeP >>568
私はやった事ないのでわかりませんが推測として書きます、
おそらく拡大縮小はオブジェクト原点を基点として行われていると感じます。
拡大縮小の操作によってローカル座標原点が変換されて移動してしまう事に起因するのではないかと考えました。
何かのヒントになれば幸いです。
私はやった事ないのでわかりませんが推測として書きます、
おそらく拡大縮小はオブジェクト原点を基点として行われていると感じます。
拡大縮小の操作によってローカル座標原点が変換されて移動してしまう事に起因するのではないかと考えました。
何かのヒントになれば幸いです。
573デフォルトの名無しさん
2020/08/28(金) 23:27:20.14ID:t+ft7h6K 動的シェーダーリンクっていうのを使って頂点カラーを使う関数とテクスチャから色を取得する関数を切り替えているんだが、
頂点カラーを使う方の関数を設定した状態で描画すると以下の警告が出る。
D3D11 WARNING: ID3D11DeviceContext::DrawIndexed: The Pixel Shader unit expects a Sampler to be set at Slot 0, but none is bound. This is perfectly valid, as a NULL Sampler maps to default Sampler state. However, the developer may not want to rely on the defaults. [ EXECUTION WARNING #352: DEVICE_DRAW_SAMPLER_NOT_SET]
使用する関数を切り替えていてもサンプラーを使っているなら必ず設定しなければならんのかコレ?
誰か教えて下しあ(´・ω・`)
頂点カラーを使う方の関数を設定した状態で描画すると以下の警告が出る。
D3D11 WARNING: ID3D11DeviceContext::DrawIndexed: The Pixel Shader unit expects a Sampler to be set at Slot 0, but none is bound. This is perfectly valid, as a NULL Sampler maps to default Sampler state. However, the developer may not want to rely on the defaults. [ EXECUTION WARNING #352: DEVICE_DRAW_SAMPLER_NOT_SET]
使用する関数を切り替えていてもサンプラーを使っているなら必ず設定しなければならんのかコレ?
誰か教えて下しあ(´・ω・`)
574デフォルトの名無しさん
2020/08/29(土) 07:43:26.49ID:jSrLwW2w 動的シェーダリンクであるかに関わらずシェーダ内でサンプラステートが宣言されてると判定されれば出る警告
まあ書いてあるとおりスロットに割り当てなくてもいいけど本当に忘れてない?大丈夫?おっ揉?
というただのお節介なのでデバッグランタイム以外ではまったく影響はない
デバッグ出力が汚染されるほど出てくるなら素直にダミーのサンプラ設定しときゃいいんじゃね
まあ書いてあるとおりスロットに割り当てなくてもいいけど本当に忘れてない?大丈夫?おっ揉?
というただのお節介なのでデバッグランタイム以外ではまったく影響はない
デバッグ出力が汚染されるほど出てくるなら素直にダミーのサンプラ設定しときゃいいんじゃね
575デフォルトの名無しさん
2020/08/29(土) 10:28:19.28ID:c0g48cI1 まじかよ(´・ω・`)
素直にダミーのサンプラー入れておくか・・・・・・
ありがとう。
素直にダミーのサンプラー入れておくか・・・・・・
ありがとう。
576デフォルトの名無しさん
2020/08/29(土) 13:03:52.56ID:gRfGX/UQ この警告を消そうと思うと、
テクスチャとか使う時にセットして
使い終わったらNULLをセットする
いわゆる真っ当な組み方になってしまうんだが
Direct3Dのステートマシンって仕組みには
合わなくなってしまうんだよな
違和感を感じながらオレも組んでる
テクスチャとか使う時にセットして
使い終わったらNULLをセットする
いわゆる真っ当な組み方になってしまうんだが
Direct3Dのステートマシンって仕組みには
合わなくなってしまうんだよな
違和感を感じながらオレも組んでる
577デフォルトの名無しさん
2020/10/02(金) 19:13:47.97ID:CjNN1LJS 11までのコマンド即時実行ならワールド行列用のバッファが一個でいいけどコマンドバッファ方式だとどうしたらいいと思う?モデルごとにバッファ持たせる?
578デフォルトの名無しさん
2020/10/08(木) 14:50:32.66ID:9bh/EuLR >>577
自己解決しました
自己解決しました
579デフォルトの名無しさん
2020/12/15(火) 14:46:00.40ID:Q801okHJ Eric Engstrom氏が崩御されましたね(´・ω・`)合掌。
580デフォルトの名無しさん
2020/12/16(水) 20:42:46.88ID:bwZfmcUM 功労者だね。
ご冥福をお祈りします。
ご冥福をお祈りします。
581デフォルトの名無しさん
2021/01/30(土) 11:17:04.37ID:EWZvTk3z 昔 C で DX9 で書いて Win10 上で動いていたプログラムが
久しぶりに実行しようとしたら動かなくなっていた
dll が見つかりませんとかのエラーも出ずに突然死する
exe の日付は 2016年8月 (たぶん最後にコンパイルした日) なのだが
当時は確かに Win10 上で動いていた記憶がある
何かアプデとかで仕様変わったとか情報ありますか?
久しぶりに実行しようとしたら動かなくなっていた
dll が見つかりませんとかのエラーも出ずに突然死する
exe の日付は 2016年8月 (たぶん最後にコンパイルした日) なのだが
当時は確かに Win10 上で動いていた記憶がある
何かアプデとかで仕様変わったとか情報ありますか?
582デフォルトの名無しさん
2021/01/30(土) 12:40:35.86ID:ZHDbo8LN d3dx9_**.dllうんちゃらってエラーなら単にそのPCにDirectXランタイムがインストールされてないだけ
583デフォルトの名無しさん
2021/01/30(土) 12:50:04.81ID:EWZvTk3z 同じ PC ですよ
あと
>dll が見つかりませんとかのエラーも出ずに
は「dll が見つかりません」状態ではないですし
あと
>dll が見つかりませんとかのエラーも出ずに
は「dll が見つかりません」状態ではないですし
584デフォルトの名無しさん
2021/01/30(土) 14:01:57.61ID:H5HXR/QH すまんこ全然質問読んでなかったわ
D3D9はWin10でも依然として動くけど微妙な互換性の問題も少なくないのでそれだけじゃなんとも
D3D9はWin10でも依然として動くけど微妙な互換性の問題も少なくないのでそれだけじゃなんとも
585デフォルトの名無しさん
2021/01/30(土) 15:57:40.50ID:EWZvTk3z Texture に使ってた画像のサイズを変えたら
途中まで動いてから死ぬようになりましたω
2 の n乗の制限があった頃なので
多分ぬるぽで死んでるのだと思います
なんとか解決の糸口は判りました
ほんとうにありがとうございました
途中まで動いてから死ぬようになりましたω
2 の n乗の制限があった頃なので
多分ぬるぽで死んでるのだと思います
なんとか解決の糸口は判りました
ほんとうにありがとうございました
586デフォルトの名無しさん
2021/01/30(土) 17:56:16.33ID:SAWZ84jg 参照している d3d9.dll を SysWOW64/System32 にある物に変えたら
2 の n乗以外の Texture でも正常に動作するようになりました
ついでに動作中に死ぬことも無くなりました
本当にありがとうございました
2 の n乗以外の Texture でも正常に動作するようになりました
ついでに動作中に死ぬことも無くなりました
本当にありがとうございました
587デフォルトの名無しさん
2021/02/03(水) 01:00:24.80ID:EXsTlUXo588デフォルトの名無しさん
2021/02/05(金) 17:27:02.44ID:ujO1/J+h 本来は試せばすぐわかることだと思うんですが
ちょっと数日ほど自分で試せないので質問させて下さい
D3D12_RESOURCE_DESCで指定したDimensionがtextureのものに対してconstant buffer viewを作ったり、
shader resource viewで異なるDimensionを指定することは可能なのでしょうか?
ちょっと数日ほど自分で試せないので質問させて下さい
D3D12_RESOURCE_DESCで指定したDimensionがtextureのものに対してconstant buffer viewを作ったり、
shader resource viewで異なるDimensionを指定することは可能なのでしょうか?
589デフォルトの名無しさん
2021/03/02(火) 07:01:17.13ID:HJKV2UiN 古いバージョンの話が出てるので便乗で質問。
version7,8,9くらいのゲームをフルスピードで動かすと
古いビデオカードでも新しいビデオカードでも速度殆ど変わらないんだよね。
どっちもFps300前後でしか動かない。倍くらい行きそうだけど全然変わらない。
まるで制限がかかってるような感じ。古いversionだと動作に制限でもあるの?
version7,8,9くらいのゲームをフルスピードで動かすと
古いビデオカードでも新しいビデオカードでも速度殆ど変わらないんだよね。
どっちもFps300前後でしか動かない。倍くらい行きそうだけど全然変わらない。
まるで制限がかかってるような感じ。古いversionだと動作に制限でもあるの?
590デフォルトの名無しさん
2021/03/02(火) 08:50:11.88ID:ujQhUvz+ 無いよ
CPU律速になっててGPU関係ないとかそんなオチでそ
CPU律速になっててGPU関係ないとかそんなオチでそ
591デフォルトの名無しさん
2021/03/02(火) 11:54:09.60ID:f7OYJ+/1 VSync同期じゃ300も出ないか
592デフォルトの名無しさん
2021/03/02(火) 19:06:29.81ID:pmjTxoG2 >>591
バカは黙ってろ
バカは黙ってろ
593デフォルトの名無しさん
2021/03/02(火) 20:23:06.80ID:HJKV2UiN >>590
そうなのかもしれない。もうちょっと調べてみる。ありがとう。
そうなのかもしれない。もうちょっと調べてみる。ありがとう。
594デフォルトの名無しさん
2021/03/04(木) 12:20:58.55ID:jQppShlC 低レベルな質問でごめんだけど
D3DXMATRIX a,b;
a *= b;
この中身はどうなってるんでしょうか?
a.m[4][4]とb.m[4][4]をどう乗算してるんでしょうか?
D3DXMATRIX a,b;
a *= b;
この中身はどうなってるんでしょうか?
a.m[4][4]とb.m[4][4]をどう乗算してるんでしょうか?
595デフォルトの名無しさん
2021/03/04(木) 13:05:37.61ID:QKsAX4i1 a = a*bと同じ
596デフォルトの名無しさん
2021/03/04(木) 13:31:42.58ID:jQppShlC >>594
展開したらこうなることがわかりました
この部分が遅いのでもっと速くする方法ないかなと思いまして
void MatrixMultiply(MATRIX *pOut, MATRIX *pM1, MATRIX *pM2)
{
int x, y;
float mx0, mx1, mx2, mx3;
float *p1, *p2;
MATRIX mat;
MATRIX *pRetOut;
pRetOut = &mat;
for(y = 0; y < 4; y++) {
p1 = pM1->m[y];
mx0 = *p1;
mx1 = *(p1+1);
mx2 = *(p1+2);
mx3 = *(p1+3);
p2 = pRetOut->m[y];
for(x = 0; x < 4; x++) {
*p2 = mx0 * (pM2->m[0][x]) + mx1 * (pM2->m[1][x]) +
mx2 * (pM2->m[2][x]) + mx3 * (pM2->m[3][x]);
p2++;
}
}
*pOut = mat;
}
展開したらこうなることがわかりました
この部分が遅いのでもっと速くする方法ないかなと思いまして
void MatrixMultiply(MATRIX *pOut, MATRIX *pM1, MATRIX *pM2)
{
int x, y;
float mx0, mx1, mx2, mx3;
float *p1, *p2;
MATRIX mat;
MATRIX *pRetOut;
pRetOut = &mat;
for(y = 0; y < 4; y++) {
p1 = pM1->m[y];
mx0 = *p1;
mx1 = *(p1+1);
mx2 = *(p1+2);
mx3 = *(p1+3);
p2 = pRetOut->m[y];
for(x = 0; x < 4; x++) {
*p2 = mx0 * (pM2->m[0][x]) + mx1 * (pM2->m[1][x]) +
mx2 * (pM2->m[2][x]) + mx3 * (pM2->m[3][x]);
p2++;
}
}
*pOut = mat;
}
597デフォルトの名無しさん
2021/03/04(木) 19:04:29.34ID:5e2IZrPb ちなみにアンタは行列の乗算って知ってるわけ?
598デフォルトの名無しさん
2021/03/04(木) 20:33:11.68ID:jQppShlC599デフォルトの名無しさん
2021/03/04(木) 21:41:29.57ID:UWFO43+K 車輪の大発明
600デフォルトの名無しさん
2021/03/04(木) 22:04:19.17ID:jQppShlC >>599
これ以上は無理そうなら諦めます
これ以上は無理そうなら諦めます
601デフォルトの名無しさん
2021/03/04(木) 22:45:11.05ID:ls8aTj6l Ruby のNArray みたいなベクトル演算すれば、Octave 並みに速くなる
602デフォルトの名無しさん
2021/03/04(木) 23:07:28.74ID:4abrZpdZ ウッソだろRuby妖怪ここにまで出るのかよ
603デフォルトの名無しさん
2021/03/05(金) 10:49:05.54ID:ev+bkds+ >>594
MSの実装が見たいならd3dx9mathの後継にあたるDirectXMathのXMMatrixMultiplyを参照
DirectX SDKならxnamathmatrix.inl、Windows SDKならDirectXMathMatrix.inlの中にある
MSの実装が見たいならd3dx9mathの後継にあたるDirectXMathのXMMatrixMultiplyを参照
DirectX SDKならxnamathmatrix.inl、Windows SDKならDirectXMathMatrix.inlの中にある
604デフォルトの名無しさん
2021/03/05(金) 14:10:30.65ID:Lp1NNsNW >>603
ありがとうございます!見てみます!
ありがとうございます!見てみます!
605デフォルトの名無しさん
2021/03/05(金) 18:50:51.40ID:QgX7cNiF 4x4乗算関数の処理時間なんて微々たるもんだと思うが
これが遅いと判断した理由ってなんだろう?
速い遅いなんて相対的なもんだし基準がなければ判断出来ないと思うが
何とくらべたんだ?
これが遅いと判断した理由ってなんだろう?
速い遅いなんて相対的なもんだし基準がなければ判断出来ないと思うが
何とくらべたんだ?
606デフォルトの名無しさん
2021/03/05(金) 18:52:33.57ID:QgX7cNiF ま、つーか質問自体釣りだよね
わーってるよ
わーってるよ
607デフォルトの名無しさん
2021/03/05(金) 20:13:09.58ID:w6A0JmnZ608デフォルトの名無しさん
2021/03/06(土) 13:35:15.25ID:bGzUu7RI 計算に時間が掛かってるんじゃなくて
データ移動に時間が掛かってると予想
データ移動に時間が掛かってると予想
609デフォルトの名無しさん
2021/03/14(日) 10:53:09.90ID:I6EF5SIC DirectX懐かしいな
最近はunityとかあるから
最近はunityとかあるから
610デフォルトの名無しさん
2021/05/06(木) 22:35:59.57ID:/wa6Ki2m 昔作ったゲームのコード触ってるんだけど(Ver7.0)
ウィンドウモードでもディスプレイの解像度変更するとテクスチャバッファがロストするの困る。
なんとかならないものか。
ウィンドウモードでもディスプレイの解像度変更するとテクスチャバッファがロストするの困る。
なんとかならないものか。
611デフォルトの名無しさん
2021/05/07(金) 11:49:54.25ID:fHTm+yKw device reset 多用した記憶がある
http://marupeke296.com/DXG_No52_DeviceLost.html
http://marupeke296.com/DXG_No52_DeviceLost.html
612デフォルトの名無しさん
2021/05/07(金) 16:18:46.08ID:8p/kYSMl >>611
ロストが面倒なのでウィンドウモードで動かしてたはずだったが
ウィンドウモードでも起こる事があるんだね。
仕方ないのでロストが発生したら座標とかフラグとか一部のデータだけ残して
初期化処理をまるっとやる事にしたよ。
ロストが面倒なのでウィンドウモードで動かしてたはずだったが
ウィンドウモードでも起こる事があるんだね。
仕方ないのでロストが発生したら座標とかフラグとか一部のデータだけ残して
初期化処理をまるっとやる事にしたよ。
613デフォルトの名無しさん
2021/05/07(金) 21:29:39.88ID:J3fm5doY DirectXの機能レベルがよくわかりません。
例えば 11_0 までの機能を使う場合に
DX11とDX12で何か違いはあるんですか?
例えば 11_0 までの機能を使う場合に
DX11とDX12で何か違いはあるんですか?
614デフォルトの名無しさん
2021/05/08(土) 14:46:14.63ID:ApDttRWa615デフォルトの名無しさん
2021/05/08(土) 16:16:08.03ID:Qd5m6V7T 機能レベルは、どの機能までサポートできてるかの指標に過ぎない。
DX11とDX12はAPIが違うから、記述方法や実行時のパフォーマンス等も異なる。
という認識であってますか?
DX11とDX12はAPIが違うから、記述方法や実行時のパフォーマンス等も異なる。
という認識であってますか?
616デフォルトの名無しさん
2021/05/08(土) 18:30:43.70ID:ApDttRWa >>615
そんな感じの認識でおk
そんな感じの認識でおk
617デフォルトの名無しさん
2021/05/08(土) 22:04:42.39ID:Qd5m6V7T >>616
ありがとうございます!
ありがとうございます!
618デフォルトの名無しさん
2021/05/09(日) 18:38:27.94ID:iCAk1wee >>617
どういたしまして
どういたしまして
619デフォルトの名無しさん
2021/05/09(日) 20:01:03.26ID:xtmxe3CZ 最近古いプログラムの手入れをしてるのだが
ver7.0だと2048x1280以上の解像度で初期化しようとすると必ず失敗する
これはもうどうしようもないのかな
殆ど仲間内だけで使うものなので、裏技的な解決でもいいので
分かる人がいたらおしえて
ver7.0だと2048x1280以上の解像度で初期化しようとすると必ず失敗する
これはもうどうしようもないのかな
殆ど仲間内だけで使うものなので、裏技的な解決でもいいので
分かる人がいたらおしえて
620デフォルトの名無しさん
2021/05/14(金) 12:05:31.96ID:ps8YB4jk621デフォルトの名無しさん
2021/05/14(金) 13:02:23.62ID:dwsPOlKo622デフォルトの名無しさん
2021/05/14(金) 13:08:05.85ID:P4hCfYLZ ↑
DirectX無関係
グロ注意
DirectX無関係
グロ注意
623デフォルトの名無しさん
2021/05/16(日) 19:42:20.14ID:Sjgu1Djw Direct3D9なんだけどCreateDeviceのD3DPRESENT_PARAMETERSのPresentationIntervalの値で
Vsyncするかどうか切り替えられるのは分かったんだけど、デバイス作成後に切り替えたい場合はどうすればいいんでしょうか?
デバイスに変更出来るようなメソッドが見当たらないので困ってます。いちいち再初期化しないといけないんでしょうか?
Vsyncするかどうか切り替えられるのは分かったんだけど、デバイス作成後に切り替えたい場合はどうすればいいんでしょうか?
デバイスに変更出来るようなメソッドが見当たらないので困ってます。いちいち再初期化しないといけないんでしょうか?
624デフォルトの名無しさん
2021/05/17(月) 11:16:13.25ID:bdQcRmr5 >>623
デバイスの再作成ってかResetは必要
ウィンドウモードならCreateAddtionalSwapChainの方で作って
切り替える時にスワップチェインだけ再作成って手もあるけど
D3D10.x以降ならPresent時にvsync待つか指定するだけ
デバイスの再作成ってかResetは必要
ウィンドウモードならCreateAddtionalSwapChainの方で作って
切り替える時にスワップチェインだけ再作成って手もあるけど
D3D10.x以降ならPresent時にvsync待つか指定するだけ
625デフォルトの名無しさん
2021/05/17(月) 12:31:43.62ID:Rz91nDza626625
2021/05/17(月) 15:42:56.27ID:Rz91nDza スワップチェインで切り替えようとしたんだけど、このコードでは上手くいかない… 真っ暗…
lpSwapChain[1]をlpSwapChain[0]に変えると正しく描画される。これじゃダメなんでしょうか?
D3DPresentParam.BackBufferWidth = Width;
D3DPresentParam.BackBufferHeight = Height;
D3DPresentParam.BackBufferFormat = D3DFMT_A8R8G8B8;
D3DPresentParam.BackBufferCount = BackCount;
D3DPresentParam.MultiSampleType = D3DMULTISAMPLE_NONE
D3DPresentParam.MultiSampleQuality = 0;
D3DPresentParam.SwapEffect = D3DSWAPEFFECT_DISCARD;
D3DPresentParam.hDeviceWindow = hWnd;
D3DPresentParam.Windowed = TRUE;
D3DPresentParam.EnableAutoDepthStencil = FALSE;
D3DPresentParam.AutoDepthStencilFormat = D3DFMT_D24S8;
D3DPresentParam.Flags = 0;
D3DPresentParam.FullScreen_RefreshRateInHz = 0;
D3DPresentParam.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
lpD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING | D3DCREATE_MULTITHREADED, &D3DPresentParam, &lpD3DDev);
lpD3DDev->GetSwapChain(0, &lpSwapChain[0]);
D3DPresentParam.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT;
lpD3DDev->CreateAdditionalSwapChain(&D3DPresentParam, &lpSwapChain[1]);
lpSwapChain[1]->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &lpBackBuffer);
lpD3DDev->SetRenderTarget(0, lpBackBuffer);
lpBackBuffer->Release();
lpD3DDev->BeginScene();
ここで色々描画
lpD3DDev->EndScene();
lpD3DDev->Present(NULL, NULL, NULL, NULL);
lpSwapChain[1]をlpSwapChain[0]に変えると正しく描画される。これじゃダメなんでしょうか?
D3DPresentParam.BackBufferWidth = Width;
D3DPresentParam.BackBufferHeight = Height;
D3DPresentParam.BackBufferFormat = D3DFMT_A8R8G8B8;
D3DPresentParam.BackBufferCount = BackCount;
D3DPresentParam.MultiSampleType = D3DMULTISAMPLE_NONE
D3DPresentParam.MultiSampleQuality = 0;
D3DPresentParam.SwapEffect = D3DSWAPEFFECT_DISCARD;
D3DPresentParam.hDeviceWindow = hWnd;
D3DPresentParam.Windowed = TRUE;
D3DPresentParam.EnableAutoDepthStencil = FALSE;
D3DPresentParam.AutoDepthStencilFormat = D3DFMT_D24S8;
D3DPresentParam.Flags = 0;
D3DPresentParam.FullScreen_RefreshRateInHz = 0;
D3DPresentParam.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
lpD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING | D3DCREATE_MULTITHREADED, &D3DPresentParam, &lpD3DDev);
lpD3DDev->GetSwapChain(0, &lpSwapChain[0]);
D3DPresentParam.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT;
lpD3DDev->CreateAdditionalSwapChain(&D3DPresentParam, &lpSwapChain[1]);
lpSwapChain[1]->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &lpBackBuffer);
lpD3DDev->SetRenderTarget(0, lpBackBuffer);
lpBackBuffer->Release();
lpD3DDev->BeginScene();
ここで色々描画
lpD3DDev->EndScene();
lpD3DDev->Present(NULL, NULL, NULL, NULL);
627デフォルトの名無しさん
2021/05/17(月) 16:23:52.09ID:bdQcRmr5 >>626
デバイスの暗黙のスワップチェインと追加のスワップチェインに同じウィンドウ指定してるからかな?
CreateDeviceに渡すウィンドウハンドルを
CreateWindowEx(WS_EX_NOACTIVATE, "STATIC", windowName, WS_DISABLED | WS_POPUP, 0, 0, 1, 1, HWND_MESSAGE, NULL, GetModuleHandle(NULL), NULL);
とかで作ったダミーウィンドウを指定してCreateAddtionalSwapChainに渡すのだけ実際のウィンドウハンドルを指定してみて
デバイスの暗黙のスワップチェインと追加のスワップチェインに同じウィンドウ指定してるからかな?
CreateDeviceに渡すウィンドウハンドルを
CreateWindowEx(WS_EX_NOACTIVATE, "STATIC", windowName, WS_DISABLED | WS_POPUP, 0, 0, 1, 1, HWND_MESSAGE, NULL, GetModuleHandle(NULL), NULL);
とかで作ったダミーウィンドウを指定してCreateAddtionalSwapChainに渡すのだけ実際のウィンドウハンドルを指定してみて
628デフォルトの名無しさん
2021/05/17(月) 16:59:03.35ID:Rz91nDza >>627
ありがとう。あとでやってみます!
ありがとう。あとでやってみます!
629デフォルトの名無しさん
2021/05/17(月) 20:47:34.02ID:Rz91nDza630デフォルトの名無しさん
2021/05/17(月) 21:36:14.52ID:Rz91nDza631デフォルトの名無しさん
2021/05/18(火) 07:26:14.08ID:PKYeNhGF >>619
7がなにかはわからんが、dx9時代だとテクスチャの辺の長さは2の正数乗がマスト、最大テクスチャ寸法にもデバイスドライバが定める制限があるはず。
今だとテクスチャは、単純なメモリ配列だが、その頃は固定機能パイプラインの設計したメタファに縛られたはず。
7がなにかはわからんが、dx9時代だとテクスチャの辺の長さは2の正数乗がマスト、最大テクスチャ寸法にもデバイスドライバが定める制限があるはず。
今だとテクスチャは、単純なメモリ配列だが、その頃は固定機能パイプラインの設計したメタファに縛られたはず。
632デフォルトの名無しさん
2021/05/18(火) 07:33:11.01ID:XIClpatA 質問の意味わかってないのお前だけやぞ
633デフォルトの名無しさん
2021/05/19(水) 14:48:28.85ID:m2xUwvz+ >>632
大きなお世話だ
大きなお世話だ
634デフォルトの名無しさん
2021/05/31(月) 06:37:31.53ID:7hdyC4Sk 自作プログラム、Discordで画面共有した後、ウィンドウサイズを変更すると上手く動かなくなる
画面共有しなければ普通に動くし、共有してもウィンドウサイズ変更しなければ普通に動く。
変更して動かなくなる時はこんなの吐いてた↓
[09:38:37.302][PID36260] Hooked D3D9
'test.exe' (Win32): 'C:\Windows\SysWOW64\D3DCompiler_47.dll' が読み込まれました。
[09:38:37.375][PID36260] Hooked DXGI
[09:38:37.956][PID36260] PresentHandler(D3D9) created
[09:38:38.012][PID36260] HookReset: hooked reset
[09:38:38.012][PID36260] Attempting to use shared textures
[09:38:38.012][PID36260] CreateTexture succeeded! sharedTextureHandle: C00086C2
[09:38:38.012][PID36260] CreateTexture succeeded! sharedTextureHandle: 80001682
[09:38:38.013][PID36260] CreateTexture succeeded! sharedTextureHandle: 80008B02
[09:38:38.013][PID36260] D3D9State::InitOverlay: initialized to 05F9CE20 (window 00113BA8: 1920x1080)
[09:38:48.227][PID36260] D3D9State::ResetDevice: releasing resources
[09:38:48.228][PID36260] Attempting to use shared textures
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: C0006B82
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: 80000B42
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: C0002102
[09:38:48.229][PID36260] InitOverlay::CheckDevice: failed to create texture: 0x8876086c
[09:38:48.229][PID36260] D3D9State::ResetDevice: releasing resources
ResetDeviceとあるのでデバイスロストが起こってるっぽい?
エラーチェックしてもプロセスからは特に普通。誰か分かる人教えて!
画面共有しなければ普通に動くし、共有してもウィンドウサイズ変更しなければ普通に動く。
変更して動かなくなる時はこんなの吐いてた↓
[09:38:37.302][PID36260] Hooked D3D9
'test.exe' (Win32): 'C:\Windows\SysWOW64\D3DCompiler_47.dll' が読み込まれました。
[09:38:37.375][PID36260] Hooked DXGI
[09:38:37.956][PID36260] PresentHandler(D3D9) created
[09:38:38.012][PID36260] HookReset: hooked reset
[09:38:38.012][PID36260] Attempting to use shared textures
[09:38:38.012][PID36260] CreateTexture succeeded! sharedTextureHandle: C00086C2
[09:38:38.012][PID36260] CreateTexture succeeded! sharedTextureHandle: 80001682
[09:38:38.013][PID36260] CreateTexture succeeded! sharedTextureHandle: 80008B02
[09:38:38.013][PID36260] D3D9State::InitOverlay: initialized to 05F9CE20 (window 00113BA8: 1920x1080)
[09:38:48.227][PID36260] D3D9State::ResetDevice: releasing resources
[09:38:48.228][PID36260] Attempting to use shared textures
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: C0006B82
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: 80000B42
[09:38:48.228][PID36260] CreateTexture succeeded! sharedTextureHandle: C0002102
[09:38:48.229][PID36260] InitOverlay::CheckDevice: failed to create texture: 0x8876086c
[09:38:48.229][PID36260] D3D9State::ResetDevice: releasing resources
ResetDeviceとあるのでデバイスロストが起こってるっぽい?
エラーチェックしてもプロセスからは特に普通。誰か分かる人教えて!
635デフォルトの名無しさん
2021/05/31(月) 09:33:04.70ID:3RgsPXyf >デバイスロスト
判ってるなら対策しろ
判ってるなら対策しろ
636デフォルトの名無しさん
2021/05/31(月) 17:38:32.82ID:7hdyC4Sk637634
2021/06/01(火) 16:52:09.15ID:EPebMwmH >>635
どこで止まってるのかわかった。
特にデバイスロストは起こってないようだった。
初期化し直しても特に変わらず。
画面共有後、ウィンドウを最大化した後に以下のコードが実行されるとそこで止まる。
特にエラーを返すわけでもなくここから戻って来なくなる。
lpD3DDev->CreateTexture(Width, Height, 0, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, &lpTexture, NULL)
とにかく画面共有した後にウィンドウサイズを弄るともうダメ。
共有前に最大化して共有してその後いじらなかったら大丈夫。
だれか解決策教えて!
どこで止まってるのかわかった。
特にデバイスロストは起こってないようだった。
初期化し直しても特に変わらず。
画面共有後、ウィンドウを最大化した後に以下のコードが実行されるとそこで止まる。
特にエラーを返すわけでもなくここから戻って来なくなる。
lpD3DDev->CreateTexture(Width, Height, 0, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, &lpTexture, NULL)
とにかく画面共有した後にウィンドウサイズを弄るともうダメ。
共有前に最大化して共有してその後いじらなかったら大丈夫。
だれか解決策教えて!
638デフォルトの名無しさん
2021/06/01(火) 20:31:24.34ID:AO1txk8g Hooked D3D9とかsharedTextureHandleとかそれDiscord側のログか?
Discord側がゲームプロセスの共有テクスチャ掴んだままゲーム側のスワップチェイン変更でReset誘発→
Discord側が検出して共有テクスチャ作り直そうとするがなんらかの理由で失敗
みたいな流れに見えるんで単にDiscordに聞け案件としか思えんが
Discord側がゲームプロセスの共有テクスチャ掴んだままゲーム側のスワップチェイン変更でReset誘発→
Discord側が検出して共有テクスチャ作り直そうとするがなんらかの理由で失敗
みたいな流れに見えるんで単にDiscordに聞け案件としか思えんが
639デフォルトの名無しさん
2021/06/02(水) 07:05:51.54ID:9c/K+y8D640デフォルトの名無しさん
2021/06/11(金) 03:57:20.58ID:ZXCRhV66 ミップマップを自動生成して使おうと思ってるんですが
これってテクスチャは32bitじゃないと動かないんですかね?
16bitで作るとミップマップが作動しないので。
これってテクスチャは32bitじゃないと動かないんですかね?
16bitで作るとミップマップが作動しないので。
641デフォルトの名無しさん
2021/06/11(金) 08:07:22.74ID:rjcQbITm >>640
どのバージョンの話か知らんがCheckDeviceFormatやCheckFormatSupportでダメ出しされてるならそーなんじゃねえの
例えばハードウェアが9_x世代だとそれなりにフォーマットの制限がある
https://docs.microsoft.com/en-us/windows/win32/api/d3d11/nf-d3d11-id3d11devicecontext-generatemips
どのバージョンの話か知らんがCheckDeviceFormatやCheckFormatSupportでダメ出しされてるならそーなんじゃねえの
例えばハードウェアが9_x世代だとそれなりにフォーマットの制限がある
https://docs.microsoft.com/en-us/windows/win32/api/d3d11/nf-d3d11-id3d11devicecontext-generatemips
642デフォルトの名無しさん
2021/06/11(金) 15:51:36.34ID:vdTd3Hrq >>640
そんなの知るか!ばーーーーーーーーーーーーーーーーーか
そんなの知るか!ばーーーーーーーーーーーーーーーーーか
643デフォルトの名無しさん
2021/06/12(土) 00:56:34.07ID:wgejhNTi644デフォルトの名無しさん
2021/06/12(土) 11:12:35.67ID:XqCyQXJp VisualStudioでソース更新してビルドかけると
時々FXファイルもリコンパイルかかる時があるんだけど何で?
当然FXファイルは更新してないんで無意味なんだが
何で?
何で?
何で?
時々FXファイルもリコンパイルかかる時があるんだけど何で?
当然FXファイルは更新してないんで無意味なんだが
何で?
何で?
何で?
645デフォルトの名無しさん
2021/06/12(土) 11:33:46.67ID:KHIGuL3o >>644
何で?
何で?
646デフォルトの名無しさん
2021/06/12(土) 17:09:03.97ID:zdRBOonU テクスチャ座標で1を0に、0を1にする計算式教えて!
教えて!
教えて!
教えて!
早くしろぉオラァッ!!
教えて!
教えて!
教えて!
早くしろぉオラァッ!!
647デフォルトの名無しさん
2021/06/12(土) 17:46:06.75ID:Uu0nXv38 ( t - 1 ) * -1 これでいけるんかなぁ?
試してみるわ
試してみるわ
648デフォルトの名無しさん
2021/06/12(土) 18:29:57.59ID:ghBnzS2R t = 1-t
649デフォルトの名無しさん
2021/06/12(土) 21:22:05.39ID:fPNLrQ45 t = !t
650デフォルトの名無しさん
2021/06/12(土) 21:36:38.34ID:ktia86bA651デフォルトの名無しさん
2021/06/15(火) 20:13:59.87ID:ERSv202r 深度バッファ回りでデバイスで変化する事象が出ています。
amdだと自然なのがnvだと手前のオブジェクトが後ろと判定される。
一定距離まで近づくと手前のオブジェクトのサーフェ〜すの一部がラスタライズされず、遠くなると
ああそうか。浮動小数点精度問題か、これ
amdだと自然なのがnvだと手前のオブジェクトが後ろと判定される。
一定距離まで近づくと手前のオブジェクトのサーフェ〜すの一部がラスタライズされず、遠くなると
ああそうか。浮動小数点精度問題か、これ
652デフォルトの名無しさん
2021/06/17(木) 16:36:39.46ID:E3MB5Pfy 今現在DirectSoundのIDirectSoundNotify8を使って、
もしWAVファイルが最後まで再生されたら再生位置を任意の位置に持ってくるというプログラムを作っています。
そのためにIDirectSoundNotify8を使えば便利そうなんですが、使い方がわかりません。
というよりもイベントの処理の仕方がわかりません。
オブジェクトの取得まではできたんですがね...
↓ソースファイル
https://drive.google.com/file/d/1LgJn_dY7nFoWGx1NiyC4kXxXZ8O5mBTq/view?usp=sharing
もしWAVファイルが最後まで再生されたら再生位置を任意の位置に持ってくるというプログラムを作っています。
そのためにIDirectSoundNotify8を使えば便利そうなんですが、使い方がわかりません。
というよりもイベントの処理の仕方がわかりません。
オブジェクトの取得まではできたんですがね...
↓ソースファイル
https://drive.google.com/file/d/1LgJn_dY7nFoWGx1NiyC4kXxXZ8O5mBTq/view?usp=sharing
653デフォルトの名無しさん
2021/06/18(金) 12:43:57.70ID:oj0+j/xh >>652
スレッド作っただけで仕事を諦めるなw
スレッド関数の中で通知用に設定したイベントを使って待機するんだよ
https://docs.microsoft.com/ja-jp/windows/win32/sync/using-event-objects
スレッド作っただけで仕事を諦めるなw
スレッド関数の中で通知用に設定したイベントを使って待機するんだよ
https://docs.microsoft.com/ja-jp/windows/win32/sync/using-event-objects
654デフォルトの名無しさん
2021/06/18(金) 18:57:46.80ID:sv+BnNOz 球を平面に押し付けると、その境界は円になるよね
この円の半径がわかってる時、球の半径ってどう求めれば良い?
この円の半径がわかってる時、球の半径ってどう求めれば良い?
655デフォルトの名無しさん
2021/06/18(金) 21:02:18.48ID:oj0+j/xh >>654
円の半径そのままでは・・・?
円の半径そのままでは・・・?
656デフォルトの名無しさん
2021/06/18(金) 21:19:53.21ID:mwnPxVZv 境界は点だし、その半径は0だし、ちょっと何言ってるか分からない。
なによりなぜ上から目線なのか。
なによりなぜ上から目線なのか。
657デフォルトの名無しさん
2021/06/18(金) 21:37:45.48ID:uKaqnLHw 球を平面でカットした場合ってこと
どうカットしても断面は円になるでしょ?
つーかここまで説明されなきゃわからんとか
レベル低っ!!
どうカットしても断面は円になるでしょ?
つーかここまで説明されなきゃわからんとか
レベル低っ!!
658デフォルトの名無しさん
2021/06/18(金) 21:41:19.05ID:uKaqnLHw 上から目線って何?
私は上から目線で生意気に質問されてるから
答えないから!
わからないんじゃなくて答えないだけだから!ってこと?
ダサww
私は上から目線で生意気に質問されてるから
答えないから!
わからないんじゃなくて答えないだけだから!ってこと?
ダサww
659デフォルトの名無しさん
2021/06/18(金) 21:48:08.69ID:kejK9s3z その球の中心か、断面の円の中心とそこから突き抜けた距離とかが分かればいけそうだけど
円の半径だけじゃ無理そう
円の半径だけじゃ無理そう
660デフォルトの名無しさん
2021/06/18(金) 21:52:11.03ID:IqjABVn9 >>654
それに加えて球の中心と平面との距離が分かれば、中学生の数学で解けるぞ
それに加えて球の中心と平面との距離が分かれば、中学生の数学で解けるぞ
661デフォルトの名無しさん
2021/06/19(土) 05:28:23.03ID:oAdp6z6P 球を平面に押し付けると → 球を平面でカット
一言も説明してない自分の妄想が相手に伝わらないと相手のせいにする。
かなりのキチガイだから相手にしないほうがいい。
すげー馬鹿なのに上から目線だし。
一言も説明してない自分の妄想が相手に伝わらないと相手のせいにする。
かなりのキチガイだから相手にしないほうがいい。
すげー馬鹿なのに上から目線だし。
662デフォルトの名無しさん
2021/06/19(土) 16:36:10.53ID:zDrgWeBe663デフォルトの名無しさん
2021/06/20(日) 08:04:49.64ID:OIjFeek2664デフォルトの名無しさん
2021/06/20(日) 11:56:54.94ID:YA/Ya76e とんとん
とんとん
ごめんください。布教に来ました。
・mixamo(ボーンアニメーションのモーションデータがあるよ。あどべid登録必須。モーションデータは無料)
・BOMTH(pixivの露店さいと。モデルデータボーン入りが売ってる)
福音
とんとん
ごめんください。布教に来ました。
・mixamo(ボーンアニメーションのモーションデータがあるよ。あどべid登録必須。モーションデータは無料)
・BOMTH(pixivの露店さいと。モデルデータボーン入りが売ってる)
福音
665デフォルトの名無しさん
2021/06/20(日) 13:54:46.05ID:HPksRI5/ >>664
( ゚д゚)、ペッ
( ゚д゚)、ペッ
666デフォルトの名無しさん
2021/06/22(火) 11:07:15.16ID:2AbGnqy7 666
667デフォルトの名無しさん
2021/06/22(火) 11:13:55.99ID:jiZrgPwV ジード
668デフォルトの名無しさん
2021/07/16(金) 11:50:12.09ID:E3ke7LEi 質問です。
やりたいこととしては、GPUベースのパーティクルアルゴリズムにおいて(これは出来てます)、
あるパーティクルAの一フレーム前の座標と、パーティクルAの今のフレームの座標と、
バーティクルBの今のフレームの座標を取得して、ジオメトリシェーダでポリゴンを生成していくアルゴリズムを作ることです。
そのためには一フレーム前のパーティクルAの座標を取得しないといけないと思うのですが、
どうやったらいいでしょうか。つまり過去のフレームを格納しておくような方法はありますでしょうか。
どうぞよろしくお願いいたします。
やりたいこととしては、GPUベースのパーティクルアルゴリズムにおいて(これは出来てます)、
あるパーティクルAの一フレーム前の座標と、パーティクルAの今のフレームの座標と、
バーティクルBの今のフレームの座標を取得して、ジオメトリシェーダでポリゴンを生成していくアルゴリズムを作ることです。
そのためには一フレーム前のパーティクルAの座標を取得しないといけないと思うのですが、
どうやったらいいでしょうか。つまり過去のフレームを格納しておくような方法はありますでしょうか。
どうぞよろしくお願いいたします。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★5 [ぐれ★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 「タワマン天国」に飛びつく若者…SNSに転がる「成功体験」に続けるのか 湾岸エリアの業者が語った現実 [蚤の市★]
- 【正論】玉木雄一郎「高市さんの答弁は米軍が攻撃を受けた場合を前提としており、撤回するのは難しい」特定野党を完全論破 [519511584]
- タイで中国人観光客が激減でもタイ人は大喜び、タイの人はネトウヨだった [605029151]
- フランス「G7に習近平主席を呼びたい」ドイツ「良い考えだ」 高市さん...? [237216734]
- 麻生太郎氏、高市政権と距離を置きはじめる(´・ω・`) [399259198]
- 自閉症が「んなっしょい」と連呼するお🏡
- 【悲報】中国営業に熱心な日本人タレントたち、中国のイベントが続々と中止に… まだ予定中のアイドルとか歌手とかたくさんいるけど [452836546]
