Метод ID3DXEffect::Begin
Запускает активный метод.
Синтаксис
HRESULT Begin(
[out] UINT *pPasses,
[in] DWORD Flags
);
Параметры
-
p Pass [out]
-
Тип: UINT*
Указатель на возвращаемое значение, указывающее количество проходов, необходимых для отрисовки текущего метода.
-
Флаги [in]
-
Тип: DWORD
DWORD, определяющий, сохраняется и восстанавливается ли состояние, измененное эффектом. Значение по умолчанию 0 указывает, что ID3DXEffect::Begin и ID3DXEffect::End будут сохранять и восстанавливать все состояния, измененные эффектом (включая константы пикселя и вершинного шейдера). Допустимые флаги можно просмотреть в разделе Флаги сохранения и восстановления состояния эффекта.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. В случае сбоя метода возвращается одно из следующих значений: D3DERR_INVALIDCALL D3DXERR_INVALIDDATA.
Комментарии
Приложение задает один активный метод в системе эффектов, вызывая ID3DXEffect::Begin. Система эффектов реагирует, захватывая все состояния конвейера, которые могут быть изменены методом в блоке состояний. Приложение сигнализирует о завершении метода, вызывая ID3DXEffect::End, который использует блок состояний для восстановления исходного состояния. Таким образом, система эффектов заботится о сохранении состояния, когда техника становится активной, и о восстановлении состояния после завершения метода. Если вы решили отключить эту функцию сохранения и восстановления, см. раздел D3DXFX_DONOTSAVESAMPLERSTATE.
В паре ID3DXEffect::Begin и ID3DXEffect::End приложение использует ID3DXEffect::BeginPass для задания активного прохода, ID3DXEffect::CommitChanges , если какие-либо изменения состояния произошли после активации прохода, и ID3DXEffect::EndPass для завершения активного прохода.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел