X



【C++】 DirectX初心者質問スレ Part40 【C】©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん 転載ダメ©2ch.net
垢版 |
2016/09/25(日) 14:43:57.34ID:3wiQalb8
回答する人も、質問する人も必ず読んでください

これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近DirectXを始めたばかり
3.SDKを見ても、Googleで検索しても、いまいち理解できない人
4.余計な雑談は不要ですよ

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」「SDK見れ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する方 】
・ どんな事で躓いているのか明確にしよう。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。
・ 回答して貰ったら、出来るだけお礼もしよう。


【C++】 DirectX初心者質問スレ Part39 【C】
http://echo.2ch.net/test/read.cgi/tech/1418438785/

>>2リンク
0930デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:15:17.47ID:zOfD1Lkw
4ヶ月ぶりに覗いたけど
相変わらずかそってんのな
amdのfetch4ってgatherredで効くの?
Sample()で4点フェチして自前でバイリニアすると(dx9のshadowmapのサンプル)
ちゃんと補完されるのに
gatherredだとモザイクみたくなるんだよな
コツ教えて
0931928
垢版 |
2018/02/17(土) 16:01:19.76ID:A6BmBrel
>>929
クリッピング後じゃないとダメなんです
0932デフォルトの名無しさん
垢版 |
2018/02/19(月) 15:18:33.91ID:LkkqjNZ1
ピクセルシェーダはピクセル単位だし
クリッピングされた頂点が欲しいというなら
これは不適当だ
アンタの言うとおり
ジオメトリで三角形分割して
ストリームアウトプットしか無いんじゃないか
0933デフォルトの名無しさん
垢版 |
2018/02/20(火) 12:16:25.68ID:/DCDJ0JE
何がしたいのか、サッパリわからん。
この説明だと、二次元に落とし混んだ後に三次元計算したい!と無理なロジックを考えとるように聞こえるの。
0934デフォルトの名無しさん
垢版 |
2018/02/20(火) 12:24:07.25ID:/DCDJ0JE
そもそも「クリップ」が何を、どのような結果を期待しているのか?がわからない。

「ワールド座標内から三次元に空間を切り取りたい」
だけならば、頂点シェーダで空間外にある頂点を捨てれば済む訳なんだが、
するとドメイン、ハルシェーダに流し込むべきプリミティブの整合がなくなる。

そうなるとジオメトリシェーダでプリミティブ単位で落とすことになるが、これだとパイプラインの工程に制約され、テセレータに戻すには二バス目が必須となる。
0935デフォルトの名無しさん
垢版 |
2018/02/20(火) 12:29:55.68ID:/DCDJ0JE
書きながらなんとなく、メッシュをピクセル単位で落としたい、
メッシュの衝突をシェーダでやりたいのかと思ったが、そうなるとテセレータが欲しいという意図が不明。

もちっと具体的に実現したい結果を説明しないと有意義な答えは出てこないと思う。
0936デフォルトの名無しさん
垢版 |
2018/02/20(火) 12:34:30.91ID:/DCDJ0JE
シェーダは別に1パスであらゆることが実現できるようには設計されていない、
一般的な三次元描画のセオリーを基軸にして、高速に計算できるように設計している。

パイプラインのフローに合わないものを実現するならば、マルチパスにするか、アルゴリズムを変えないと実現できずにアシぶみするだけ。
0937デフォルトの名無しさん
垢版 |
2018/02/20(火) 14:06:33.85ID:ZhrEO/E0
930だがcapsviewerみたらshader _gather4がoffだった
このせいか?
GPUは超最新のRX470だから意外だ・・

クリッピングに関しては
やってることがおかしいのは
皆わかっていることだろう
大事なのは本人が満足することであって
忠告は余計なお世話だ
0938デフォルトの名無しさん
垢版 |
2018/02/20(火) 18:24:40.52ID:ptcA/Sk+
仰有る通りです。
0939デフォルトの名無しさん
垢版 |
2018/02/20(火) 18:40:51.90ID:Q8WKYTfx
1パスでやるなら一つ方法がある。
頂点シェーダは頂点番号を引数に取れたはずだから、三角形リスト(ようはストリップとファン以外)を前提に頂点番号の剰余をとる。
あとは定数バッファにクリップしたい空間をいれるなりする。

