Partager via


ID3DXPRTEngine::MultiplyAlbedo, méthode

Multiplie chaque vecteur de transfert de rayonnement précalculé (PRT) par l’albédo par sommet.

Syntaxe

HRESULT MultiplyAlbedo(
  [in, out] LPD3DXPRTBUFFER pDataOut
);

Paramètres

pDataOut [in, out]

Type : LPD3DXPRTBUFFER

Pointeur vers un objet ID3DXPRTBuffer de sortie qui contiendra des vecteurs PRT multipliés par l’albédo par vertex. Si cette mémoire tampon de sortie est un objet de texture, il faut veiller à stocker l’albédo de la texture à la même résolution que la mémoire tampon de simulation. Vous pouvez définir la résolution appropriée sur l’albédo avec D3DXLoadSurfaceFromSurface, en appliquant des régions de gouttière de texture si nécessaire.

Valeur retournée

Type : HRESULT

Si la méthode réussit, la valeur de retour est S_OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Notes

Les méthodes ID3DXPRTEngine::Computexxx permettent de calculer les mémoires tampons de sortie dans lesquelles le signal lumineux n’a pas été multiplié par albedo. En ne multipliant pas l’albédo, vous pouvez modéliser la variation de l’albédo à une échelle plus fine que le rayonnement source, ce qui donne des résultats plus précis de la compression.

Pour inclure albedo dans le modèle rendu léger, appelez cette méthode après l’une des méthodes Computexxx.

ID3DXPRTEngine::SetMeshMaterials doit être appelé avant d’appeler cette méthode.

Spécifications

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

Voir aussi

ID3DXPRTEngine

ID3DXPRTEngine::ComputeDirectLightingSH