ID3DXEffect :: SetRawValue, méthode

Définissez une plage contiguë de constantes de nuanceur avec une copie de mémoire.

Syntaxe

HRESULT SetRawValue(
  [in] D3DXHANDLE Handle,
  [in] void       *pData,
  [in] DWORD      OffsetInBytes,
  [in] DWORD      Bytes
);

Paramètres

Gérer [ dans]

Type : D3DXHANDLE

Handle de la valeur à définir, ou nom de la valeur transmise en tant que chaîne. Le passage d’un handle est plus efficace. Consultez Handles (Direct3D 9).

pData [ dans]

Type : void *

Pointeur vers une mémoire tampon qui contient les données à définir. SetRawValue vérifie la présence de mémoire valide, mais n’effectue aucune vérification des données valides.

OffsetInBytes [ dans]

Type : DWORD

Nombre d’octets entre le début des données d’effet et le début des constantes d’effet que vous allez définir.

Octets [ dans]

Type : DWORD

Taille de la mémoire tampon à définir, en octets.

Valeur retournée

Type : HRESULT

Si la méthode est réussie, la valeur de retour est S _ OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : E _ INVALIDCALL.

Remarques

SetRawValue est un moyen très rapide de définir des constantes d’effet, car il effectue une copie de mémoire sans effectuer de validation ou de conversion de données (comme la conversion d’une matrice de lignes principales en colonne-matrice principale). Utilisez SetRawValue pour définir une série de constantes à effet contigu. Par exemple, vous pouvez définir un tableau de vingt matrices avec 20 appels à ID3DXBaseEffect :: SetMatrix ou à l’aide d’un SetRawValue unique.

Toutes les valeurs sont supposées être matrix4x4s ou float4s et toutes les matrices sont supposées être dans l’ordre colonne-principal. Les valeurs int ou float sont converties en float4 ; par conséquent, il est fortement recommandé d’utiliser SetRawValue avec uniquement des données float4 ou matrix4x4.

Configuration requise

Condition requise Valeur
En-tête
D3DX9Effect. h
Bibliothèque
D3dx9. lib

Voir aussi

ID3DXEffect