TGViewer
Прогаем с кенгурой Прогаем с кенгурой @coding_with_kangaroo · 237 subscribers
Post #590 195
1-mipmap.png3.1 MB
Это не совсем про антиалиасинг, но про работу с артефактами интерполяции.Если вы возьмете текстуру и просто отрисуете ее лажащей в XZ плоскости в перспективной проекции, то по мере удаления ваша текстура превратится в кашу даже с линейной интерполяцией (билинейной на самом деле).

Соль в том, что линейная интерполяция это не про среднее всех пикселей между двумя выбранными (это называется area), а именно что только этих двух пикселей. То есть, очевидно, у вас потеряется очень много информации на больших масштабах.

Решается это через мипмапы (пирамида, где каждый следующий слой это х2 меньшая картинка). Там при сэмплинге соовтествующих пикселей не теряется информация, потому как при генерации у нас усредняются попарно все соседние пиксели. Тут есть два варианта:

1. При загрузке текстуры через MTKTextureLoader указывать MTKTextureLoader.Option.generateMipmaps: true.
2. При создании тексутры указывать что нужны мипмапы и пото генерировать блит операцией (`blit.generateMipmaps(for: texture)`).

Далее мы можем включить трилинейную интерполяцию: значение будет браться средним по ближайшим слоям мипмапа, а потом еще и между ними. В итоге получается гладенько красиво. Все, что надо, указать .mipFilter=.linear или mip_filter::linear (смотря где вы его создаете) при создании сэмплера.

Это может быть полезно для нормальной отрисовки геометрии, если вы, скажем отрисовали линию на текстуре, а потом натягиваете эту плоскость на что-то еще. Вот чтобы эту линию не попердолило, лучше генерировать мипамап пердварительно. Делается это довольно быстро на фоне всего остального, но жрет х1.5 памяти.
  • 👍 2
More from @coding_with_kangaroo
  1. Oct 1, 2026Еще один эффект, возникающий при поломке сигнала https://artifacts.gostrobrod.dev/effects/…
  2. Oct 1, 2026Штука очень прикольная - нужно внезапно задумываться о производительности и памяти, чтобы…
  3. Sep 29, 2026Да, там ночной стрим про рой летающих глаз идет (новый мод для террарии пилю) - потом расс…
  4. Sep 29, 2026Подвел итоги эксперимента с мушиными мозгами https://www.youtube.com/watch?v=0nniju8lLxk
  5. Sep 27, 2026Я наконец добил аналоговые ТВ стандарты, потому что без понимания, что там происходит, нек…
  6. Sep 26, 2026Я сделал рой глаз в террарии)))) https://www.youtube.com/live/ZFwJwbWYPy4?si=3SVN4hHYopdil…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →