Функция D3D10CreateStateBlock (d3d10effect.h)
Создайте блок состояний.
Синтаксис
HRESULT D3D10CreateStateBlock(
[in] ID3D10Device *pDevice,
[in] D3D10_STATE_BLOCK_MASK *pStateBlockMask,
[out] ID3D10StateBlock **ppStateBlock
);
Параметры
[in] pDevice
Тип: ID3D10Device*
Устройство, для которого будет создан блок состояний.
[in] pStateBlockMask
Тип: D3D10_STATE_BLOCK_MASK*
Указывает, какие части состояния устройства будут записаны при вызове ID3D10StateBlock::Capture и повторно применены при вызове ID3D10StateBlock::Apply. См. примечания.
[out] ppStateBlock
Тип: ID3D10StateBlock**
Адрес указателя на созданный буфер (см. интерфейс ID3D10StateBlock).
Возвращаемое значение
Тип: HRESULT
Этот метод возвращает один из следующих кодов возврата Direct3D 10.
Комментарии
Блок состояний — это коллекция состояний устройства и используется для сохранения и восстановления состояния устройства. Используйте маску блока состояния, чтобы включить подмножества состояний для сохранения и восстановления.
Структуру D3D10_STATE_BLOCK_MASK можно заполнить вручную или с помощью любого api-интерфейса D3D10StateBlockMaskXXX. Маску блока состояния также можно получить, вызвав ID3D10EffectTechnique::ComputeStateBlockMask или ID3D10EffectPass::ComputeStateBlockMask.
Различия между Direct3D 9 и Direct3D 10: В Direct3D 10 объект блока состояния не содержит никаких допустимых сведений о состоянии устройства до вызова ID3D10StateBlock::Capture . В Direct3D 9 состояние сохраняется в объекте блока состояний при его создании. |
Требования
Целевая платформа | Windows |
Header | d3d10effect.h |
Библиотека | D3D10.lib |
DLL | D3D10.dll |