[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2ch.scのread.cgiへ]
Update time : 10/18 09:24 / Filesize : 209 KB / Number-of Response : 777
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



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リンク

75 名前:デフォルトの名無しさん mailto:sage [2018/06/28(木) 00:27:47.00 ID:AvSEAtjl.net]
いや使えるから
アホか

76 名前:66 mailto:sage [2018/06/28(木) 01:17:28.76 ID:0Mk0oUDE.net]
Direct3Dでやってみようと思います
ありがとうございます

>>72
すみませんよく分かりません
普通のドット絵を特別な演出なしでただ表示するだけです

77 名前:デフォルトの名無しさん [2018/06/28(木) 08:16:05.06 ID:LsQc8TCW.net]
>>75
8.1以降だよ。D2Dのシェーダ機能は。

78 名前:デフォルトの名無しさん mailto:sage [2018/06/28(木) 19:24:43.13 ID:8R+Whkqb.net]
>>77
正確にはPlatform Updateを当てたWin7からだねえ
shader linkingとかWin10じゃないと使えない部分もあるけど

79 名前:デフォルトの名無しさん [2018/07/04(水) 22:04:38.23 ID:gFgZc5FG.net]
LLK

80 名前:デフォルトの名無しさん [2018/07/05(木) 11:48:24.25 ID:IcGtf/nv.net]
収賄

81 名前:デフォルトの名無しさん mailto:sage [2018/07/13(金) 12:33:24.67 ID:biAzu33U.net]
過疎ってるな
やっぱりDirectX/(^o^)\オワタのが原因か

82 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 00:26:43.18 ID:30p93O+E.net]
俺はDirectXしか使え・・・使わない

83 名前:デフォルトの名無しさん [2018/07/17(火) 14:17:47.91 ID:+kxKOOfA.net]
https://Qlone.pro/



84 名前:よろしこ [2018/07/19(木) 20:17:45.32 ID:yrhu1YJX.net]
スプライトでも座標変換済み頂点の2D板ポリゴンでも、
1MB程のデータサイズの画像(3000×6000ドット等)を2、3枚重ねて描画していると、
終には重ねたい画像が、白いボックスのものが表示、あるいは画像がまったく何も表示されないという
怪奇現象に出会った人いますか?
o.8ch.net/17k70.png

85 名前:デフォルトの名無しさん [2018/07/20(金) 03:22:50.62 ID:/pvYBo5v.net]
仕様です

解決策としてZを少しずらす事で対処するのが普通
そういった機能はDirectXにもOpenGLにも既に付いてるよ

86 名前:よろしこ mailto:fuuinsuzaku@outlook.jp [2018/07/20(金) 10:08:53.06 ID:VlOc7Xbe.net]
答えてくれてありがとうございます。
言い方間違えました(´つω・`)
Zをいじったり、座標をずらしてみたのですが、結果は同じでした。
16GBもメモリを積んでいる、にもかかわらず、
テクスチャーがトータル5MB分ぐらいしか表示されません。
どう足掻いても、メモリ不足になる、これはどうしてもおかしいなと思うんですよ。
いろいろやり方試したけどできないのです、おそらくVRAMが1GBしかないからなのかな〜?

もうOpenGLで行こうかと思いもします。(´つω;`)
利用しているのはVC++2015とDirectX9.0です、初学者には丁度良いものです。
11、10飛ばして12に覚えようかと期待もします。11はやること多すぎでつ。

みんなみたくUnityみたいなのに乗り換えたほうが利口なのだとおもうますがね、
どうしてかDirectXが捨てられない

