Поделиться через


Метод IDirect3DDevice9::P resent (d3d9.h)

Представляет содержимое следующего буфера в последовательности задних буферов, принадлежащих устройству.

Синтаксис

HRESULT Present(
  [in] const RECT    *pSourceRect,
  [in] const RECT    *pDestRect,
  [in] HWND          hDestWindowOverride,
  [in] const RGNDATA *pDirtyRegion
);

Параметры

[in] pSourceRect

Тип: const RECT*

Указатель на значение, которое должно иметь значение NULL , если только цепочка буферов не была создана с помощью D3DSWAPEFFECT_COPY. pSourceRect — это указатель на структуру RECT , содержащую исходный прямоугольник. Если значение РАВНО NULL, отображается вся исходная поверхность. Если прямоугольник превышает исходную поверхность, прямоугольник обрезается к исходной поверхности.

[in] pDestRect

Тип: const RECT*

Указатель на значение, которое должно иметь значение NULL , если только цепочка буферов не была создана с помощью D3DSWAPEFFECT_COPY. pDestRect — это указатель на структуру RECT , содержащую прямоугольник назначения в координатах клиента окна. Если значение РАВНО NULL, заполняется вся клиентская область. Если прямоугольник превышает целевую клиентную область, прямоугольник обрезается к целевой клиентской области.

[in] hDestWindowOverride

Тип: HWND

Указатель на целевое окно, клиентская область которого принимается в качестве целевого объекта для этой презентации. Если это значение равно NULL, среда выполнения использует элемент hDeviceWindowD3DPRESENT_PARAMETERS для презентации.

[in] pDirtyRegion

Тип: const RGNDATA*

Значение должно иметь значение NULL , если только цепочка буферов не была создана с D3DSWAPEFFECT_COPY. Дополнительные сведения о цепочках буферов см. в разделах Flipping Surfaces (Direct3D 9) и D3DSWAPEFFECT. Если это значение не равно NULL, автономная область выражается в координатах обратного буфера. Прямоугольники в области представляют собой минимальный набор пикселей, которые необходимо обновить. Этот метод учитывает эти прямоугольники при оптимизации представления путем копирования только пикселей в пределах области или некоторых подходящих расширенных наборов прямоугольников. Это помогает только для оптимизации, и приложение не должно полагаться на точно копируемый регион. Реализация может скопировать весь исходный прямоугольник.

Возвращаемое значение

Тип: HRESULT

Возможные возвращаемые значения: D3D_OK или D3DERR_DEVICEREMOVED (см. раздел D3DERR).

Комментарии

При необходимости применяется операция растяжения для передачи пикселей в исходном прямоугольнике в целевой прямоугольник в клиентской области целевого окна.

При вызове между парами BeginScene и EndScene произойдет сбой, возвращая D3DERR_INVALIDCALL, если целевой объект отрисовки не является текущим целевым объектом отрисовки (например, задним буфером, который вы получаете при создании дополнительной цепочки буферов). Это новое поведение для Direct3D 9.

Требования

   
Целевая платформа Windows
Header d3d9.h (включая D3D9.h)
Библиотека D3D9.lib

См. также раздел

IDirect3DDevice9

Потерянные устройства (Direct3D 9)

Multihead (Direct3D 9)

Сброс