[過去ログ] 【C++】 DirectX初心者質問スレ Part41 【C】 (773レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
714(2): 2021/08/18(水)20:44 ID:GF8BtmLZ(1) AAS
dx12での2Dオーバーレイについて訊きたい
公式見るとD3D11On12使うみたいだけどうまくいかない
2Dが描画された直後に一瞬アニメーションが止まるし、
2D描画後に生成した3Dオブジェクトが描画されない(オブジェクト分のメモリはちゃんと増えてる)
うまくいってる人どうやってるか教えてくれD3D11On12じゃなくてもいいから
715: 2021/08/19(木)12:16 ID:lX6r/LFm(1) AAS
>>714
自分で努力しろ
716(1): 2021/08/19(木)19:30 ID:527sxbC6(1) AAS
glVertex3dとglTexCoord3dって毎回一対一で使わないとだめ?
多対多みたいに
glTexCoord3d
glTexCoord3d
glTexCoord3d
してから
glVertex3d
glVertex3d
glVertex3d
ってやっても大丈夫?
あとglTexCoord3d省略したときのUVって何が設定されるの?ランダム?最後の値を維持?
717: 2021/08/21(土)12:20 ID:cbwGOGI9(1) AAS
>>716
教えない
718: 2021/08/22(日)13:59 ID:cx6/dnxW(1) AAS
救えない
719: 2021/08/22(日)15:03 ID:Ow7pdQPF(1) AAS
笑えない
720(1): 2021/08/26(木)02:20 ID:cMr20xDq(1) AAS
>>714
D3D11On12 は使わないかな
2D を 3D の後ろに描画する際
2D 描画後に Zバッファクリアしてる?
2D 描画するなら板ポリ作って正射影行列でワールド行列作るのが
一般的だと思うよ
721(1): 2021/08/26(木)18:20 ID:2PbEFFnf(1) AAS
>>720
あ、やっぱり使わないんだ
いろいろ試したけど挙動的にZバッファは関係なさそう
まあ俺が正しく使えてないだけだろう
どっちにしても素直に板ポリ使うわありがとう
722(1): 2021/08/27(金)00:14 ID:uSGaxFc0(1) AAS
>>721
お礼はいらないよ
723(1): 2021/08/27(金)18:06 ID:gmwg56Qq(1) AAS
礼より札束を
724(1): 2021/08/28(土)18:36 ID:AGFWPDrr(1) AAS
お札はいるよ
725: 2021/08/28(土)20:39 ID:eZEiHpg+(1) AAS
>>722
>>724
どっちだよw
726(1): 2021/08/29(日)01:52 ID:TPHdi4yb(1) AAS
>>723
同じネタ思い付いたがあまりにも馬鹿っぽいのとスレ消費無駄なのでやめておいた
727(1): 2021/08/29(日)08:09 ID:z+CvjRY2(1) AAS
>>726
あ、やっぱり使わないんだ
いろいろ試したけど挙動的にZバッファは関係なさそう
まあ俺が正しく使えてないだけだろう
どっちにしても素直にポリ袋使うわありがとう
728(1): 2021/08/29(日)13:14 ID:z1k369XY(1) AAS
>>727
お礼はいらないよ
729: 2021/08/29(日)14:13 ID:k+02Ofrq(1) AAS
礼よか札束ぞ
730(1): 2021/08/30(月)06:40 ID:Mv4wvbyh(1) AAS
お札はいるよ
731: 2021/08/30(月)17:51 ID:RiczHxxv(1) AAS
>>728
>>730
どっちやねんw
732: 2021/09/13(月)19:48 ID:LTFifztG(1) AAS
馬鹿が書評描くと評価下がる例
外部リンク:www.あまzon.co.jp/dp/4863543549
733: 2021/09/18(土)08:36 ID:bA/qQPAi(1) AAS
動画リンク[YouTube]
734: 2021/10/01(金)00:50 ID:H+nLrgEB(1) AAS
ゲームインストールするときに、 directXって毎回入れたほうがいいの?
735(1): 2021/10/12(火)11:47 ID:JETpbgo0(1/3) AAS
Zバッファをテクスチャにしたいんだけど簡単な方法ないでしょうか?
736: 735 2021/10/12(火)13:31 ID:JETpbgo0(2/3) AAS
IDirect3DDevice9::GetRenderTargetDataを使って
別のテクスチャの領域にコピーとかできるんですかね?
帰ったらやってみます。
737: 2021/10/12(火)15:15 ID:JETpbgo0(3/3) AAS
D3DFMT_D24S8で深度バッファ作成して
SetTextureで設定してレンダリングしても
シェーダーからZ値が取れないの?
738(1): 2021/10/13(水)18:22 ID:Jar6uE+V(1) AAS
取れないよ
739: 2021/10/13(水)20:17 ID:FoQ7p5uh(1/2) AAS
>>738
ここのサンプルみながら一旦テクスチャ用に確保した領域にZ値を書き込んでからやる事にしました。
外部リンク[html]:marupeke296.com
ただ色々やってるんですけどイマイチ上手く行きません…
今のプログラムはもっと単純なので、サンプルのワールドビュー射影行列は削除して行っています。
どうもピクセルシェーダーでZ値が取れてない感じがします。
このシェーダーの全体の処理を削除し、単にバッファのコピーをすると
別のシェーダーからはRGB値は取れるので、別のシェーダーの記述は正しい気がします。
740: 2021/10/13(水)20:35 ID:FoQ7p5uh(2/2) AAS
こんな形で処理してます。シェーダー部分を丸ごと削除すると別のシェーダーからはRGB値は取得出来るので別のシェーダーは正しく動いてる気がします。
//コード本体部分
lpD3DDev->SetRenderTarget(0, lpRenderSurface);
lpD3DDev->SetDepthStencilSurface(lpZBufferSurface); //レンダリングバッファとZバッファには既に色々と書き込まれている
lpD3DDev->SetTexture(0, lpRenderBuffer1);
UINT nPasses; //四角い板にテクスチャ設定してZ値を取得する用のサーフェスに描画
lpEffect->Begin(&nPasses, 0);
lpEffect->BeginPass(0);
lpD3DDev->SetFVF(D3DFVF_TLVERTEX);
lpD3DDev->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, 2, tlvtex, sizeof(D3DTLVERTEX));
lpEffect->EndPass();
lpEffect->End();
//シェーダー部分
struct VS_OUTPUT{
float4 Pos : POSITION; // 射影変換座標
float4 ShadowMapTex : TEXCOORD0; // Zバッファテクスチャ
};
VS_OUTPUT VS( float4 Pos : POSITION, float4 ShadowMapTex : TEXCOORD0 ){
VS_OUTPUT Out;
Out.Pos = Pos;
Out.ShadowMapTex = ShadowMapTex;
return Out;
}
float4 ZBufferPlot_PS( float4 ShadowMapTex : TEXCOORD0 ) : COLOR{
return ShadowMapTex.z / ShadowMapTex.w; // Z値算出
}
technique ZValuePlotTec{
pass P0{
VertexShader = compile vs_1_1 VS();
PixelShader = compile ps_2_0 ZBufferPlot_PS();
}
}
741: 2021/10/14(木)07:29 ID:sdRsWYAw(1) AAS
これもしかして、まとめて取得出来るのではなくて
オブジェクトごとに、一つ一つ別に保存してないとダメなんでしょうか。
742(1): 2021/10/14(木)23:40 ID:zUpXI/dI(1) AAS
Shadowmapのサンプルが深度バッファをテクスチャにしてるだろうからそれを参考にしたら?
743(1): 2021/10/15(金)08:01 ID:s5eU50Mv(1/3) AAS
>>742
ありがとう。
よく見てくとやっぱり別に用意した書き込み用の
Z値を保持するバッファに一つ一つ書き込んでそれを使ってるみたい。
とりあえずその方法でやったら上手く行きました。
上下前次1-新書関写板覧索設栞歴
あと 30 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.010s