2013-06-20 18 views
0
  1. 我的遊戲是在窗口模式下,它允許用戶幾乎自由調整遊戲 窗口,這意味着寬度/高度, 和窗口的尺寸的比率可以是任意的(雖然窗口具有 最大和最小限制)如何檢測是否可以在窗口模式下爲特定寬度/高度創建d3d設備?

  2. 爲了使渲染結果可以很好地顯示,一個同樣大小的D3D 設備將是首選創建(因此回緩衝區像素可 與屏幕像素相匹配,我們可以得到一個比例正確並且 清晰圖像)

  3. 儘管我可以獲得Caps和支持的枚舉分辨率 列表,但我不確定是否可以通過d3d 系統接受窗口分辨率。 (例如,我們在帽1024×768/800×600,但我們需要 創建1000x700回緩衝區)

我的問題是,我怎麼能知道,如果某一分辨率可以創建並有什麼實際的方法來處理這個問題。

非常感謝!

回答

0

在窗口模式下,您可以創建任何分辨率交換鏈(受某些最大尺寸限制的限制,該限制將大於任何支持的屏幕分辨率)。只有在全屏模式下,您被限制爲創建枚舉分辨率列表上的大小交換鏈。

+0

「(受某些最大尺寸約束的影響,該約束將大於任何支持的屏幕分辨率)」。 你的意思是我應該保持寬度小於最大寬度,並且高度小於最大高度,即使是最大的寬度和高度都不是一對(1024x768,1000x800,所以我得到1024x800?)?有點奇怪。 我檢查了DXUT和其他代碼片段,似乎人們只是相信該設備可以始終「重置」,不會發生錯誤。這是一個Direct3D驅動程序/卡製造商的規格我想知道嗎? – karlzhang

+0

在窗口模式下,您應該能夠創建至少與當前屏幕分辨率一樣大的交換鏈。在全屏模式下,只需創建一個與您選擇的顯示分辨率相同的分辨率的交換鏈。如果你改變屏幕模式,你可以調整你的交換鏈。 – mattnewport

相關問題