Metodo ID3D11Device::CreateInputLayout (d3d11.h)
Creare un oggetto input-layout per descrivere i dati del buffer di input per la fase di input-assembler.
Sintassi
HRESULT CreateInputLayout(
[in] const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
[in] UINT NumElements,
[in] const void *pShaderBytecodeWithInputSignature,
[in] SIZE_T BytecodeLength,
[out, optional] ID3D11InputLayout **ppInputLayout
);
Parametri
[in] pInputElementDescs
Tipo: const D3D11_INPUT_ELEMENT_DESC*
Matrice dei tipi di dati di input-assembler di fase; ogni tipo viene descritto da una descrizione dell'elemento (vedere D3D11_INPUT_ELEMENT_DESC).
[in] NumElements
Tipo: UINT
Numero di tipi di dati di input nella matrice di elementi di input.
[in] pShaderBytecodeWithInputSignature
Tipo: const void*
Puntatore al shader compilato. Il codice shader compilato contiene una firma di input convalidata rispetto alla matrice di elementi. Vedere la sezione Osservazioni.
[in] BytecodeLength
Tipo: SIZE_T
Dimensioni dello shader compilato.
[out, optional] ppInputLayout
Tipo: ID3D11InputLayout**
Puntatore all'oggetto di layout di input creato (vedere ID3D11InputLayout). Per convalidare gli altri parametri di input, impostare questo puntatore su NULL e verificare che il metodo restituisca S_FALSE.
Valore restituito
Tipo: HRESULT
Se il metodo ha esito positivo, il codice restituito è S_OK. Per errori, vedere Codici restituiti Direct3D 11 .
Commenti
Dopo aver creato un oggetto layout di input, deve essere associato alla fase dell'assembler di input prima di chiamare un'API di disegno.
Dopo aver creato un oggetto input-layout da una firma shader, l'oggetto input-layout può essere riutilizzato con qualsiasi altro shader con una firma di input identica (semantica inclusa). In questo modo è possibile semplificare la creazione di oggetti di layout di input quando si utilizzano molti shader con input identici.
Se un tipo di dati nella dichiarazione di input-layout non corrisponde al tipo di dati in una firma di input shader, CreateInputLayout genererà un avviso durante la compilazione. L'avviso è semplicemente richiamare l'attenzione sul fatto che i dati possono essere reinterpretati quando si legge da un registro. È possibile ignorare questo avviso (se la reinterpretazione è intenzionale) o rendere i tipi di dati corrispondenti in entrambe le dichiarazioni per eliminare l'avviso.
Windows Phone 8: questa API è supportata.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | d3d11.h |
Libreria | D3D11.lib |