Metodo ID3D11DeviceContext::P SSetConstantBuffers (d3d11.h)
Imposta i buffer costanti usati dalla fase della pipeline del pixel shader.
Sintassi
void PSSetConstantBuffers(
[in] UINT StartSlot,
[in] UINT NumBuffers,
[in, optional] ID3D11Buffer * const *ppConstantBuffers
);
Parametri
[in] StartSlot
Tipo: UINT
Indicizzare nella matrice in base zero del dispositivo per iniziare a impostare buffer costanti su (intervallo compreso tra 0 e D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1).
[in] NumBuffers
Tipo: UINT
Numero di buffer da impostare (compreso tra 0 e D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot).
[in, optional] ppConstantBuffers
Tipo: ID3D11Buffer*
Matrice di buffer costanti (vedere ID3D11Buffer) assegnati al dispositivo.
Valore restituito
nessuno
Osservazioni
Il metodo conterrà un riferimento alle interfacce passate. Questo comportamento differisce dal comportamento dello stato del dispositivo in Direct3D 10.
Il runtime Direct3D 11.1, disponibile in Windows 8 e sistemi operativi successivi, può associare un numero maggiore di risorse ID3D11Buffer allo shader rispetto alle dimensioni massime del buffer costante supportate dagli shader (costanti 4096 -componenti a 32 bit ciascuno). Quando si associa un buffer di grandi dimensioni, lo shader può accedere solo alle prime costanti del componente a 32 bit a 4096 4nel buffer, come se 4096 costanti corrispondano alle dimensioni complete del buffer.
Per consentire allo shader di accedere ad altre parti del buffer, chiamare PSSetConstantBuffers1 anziché PSSetConstantBuffers. PSSetConstantBuffers1 include parametri aggiuntivi pFirstConstant e pNumConstants.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | d3d11.h |
Libreria | D3D11.lib |