沢山pngファイルが読み込めるサンプル作ってくれる人いませんか?
簡単なものでよいので壱万円ぐらいなら払いますじょなもし。(´・ω・`)
o.8ch.net/17kug.png

87 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 11:02:58.03 ID:z4opRCGK.net]
>>86
まずそっちから上手くいかないコード晒すのが順序ってもんやろ
現状じゃテクスチャ解放忘れてVRAM使い果たしてんじゃね
くらいの予想しかできねえよ

88 名前:デフォルトの名無しさん [2018/07/20(金) 11:26:12.47 ID:c77xM4ns.net]
なんで自分が判ってないのを環境のせいにするんだろうな

89 名前:よろぴこ [2018/07/20(金) 12:14:04.68 ID:VlOc7Xbe.net]
CPU i7 6700K 、メモリ16GB、VRAM1GB、Windows764Bit


テクスチャーを作成しています。中でも大きいものは1920*1080ぐらい)
CreateTexture(n〜10枚ぐらい);

lpSprite->Begin(D3DXSPRITE_ALPHABLEND);

UDXDrawSprite(0);z=0.1
UDXDrawSprite(1);z=0.2
UDXDrawSprite(2);z=0.3
(※この中身はDraw()の3連続描画です。完全に重なっています。3つのレイヤーを持ったスプライトをアニメーションさせているところです)
UDXDrawSprite(3);z=0.4
UDXDrawSprite(4);z=0.5
UDXDrawSprite(5);z=0.6

UDXDrawSprite(6);z=0.7 //この3枚目が描出来ません
UDXDrawSprite(7);z=0.8 //この3枚目が描出来ません
UDXDrawSprite(8);z=0.9 //この3枚目が描出来ません

3枚ごとに表示、ここは重なっていません。3キャラクター分、計700KBで9枚のスプライトを表示しています)。

lpSprite->End();

RELEASE()
解放して終了。一般的なコードです。複雑なことはしていません。3×3枚並べてます。つまり3キャラクターが揃ってアニメーションしてくれれば良いのです。

ごめんなさい描き忘れました。
ようするにこのパソコンのスペックで最大限のスプライトをどのくらい使えるのかが知りたいのです。
みんなのDirectX9.0ってどのくらい詰め込めるものですか?(´・ω・`)
o.8ch.net/17kzm.png

90 名前:デフォルトの名無しさん [2018/07/20(金) 13:29:13.16 ID:9AbXiOEg.net]
えっと
CreateTexture(n〜10枚ぐらい);
RELEASE();
これを書いてる場所が可笑しい

91 名前:よろしこ [2018/07/20(金) 14:09:53.21 ID:VlOc7Xbe.net]
void CreateTexture(UTEXTURE *inf) {
lpTexture = new LPDIRECT3DTEXTURE9[10];//ここで10枚つくる
(中略)

D3DXCreateTextureFromFileEx(lpDevice, inf->fn, inf->size.cx, inf->size.cy, inf->mip, inf->usage, inf->format, inf->pool,
D3DX_FILTER_NONE, D3DX_DEFAULT,inf->colorkey,NULL, NULL, &lpTexture[n]);
}


メモリの解放は
for(unsigned long j=0;j<10;j++){
RELEASE(lpTexture[j]);
}
他    delete

不明だったところです。
o.8ch.net/17l20.png

92 名前:デフォルトの名無しさん [2018/07/20(金) 14:39:58.10 ID:VlOc7Xbe.net]
レス頂きまして、ありがとうございます。

>これを書いてる場所が可笑しい
場所ですか・・・、これは
便宜上隣り合ってるだけで、実際の記述とは異なります。(´・ω・`)

93 名前:デフォルトの名無しさん [2018/07/20(金) 15:31:13.30 ID:9AbXiOEg.net]
RELEASE(&lpTexture[j]);
じゃね?
知らんけど



94 名前:よろしこ [2018/07/20(金) 17:05:06.82 ID:VlOc7Xbe.net]
自己解決しました。
レスポンスをくださった方々ありがとうございました。
機会がありましたらまたよろぴくぴくぴくです(´・ω・`)
o.8ch.net/17l7p.png

95 名前:よろぴこ [2018/07/20(金) 17:08:20.35 ID:VlOc7Xbe.net]
解決法は画像データ(pngデータ)のサイズを半分にしました。

96 名前:デフォルトの名無しさん [2018/07/20(金) 19:46:09.51 ID:c77xM4ns.net]
2のN乗とかか

97 名前:デフォルトの名無しさん mailto:sage [2018/08/07(火) 19:05:29.05 ID:38hSWpmt.net]
DirectX滅亡まで秒読み開始

98 名前:デフォルトの名無しさん mailto:sage [2018/08/07(火) 19:21:20.21 ID:19TOdeI6.net]
DirectXは永久に不滅です!

99 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 15:32:52.42 ID:3dxz5Rk6.net]
ディファードレンダリングについて質問です。
directx11でディファードレンダリングを勉強中なのですが、
最終描画でカラー情報と法線情報をうまく取得できません。
以下の画像のようにテクスチャ一枚一枚に描画されるような感じになってしまいます

左上がカラーと法線、下が結果です
iup.2ch-library.com/i/i1926984-1533963662.png
iup.2ch-library.com/i/i1926983-1533963662.png

