Fog State (Direct3D 9)

Nebeleffekte können einer 3D-Szene größere Realismus verleihen. Sie können Nebeleffekte für mehr als die Simulation von Nebel verwenden. Sie können auch die Klarheit einer Szene mit Abstand verringern. Dies spiegelt das, was in der realen Welt geschieht; Da Objekte von dem Benutzer entfernt werden, ist ihr Detail weniger unterschiedlich.

Weitere Informationen zur Verwendung von Nebel in Ihrer Anwendung finden Sie unter Fog (Direct3D 9).

Eine C++-Anwendung steuert Nebel durch Geräterenderungszustände. Der aufgezählte D3DRENDERSTATETYPE-Typ enthält Zustände, um zu steuern, ob Pixel (Tabelle) oder Vertex-Nebel verwendet wird, welche Farbe es ist, die Nebelformel, die das System anwendet, und die Parameter der Formel.

Sie aktivieren Nebel, indem Sie den D3DRS_FOGENABLE Renderzustand auf TRUE festlegen. Die Nebelfarbe kann auf einen beliebigen Farbwert festgelegt werden, indem sie den D3DRS_FOGCOLOR Renderzustand verwenden; die Alphakomponente der Nebelfarbe wird ignoriert.

Die D3DRS_FOGTABLEMODE und D3DRS_FOGVERTEXMODE Renderzustände steuern die für Nebelberechnungen angewendeten Nebelformel, und sie steuern indirekt, welche Art von Nebel angewendet wird. Beide Renderzustände können auf ein Element des enumerierten D3DFOGMODE-Typs festgelegt werden. Durch Festlegen des Renderzustands auf D3DFOG_NONE Pixel- oder Vertex-Nebel deaktiviert werden. Wenn beide Renderzustände auf gültige Modi festgelegt sind, wendet das System nur Pixel-Nebeleffekte an.

Die D3DRS_FOGSTART und D3DRS_FOGEND Renderzustände steuern die Nebelformelparameter für den D3DFOG_LINEAR Modus. Der D3DRS_FOGDENSITY Renderzustand steuert die Nebeldichte in den exponentiellen Nebelmodi.

Weitere Informationen finden Sie unter "Nebelparameter" (Direct3D 9).

Renderzustände