というか、クリップしたいのが何なのかがわからんと、これでいけるのかもわからんが。
0940デフォルトの名無しさん
垢版 |
2018/02/20(火) 18:53:53.14ID:NF5x4bMT
そうだ。俺が知る限り、ピクセルシェーダ以外にdiscard命令はないから、厳密にはクリップはできないと思う。
これはプリミティブの一貫性を担保出来なくなるからだと思う。

つまりクリップ後じゃないとダメというなら、それはかなり無理をしないと実装しにくいと思います。

おわり
0941デフォルトの名無しさん
垢版 |
2018/02/20(火) 19:35:33.56ID:u4AWVd2v
Direct3Dの描画はプリミティブ単位だからね
三角形や線とかな
だから頂点シェーダで頂点を破棄なんて
そもそもナンセンス
大体頂点を破棄したら三角が線になっちまうしな

クリッピングってのは平面に交差した三角形を破棄し
その接触してた境界線を使って
1〜2個の三角形を作って追加することだな
掻い摘まむと
0942デフォルトの名無しさん
垢版 |
2018/02/20(火) 19:39:01.32ID:u4AWVd2v
それにクリッピングしてない三角形と
クリッピングして半分サイズになった三角形を
それぞれテッセレーションかけたとして
描画に差が出るとは思えないんだよな
結局出来る絵は一緒だろみたいな
0943928
垢版 |
2018/02/20(火) 21:55:02.19ID:o7gc+o+D
みなさん、ご意見ありがとうございます!

ジオメトリシェーダーでプログラマブルにクリッピングし、
次のパスでテッセレーションさせる方法で思惑通りにできました。
品質、パフォーマンスともにばっちりです。
プログラマブルシェーダの威力を今までで一番実感できましたw

入力頂点や最終的な表現が少々特殊なアプリケーションなので、こんなことしてます^^;
0944デフォルトの名無しさん
垢版 |
2018/02/21(水) 05:52:54.40ID:4FJWcrHN
特殊学級逝け
0945デフォルトの名無しさん
垢版 |
2018/02/21(水) 06:44:11.37ID:3DX90cKY
なんかできない理由を引き出すことが目的だったみたいだね。
0947デフォルトの名無しさん
垢版 |
2018/02/21(水) 21:15:13.73ID:PIrsuTwG
プロかアマか知らんが
実際にテッセレーション使う
アプリがあることに驚きだ
0948デフォルトの名無しさん
垢版 |
2018/02/22(木) 03:58:30.48ID:uf68Vai0
モデラーソフトウェアが曲面を出力しないからね。
俺はデザイン段階のメッシュ生成に使うぐらいだな
ランタイムは使い処がない。元が面しかないから
0949デフォルトの名無しさん
垢版 |
2018/02/27(火) 12:28:04.97ID:KIqtFKWO
DirectXからは外れるが
俺もクリッピングの処理作ってたんだが
単精度が誤判定が多くて苦労した
結局倍精度で作り直したよ

scalar * dot( vec4, vec4 ) と dot( vec4, scalar * vec4 )
これでさえ解が異なるからな
桁落ちしてるんだろーが
ひ弱過ぎてやってらんねーよ

お前等も内積使ってる箇所は
誤差りまくってると思った方がいいよ
0951928
垢版 |
2018/02/27(火) 13:10:33.70ID:sqv/QEYw
>>950
生きろ
0952デフォルトの名無しさん
垢版 |
2018/02/27(火) 14:28:31.83ID:5gkszjPl
わらうしかないな
0954デフォルトの名無しさん
垢版 |
2018/02/27(火) 19:11:26.74ID:26shKBED
>>950
そんなことでくよくよするな。

内積よりも項に入る浮動小数点の桁の差が誤差の原因