そのまま取得するだけではだめなのでしょうか?

100 名前:デフォルトの名無しさん [2018/08/13(月) 16:05:10.01 ID:obMX332h.net]
Not Found

101 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 16:18:49.27 ID:urswoUFg.net]
すみません、上げなおしました

iup.2ch-library.com/i/i1927453-1534144502.png
iup.2ch-library.com/i/i1927454-1534144502.png

102 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 17:12:25.04 ID:YdemEp8d.net]
>>101
参照するメッシュがスクリーンじゃなくて、立方体になってるじゃん

103 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 18:07:05.90 ID:hJrJ9HSe.net]
>>101
最後は立方体じゃなくて1枚の板ポリを描画する



104 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 21:02:12.89 ID:Tq2c1yHL.net]
>>102
>>103

上手くいきました!!
ありがとうございます

105 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 17:50:04.02 ID:GfcO4nK4.net]
>>104
いえいえ

106 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 00:16:57.92 ID:TP+ulg07.net]
Direct3D12で描画ループを描けた記念のカキコ。
Direct3D12は、かなりVulkan(Mantle?)の影響を受けているけれど、
11以上に描画パイプラインが理解しやすく、GPUをイメージしやすくなっていていいね。

もう11には帰れない。 11に帰りたくない。

そこで12を普及に当たって、躓き易い箇所を整理、共有しておきたい。

107 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 00:29:42.32 ID:TP+ulg07.net]
箇条書きで。
<Descriptor Heap、Descriptor Table、Root Signature、そしてCBV,RTV,DSV,SRVの関係>
1.Descriptor Heapとは?
 CPUとGPUを結びつけるCPUポインタとGPUポインタの集合。
 GPUポインタは、リソースを示し、CPUポインタはハンドルを指す
 又、一つのエントリが11でいう「ビュー(RTV、DSV、SRV、CBV)」
2. Descriptor Tableとは?
 シェーダリソース。
3.Root Signatureとは?
 シェーダにリソースを入力するデータの構造定義。 レジスタとのバインディング情報
 機械翻訳だと「ルート署名」とか翻訳されるが、罠なのでスルー推奨。
 決して、ルート証明書で署名したASN.1符号データなんかじゃない。
 ヘッダを指して「シグネチャ」と呼ぶ、そういう慣習から来るワード

QA. シェーダリソースの構造、レジスタとのバインディングって、どう決まるの?
 Root Signatureのパラメータテーブルに登録する「Descriptor Table」で規定する構造で決定される。

ここだけ理解すれば、D3D12の入門で吐きそうになることは軽減できると思う。

次の難関は、nodeTypeとTextureロードだけど、ここは頑張れ。
テクスチャロードは、明示的に命令リストを介してGPUに配列を正規化するように命令を飛ばすことをプログラムするだけの話。
nodeTypeは、マルチGPUでの処理を制御するための情報。

108 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 08:23:12.12 ID:cK7DWfih.net]
素晴らしい。
DirectXまだまだ終わらんよ。

109 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 09:46:38.02 ID:LJ797i4F.net]
D3D12はD3D11がやってくれてたことを自前でやるだけだから凡その場合どうでもええが
DXRが目的の場合はいよいよ避けて通れなくなりそうだからなあ

110 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 01:31:45.98 ID:vcFx3lE6.net]
どうせまた複雑過ぎるとか
世論が騒いで
易しくなった13が出るだろ
それまでワイは手を出さんで
つーかそれまでにガンとかで
死んでそう

111 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 01:36:13.96 ID:zXZq/jKJ.net]
いや、簡単は11、複雑は12と住み分けることになってる。

112 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 11:56:44.32 ID:0hGhn6dd.net]
どこで質問していいか判らなかったので質問させて下さい。

LOGFONT の lfPitchAndFamily の FIXED_PITCH と同等の判定を
FreeType2 で行いたいのですが、face_flags を
FT_FACE_FLAG_FIXED_SIZES と FT_FACE_FLAG_FIXED_WIDTH で判定しても、
どちらも FIXED_PITCH と違う判定が返されてるのです。

何か方法はありませんでしょうか?

113 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 18:25:42.25 ID:IlfNWypd.net]
int* str;
int *str;
ポインタなんだけど、2つの書き方の違いって何?



114 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 19:09:20.22 ID:3qLPo3UW.net]
思想、宗教の違い

