Создание вершинного шейдера
17.3.2. Создание вершинного шейдера
После того, как мы скомпилировали код шейдера, необходимо получить указатель на представляющий вершинный шейдер интерфейс IDirect3DVertexShader9 с помощью следующего метода:
HRESULT IDirect3DDevice9::CreateVertexShader( const DWORD *pFunction, IDirect3DVertexShader9** ppShader );
pFunction — Указатель на скомпилированный код шейдера.
ppShader — Возвращает указатель на интерфейс IDirect3DVertexShader9.
Предположим, переменная shader — это указатель на интерфейс ID3DXBuffer, содержащий скомпилированный код шейдера. Тогда для получения указателя на интерфейс IDirect3DVertexShader9 следует написать:
IDirect3DVertexShader9* ToonShader = 0; hr = Device->CreateVertexShader( (DWORD*)shader->GetBufferPointer(), &ToonShader);
ПРИМЕЧАНИЕ