1e7 * 4e-8 なんかは普通に誤差がでる。
深度バッファシャドウなんか、もう泣けるはどにエイリアスがでるからね
0955デフォルトの名無しさん
垢版 |
2018/03/01(木) 13:17:36.41ID:Cf0RGA4u
direct3d11でGPU利用率を出したいんだが
どうすればいい?
ID3DCounterってのも
リファレンスに何も載ってなくて
いまいち使い方がわからん
0958デフォルトの名無しさん
垢版 |
2018/03/05(月) 01:01:52.39ID:20zxqeLy
最近AIAI騒いでるのでDirectXついでにCSで人工知能やってるけど
directxって本当に何でもできる優れものですね!!
0960デフォルトの名無しさん
垢版 |
2018/03/07(水) 09:34:05.29ID:qEJjJFd9
Dwarf.xに不透明度0が設定されているせいで
何にもエラーがでないのに何も表示されなくて
泣きそうになりながらデバッグしてた。

俺の毛根が全てタヒんだ。絶対に許さない。
0962デフォルトの名無しさん
垢版 |
2018/03/09(金) 22:39:40.57ID:k21qhUCP
XMVECTORF32 v; ←不定値

v = XMVECTORF32(); ←(0.0f, 0.0f, 0.0f, 0.0f )が代入される

XVECTORF32の定義を見ても特に0初期化してるコードは見られないんだけど、どういうこと??
0964デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:49:48.96ID:6Ku/v/4o
>>962
963の否定を書こうと頑張ったけど無理だった。
0965デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:53:19.18ID:6Ku/v/4o
まるで、0次元に奥行きと時間軸があると証明しろ、という問題
0966962
垢版 |
2018/03/10(土) 01:00:56.50ID:jUXiXJgT
ひょっとして内部的にはfloat()が呼ばれてるのかな?
プリミティブ型のコンストラクタは0になるし。
0967デフォルトの名無しさん
垢版 |
2018/03/10(土) 06:10:20.45ID:L0iyZELB
>>962
おいおい
0968962
垢版 |
2018/03/10(土) 09:01:27.06ID:jUXiXJgT
分かりました。
POD型の構造体ってやつですね。
デフォルトコントラスタがメンバを0初期化するっていう。
忘れてました^^;
0969デフォルトの名無しさん
垢版 |
2018/03/10(土) 10:37:49.64ID:eraRXpqW
陰影が鮮やかな既定動作か。。
0970デフォルトの名無しさん
垢版 |
2018/03/10(土) 17:50:17.71ID:L2iBNePa
あのう、oswin8でdirectXのゲーム作ろうとしたらd3dx9.hが開けなくて何が悪いのか解らないんだけど誰か教えて
ちゃんとパスも通してるはずなんだけど開けない
0971デフォルトの名無しさん
垢版 |
2018/03/10(土) 17:54:04.71ID:5pXC+BOT
SDKは入れたか?
0973デフォルトの名無しさん
垢版 |
2018/03/10(土) 18:00:00.90ID:L2iBNePa
一部はアプリ関係で入れられなかったけど入れた
DXSDK_Jun10
これ入れた
0974デフォルトの名無しさん
垢版 |
2018/03/10(土) 20:47:35.40ID:L2iBNePa
>>970
visualstudioのバージョンを書くのを忘れてた
visualstudio2015
0975デフォルトの名無しさん
垢版 |
2018/03/11(日) 14:33:15.88ID:hH1O5ykj
インクルードディレクトリもライブラリディレクトリでもパス通してるんだけどエラーが起きる
directX入れなおした方が良いかな?
0976デフォルトの名無しさん
垢版 |
2018/03/11(日) 15:31:20.81ID:zWe+i43K
画面コピペか
少なくともどんなエラーかくらい書け
0977デフォルトの名無しさん
垢版 |
2018/03/11(日) 16:36:05.71ID:Rp+gMgwe
1>------ ビルド開始: プロジェクト:oikake, 構成:Debug Win32 ------
1> Gameplay.cpp
1>c:\k013a2065\oikake\oikake\gameplay.cpp(8): fatal error C1083: include ファイルを開けません。'd3dx9.h':No such file or directory
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(356,5): error MSB6006: "CL.exe" はコード 2 を伴って終了しました。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
0980デフォルトの名無しさん
垢版 |
2018/03/11(日) 21:27:53.94ID:w65DB/Z1
>>978
お前さー、もう出てくるなよ
自分がわかるクソみてーな質問には
偉そうに役に立たないレス返しやがって
ちょっと深い話になるとついてこれず
だんまり決めやがって
これからもそのスタイル続けるなら
コテハンにしろよ臆病者が
0982デフォルトの名無しさん
垢版 |
2018/03/12(月) 03:31:55.46ID:xicg2nss
ちげーよヴァカ
無意味なレスを返すなって
言ってるんだよ