115 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 08:29:11.39 ID:sSqkHd4p.net]
>>112
固定ピッチにしたいなら、固定ピッチに対応したフォントに限られる。
MSpゴシック、游ゴシックなんかを与えても固定にはならない。(と、思う)
恐らく、NotoSansMonoというキーワードが妥協案におすすめ。

116 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 08:36:33.49 ID:swhwlLlG.net]
字形の描画(レンダリング)で言えば、アンチエイリアス(輪郭のギザ付きを中間色で誤魔化す)もFTはやってくれるから、自前でピッチを固定したり、間隔を整えようとすると苦労する。
数学というよりも心理、グラフィックスデザインの領域に近いのかもしれない。

ついでに言うとDirectWriteは字形のパス(この場合、頂点配列に近い)を出力できる。

117 名前:デフォルトの名無しさん [2018/08/22(水) 13:49:54.72 ID:Q4k/bgn4.net]
>>113
前者は
int* str, hoge, fuga;
っていうミスをしがち

後者は
int *str, hoge, *fuga;
で書き分けの意図がはっきりする

よって後者をおすすめします

118 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 14:34:01.47 ID:BSjDybOq.net]
>>115
説明下手で済みません。
そういう意味ではなく、Faceに読み込んだフォントが
固定ピッチなのか可変ピッチなのかを判定したいのです。

119 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 17:53:38.04 ID:su77kwqg.net]
>>117
理解はできるが、後者は気持ち悪くてできないなぁ(汗)
しょうがないから1変数1行ずつ書いてる。

120 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 18:03:19.36 ID:Y/fFyhhT.net]
>>118
詳しくは知らないが、恐らく「ない」んじゃなかろうか。


以下、すべて蛇足、憶測。
ウィンドウズほど優しくできていない。
字形のレンダリングに限れば、必要としない判定。
必ず字形毎(文字毎)に設計された間隔を読むから。

あとFTはAndroidで使われているから、そっちほが詳しくのがいるのではないかと。

121 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 18:46:30.87 ID:exTCpVs2.net]
>>117
ありがとうございます

122 名前:デフォルトの名無しさん [2018/08/22(水) 19:57:06.31 ID:Q4k/bgn4.net]
>>119
気持ち悪いのは
int *str, hoge, *fuga;
が混ざってるからで

完全に一行ずつに分けなくても
int hoge, hage;
int *str, *fuga;
なら問題ないだろ

123 名前:デフォルトの名無しさん [2018/08/22(水) 19:59:38.50 ID:Q4k/bgn4.net]
int* str, hoge, fuga;
の意図が
int* str, * hoge, * fuga;
だとするとこっちの方が気持ち悪い



124 名前:デフォルトの名無しさん [2018/08/22(水) 20:00:22.96 ID:Q4k/bgn4.net]
宗教戦争になるのは認める

125 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 14:19:36.46 ID:0oLK3sfm.net]
ミニゲームじゃなくて気合入って作られてるDirectX使った出来の良いゲームで
言い方悪いけどパクれるというかお手本になるソースコードって公開されてない?流石に都合良すぎるか

126 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 15:20:39.26 ID:fvt/af8o.net]
GitHubを漁る

127 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 22:25:35.05 ID:cv8sNhFm.net]
文法、記述ルールは、宗教戦争だけど、
最近流行りのヌルポ排斥運動は、熾烈な勢いがある。
コーティン?だったかは、変数の使い回しを言語レベルで排斥する思想。
ヌルポを排斥するため「仮決め(代入なしの変数宣言)」を許さない。変数の仮決めは穢れている。

初期値から消滅まで、必ず値を持たせるためには、有意な値を引き回せばよい。
結果、グローバル、アクセス自由度の高い変数に流れ、見通しの悪い、誰が更新参照してんだかを特定しにくく(匿名性を高める効果を促進しやすく)なるか、アホみたいに引数を引き回すかコンテキスト構造体を引き回すことになる。
コンテキスト構造体とは、すなわち匿名性の促進と道義。

128 名前:デフォルトの名無しさん [2018/08/23(木) 22:36:02.39 ID:DjzyTv43.net]
>>125
ソースコードだけならば、Elonaがソース公開されているんでないかな。
よくしらんけど。もしかしたら作者と直に連絡を取った人だけに渡してるのかもしれん。

最近は、コンシューマでもインディーズとカテゴライズされて地位が出来上がっているから、なかなか巡り会えないと思う。

