Método ID3D11Device::CreateVertexShader (d3d11.h)
Cree un objeto de sombreador de vértices a partir de un sombreador compilado.
Sintaxis
HRESULT CreateVertexShader(
[in] const void *pShaderBytecode,
[in] SIZE_T BytecodeLength,
[in, optional] ID3D11ClassLinkage *pClassLinkage,
[out, optional] ID3D11VertexShader **ppVertexShader
);
Parámetros
[in] pShaderBytecode
Tipo: const void*
Puntero al sombreador compilado.
[in] BytecodeLength
Tipo: SIZE_T
Tamaño del sombreador de vértices compilado.
[in, optional] pClassLinkage
Tipo: ID3D11ClassLinkage*
Puntero a una interfaz de vinculación de clases (vea ID3D11ClassLinkage); el valor puede ser NULL.
[out, optional] ppVertexShader
Tipo: ID3D11VertexShader**
Dirección de un puntero a una interfaz ID3D11VertexShader . Si es NULL, se validarán todos los demás parámetros y, si todos los parámetros pasan la validación, esta API devolverá S_FALSE en lugar de S_OK.
Valor devuelto
Tipo: HRESULT
Este método devuelve uno de los códigos de retorno de Direct3D 11.
Comentarios
El entorno de ejecución de Direct3D 11.1, que está disponible a partir de Windows 8, proporciona la siguiente nueva funcionalidad para CreateVertexShader.
Las siguientes instrucciones del modelo de sombreador 5.0 están disponibles solo para sombreadores de píxeles y sombreadores de proceso en el tiempo de ejecución de Direct3D 11.0. Para el tiempo de ejecución de Direct3D 11.1, dado que las vistas de acceso desordenadas (UAV) están disponibles en todas las fases del sombreador, puedes usar estas instrucciones en todas las fases del sombreador.
Por lo tanto, si usa las siguientes instrucciones del modelo de sombreador 5.0 en un sombreador de vértices, puede pasar correctamente el sombreador de vértices compilado a pShaderBytecode. Es decir, la llamada a CreateVertexShader se realiza correctamente.
Si pasas un sombreador compilado a pShaderBytecode que usa cualquiera de las siguientes instrucciones en un dispositivo que no admite UAVs en cada fase del sombreador (incluidos los controladores existentes que no se implementan para admitir UMV en cada fase del sombreador), Se produce un error en CreateVertexShader . CreateVertexShader también produce un error si el sombreador intenta usar una ranura UAV más allá del conjunto de ranuras UAV que admite el 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
- Todos los atómicos e inmediatos (por ejemplo, atomic_and y imm_atomic_and)
Requisitos
Plataforma de destino | Windows |
Encabezado | d3d11.h |
Library | D3D11.lib |