Метод IDirect3DDevice9::SetTexture (d3d9helper.h)
Назначает текстуру сцене для устройства.
Синтаксис
HRESULT SetTexture(
[in] DWORD Stage,
[in] IDirect3DBaseTexture9 *pTexture
);
Параметры
[in] Stage
Тип: DWORD
Отсчитываемый от нуля номер выборки. Текстуры привязаны к выборкам; Методы выборки определяют состояние выборки, например режим фильтрации и режим упаковки адресов. На текстуры ссылаются программируемые и фиксированные конвейеры функций по-разному:
- Программируемые шейдеры ссылались на текстуры с помощью номера выборки. Количество выборок, доступных программируемому шейдеру, зависит от версии шейдера. Сведения о вершинных шейдерах см. в разделе Sampler (Direct3D 9 asm-vs). Сведения о шейдерах пикселей см. в разделе Sampler (Direct3D 9 asm-ps).
- Конвейер фиксированной функции, с другой стороны, ссылается на текстуры по номеру стадии текстуры. Максимальное количество выборок определяется из двух значений: MaxSimultaneousTextures и MaxTextureBlendStages структуры D3DCAPS9 .
- Для сопоставления смещения (Direct3D 9) используется специальный номер с именем D3DDMAPSAMPLER.
- Программируемый шейдер вершин использует специальное число, определенное D3DVERTEXTEXTURESAMPLER при доступе к текстурам вершин в vs_3_0 (DirectX HLSL).
[in] pTexture
Тип: IDirect3DBaseTexture9*
Указатель на интерфейс IDirect3DBaseTexture9 , представляющий заданную текстуру.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается сбоем, возвращаемое значение можно D3DERR_INVALIDCALL.
Комментарии
SetTexture не допускается, если текстура создается с типом пула D3DPOOL_SCRATCH. SetTexture не допускается с типом пула D3DPOOL_SYSTEMMEM текстуры, если devCaps не задано с D3DDEVCAPS_TEXTURESYSTEMMEMORY.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d9helper.h (включая D3D9.h) |
Библиотека | D3D9.lib |