GXFILTER

Материал из GraphiX Wiki
(перенаправлено с «Фильтрация текстур»)
Перейти к навигации Перейти к поиску

Описание[править]

Режим фильрации текстур

Синтаксис[править]

enum GXFILTER
{
	GXFILTER_MIN_MAG_MIP_POINT,
	GXFILTER_MIN_MAG_POINT_MIP_LINEAR,
	GXFILTER_MIN_POINT_MAG_LINEAR_MIP_POINT,
	GXFILTER_MIN_POINT_MAG_MIP_LINEAR,
	GXFILTER_MIN_LINEAR_MAG_MIP_POINT,
	GXFILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR,
	GXFILTER_MIN_MAG_LINEAR_MIP_POINT,
	GXFILTER_MIN_MAG_MIP_LINEAR,
	GXFILTER_ANISOTROPIC
};

Константы[править]

GXFILTER_MIN_MAG_MIP_POINT
Точечная фильтрация всех режимов представления
GXFILTER_MIN_MAG_POINT_MIP_LINEAR
При уменьшении и увеличении - точечная, для mipmap - линейная
GXFILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
При уменьшении и для mipmap - точечная, при увеличении линейная
GXFILTER_MIN_POINT_MAG_MIP_LINEAR
При уменьшении - точечная, при увеличении и для mipmap - линейная
GXFILTER_MIN_LINEAR_MAG_MIP_POINT
При уменьшении - линейная, при увеличении и для mipmap - точечная
GXFILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
При уменьшении и для mipmap - линейная, при увеличения - точечная
GXFILTER_MIN_MAG_LINEAR_MIP_POINT
При уменьшении и увеличения - линейная, для mipmap точечная
GXFILTER_MIN_MAG_MIP_LINEAR
Линейная фильтрация для всех режимов представления
GXFILTER_ANISOTROPIC
Анизотропная фильтрация для всех режимов представления

Заметки[править]

Режимы представления текстур[править]

Фильтры работают для нескольких режимов представления текстур:

  • Mag (magnification) - увеличение
  • Min (minification) - уменьшение
  • Mipmap - уменьшенные копии исходной текстуры, которые участвуют в текстурировании на основании размера/дальности объекта с текстурой

Типы фильтров:[править]

  • точечный - выборка с учетом соседних пикселей
  • линейный - выборка с учетом нескольких соседних пикселей в определенном радиусе
  • анизотропный - выборка из нескольких уровней текстуры, в зависимости от угла наклона поверхности текстуры к наблюдателю

Характеристики фильтров:[править]

  • точечная фильтрация основывается на информации соседних пикселей, дает худший результат на рендере сцены, используется для точных расчетов в постпроцессе, когда нужна точность в получении цветовых данных (например из буфера глубины)
  • линейная фильтрация не способна дать хорошее изображение если видимая плоскость с текстурой находится под углом к камере, сглаживает текстуру при Full screen quad рендере, если текстура меньше/больше размеров цепочки вывода
  • анизотропная фильтрация выдает хорошие результаты если плоскость с текстурой находится под углом к камере, используется для рендера моделей с текстурами

См. также:[править]