Метод ID3DXEffect:: Сетраввалуе

Установка непрерывного диапазона констант шейдера с копированием в памяти.

Синтаксис

HRESULT SetRawValue(
  [in] D3DXHANDLE Handle,
  [in] void       *pData,
  [in] DWORD      OffsetInBytes,
  [in] DWORD      Bytes
);

Параметры

Обработчик [ окне]

Тип: D3DXHANDLE

Обрабатываемое значение или имя значения, переданного в виде строки. Передача маркера более эффективна. См. раздел Handles (Direct3D 9).

pData [ окне]

Тип: void *

Указатель на буфер, содержащий данные, которые необходимо задать. Сетраввалуе проверяет допустимость памяти, но не выполняет проверку допустимых данных.

Оффсетинбитес [ окне]

Тип: DWORD

Число байтов между началом данных действия и началом константы результата, которые вы собираетесь задать.

Байт [ окне]

Тип: DWORD

Размер устанавливаемого буфера в байтах.

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

Тип: HRESULT

Если метод выполнен успешно, возвращается значение S _ . В случае сбоя метода возвращаемое значение может быть одним из следующих: E _ инвалидкалл.

Remarks

Сетраввалуе — это очень быстрый способ установки констант эффектов, так как он выполняет копирование в памяти без выполнения проверки или преобразования данных (например, преобразование матрицы строкового типа в основную матрицу столбца). Используйте Сетраввалуе, чтобы задать ряд смежных констант эффектов. Например, можно задать массив из двадцати матриц с 20 вызовами в ID3DXBaseEffect:: сетматрикс или с помощью одного сетраввалуе.

Все значения должны быть либо matrix4x4s, либо float4s, а все матрицы должны быть в основном порядке столбцов. Значения int или float приводятся к типу float4; Поэтому настоятельно рекомендуется использовать Сетраввалуе только с данными float4 или matrix4x4.

Requirements (Требования)

Требование Значение
Заголовок
D3DX9Effect. h
Библиотека
D3dx9. lib

См. также

ID3DXEffect