Metodo ID3D11Device::CreateVertexShader (d3d11.h)
Creare un oggetto vertex-shader da uno shader compilato.
Sintassi
HRESULT CreateVertexShader(
[in] const void *pShaderBytecode,
[in] SIZE_T BytecodeLength,
[in, optional] ID3D11ClassLinkage *pClassLinkage,
[out, optional] ID3D11VertexShader **ppVertexShader
);
Parametri
[in] pShaderBytecode
Tipo: const void*
Puntatore al shader compilato.
[in] BytecodeLength
Tipo: SIZE_T
Dimensioni del vertex shader compilato.
[in, optional] pClassLinkage
Tipo: ID3D11ClassLinkage*
Puntatore a un'interfaccia di collegamento di classe (vedere ID3D11ClassLinkage); il valore può essere NULL.
[out, optional] ppVertexShader
Tipo: ID3D11VertexShader**
Indirizzo di un puntatore a un'interfaccia ID3D11VertexShader . Se si tratta di NULL, tutti gli altri parametri verranno convalidati e, se tutti i parametri passano la convalida, l'API restituirà S_FALSE anziché S_OK.
Valore restituito
Tipo: HRESULT
Questo metodo restituisce uno dei codici restituiti Direct3D 11.
Commenti
Il runtime Direct3D 11.1, disponibile a partire da Windows 8, offre le nuove funzionalità seguenti per CreateVertexShader.
Le istruzioni seguenti sul modello shader 5.0 sono disponibili solo per pixel shader e shader di calcolo nel runtime direct3D 11.0. Per il runtime Direct3D 11.1, perché le visualizzazioni di accesso non ordinate sono disponibili in tutte le fasi dello shader, è possibile usare queste istruzioni in tutte le fasi dello shader.
Pertanto, se si usano le istruzioni seguenti per il modello shader 5.0 in un vertex shader, è possibile passare correttamente il vertex shader compilato a pShaderBytecode. Vale a dire, la chiamata a CreateVertexShader ha esito positivo.
Se si passa uno shader compilato a pShaderBytecode che usa una delle istruzioni seguenti in un dispositivo che non supporta UAV in ogni fase dello shader (inclusi i driver esistenti non implementati per supportare le UAV in ogni fase di shader), CreateVertexShader ha esito negativo. CreateVertexShader ha esito negativo anche se lo shader tenta di usare uno slot UAV oltre il set di slot UAV supportati dall'hardware.
- dcl_uav_typed
- dcl_uav_raw
- dcl_uav_structured
- ld_raw
- ld_structured
- ld_uav_typed
- store_raw
- store_structured
- store_uav_typed
- sync_uglobal
- Tutte le atomiche e le atomiche immediate (ad esempio, atomic_and e imm_atomic_and)
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d11.h |
Libreria | D3D11.lib |