最近のインディーズゲームは、少しおかしいぐらいに技術力が高いからね。
3Dシューティングで視点がステージや進捗で変わるのがあるが、あれはかなり異常な出来だった。
もはやプロの仕事。

129 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 16:33:14.61 ID:aPxb4sFP.net]
もうDirectX使うの止めるわ

130 名前:125 mailto:sage [2018/08/25(土) 16:55:07.75 ID:ux2vpN2s.net]
>>126
適当にGitHubとか言ってるんじゃなくてマジであんの?GitHubすごいな
どういった風に検索すればいいんですか?

>>128
Elonaはもうソース配布してないみたいですね
というかElonaってHSPだけどDirectX使ってたのか

131 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 17:04:30.41 ID:YH9nAcbl.net]
>>129
まぁ、そう言わずに…

132 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 17:20:12.58 ID:uMKey/32.net]
>>129
DirectX5からの付き合いだが、俺もVulkan移行中ですわ

133 名前:デフォルトの名無しさん [2018/08/25(土) 22:41:08.90 ID:xNcAdL4l.net]
directX12で勉強がてらゲーム作ってたけどAI流行ってたから
CS使ってAIの実験してるわ。
とりあえずC++とDirectxあれば何でもできるね



134 名前:デフォルトの名無しさん [2018/08/26(日) 21:10:42.11 ID:9TzHFCTa.net]
>>129
VulkanとD3D12、両方使っているけど、
比較的に12の方が優しいが、どっちも癖がある。

整理されていて、より些細なことまでできる分、一山越えると少しだけVulkanが好きになる。
Vulkanの入力アタッチメントなんかは、避けるべきと思う。

vulkanとd3d12の違いは
vulkan
・描画バスの仕組み(このパスは、マルチパスレンダリングのパス)
d3d12
・レイトレができる(らしい)

135 名前:デフォルトの名無しさん [2018/08/26(日) 21:16:14.17 ID:9TzHFCTa.net]
描画パスの仕組みがないのは、恐らくは後方互換性。
利用するプログラマをつき放さない意味での用語や理解についての互換性が趣旨に感じた。
(そんな言葉はないけど、エクスペリエンスのデノミを避ける、が近い?)

Vulkanの描画パスは、吐ける。

136 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 23:08:56.87 ID:GZFWl5MZ.net]
何でOpenGLやめるん

137 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 23:09:40.94 ID:GZFWl5MZ.net]
↑クロノスグループが、の意味ね

138 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 04:36:36.26 ID:xIxAfuYd.net]
ゲーム制作をしてるのですが、
XInputGetState関数でXbox Oneのコントローラーは扱えますか?

MSDNでは
『XInput とは、Windows 向け Xbox 360 コントローラーからの入力値を、アプリケーションで受け取れるようにする API 』
と書いていたのですが…
https://msdn.microsoft.com/ja-jp/library/bb173045(v=vs.85).aspx

139 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 08:12:00.72 ID:rKzetDHK.net]
>>138
スチームでの対応状況が参考になるのではないかと。
非対応なら無理。対応しているならいける余地はありそう。
7でPS4コントローラがUSB接続で制御できたことは確認済み。
なお、これはDirectInput8を使った。

140 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 11:19:22.36 ID:9KYhKRgJ.net]
ありがとうございます

141 名前:138 mailto:sage [2018/08/27(月) 11:32:24.96 ID:9KYhKRgJ.net]
検索して探していると『WindowsにはXBoxのコントローラを使用するためにXInputというAPIが用意』とか『Xbox One、Xbox360等のX-input式のコントローラー
』とか等と書いてあるブログが複数発見したので同じ仕組みかな?とは思うのですがMSDNを見ているとXbox360専用と書いていたので

142 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 18:27:11.34 ID:kh1Bw1m+.net]
>>138
使えるよ

143 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 00:13:35.30 ID:qBKCuhvw.net]
>>137
Currentは、もうヤダ。
マルチスレッドレンダリングする上で面倒くさい。
って事だと理解している。

命令のキューと整理されれば、プロセッサと同様なメモリ保護も視野に入るし、
とあるシェーダが別プロセスのテクスチャを読める可能性を排除しやすい。
11までのGPUは、そういうのは皆無だろうし、12にもvulkanにもなさそうだしね。

GPUにスワップメモリ、仮想メモリ空間、スワップで逃がすストレージなんかないのだから。



