【C++】 DirectX初心者質問スレ Part21 【C】at TECH
【C++】 DirectX初心者質問スレ Part21 【C】 - 暇つぶし2ch577:デフォルトの名無しさん
09/02/15 10:09:05
>>565
お前様はfbxいじった事はあるの?
てか、もし師範様なら、割られた三角で取得する方法教えて下さい・・・

578:デフォルトの名無しさん
09/02/15 10:17:41
>>577
FBXなら普通にメッシュのクラスにTriangle化するメソッドあるだろ・・・

579:デフォルトの名無しさん
09/02/15 13:28:20
DirectX9でMFCのViewに表示させる場合、CreateDeviceのhWndはViewのm_hWndじゃだめなんでしょうか?
コンパイルできるんですが、そのあとの描画でデバイスのClearで止まるんです

580:デフォルトの名無しさん
09/02/15 13:42:39
ClearでとまるならZバッファないのにZクリアーしてるとか
ステンシルないのにステンシルクリアーしてるとかだろ。

581:デフォルトの名無しさん
09/02/15 14:21:13
HRESULTいくつよ?

582:デフォルトの名無しさん
09/02/15 14:34:22
戻り値までいきません。ハンドルされていない例外でストップするんです。

class CView : public CView{
CXView::CXView()
{
  pDirectX9 = new CDirectX9();
  pDirectX9->InitD3D(this->m_hWnd);
}
void CView::OnDraw(CDC* /*pDC*/)
{
  CXDoc* pDoc = GetDocument();
  ASSERT_VALID(pDoc);
  if (!pDoc)
   return;

  g_pD3DDev->Clear( 0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0,0,0), 1.0f, 0 );
}
}


583:デフォルトの名無しさん
09/02/15 14:40:07
if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &g_pD3DDev ) ) ) {
return E_FAIL;
}

これが失敗してます。
CViewのハンドルはm_hWndで問題ないですか?

584:デフォルトの名無しさん
09/02/15 14:49:14
これってソースそのままコピペ?
class CView : public CViewでいいのか?

585:デフォルトの名無しさん
09/02/15 14:50:52
class CXView : public CViewでしたすいません

586:デフォルトの名無しさん
09/02/15 14:57:30
g_pD3DDevがNULLってこたぁないよな

587:デフォルトの名無しさん
09/02/15 14:58:31
デバイスの生成でミスってんならそこでちゃんとエラーだせよ・・・。
パラメーターがどっかしらおかしいんか、ウィンドウハンドルがNULLじゃなきゃ失敗しねえ。

588:デフォルトの名無しさん
09/02/15 15:06:44
CreateDeviceの戻り値は-2005530516です。
最新版のSDKでdxerr9.libからMAX_ERROR_TEXT_LENってなくなってないですよね?
これdefinいくつかわかりませんか?エラー関数コンパイルできなくなってエラーコード調べられなくなりました

589:デフォルトの名無しさん
09/02/15 15:14:44
失敗してんじゃん
d3dppがおかしんじゃね

590:デフォルトの名無しさん
09/02/15 15:26:01
D3DERR_INVALIDCALLでしょ。
d3dppの内容は?

591:デフォルトの名無しさん
09/02/15 15:28:35
thx
これです

D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = d3ddm.Format;

592:デフォルトの名無しさん
09/02/15 15:29:57
とりあえず
CViewのコンストラクタ内ではまだm_hWndはNULLであることをお伝えしておく

593:デフォルトの名無しさん
09/02/15 15:32:31
そこ手打ちみたいで怪しいから無視してたわ・・・

594:デフォルトの名無しさん
09/02/15 15:34:02
つーかDirectXをまずデバッグモードにしろや。
それでコンソールにエラー内容全部表示されるようになるだろ。

595:デフォルトの名無しさん
09/02/15 15:38:20
うおーできた!!!
ありがとう。
まじありがとう!!!

596:デフォルトの名無しさん
09/02/15 16:04:27
>>595
解決したらどんなエラーだったかを示すのがスジ。

597:デフォルトの名無しさん
09/02/15 16:07:55
まあOnCreateあたりでCreateDeviceしたんだろうけど。

598:デフォルトの名無しさん
09/02/15 16:25:44
CViewのコンストラクタ内でハンドルを渡したら中身がNULLだったので
InitUpdateの中でやったら解決しました。

599:デフォルトの名無しさん
09/02/15 20:08:59
DXTRACE_ERR()をやたら使ってるソースがあるんですが、これって意味あるんでしょうか?
なんにも有効そうなログとかだしてくれないんですが、、、

600:デフォルトの名無しさん
09/02/15 21:06:28
それこそ使い方による

601:デフォルトの名無しさん
09/02/15 22:25:28
Xファイルのアニメーションを切り替えるサンプルコードどっかにない?
SDKのは長すぎて解読不能だたよ

602:デフォルトの名無しさん
09/02/15 22:26:55
まるぺけ

603:デフォルトの名無しさん
09/02/15 22:51:23
まるぺけは自作関数使ってるじゃん
わかりづらいよ

604:デフォルトの名無しさん
09/02/15 22:58:31
まるぺけって結構有名なんだな。
参考にしたのオレだけかと思ってたよ。


