A texture array stores five equally sized MSDF icon textures as independently addressable layers. The flag selects the highlighted layer every second.
The shader repeats its UV coordinates in both directions, so one sampled icon tiles across the 2 × 2 heraldic grid. MSDF keeps the icon edges crisp while the flag moves.
Unlike a texture atlas, this is still one bound texture unit with repeat wrapping in both U and V for every layer. An atlas would repeat into neighbouring icons instead.