tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルDirect3Dにてフルスクリーンにしようとするとエラー
記事No6123
投稿日: 2007/08/22(Wed) 18:09
投稿者Bali
初めまして、よろしくお願いいたします。
Direct3Dを始めたばかりです。
VB2005にてフルスクリーンモードでデバイスを作成しようとしていますが、
レンダリングデバイス作成時にアプリケーションでエラーが発生しましたというメッセージが出ます。
コードは以下のとおりです。

Dim pp As PresentParameters
pp = New PresentParameters

Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
Me.WindowState = FormWindowState.Maximized
pp.Windowed = False
pp.BackBufferWidth = Me.Width
pp.BackBufferHeight = Me.Height
pp.BackBufferFormat = Format.Unknown
pp.AutoDepthStencilFormat = DepthFormat.D16
pp.EnableAutoDepthStencil = True
pp.SwapEffect = SwapEffect.Discard

'レンダリングデバイスの作成
mDev = New Device(0, DeviceType.Hardware, Me, CreateFlags.SoftwareVertexProcessing, pp)

何かパラメータの設定がたりないのでしょうか?
環境はWindowsXP,DirectX9です。
以上よろしくお願いいたします。

[ツリー表示へ]
タイトルRe: Direct3Dにてフルスクリーンにしようとするとエラー
記事No6129
投稿日: 2007/08/23(Thu) 09:58
投稿者y4yama
DirectXは読んだだけの知識ですが・・・外してたら、すみません
> Direct3Dを始めたばかりです。
> VB2005にてフルスクリーンモードでデバイスを作成しようとしていますが、
フルスクリーンでなく、現在のForm1の大きさでは、できますか?

> 'レンダリングデバイスの作成
> ... ,Me, CreateFlags.SoftwareVertexProcessing, pp)
Meではハンドルにならないのでは・・・?

http://sorceryforce.com/manageddirectx/direct3d.html
にVBのコードもあります。とても参考によろしいかと思います。

[ツリー表示へ]
タイトルRe^2: Direct3Dにてフルスクリーンにしようとするとエラー
記事No6135
投稿日: 2007/08/23(Thu) 15:01
投稿者Bali
> フルスクリーンでなく、現在のForm1の大きさでは、できますか?
はいできます。

> > 'レンダリングデバイスの作成
> > ... ,Me, CreateFlags.SoftwareVertexProcessing, pp)
> Meではハンドルにならないのでは・・・?

実際にはForm全体をクラス形式にして呼び出しているので、これで大丈夫です。
わかりにくくてすみませんでした。

> http://sorceryforce.com/manageddirectx/direct3d.html
> にVBのコードもあります。とても参考によろしいかと思います。

どうもありがとうございました。おかげさまで解決できました。

[ツリー表示へ]