1. 程式人生 > >fullscreen mode and windowed mode

fullscreen mode and windowed mode

在這裡插入圖片描述

本文彙總介紹關於exclusive fullscreen(真全屏)和windowed mode(視窗模式包括無邊框)方面的資訊。
在這裡插入圖片描述
直接上圖,這裡對比下大的不同,真全屏的話相對來說兩個巨大優勢:

  • 直接把backbuffer顯示到桌面,已經是最少的copy了
  • 這個也帶了一些額外的設定要求:device建立中的size,format,refreshrate都是需要是從adapter中enumerate出來的一種
  • 視訊記憶體獨佔,這個對於視訊記憶體量比較小的遊戲來說特別的重要,實際遊戲執行中,會出現driver在排程視訊記憶體的情況,這種往往以paging的方式出現一個卡頓,也是高幀數遊戲中非常頭疼的情況
  • 劣勢:切出fullscreen時候有一定的切換時間,這讓頻繁切屏的玩家會很難受,這種情況下無邊框的視窗模式更好一些,但這點在新版的win10 update裡面已經進一步提升,到了很低的限度了。
    所以在cpu和gpu方面都有很大優勢。

在windowed mode下,在win10 的dxgi中已經有了不少的優化,甚至在一些情況下滿足可以做到使用direct flip達到和exclusive fullscreen一樣的效率(這也是中間一度取消exclusive fullscreen)

一些細節

  • 遊戲視窗在exclusive fullscreen下會自動的變成topmost的,無論是否設定

reference:
https://blogs.msdn.microsoft.com/directx/2018/04/09/dxgi-flip-model/
https://docs.microsoft.com/en-us/windows/desktop/direct3darticles/direct3d-9ex-improvements