144 名前:デフォルトの名無しさん [2018/09/03(月) 12:41:04.98 ID:NxxlWETJ.net]
DirectX9でSetRenderStateを使ってブレンディングする場合
除算ブレンディングはどうやったら良いでしょうか?
加算なら以下で出来ますが。除算がよく判りません。
lpD3DDev->SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
lpD3DDev->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_ONE);

145 名前:デフォルトの名無しさん mailto:sage [2018/09/03(月) 15:45:46.51 ID:O77C1Rb1.net]
>>144
君には教えない

146 名前:デフォルトの名無しさん [2018/09/03(月) 21:12:07.01 ID:NxxlWETJ.net]
>>145
おしえて!w

147 名前:デフォルトの名無しさん [2018/09/04(火) 05:42:00.75 ID:ygKGdo3P.net]
>>144
公式のリファレンスにのってない?

148 名前:デフォルトの名無しさん [2018/09/04(火) 13:02:02.42 ID:hJtprqgF.net]
dstをぜろ。srcを色指定にすればいいだけに見える

oc=(tc*dest bc)+(pc*src bc)
tc ターゲット色、pc シェーダ出力色

149 名前:デフォルトの名無しさん mailto:sage [2018/09/04(火) 15:48:34.16 ID:ep2b6+2r.net]
>>147
たぶん載ってない。
>>148
わー!ありがとう!やってみる。

150 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 16:13:46.89 ID:M1sJGdfN.net]
自己解決したわ、アホ共。

151 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 08:55:08.63 ID:c/4EXXgn.net]
皆さんDirect3d上でのGUIは
何を使っていますか?

152 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 09:06:48.54 ID:fHwpB0MY.net]
自作かImGuiやね

153 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 08:25:36.60 ID:vjUQtdrA.net]
ウィジェットのことなら自作だな。
良さそうな小さいのが見当たらない。
ゴリゴリと頂点配列を作って動かしている。
字と背景を別々に作るから、かなり複雑で眠い



154 名前:デフォルトの名無しさん [2018/09/18(火) 04:59:22.14 ID:v4BXp/hu.net]
ただのゲーマーだけど聞いていい?
いまだDirectX6使ってるゲーム好きで時々やるんだけど
古いバージョンっていつか切り捨てられて動作しなくなったりする?
Windows10でも動いてるしこれからもずっと動いてて欲しいんだけど。

155 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 06:57:41.67 ID:PQNDTy/s.net]
directXはCOMテクノロジーがベースだから
古いゲームでも最新ハードの機能が使えるんやで
例えばdx6ゲームでHWTLやテッセレーション
高度なAAや4k解像度適用などなど

ま、今は絶賛開発中なのでしばし待て
22世紀中にはリリースされるよ

156 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 07:41:24.70 ID:Qxe4285y.net]
>>154
DirectX云々以外のところで動かなくなる。イースとかもうWidows10では互換モードでも起動すらしない

157 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 23:07:41.49 ID:v4BXp/hu.net]
>>155-156
DirectX自体は互換性があって大丈夫ってことかな?
それ以外で動かなくなる可能性の心配した方がいいってことか。

158 名前:デフォルトの名無しさん [2018/09/19(水) 11:42:50.85 ID:PupZqwJJ.net]
誤解が拡散中

159 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:02:25.18 ID:DVXllMcK.net]
DirectXに互換性などはないような。
ただ過去のスタックが残っているだけのこと。
それすらDirect3D9c未満が動くのか?は疑問がある。 ドライバが非対応なんじゃないだろうか。

あと、動画再生時のCODECが非対応で、動画再生できずに堕ちるってのもあるような。
ソフトウェアMIDIもドライバで実現しているのか、Microsoft標準ドライバが実装しているのかも疑問がある。

取り敢えず、過去に買ったWindows 95時代のゲームで動画再生できずに堕ちたゲームは観た事がある。

160 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:08:06.99 ID:DVXllMcK.net]
Windowsは、Windowsのみで機能を実現など出来ていない。
ハードウェアを扱う部分は、メーカーが提供するドライバが核であり、
そこがWindowsの互換性を提供し、メーカーに向けたドライバ要件が担保となっている。

Officeが必要とするドライバ機能がドライバ要件を決定づけていて、
サポート期間中の製品が必要とする部分なら、ドライバも必須となる。
従って、Direct3D関係の機能は、既に9c未満が動く保証はないと思う。

