Поделиться через


Параметры тумана (Direct3D 9)

Параметры тумана управляются с помощью состояний отрисовки устройства. Как пиксель, так и типы туманов поддерживают все формулы тумана, представленные в формулы тумана (Direct3D 9). Перечисленный тип D3DFOGMODE определяет константы, которые можно использовать для определения формулы тумана, которую требуется использовать Microsoft Direct3D. Состояние отображения D3DRS_FOGTABLEMODE управляет режимом тумана, который Direct3D использует для тумана пикселей, а D3DRS_FOGVERTEXMODE отрисовка состояния управляет режимом для тумана вершин.

При использовании линейной формулы тумана вы задаете начальные и конечные расстояния через D3DRS_FOGSTART и D3DRS_FOGEND состояния отрисовки. Как система интерпретирует эти значения, зависит от типа тумана, используемого приложением - пиксель или вершинный туман - и при использовании пиксельного тумана, если используется z-на основе или глубины на основе W. В следующей таблице перечислены типы туманов и их начальные и конечные единицы.

Тип тумана Блоки начала и окончания тумана
Пиксель (Z) Пространство устройства [0.0,1.0]
Пиксель (W) Пространство камеры
Вершина Пространство камеры

 

Состояние отображения D3DRS_FOGDENSITY управляет плотностью тумана, применяемой при включении экспоненциальной формулы тумана. Плотность тумана по сути является весовым фактором, начиная от 0,0 до 1,0 (включительно), что масштабирует значение расстояния в экспоненте.

Цвет, который используется системой для смешения тумана, контролируется с помощью состояния отрисовки устройства D3DRS_FOGCOLOR. Дополнительные сведения см. в разделе Цвет тумана (Direct3D 9) и туманная смесь (Direct3D 9).

Типы туманов