ID3DXPRTEngine::ComputeDirectLightingSHGPU, méthode
Utilise le GPU pour calculer la contribution de l’éclairage direct aux objets 3D où le rayonnement source est représenté par une approximation harmonique sphérique (SH). Le calcul de l’éclairage sur le GPU sera généralement beaucoup plus rapide que sur le processeur.
Syntaxe
HRESULT ComputeDirectLightingSHGPU(
[in] LPDIRECT3DDEVICE9 pDevice,
[in] UINT Flags,
[in] UINT Order,
[in] FLOAT ZBias,
[in] FLOAT ZAngleBias,
[in, out] LPD3DXPRTBUFFER pDataOut
);
Paramètres
-
pDevice [in]
-
Type : LPDIRECT3DDEVICE9
Pointeur vers l’objet d’appareil IDirect3DDevice9 utilisé pour exécuter la simulation sur le GPU. L’appareil doit prendre en charge ps_2_0 nuanceurs de pixels.
Notes
Les fonctions de rappel ne doivent pas utiliser l’objet d’appareil IDirect3DDevice9 utilisé par le simulateur GPU.
-
Indicateurs [in]
-
Type : UINT
Paramètre de simulation GPU qui définit la résolution de la mémoire tampon z d’ombre. Doit être défini sur l’une des valeurs constantes de D3DXSHGPUSIMOPT. Pour spécifier une simulation de précision supérieure, la valeur D3DXSHGPUSIMOPT_HIGHQUALITY peut être combinée à l’une des valeurs D3DXSHGPUSIMOPT_SHADOWRESxxx.
-
Ordre [in]
-
Type : UINT
Ordre de l’évaluation sh. Doit être dans la plage de D3DXSH_MINORDER à D3DXSH_MAXORDER, inclusif. L’évaluation génère des coefficients Order². Le degré de l’évaluation est Order - 1.
-
ZBias [in]
-
Type : FLOAT
Biais dans le sens normal.
-
ZAngleBias [in]
-
Type : FLOAT
Biais dans le sens normal, mis à l’échelle d’un moins le cosinus de l’angle avec le rayon lumineux.
-
pDataOut [in, out]
-
Type : LPD3DXPRTBUFFER
Pointeur vers un objet ID3DXPRTBuffer . Ce tampon doit avoir le nombre approprié de canaux de couleur alloués pour la simulation.
Valeur retournée
Type : HRESULT
Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Notes
Dans cette méthode, l’albédo n’est pas multiplié par le signal lumineux, et seule la lumière entrante est intégrée dans le simulateur. 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.
Appelez MultiplyAlbedo pour multiplier chaque vecteur de transfert de rayonnement précalculé (PRT) par l’albédo.
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|
Voir aussi