Mapbox-gl-native allows to render vector tiles server side. The API renders a tile by passing a center coordinate of the tile.
It returns a map tile image. To get a larger image it is required to render multiple tiles and stitch them together. To move from one tile to adjacent one it is pretty simple, you have to multiply the resolution of the zoom level with the tiles geographical information width or height (depending on which direction you want the adjacent tile).
So If I have a tile rendered with center point [24.5 56.2] and I want the tile next to it to the right I calculate the center for it like so:
offset = levelResolution * 256
centerPointInWebMercator->x += offset
adjacentTileCenter = toLatLon(centerPointInWebMercator)
This indeed works correct. The problem is when the tiles have a pitch value larger than 0. In this case the above algorithm seems to not be correct as the tiles dont align correctly.
Here is example of two tiles that were requested the first problem is that they contain duplicate information and the second is that some duplicate features seem to have different positioning (rotated differently) see the highlighted region