Compartir a través de


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.

Requisitos

   
Plataforma de destino Windows
Encabezado d3d11.h
Library D3D11.lib

Consulte también

ID3D11Device