「馬鹿すぎる」ってレスに
どんな情報的価値があるの?
無駄な文章を載せるなよ
しかも随分昔から繰り返しやがって

言ってもわかんねーだろうがな
わからねー池沼だから繰り返す訳で
0983デフォルトの名無しさん
垢版 |
2018/03/12(月) 08:18:41.78ID:H/PJUZeP
ネットは答えを教えてくれる魔法の箱じゃない。
礼儀も立場も弁えず、垂れながすのも自由なら答えない自由もある。

ttps://social.msdn.microsoft.com/Forums/en-US/e8ecf535-c80d-4e9a-90f5-720e92a3cc43/including-d3d9xh?forum=vcprerelease
0985デフォルトの名無しさん
垢版 |
2018/03/12(月) 15:22:57.63ID:eQiZqVT0
もう解りやす過ぎるわ連投でID一致しないように日付変えて書き込んで特定されないよう対策してるやつ
0986デフォルトの名無しさん
垢版 |
2018/03/12(月) 16:03:36.74ID:CSgz2Faf
スルー力は朝日新聞が最強
0987デフォルトの名無しさん
垢版 |
2018/03/12(月) 18:30:39.07ID:KdliYUuE
つ 芥川龍之介「蜘蛛の糸」
0988デフォルトの名無しさん
垢版 |
2018/03/15(木) 21:34:59.36ID:60xse1Pc
最近グラボの調子おかしい・・忘れたころにピーピッピッピのピーブ音でるわ
GPU処理でエラー吐かせたり負荷掛かる処理やらせたりで
速攻寿命がきたんだろうか・・1年半・・
0989デフォルトの名無しさん
垢版 |
2018/03/15(木) 22:03:49.89ID:nxwDUUw2
インクルード解決したわ、構成マネージャーのプラットフォームとディレクトリのプラットフォームでのインクルードディレクトリを設定してなかった
構成マネージャーがx86なのにディレクトリのプラットフォームがx86で設定してないんじゃあ通らねえわな
0990デフォルトの名無しさん
垢版 |
2018/03/16(金) 14:43:58.76ID:3ma6aQHv
DirectX初心者じゃなくてVisualStudio初心者だったでござるか
0991デフォルトの名無しさん
垢版 |
2018/03/16(金) 21:16:46.49ID:hqJkJwu5
ここの住人は何年単位でグラボ交換してる?やっぱ酷使してるから寿命も早い?
0992デフォルトの名無しさん
垢版 |
2018/03/17(土) 00:07:06.44ID:gUYW9kLS
direct3dのメジャーバージョンアップに合わせてかなあ
d3d12はスルーするんで買い換え予定は
今のところ無い
0993デフォルトの名無しさん
垢版 |
2018/03/19(月) 10:54:17.03ID:05NHTh2N
>>991
そも壊れない。なんかの動機がないと替えないかな
ただ最近、AMDのプロセッサと内蔵グラボが欲しいと感じている。単にVulkan使いたいだけなんだけど。
デスクトップはGT740(DDR5か4だったはず)
ノートがインテル内蔵GPU
スマホがスナドラ(2017年のやつ)
0996デフォルトの名無しさん
垢版 |
2018/03/20(火) 18:43:42.46ID:Lb8Qytx3
>>994
大ニュースだな。
ラスタライザあたりに固定機能で光線計算ぽいのを加えるような機能と説明されてるね。

リニア補完、重心補完に次ぐ新しい機能になるのかな。胸アツ
0998デフォルトの名無しさん
垢版 |
2018/03/21(水) 10:04:20.89ID:9aBHV4ji
次スレ
0999デフォルトの名無しさん
垢版 |
2018/03/21(水) 13:18:47.75ID:lT80+4ah
一党独裁ナチス中国
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 542日 6時間 31分 1秒
レス数が1000を超えています。これ以上書き込みはできません。

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