Какво е анизотропно филтриране?

click fraud protection

Анизотропното филтриране е сравнително стандартна опция във видеоигрите. Много малко игри си правят труда да обяснят какво прави, а тези, които го правят, все пак ще се възползват от визуален пример, за да го улеснят разбирането.

Анизотропното филтриране е техника за филтриране на текстури, която може значително да подобри качеството на текстурите, които се виждат под ъгъл. Това обикновено е най-забележимо при плоски текстури на стени или пода, които се простират в далечината. Без филтриране на текстура, текстура, видяна под ъгъл, ще стане забележимо замъглена и ще загуби много детайли, тъй като ъгълът става по-стръмен.

Mipmaps

Основно решение на това замъгляване са текстурните mipmaps. Mipmapping включва предварително изчисляване на серия от намалени версии на текстури. Например, ако оригиналната текстура е 256×256 пиксела, версията на mipmap ще има версии 128×128, 64×64, 32×32 пиксела и т.н. Този дизайн увеличава размера на всеки файл с текстура с 33%.

Съвет: „Mip“ в Mipmap идва от инициалите на фразата „много в малко пространство“ на латински „Multum in parvo“.

Намалените версии в mipmapped текстури се използват, когато текстурата с намалена разделителна способност е по-ефективна за показване от пълната разделителна способност. Този проблем с този подход възниква, защото изображението с намалена разделителна способност по дефиниция е по-малко от оригинала. За да изглежда, че всеки модел съвпада, текстурата трябва да бъде опъната, за да съответства на ширината на оригиналната текстура. Това разтягане внезапно и забележимо увеличава замъгляването на текстурата, като ефектът се влошава, когато текстурите с по-ниска разделителна способност се сменят. Колкото и да е очевиден този ефект на замъгляване, той все още е по-малко видим и по-малко процесорно интензивен, отколкото да се налага да се използва пълномащабната текстура и да се намалява в реално време.

Анизотропно филтриране

Решението на този проблем е анизотропното филтриране. Вместо просто да се използват постепенно по-малки текстури, които намаляват наполовина ширината и височината на предишната текстура, също се създават текстура с пълна височина на половин ширина и пълна ширина на половин височина. Тези текстури с пълна ширина на половин височина осигуряват задължително намалено качество, но не е необходимо да бъдат разтегнати, тъй като вече са със същата ширина като оригиналната текстура, като по този начин предотвратяват значителното ефект на замъгляване.

Съвет: Думата „анизотропен“ има съставен произход. „An“ означава не, „iso“ означава същото, а „тропик“ идва от tropism, което означава свързано с посоката. Това име е подходящо, защото анизотропното филтриране не филтрира по един и същи начин във всяка посока.

В игрите опцията за анизотропно филтриране често се представя с множител, обикновено 2x, 4x, 8x и 16x. Те представляват броя на намаленията на размера, които са налични за използване. Обикновено разликата между 8x и 16x е почти невъзможна за разпознаване, освен в сравнения рамо до рамо. Това се дължи на факта, че единствените засегнати текстури са отдалечени, малки и следователно трудни за виждане. Въздействието на анизотропното филтриране върху производителността е относително минимално.