161 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 00:02:40.53 ID:gdLwWWhU.net]
>>159
ドライバの対応次第ってことかな?
現状ではDirectX6や7や8のゲームは普通に動いてるけど
メーカーがドライバ対応しなくなった時が終わりってこと?

162 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 07:52:43.20 ID:K+Ua86eW.net]
>>161
ここでウダウダ聞いてもなんの担保にもならんぞ
対応しなくなったら終わりではなく更新されないだけ、それで動き続けるかどうかは神の味噌汁
たまたま動かなくなっただけかもしれない、たまたま動いているだけかもしれない

3DゲームはドライバでなくDirect3DのAPIに対してアクセスしているので
WindowsでDirect3D(の該当バージョン)が態々削除されない限りは互換性はあるとは言える
もちろん削除されなくてもWindowsの更新で内部の挙動が変化してゲームが動かなくなるなんてことはざらにある

163 名前:デフォルトの名無しさん [2018/09/20(木) 10:45:06.47 ID:7WHuQIEO.net]
WMが変わった時が一番大きい変化だった気がする



164 名前:デフォルトの名無しさん [2018/09/20(木) 10:51:48.29 ID:7WHuQIEO.net]
DWMが変わったタイミングで動かなくなったアプリが増えたっていう意味です

165 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 09:48:58.26 ID:qOWS4e0S.net]
>>162
互換性自体は結構あるね。
VBのDirectX用のDLLはもうOSに含まれてないけど自前で用意すれば結構動く。
ただ昔のゲームで使われてたカラーキーがもうダメなハードがあるね。

166 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 18:28:30.46 ID:7CqPf/Kx.net]
パレットテクスチャとかも危ないか?

167 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 21:47:58.86 ID:tZvIjPe8.net]
危ないね

168 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 17:39:33.56 ID:egrolh38.net]
質問です。
メインスレッドで描画しながら別スレッドでテクスチャを大量に読み込むと
画面がちらつきます。D3DXCreateTextureFromFileを実行した時にちらついてるようです。
ここにコードを書く事が出来ないのでエスパーでおねがいします。
思い当たる原因はありますか?D3DDeviceをスレッドをまたいで参照してたりするからでしょうか?

169 名前:デフォルトの名無しさん [2018/09/27(木) 17:40:00.04 ID:egrolh38.net]
age

170 名前:デフォルトの名無しさん [2018/09/27(木) 18:12:40.71 ID:lrUHFZkm.net]
ロックするかあらかじめ全部読んでおくか

171 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 20:45:06.26 ID:PZih89QY.net]
D3DDeviceを
マルチスレッドで使う場合
スレッドセーフで作らんとダメだろう
そこはちゃんとやってるのか?

172 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 21:58:29.85 ID:ZotRguTd.net]
マルチスレッドモードに設定してないと、Debugモード実行で警告メッセージ出まくらなかったっけ?
それが出てたら、出ないようにするとこから。

173 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 00:01:13.37 ID:frk51yg8.net]
>>170-172
ありがとうございます。やぱ作り方を不味ってるっぽいっすかね?
言われた事を参考に自分なりに調べてみます。
また何かあったら宜しくお願いします。



174 名前:デフォルトの名無しさん [2018/09/28(金) 08:46:21.34 ID:WfDD/blL.net]
ちらつきで疑わしいのは、presentする辺りかな
ディスプレイに表示する描画ターゲットを作り込むときに参照しているテクスチャでもあるんでないかと。
というか複数のスレッドからデバイスコンテキストを触ると蹴られたと思う。

それでもちらつきが一時的な症状ならば、テクスチャ関数が中で排他しているからでなかろうか?

ところでチラツキって具体的な症状としては、どれなんだろう。
・一瞬黒か白が入る
・カクカクしたアニメーションになる
・デジタルノイズが入る
・サブリミナルな絵が入る
・何しにきたんだよ?お前のために決まってるだろ!と友貴に言われる

175 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 09:59:25.03 ID:frk51yg8.net]
>>174
ありがとうございます。
テクスチャ読み込みした瞬間に「・デジタルノイズが入る」といった感じです。
具体的に言うと「ブロックノイズっぽいものが所々に出る」といった感じです。
症状自体はそこまで酷い訳ではないんですが、チラチラするので気になってます。
一回あたりのノイズのサイズは小さいですね。画面がフルHD時で、128x128くらいです。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<209KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef