[過去ログ] 【C++】 DirectX初心者質問スレ Part41 【C】 (773レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
607: 2021/03/05(金)20:13 ID:w6A0JmnZ(1) AAS
DirectX9のお話
外部リンク[html]:masafumi.cocolog-nifty.com
608: 2021/03/06(土)13:35 ID:bGzUu7RI(1) AAS
計算に時間が掛かってるんじゃなくて
データ移動に時間が掛かってると予想
609: 2021/03/14(日)10:53 ID:I6EF5SIC(1) AAS
DirectX懐かしいな
最近はunityとかあるから
610: 2021/05/06(木)22:35 ID:/wa6Ki2m(1) AAS
昔作ったゲームのコード触ってるんだけど(Ver7.0)
ウィンドウモードでもディスプレイの解像度変更するとテクスチャバッファがロストするの困る。
なんとかならないものか。
611(1): 2021/05/07(金)11:49 ID:fHTm+yKw(1) AAS
device reset 多用した記憶がある
外部リンク[html]:marupeke296.com
612: 2021/05/07(金)16:18 ID:8p/kYSMl(1) AAS
>>611
ロストが面倒なのでウィンドウモードで動かしてたはずだったが
ウィンドウモードでも起こる事があるんだね。
仕方ないのでロストが発生したら座標とかフラグとか一部のデータだけ残して
初期化処理をまるっとやる事にしたよ。
613(1): 2021/05/07(金)21:29 ID:J3fm5doY(1) AAS
DirectXの機能レベルがよくわかりません。
例えば 11_0 までの機能を使う場合に
DX11とDX12で何か違いはあるんですか?
614: 2021/05/08(土)14:46 ID:ApDttRWa(1/2) AAS
>>613
D3D11とD3D12は別モノのAPI
機能レベルが異なると同じAPI上でも一部の機能に差異がある
低い機能レベルを指定してデバイスを作成すれば古いハードウェアで動かせる可能性がある
615(1): 2021/05/08(土)16:16 ID:Qd5m6V7T(1/2) AAS
機能レベルは、どの機能までサポートできてるかの指標に過ぎない。
DX11とDX12はAPIが違うから、記述方法や実行時のパフォーマンス等も異なる。
という認識であってますか?
616(1): 2021/05/08(土)18:30 ID:ApDttRWa(2/2) AAS
>>615
そんな感じの認識でおk
617(1): 2021/05/08(土)22:04 ID:Qd5m6V7T(2/2) AAS
>>616
ありがとうございます!
618: 2021/05/09(日)18:38 ID:iCAk1wee(1) AAS
>>617
どういたしまして
619(1): 2021/05/09(日)20:01 ID:xtmxe3CZ(1) AAS
最近古いプログラムの手入れをしてるのだが
ver7.0だと2048x1280以上の解像度で初期化しようとすると必ず失敗する
これはもうどうしようもないのかな
殆ど仲間内だけで使うものなので、裏技的な解決でもいいので
分かる人がいたらおしえて
620: 2021/05/14(金)12:05 ID:ps8YB4jk(1) AAS
良い記事だった
外部リンク:www.akiradeveloper.com
621: 2021/05/14(金)13:02 ID:dwsPOlKo(1) AAS
ヤンデレ
外部リンク:www.akiradeveloper.com
622: 2021/05/14(金)13:08 ID:P4hCfYLZ(1) AAS
↑
DirectX無関係
グロ注意
623(1): 2021/05/16(日)19:42 ID:Sjgu1Djw(1) AAS
Direct3D9なんだけどCreateDeviceのD3DPRESENT_PARAMETERSのPresentationIntervalの値で
Vsyncするかどうか切り替えられるのは分かったんだけど、デバイス作成後に切り替えたい場合はどうすればいいんでしょうか?
デバイスに変更出来るようなメソッドが見当たらないので困ってます。いちいち再初期化しないといけないんでしょうか?
624(1): 2021/05/17(月)11:16 ID:bdQcRmr5(1/2) AAS
>>623
デバイスの再作成ってかResetは必要
ウィンドウモードならCreateAddtionalSwapChainの方で作って
切り替える時にスワップチェインだけ再作成って手もあるけど
D3D10.x以降ならPresent時にvsync待つか指定するだけ
625(1): 2021/05/17(月)12:31 ID:Rz91nDza(1/5) AAS
>>624
そうなんだー面倒だな。
フルスクリーンは使わないのでスワップチェインの方法でやってみます。
ありがとう。
626(2): 625 2021/05/17(月)15:42 ID:Rz91nDza(2/5) AAS
スワップチェインで切り替えようとしたんだけど、このコードでは上手くいかない… 真っ暗…
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;
省17
627(3): 2021/05/17(月)16:23 ID:bdQcRmr5(2/2) AAS
>>626
デバイスの暗黙のスワップチェインと追加のスワップチェインに同じウィンドウ指定してるからかな?
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 ID:Rz91nDza(3/5) AAS
>>627
ありがとう。あとでやってみます!
629: 2021/05/17(月)20:47 ID:Rz91nDza(4/5) AAS
>>627
やってみましたが、真っ暗で表示出来ませんでした。
これやっぱ、それぞれ違うウィンドウハンドル指定して
そのウィンドウが表示されてないと無理なんでしょうかね…
630: 2021/05/17(月)21:36 ID:Rz91nDza(5/5) AAS
>>626
わかった… 最後スワップチェインからPresentしてないのが原因だった
>>627さん、ありがとうございました。
631: 2021/05/18(火)07:26 ID:PKYeNhGF(1) AAS
>>619
7がなにかはわからんが、dx9時代だとテクスチャの辺の長さは2の正数乗がマスト、最大テクスチャ寸法にもデバイスドライバが定める制限があるはず。
今だとテクスチャは、単純なメモリ配列だが、その頃は固定機能パイプラインの設計したメタファに縛られたはず。
632(1): 2021/05/18(火)07:33 ID:XIClpatA(1) AAS
質問の意味わかってないのお前だけやぞ
633: 2021/05/19(水)14:48 ID:m2xUwvz+(1) AAS
>>632
大きなお世話だ
634(1): 2021/05/31(月)06:37 ID:7hdyC4Sk(1/2) AAS
自作プログラム、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
省12
635(2): 2021/05/31(月)09:33 ID:3RgsPXyf(1) AAS
>デバイスロスト
判ってるなら対策しろ
636: 2021/05/31(月)17:38 ID:7hdyC4Sk(2/2) AAS
>>635
以前はこんなことなかったので最近何か変わったのかなと。
困るなー あと9より古いバージョンのDirectXでも大丈夫みたい。
637: 634 2021/06/01(火)16:52 ID:EPebMwmH(1) AAS
>>635
どこで止まってるのかわかった。
特にデバイスロストは起こってないようだった。
初期化し直しても特に変わらず。
画面共有後、ウィンドウを最大化した後に以下のコードが実行されるとそこで止まる。
特にエラーを返すわけでもなくここから戻って来なくなる。
lpD3DDev->CreateTexture(Width, Height, 0, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, &lpTexture, NULL)
とにかく画面共有した後にウィンドウサイズを弄るともうダメ。
共有前に最大化して共有してその後いじらなかったら大丈夫。
だれか解決策教えて!
638(1): 2021/06/01(火)20:31 ID:AO1txk8g(1) AAS
Hooked D3D9とかsharedTextureHandleとかそれDiscord側のログか?
Discord側がゲームプロセスの共有テクスチャ掴んだままゲーム側のスワップチェイン変更でReset誘発→
Discord側が検出して共有テクスチャ作り直そうとするがなんらかの理由で失敗
みたいな流れに見えるんで単にDiscordに聞け案件としか思えんが
639: 2021/06/02(水)07:05 ID:9c/K+y8D(1) AAS
>>638
やっぱこれはDiscord側の問題なんですかね。
今のところこちらからはどうしようもないので、今度問い合わせてみます。
640(2): 2021/06/11(金)03:57 ID:ZXCRhV66(1) AAS
ミップマップを自動生成して使おうと思ってるんですが
これってテクスチャは32bitじゃないと動かないんですかね?
16bitで作るとミップマップが作動しないので。
641(1): 2021/06/11(金)08:07 ID:rjcQbITm(1) AAS
>>640
どのバージョンの話か知らんがCheckDeviceFormatやCheckFormatSupportでダメ出しされてるならそーなんじゃねえの
例えばハードウェアが9_x世代だとそれなりにフォーマットの制限がある
外部リンク:docs.microsoft.com
642: 2021/06/11(金)15:51 ID:vdTd3Hrq(1) AAS
>>640
そんなの知るか!ばーーーーーーーーーーーーーーーーーか
643: 2021/06/12(土)00:56 ID:wgejhNTi(1) AAS
>>641
制限のせいなんでしょうね。
ありがとうございます。
644(1): 2021/06/12(土)11:12 ID:XqCyQXJp(1) AAS
VisualStudioでソース更新してビルドかけると
時々FXファイルもリコンパイルかかる時があるんだけど何で?
当然FXファイルは更新してないんで無意味なんだが
何で?
何で?
何で?
645: 2021/06/12(土)11:33 ID:KHIGuL3o(1) AAS
>>644
何で?
646: 2021/06/12(土)17:09 ID:zdRBOonU(1) AAS
テクスチャ座標で1を0に、0を1にする計算式教えて!
教えて!
教えて!
教えて!
早くしろぉオラァッ!!
647: 2021/06/12(土)17:46 ID:Uu0nXv38(1) AAS
( t - 1 ) * -1 これでいけるんかなぁ?
試してみるわ
648(1): 2021/06/12(土)18:29 ID:ghBnzS2R(1) AAS
t = 1-t
649(1): 2021/06/12(土)21:22 ID:fPNLrQ45(1) AAS
t = !t
650: 2021/06/12(土)21:36 ID:ktia86bA(1) AAS
>>648
お前はまあまあ頭いいやんけ
俺の精子ぐらいあるわ
>>649
お前はクルパーやな
精進せえや
651: 2021/06/15(火)20:13 ID:ERSv202r(1) AAS
深度バッファ回りでデバイスで変化する事象が出ています。
amdだと自然なのがnvだと手前のオブジェクトが後ろと判定される。
一定距離まで近づくと手前のオブジェクトのサーフェ〜すの一部がラスタライズされず、遠くなると
ああそうか。浮動小数点精度問題か、これ
652(1): 2021/06/17(木)16:36 ID:E3MB5Pfy(1) AAS
今現在DirectSoundのIDirectSoundNotify8を使って、
もしWAVファイルが最後まで再生されたら再生位置を任意の位置に持ってくるというプログラムを作っています。
そのためにIDirectSoundNotify8を使えば便利そうなんですが、使い方がわかりません。
というよりもイベントの処理の仕方がわかりません。
オブジェクトの取得まではできたんですがね...
↓ソースファイル
外部リンク:drive.google.com
653: 2021/06/18(金)12:43 ID:oj0+j/xh(1/2) AAS
>>652
スレッド作っただけで仕事を諦めるなw
スレッド関数の中で通知用に設定したイベントを使って待機するんだよ
外部リンク:docs.microsoft.com
654(3): 2021/06/18(金)18:57 ID:sv+BnNOz(1) AAS
球を平面に押し付けると、その境界は円になるよね
この円の半径がわかってる時、球の半径ってどう求めれば良い?
655: 2021/06/18(金)21:02 ID:oj0+j/xh(2/2) AAS
>>654
円の半径そのままでは・・・?
656: 2021/06/18(金)21:19 ID:mwnPxVZv(1) AAS
境界は点だし、その半径は0だし、ちょっと何言ってるか分からない。
なによりなぜ上から目線なのか。
657: 2021/06/18(金)21:37 ID:uKaqnLHw(1/2) AAS
球を平面でカットした場合ってこと
どうカットしても断面は円になるでしょ?
つーかここまで説明されなきゃわからんとか
レベル低っ!!
658: 2021/06/18(金)21:41 ID:uKaqnLHw(2/2) AAS
上から目線って何?
私は上から目線で生意気に質問されてるから
答えないから!
わからないんじゃなくて答えないだけだから!ってこと?
ダサww
659(1): 2021/06/18(金)21:48 ID:kejK9s3z(1) AAS
その球の中心か、断面の円の中心とそこから突き抜けた距離とかが分かればいけそうだけど
円の半径だけじゃ無理そう
660: 2021/06/18(金)21:52 ID:IqjABVn9(1) AAS
>>654
それに加えて球の中心と平面との距離が分かれば、中学生の数学で解けるぞ
661: 2021/06/19(土)05:28 ID:oAdp6z6P(1) AAS
球を平面に押し付けると → 球を平面でカット
一言も説明してない自分の妄想が相手に伝わらないと相手のせいにする。
かなりのキチガイだから相手にしないほうがいい。
すげー馬鹿なのに上から目線だし。
662: 2021/06/19(土)16:36 ID:zDrgWeBe(1) AAS
>>654
動画リンク[YouTube]
動画リンク[YouTube]
663: 2021/06/20(日)08:04 ID:OIjFeek2(1) AAS
>>659
ユーが正解だな
円の半径じゃ足りなくて
もう1つ値が必要だったな
みんな俺の為に頑張って調べて大変だったな!
ありがとな!でも次からはもっと早く調べてこいよな!
664(1): 2021/06/20(日)11:56 ID:YA/Ya76e(1) AAS
とんとん
とんとん
ごめんください。布教に来ました。
・mixamo(ボーンアニメーションのモーションデータがあるよ。あどべid登録必須。モーションデータは無料)
・BOMTH(pixivの露店さいと。モデルデータボーン入りが売ってる)
福音
665: 2021/06/20(日)13:54 ID:HPksRI5/(1) AAS
>>664
( ゚д゚)、ペッ
666: 2021/06/22(火)11:07 ID:2AbGnqy7(1) AAS
666
667: 2021/06/22(火)11:13 ID:jiZrgPwV(1) AAS
ジード
668: 2021/07/16(金)11:50 ID:E3ke7LEi(1) AAS
質問です。
やりたいこととしては、GPUベースのパーティクルアルゴリズムにおいて(これは出来てます)、
あるパーティクルAの一フレーム前の座標と、パーティクルAの今のフレームの座標と、
バーティクルBの今のフレームの座標を取得して、ジオメトリシェーダでポリゴンを生成していくアルゴリズムを作ることです。
そのためには一フレーム前のパーティクルAの座標を取得しないといけないと思うのですが、
どうやったらいいでしょうか。つまり過去のフレームを格納しておくような方法はありますでしょうか。
どうぞよろしくお願いいたします。
669: 2021/07/20(火)10:55 ID:MVb7vtDl(1) AAS
DirectX11以前だと1フレーム前の情報を保存する為には、レンダリングターゲットテクスチャかストリームアウトプットぐらいしかないと思うが
他に何かあるかな?
670: 2021/07/20(火)16:54 ID:lRbUuGCH(1/3) AAS
DirectXかあ
そんなの有ったなあ
671: 2021/07/20(火)17:06 ID:14kHHGPY(1) AAS
DirectXを馬鹿にするんじゃねぇぇぇ!!
俺が馬鹿みてえだろうが!!
672: 2021/07/20(火)20:31 ID:lRbUuGCH(2/3) AAS
そうはいってもなあ
Unutyとかにかなり流出してるからなあ
673: 2021/07/20(火)20:31 ID:lRbUuGCH(3/3) AAS
Unity
674: 2021/07/21(水)13:01 ID:ryKiyyyi(1) AAS
DirectXはもう終わりだなw
675: 2021/07/22(木)13:40 ID:+FkqmWTP(1) AAS
DirectXって昔流行ったよな
676: 2021/07/22(木)14:00 ID:I7nexIle(1) AAS
DXlib って DirectX の進化について行ってる?
677: 2021/07/24(土)12:23 ID:++SyJKjY(1) AAS
私にはスタートだったのあなたにはゴールでも
678: 2021/07/30(金)01:12 ID:0Nia9jjj(1) AAS
円の半径 = cos( π * 球と平面の距離 / 球の半径 ) * 球の半径 かな?
679(1): 2021/07/30(金)14:29 ID:cky6qKe8(1) AAS
こういうのパソコンに聞いて答えてくれるようにならんかなぁ
680: 2021/07/31(土)11:11 ID:JsMgOJba(1/2) AAS
>>679
ならねえよばーーーか
681(1): 2021/07/31(土)12:56 ID:nW4mOK6D(1) AAS
10年前ならともかくUnityをを使わない理由が全く分からん
エンジン作ってるならまだしもゲーム作ってるんだよな?
682: 2021/07/31(土)14:43 ID:8Uq1d3k2(1) AAS
Unityは重いしプレイする側から相当嫌われてるから自作エンジン作る必要があるんだよ
なお俺には到底無理だからUnityつかう
683: 2021/07/31(土)15:13 ID:eG/YeLCZ(1) AAS
ゲームであれば完成させられるかのほうが大事
684(1): 2021/07/31(土)20:34 ID:JsMgOJba(2/2) AAS
DirectX使ってるやつはもういないね
685(1): 2021/07/31(土)20:57 ID:BXdlYT5W(1) AAS
>>681
文句のひとつも言いたいとこだけど
アプリを起動する度にシャドウマップテクスチャに描かれたり描かれなかったりする
謎現象が起きてて、何時間デバッグしても得られるもん無くて
俺はゲームもろくに作らずなにやってんだろと思ってしまってる..
686(1): 2021/08/01(日)12:00 ID:boMMlR1G(1) AAS
>>684
C++ じゃなくて C 用で便利なイマドキの 3D framework 教えてくれまいか
687: 2021/08/01(日)15:54 ID:XWCicmM8(1) AAS
>>686
sinder とか siv3d とか cocos2d とかあるけど
こいつらは c++ 大前提だからなぁ
C 用を欲しているってことはオブジェクト指向型じゃない方がいいんだよな?
それなら基本関数型の設計になってる DxLib がいいんじゃない?
688: 2021/08/01(日)17:28 ID:+vH7Hh1r(1) AAS
モダンを求めてレガシー言語のCを要求とはこれ如何に
689: 2021/08/01(日)18:28 ID:7da0Wq7h(1) AAS
Glideがあるやろが
まったく素人だな、、
690: 2021/08/02(月)15:29 ID:AbVxr+3x(1) AAS
プリコネもウマ娘もunityですぜ親分方
優しい世界へ飛び出そうぜ
691: 2021/08/02(月)16:33 ID:Fmz6EWM1(1) AAS
DxLibじゃダメなの?
692(1): 2021/08/02(月)19:38 ID:MsO8IVP5(1) AAS
DxLib は C++ じゃないか?
693: 2021/08/02(月)21:42 ID:SbVR5xvF(1) AAS
>>692
DxLib 側はC++ で実装されてるだろうけどゲーム作る側は
ほぼ C だけの知識 ( クラスとか解らなくても ) 作れるようになってるよ
ただ、フレームワークかといわれると違うかと
名前通り『ライブラリ』でAPI群が提供されてる感じ
もちろん C++ でも作れるぜ!b
694(2): 2021/08/02(月)22:01 ID:3wJTSwwc(1) AAS
>>685
やっとバグを特定した
4日かかった
表す価値もないしょーもない内容だった
アホやなあワイは、、
695: 2021/08/03(火)00:25 ID:fVwCDosm(1/2) AAS
Cっぽい書き方で作るならほぼDxLib一択だと思うわ
696: 2021/08/03(火)00:30 ID:Ucc8C21f(1) AAS
馬鹿には無理
697(1): 2021/08/03(火)13:09 ID:OC+37TPi(1) AAS
>>694
うん、アホだね
698: 2021/08/03(火)13:55 ID:MolD2tLT(1) AAS
>>697
頑張ってる人にそういうこと言うなよ
>>694
プログラマならトライアンドエラーを繰り返して上達するんだから
あきらめずにバグ修正できたのは立派だとおもうよ
どういう理由でバグってたのか教えてもらえるとうれしい
699: 2021/08/03(火)14:54 ID:wbx4PwZT(1) AAS
あるあるw
手こずったバグの原因がわかったときの自己嫌悪
ぶん殴ってやろうかコイツって
700: 2021/08/03(火)15:30 ID:my7I/bQY(1) AAS
会社のすげえプログラマの人とか、バグで全然止まらないんだよな。
俺らとか下手したら2,3日悩んだりするじゃん?そういうのが全くない。バグあってもすぐ解決する。どんな頭の構造してんだろ。
701: 2021/08/03(火)15:40 ID:0q+6D5sv(1) AAS
俺「解決するまで寝ないから実質その日のうちに解決してる(キリッ」
702: 2021/08/03(火)17:38 ID:fVwCDosm(2/2) AAS
バグの出そうな場所は自ずとわかってくる
703: 2021/08/05(木)09:19 ID:ReaFqmqi(1) AAS
バグコード描いてる時点で三流
プログラマとしては全然すごくない
704: 2021/08/05(木)10:43 ID:4gLc7V2k(1) AAS
ミスのない人間なんていない
705: 2021/08/05(木)17:15 ID:6+DEH0PD(1) AAS
俺はミスないよ
俺って天才!
706: 2021/08/07(土)22:19 ID:7ea3iVpn(1) AAS
性格悪いなー
同じプログラマ名乗らないでね
上下前次1-新書関写板覧索設栞歴
あと 67 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s