605:デフォルトの名無しさん
09/02/15 23:08:31
分かりやすいサンプル=SDK付属のサンプルだと思うんだ

606:デフォルトの名無しさん
09/02/15 23:42:46
それはお前だけ(笑)

607:デフォルトの名無しさん
09/02/15 23:46:29
Xファイルの読み込みってめたくそむずかしくないですか?
VBだと読み込みと描画で2行でかけるのに・・・やばくないですか?Cとかいって
自分が見てる解説サイトがわかりずらいだけなのかな

608:デフォルトの名無しさん
09/02/15 23:58:08
VS2008なんですが、プロジェクト新規作成にDirectXウィザードが無いんですが
どうすればいいと思いますか?

609:デフォルトの名無しさん
09/02/16 00:23:16
あきらめればいいと思います

610:デフォルトの名無しさん
09/02/16 02:40:41
エンプティープロジェクト
シンプルサンプル

611:デフォルトの名無しさん
09/02/16 05:27:05
D3DCAPS9の中身を埋めてくれる関数は何ですか?

612:デフォルトの名無しさん
09/02/16 05:34:21
GetDeviceCapsがありました

613:デフォルトの名無しさん
09/02/16 15:40:06
質問です
レンダリングターゲットとして生成したテクスチャーは、マルチサンプリングが無効になってしまうようなのですが
これは「2倍の大きさで描画して、表示する際に50%縮小すればアンチエイリアシングかかるじゃん」というやり方をしろということなのでしょうか?

それとも何かしら設定があるんでしょうか?

614:デフォルトの名無しさん
09/02/16 18:14:42
質問です

1.レンダリングターゲットのサーフェイスを変えて描画
2.深度バッファはそのままでレンダリングターゲットを元に戻しす
3.深度値の書き込みOFFで画面サイズのスプライトにさっき描画した内容をテクスチャとして描画
4.深度値の書き込みONにして適当にオブジェクトを描画

このときに、サーフェイスのサイズが正方形だとうまくいくんですが
640x480とか、横に長かったりするとスプライトに描画したときにピクセルが微妙にずれてしまいます。
たぶんサンプリングの問題だと思うんですが、
最後のオブジェクトを描画するときに最初の深度バッファをそのまま使いたいので
ずれてしまうと、何もないのに隠れてたり、その逆が起きたりしてしまいます。
ピクセルがずれるのは1ピクセル程度ですが。
どうすればいいのでしょうか?

615:デフォルトの名無しさん
09/02/16 18:44:13
DirectXにスプライトなど無い。

616:デフォルトの名無しさん
09/02/16 23:18:06
DirectSoundを使って音楽を再生しようとしているのですが
wav形式は再生できたのにmid形式をデバッグなしで再生しようとすると失敗します。
(デバッグありなら再生可能で、デバッグしてなくてもたまに鳴り出す)
これはいったい何が原因なんでしょうか。

617:デフォルトの名無しさん
09/02/16 23:21:46
デバッグありだと再生できる方が超常現象だろう

618:616
09/02/16 23:53:52
訂正
DirectSoundじゃなくてDirectMusicでした。

619:デフォルトの名無しさん
09/02/17 01:47:47
初期化で
hr = D3DXCreateTextureFromFile( m_pD3DDev, _T("earth.bmp"), &m_pTexture );
の後、
m_pD3DDev->SetTexture(0, m_pTexture);
を描画start,endの間に追加したんですが
四角形の色が変わるだけで絵が表示されません、どこが原因なんでしょうか

620:デフォルトの名無しさん
09/02/17 02:16:28
uvがちゃんと設定されてないんじゃ?

621:デフォルトの名無しさん
09/02/17 02:45:58
どこかおかしいところありますか?

typedef struct {
  float x, y, z, rhw; //スクリーン座標での位置
  DWORD color; //頂点色
  float tu, tv;
} CUSTOMVERTEX;

CUSTOMVERTEX vertices[] = {
  // x y z rhw color (赤 緑 青 α)
  {50.0f, 50.0f, 0.5f, 1.0f, D3DCOLOR_RGBA(0xff, 0xff, 0xff, 0xff), 0, 0},
 {250.0f, 50.0f, 0.5f, 1.0f, D3DCOLOR_RGBA(0x00, 0x00, 0x00, 0xff), 1, 0},
  {50.0f, 250.0f, 0.5f, 1.0f, D3DCOLOR_RGBA(0xff, 0xff, 0xff, 0xff), 0, 1},
  {250.0f, 250.0f, 0.5f, 1.0f, D3DCOLOR_RGBA(0x00, 0x00, 0x00, 0xff), 1, 1}
};

622:デフォルトの名無しさん
09/02/17 03:30:26
SetFVF で D3DFVF_TEX1 入れ忘れてるんだろう

623:デフォルトの名無しさん
09/02/17 03:41:27
m_pD3DDev->SetFVF(D3DFVF_CUSTOMVERTEX);

これですか?
コメントアウトしてもだめでした

624:デフォルトの名無しさん
09/02/17 03:43:29
D3DFVF_XYZ
だけにしたんですがそれでもだめでした

625:デフォルトの名無しさん
09/02/17 03:47:59
わかりました
D3DFVF_XYZ

D3DFVF_XYZRHW
にしたら表示されました
ありがとうです!


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch