Метод IDirect3DDevice9::CreateRenderTarget (d3d9.h)
Создает поверхность цели отрисовки.
Синтаксис
HRESULT CreateRenderTarget(
[in] UINT Width,
[in] UINT Height,
[in] D3DFORMAT Format,
[in] D3DMULTISAMPLE_TYPE MultiSample,
[in] DWORD MultisampleQuality,
[in] BOOL Lockable,
[out, retval] IDirect3DSurface9 **ppSurface,
[in] HANDLE *pSharedHandle
);
Параметры
[in] Width
Тип: UINT
Ширина целевой поверхности отрисовки в пикселях.
[in] Height
Тип: UINT
Высота поверхности цели отрисовки в пикселях.
[in] Format
Тип: D3DFORMAT
Член перечисленного типа D3DFORMAT , описывающий формат целевого объекта отрисовки.
[in] MultiSample
Тип: D3DMULTISAMPLE_TYPE
Член перечисленного типа D3DMULTISAMPLE_TYPE , который описывает тип буфера с несколькими выборками. Этот параметр задает тип сглаживания для этого целевого объекта отрисовки. Когда эта поверхность передается в IDirect3DDevice9::SetRenderTarget, ее тип multisample должен совпадать с типом трафарета глубины, заданного IDirect3Ddevice9::SetDepthStencilSurface.
[in] MultisampleQuality
Тип: DWORD
Уровень качества. Допустимый диапазон от нуля до одного меньше уровня, возвращаемого pQualityLevels, используемого IDirect3D9::CheckDeviceMultiSampleType. Передача большего значения возвращает ошибку, D3DERR_INVALIDCALL. Значения MultisampleQuality для парных целевых объектов отрисовки, поверхностей трафарета глубины и типа multisample должны совпадать.
[in] Lockable
Тип: BOOL
Целевые объекты отрисовки не блокируются, если приложение не указывает значение TRUE для параметра Lockable.
Обратите внимание, что блокируемые целевые объекты отрисовки снижают производительность на некоторых графических устройствах. Производительность обратного чтения (перемещение данных из видеопамяти в системную) зависит от типа используемого оборудования (AGP и PCI Express) и обычно гораздо ниже, чем производительность передачи (перемещение данных из системы в видеопамяти). Если вам нужен доступ на чтение для целевых объектов отрисовки, используйте GetRenderTargetData вместо блокируемых целевых объектов отрисовки.
[out, retval] ppSurface
Тип: IDirect3DSurface9**
Адрес указателя на интерфейс IDirect3DSurface9 .
[in] pSharedHandle
Тип: HANDLE*
Зарезервировано. Задайте для этого параметра значение NULL. Этот параметр можно использовать в Direct3D 9 для Windows Vista для совместного использования ресурсов.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. В случае сбоя метода возвращается одно из следующих значений: D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.
Комментарии
Целевые поверхности отрисовки помещаются в класс памяти D3DPOOL_DEFAULT.
Создание блокируемых многопримерных целевых объектов отрисовки не поддерживается.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d9.h (включая D3D9.h) |
Библиотека | D3D9.lib |