Когда-то давно я разрабатывал геолокационную соцсеть, где на карте живут «облака» — посты, привязанные к точке. И этих облаков на экране могло быть очень и очень много. Наивный подход «одно облако = одна аннотация-UIView» упирается в потолок уже на десятках точек: карта превращается в слайд-шоу. Здесь история о том, как я пять раз упёрся в производительность и в итоге переехал на GL-слои с data-driven выражениями: три движка рендера на разных зумах, круги постоянного реального размера в метрах через metersPerPixel, а вся zoom-зависимость считается на GPU. И отдельно — как анимировать прозрачность GL-слоя, у которого вообще нет анимируемого свойства
Рубрики