There seems to be a lot of posts about endlessly scrolling backgrounds on one axis, but not much for a 2-axis solution. I'm trying to come up with a way to scroll terrain on both the X and Y axes, similar to how Google Maps or Apple Maps works on your phone. This is a game with a top-down view. More details of my current approach are described in a Stack Overflow post where I encountered a technical issue: http://stackoverflow.com/questions/44048257/physics-velocity-causes-parent-to-separate-from-child Basically, I'm applying the terrain texture to a physics object and letting the user pan the object. I use the linear damping physics property to easily achieve a smooth scrolling effect. My plan is create a few terrain tiles and repeat them endlessly to cover the screen. When the player pans the screen, the entire terrain object (which holds all the tiles) moves, creating the illusion that the player's sprite is moving. When the edge of the terrain object gets too close to the screen, I add more tiles offscreen so that we never see any gaps in the tile grid. When a tile gets too far from the center of the screen, we delete the tile to save memory. Although, using a physics body to hold the tiles lets me take advantage of the automatic scrolling behavior, its proving awkward to work with in other ways. I'm thinking to go back to the drawing board and try a different approach. There are a number of ways I can image to do this but none of them seem good. I'm new to game programming and wondering how other people would approach this problem.