ページ 1 / 1
DirectXでWindowに表示したい
Posted: 2007年3月15日(木) 22:45
by bez
只今、プログラミング講座を終えて、ABDX講座を勉強中です。
講座の内容がすべて全画面モードになるのですが、
何とか、ウィンドウの中に表示できないものでしょうか・・・。
私なりに調べてみまして、
コード: 全て選択
Function InitProc()
'DirectXを初期化
' If dx_Init(hMainWnd,ScreenX,ScreenY,FALSE)=0 Then
'の文章を
If dx_Init(hMainWnd,ScreenX,ScreenY,TRUE)=0 Then
'に変更
のようにしてみましたが、うまくいきませんでした。
誰か教えていただけませんでしょうか。
要は、
http://www.bcap.co.jp/bez/cube.html
のように表示したいのです。
よろしくお願いします。
Posted: 2007年3月15日(木) 23:47
by ゲスト
失礼しました
Posted: 2007年3月16日(金) 00:43
by bez
早い返信有り難うございます。
バグ報告まで見ておりませんでした。すみません。
とりあえず
> 少し前のバージョンのときにこの状態になりました。
> メインウィンドウが不可視に設定されているのが原因のようです。
> 可視に設定すると起動直後にウィンドウが表示されるようになりました。
を頼りに試行錯誤します。
Posted: 2007年3月16日(金) 04:07
by ゲスト
ぁ、バグ報告のスペースでしたか。
頭の中にどこかにあったなと思いつつ検索したのでバグ報告だと気づきませんでした。
普通はバグ報告まで見ませんよね。すいません
早い話、不可視のウィンドウを見えるようにすれば良いので
ShowWindow関数を使うと出来るようです
Posted: 2007年3月17日(土) 05:49
by ゲスト
dx_graphics.sbpの中身のD3DFMT_R5G6B5を
D3DFMT_UNKNOWNか、d3ddm.Formatにしてみるとか
試行1失敗
Posted: 2007年3月17日(土) 09:58
by bez
メインウィンドウの可視をチェックして実行すると
初期化に失敗しました
とエラーが出ました。
ゲストさんのアドバイスを試してみます。
成功報告
Posted: 2007年3月17日(土) 12:02
by bez
ゲストさん有り難うございました。
画面にHello worldが出ただけですが、すごいうれしいです。
報告します。
○RADツールで可視にチェック、画面を600x480に設定
300x480などにすると縮小画面が出た
○プロジェクト名.Sbp内のFALSEをTRUEに変更
コード: 全て選択
Function InitProc()
'DirectXを初期化
' If dx_Init(hMainWnd,ScreenX,ScreenY,FALSE)=0 Then
上記の文を下記に変更↓
If dx_Init(hMainWnd,ScreenX,ScreenY,TRUE)=0 Then
○dx_graphics.sbp内のD3DFMT_R5G6B5をD3DFMT_UNKNOWNに変更
d3ddm.Formatに変更しても成功
コード: 全て選択
Function dx_InitD3D(hWnd As HWND, ・・・) As Long
・
・
・
dx_d3dpp.BackBufferFormat = D3DFMT_R5G6B5 ' バックバッファのフォーマット
上記を下記に変更↓
dx_d3dpp.BackBufferFormat = D3DFMT_UNKNOWN ' バックバッファのフォーマット
以上です。ABDX講座に戻り、精進します。