текстура филтриране

Филтриране решава проблема за определяне цвета на пиксела, въз основа на наличната Тексел на изображението на текстура.

Най-простият метод на текстура се нарича Pointwise проба (една точка за вземане на проби). Същността на това е, че за всеки пиксел, съставляващи многоъгълника, изберете един Тексел на изображението на текстура, разположени в близост до центъра на светлинното петно. За да се правят грешки, защото цвета на пиксела определяне на броя на texels, и само един е избран.







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

Вторият метод - билинейна филтриране (Bi-Linear Филтриране) е да се използват техники за интерполация. За определяне на texels, които трябва да бъдат използвани за интерполация, като се използва основно под формата на светло петно ​​- кръг. Значително приблизително кръг 4 texels. Bilinear филтриране - техника за премахване на изкривяването на изображението (филтриране), като "блокиране," текстура, когато се увеличи. По време на бавно въртене или движение на обекта (мащабиране / отстраняване) може да бъде забележимо "пропускането" на пикселите от едно място на друго, т.е. Изглежда на блокиране. За да се избегне този ефект, нанесете билинеарно филтриране, използвайки който да се определи цвета на всеки пиксел се средна претеглена стойност на цветовете на четирите съседни texels в цвят, определен с текстура наслагват. Полученият цвят пиксел се определя след три смесителни операции: първият съставен цвят на двете двойки texels, и след това смесване на два Полученият цвят.

Основният недостатък на билинеарно филтриране е, че приближение се извършва правилно само за депа за отпадъци, които са разположени успоредно на екрана или в точката на наблюдение. Ако многоъгълника е разположена под ъгъл (което е в 99% от случаите), лошо приближение се използва, тъй като трябва да се сближи от елипса.

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

За да се илюстрира описан ефект може да бъде правоъгълници със следната билинейна текстуриране:

Фиг. 13.29. Засенчване обект от билинейна филтриране. Артефакти "дълбочина псевдонимите", отразени в това, че някои квадратчета са обединени в едно.

За да се избегнат грешки и симулиране на факта, че обекти в далечината са по-малко подробна, отколкото тези, които са по-близо до точката на наблюдение, използвайки техника, известна като MIP-картографиране. Накратко, на MIP-картографиране - текстуриране с различни степени или нива на детайл, когато в зависимост от разстоянието до точката на наблюдение е избран текстура с необходимата детайл.







MIP-текстура (MIP-карта) се състои от набор от предварително филтрирани и мащабирани изображения. Изображението, свързани с нивото на MIP-карта, пикселът е представена като средна стойност от четири пиксела на предишния слой с по-висока разделителна способност. Следователно, по-голям, свързана с всяко ниво на текстура MIP-четири пъти по-малко от размера на предишното ниво на MIP-карта.

Фиг. 13.30. Снимки, свързани с всяка вълнообразна текстура MIP-карта ниво.

От ляво на дясно имаме нивата на MIP-картата 0, 1, 2, и т.н. Колкото по-малка на изображението, толкова по-детайлно е загубена, докато се приближаваме към края, когато не се вижда нищо друго освен размазани петна от сиво пиксела.

Степента или ниво на детайлност - нивото на детайлност, или просто ДБТ, се използва, за да се определи какво MIP-карта ниво (или който и да е ниво на детайлност) трябва да бъде избрана за картографирането текстура на обекта. ДБТ трябва да съвпада с броя на texels приложени към един пиксел. Например, ако на текстуриране се извършва със съотношение близко до 1: 1, ДБТ е 0, и по този начин да се използва MIP-карта ниво на най-висока резолюция. Ако Texel 4 се наслагват върху един пиксел, ДБТ 1 и ще се използва следващото ниво MIP-ниска разделителна способност. Обикновено разстоянието от точката на наблюдение, обект, който заслужава най-голямо внимание има по-висока LOD.

По това време, тъй като MIP-текстуриране решава проблема на грешки "дълбочина псевдонимите", нейното използване може да доведе до появата на други артефакти. При изтриване на обект по-далеч от точката за наблюдение, на прехода от ниско-MIP-карта ниво на високо. В момента на обекта в състояние на преход от един MIP-карта ниво на друго, има специален тип грешки изображения, познати като "MIP-ленти" - ивици или sloenost, т.е. ясно различими граници на преход от един MIP-карта ниво на друго.

Фиг. 13.31. Правоъгълна лента се състои от два триъгълника, чуплива текстура на изображението, където "MIP-ивици" артефакти с червени стрелки са отбелязани.

Един особено остър проблем за грешки "MIP-ивици" означава в анимацията, поради факта, че човешкото око е много чувствителен към преместванията и може лесно да забележи рязък преход между нива на филтриране, докато се движи около обекта.

Trilinear филтриране (Trilinear филтриране) представлява трети метод, който отстранява артефакти "MIP-ивици", възникнали при използване на MIP-картографиране. Когато Trilinear филтриране за определяне на цвета на пиксел се взема средната стойност на цвета осем texels, четири съседни текстури на две и седем в резултат на операциите се определя от смесване на цвета на пиксел. При използване на филтриране Trilinear може да извежда текстурирани обект на екрана прави с гладко прехода от едно ниво на MIP към следващия, който се постига чрез определяне на ДБТ чрез интерполиране две съседни нива MIP-картата. По този начин за решаване на голяма част от проблемите, свързани с MIP-текстуриране и грешки поради неправилно изчисляване на дълбочината на сцената ( "дълбочина псевдонимите").


Фиг. 13.32. Pyramidality MIP-карта

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

Фиг. 13.33. Правоъгълник, текстурирани вълнообразно изображение показва на екрана с помощта на MIP-текстуриране и Trilinear филтриране.

Има няколко начина за генериране на текстурите MIP. Един от тях - само за да ги подготви предварително, като използвате графични пакети, като например Adobe Photoshop. Друг начин - поколението на MIP текстури "в движение", т.е. При изпълнението на програмата. Предварително подготвени текстура MIP означава допълнително 30% от дисково пространство за текстурите в основната версия на инсталацията за игра, но се даде възможност за по-гъвкаво методи за създаването им за управление и ще ви позволи да добавите различни ефекти и допълнителни подробности за различните нива на MIP.

Оказва се, че mipmepping на Trilinear е най-доброто може да бъде?

Не, разбира се. Вижда се, че проблемът не е само съотношението размер на пиксела и Texel, но също така и под формата на всеки един от тях (или че ще бъдем по-точни, под формата на връзки).

метод MIP-текстуриране работи най-добре за депа за отпадъци, разположени директно "лице в лице" до точката на наблюдение. Въпреки това, полигони, наклонена по отношение на структурата на огъване на точка на наблюдение насложени така че пикселите могат да се припокриват различни видове и квадратичен форма на региона на текстура изображение. метод MIP-текстуриране не взема това предвид и като резултат има ефекта на твърде много размазване на изображението на текстура, тъй като, ако се използва неправилно избран texels. За да се реши този проблем, трябва да изберете от по-голям брой texels, които изграждат структурата и изберете тези texels трябва да се вземат под внимание, че "картографирани" форма един пиксел в текстура пространство. Този метод се нарича анизотропна филтриране ( "анизотропна филтриране"). Нормално текстуриране MIP наречените "изотропна" (изотропно или хомогенна), защото винаги заедно филтрира квадратен зона, състояща се от texels. Анизотропна филтриране означава, че формата на региона на texels че ние използваме варира в зависимост от обстоятелствата.