低像素的圖像紋理映射到高像素圖像上,采用的幾種紋理映射方式:

取相近像素顔色(Nearest)
取所在像素塊内的顔色
雙線性插值取周圍像素的插值顔色(Bilinear)
紅點位置的像素顔色,若取所在像素塊内的顔色則為u11;
若采用雙線性插值的話做三次lerp取顔色得到周圍四個像素的插值顔色;
(Bicubic)
取周圍16個像素做插值
非常大的紋理映射在螢幕上,導緻走樣的解決辦法
出現的問題:在一個像素内,有多個紋理(信号變化快,采樣點少),導緻走樣;
解決辦法:使用mipmap,不采樣;
mipmap特點:
- 允許做範圍查詢
- 快速
- 缺點:不準确
- 隻能做正方形範圍查詢
- 占用記憶體是原來的4/3(計算方式:1 + 1/4 + 16/1 + …)
以2*2的倍數縮小分辨率
較遠的物體,計算紋理的時候可以取目前像素在下一層LOD上區域内的顔色,就是目前區域的近似顔色,物體離得越遠,取得LOD層級越高;
不同層取不同的LOD;
缺點:不能取層級中間的顔色;例如1.5層的LOD
解決辦法:三線性插值
兩層分别做雙線性插值,結果再做一次插值
結果:
各向異性過濾
對于太遠的物體,采用三線性插值會導緻遠處像素模糊
紅色框内采用了1*1的圖檔,導緻不準确
mipmap計算結果是紅框内的圖檔
各向異性過濾則計算出矩形圖檔(可計算單獨邊縮小2^n倍數的圖像,例如128128,12864)
2X,計算一次,到邊長/2;4X,計算兩次,到邊長、4;
缺點:隻能是正方形或矩形範圍
EWA Filter
多次查詢圓形區域,取近似值