共用方式為


DisplayDevice.CreateSimpleScanoutWithDirtyRectsAndOptions 方法

定義

建立 DisplayScanout 物件,提供將框架呈現至 DisplaySource所需的參數不可變封裝。

public:
 virtual DisplayScanout ^ CreateSimpleScanoutWithDirtyRectsAndOptions(DisplaySource ^ source, DisplaySurface ^ surface, unsigned int subresourceIndex, unsigned int syncInterval, IIterable<RectInt32> ^ dirtyRects, DisplayScanoutOptions options) = CreateSimpleScanoutWithDirtyRectsAndOptions;
DisplayScanout CreateSimpleScanoutWithDirtyRectsAndOptions(DisplaySource const& source, DisplaySurface const& surface, uint32_t const& subresourceIndex, uint32_t const& syncInterval, IIterable<RectInt32> const& dirtyRects, DisplayScanoutOptions const& options);
public DisplayScanout CreateSimpleScanoutWithDirtyRectsAndOptions(DisplaySource source, DisplaySurface surface, uint subresourceIndex, uint syncInterval, IEnumerable<RectInt32> dirtyRects, DisplayScanoutOptions options);
function createSimpleScanoutWithDirtyRectsAndOptions(source, surface, subresourceIndex, syncInterval, dirtyRects, options)
Public Function CreateSimpleScanoutWithDirtyRectsAndOptions (source As DisplaySource, surface As DisplaySurface, subresourceIndex As UInteger, syncInterval As UInteger, dirtyRects As IEnumerable(Of RectInt32), options As DisplayScanoutOptions) As DisplayScanout

參數

source
DisplaySource

要呈現內容的 DisplaySource

surface
DisplaySurface

主要介面。

subresourceIndex
UInt32

unsigned int

uint32_t

與 Direct3D 的 子資源概念相關。 使用此索引,您可以在有多個子資源的情況下,指定 DisplaySurface 內應該用於掃描輸出的子資源。

擁有多個子資源的DisplaySurface唯一方法是使用isStereo旗標建立DisplaySurface (請參閱CreateWithProperties) ,或在IDisplayDeviceInterop中使用 API 開啟ID3D11Texture2D

subresourceindex最常見的值為 0,這表示不需要或可用的子資源。

syncInterval
UInt32

unsigned int

uint32_t

整數,指定如何將框架的呈現與顯示器的垂直空白同步處理。

SyncInterval == 0。 簡報會在顯示器的下一個垂直空白上發生。 如果佇列中有其他存在值 = 0,則會捨棄這些存在。 SyncInterval == 0,具有 DisplayScanoutOptions::AllowTearing。 簡報會立即發生;與上一個畫面沒有同步處理。 這可能會導致可見的卸載。 SyncInterval == 1 到 4。 同步處理顯示至少 n 個垂直空白的簡報。

dirtyRects

IIterable<RectInt32>

IEnumerable<RectInt32>

提供圖形驅動程式提示的已變更矩形,指出主要區域正在變更。 這可由驅動程式用來減少基礎顯示器傳輸上的頻寬量,因此您必須傳遞包含框架中所有已變更圖元的有效矩形。

這是優化,如果您的 DirectDisplay 用戶端未追蹤已變更的矩形,則您可以針對dirtyRects傳遞 null ,而作業系統會將它視為完整框架的已變更 (,這表示主要緩衝區中的所有圖元都會修改) 。 如果您傳遞 dirtyRects 的空白清單,這表示主要緩衝區中沒有任何圖元已變更,而且圖形驅動程式可能會選擇優化此主要緩衝區的掃描。

options
DisplayScanoutOptions

旗標,可指定所建立 DisplayScanout 的各種選項。 DisplayScanoutOptions.AllowTearing 只有在 syncInterval 為 0 時才有效。

傳回

DisplayScanout值。

Windows 需求

裝置系列
Windows 11 (已於 10.0.22000.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v14.0 引進)

適用於