Udostępnij za pośrednictwem


Oświetlenie Emisyjne (Direct3D 9)

Oświetlenie emisyjne jest opisane jednym terminem.

Oświetlenie emisyjne = Cₑ

Gdzie:

Parametr Wartość domyślna Typ Opis
Cₑ (0,0,0,0) D3DCOLORVALUE Kolor emisyjny.

 

Wartość Cₑ jest jedną z następujących:

  • kolor wierzchołka1, jeśli EMISSIVEMATERIALSOURCE = D3DMCS_COLOR1, a pierwszy kolor wierzchołka jest dostarczany w deklaracji wierzchołka.
  • kolor wierzchołka2, jeśli EMISSIVEMATERIALSOURCE = D3DMCS_COLOR2, a drugi kolor wierzchołka jest dostarczany w deklaracji atrybutów wierzchołka.
  • kolor materiału emisisysjnego

Notatka

Jeśli używana jest opcja EMISSIVEMATERIALSOURCE i kolor wierzchołka nie jest podany, używany jest kolor emisyjny materiału.

 

Przykład

W tym przykładzie obiekt jest kolorowy przy użyciu światła otoczenia sceny i koloru otoczenia materiału. Kod jest przedstawiony poniżej.

// create material
D3DMATERIAL9 mtrl;
ZeroMemory( &mtrl, sizeof(mtrl) );
mtrl.Emissive.r = 0.0f;
mtrl.Emissive.g = 0.75f;
mtrl.Emissive.b = 0.0f;
mtrl.Emissive.a = 0.0f;
m_pd3dDevice->SetMaterial( &mtrl );
m_pd3dDevice->SetRenderState(D3DRS_EMISSIVEMATERIALSOURCE, D3DMCS_MATERIAL);

Zgodnie z równaniem, wynikowy kolor wierzchołków obiektów jest kolorem materiału.

Na poniższej ilustracji przedstawiono kolor materiału, który jest zielony. Światło emisyjne oświetla wszystkie wierzchołki obiektów tym samym kolorem. Nie zależy od normali wierzchołka ani od kierunku światła. W rezultacie sfera wygląda jak okrąg 2D, ponieważ nie ma różnicy w cieniowaniu powierzchni obiektu.

ilustracja zielonej sfery

Na poniższej ilustracji pokazano, jak światło emisisacyjne łączy się z innymi trzema typami świateł, z poprzednich przykładów. Po prawej stronie sfery znajduje się mieszanka zielonego światła emisyjnego i czerwonego światła otaczającego. Po lewej stronie sfery zielone światło emisisyjne łączy się z czerwonym otoczeniem i rozproszonym światłem tworzącym czerwony gradient. Połysk jest biały w centrum i tworzy żółty pierścień, ponieważ wartość światła połyskowego ostrego spadania, pozostawiając wartości światła otoczenia, światła rozproszonego i emisyjne, które wspólnie tworzą żółty kolor.

ilustracja zielonej sfery z emisyjnym światłem

matematyka oświetlenia