- Home /
Best way to make a big 2D map as smooth as possible?
Right now I have a huge 2D procedural tilemap, which is about 500x500 tiles. Although it is so inefficiently done, and I'm not sure how to go at this should I use object pooling or would that not be sufficient enough? What other ways can I make it smoother? Regards, Shady.
you are creating 250,000 objects? you need to create it as one mesh, you can either go the voxel route, or some kind of heightmap is often a useful representation, depending on the style you want to achieve?
How will I be able to access each different tile then if it is one mesh?
There is a lot of material on creating voxel systems, even specifically in unity. Basically you would use the position of where you are looking to look through your data set and match to a particular voxel and then alter that and update the mesh.
Answer by bluescr · Jan 13, 2016 at 09:45 AM
Subdivide it into a grid of smaller tilemaps?
I've been building a tilemap system myself, and it creates a GameObject and Mesh Renderer for each 16x16 block of tiles. This lets Unity cull off-screen meshes/chunks.
But this could be extended to dynamically spawn/destroy chunks as needed when scrolling around a very large map, to avoid creating excessive numbers of GameObjects. Or it could just turn chunks off (along with any objects within the chunk - things like collectables, static enemies, and animated scenery).
But if you need enemies or other moving objects that need to be active in far-off-screen parts of the map, you need to consider whether they will work if the level chunk - which may contain 2D colliders - is disabled. You may just be able to get away with pausing them when the map chunk that they are in is turned off.
Your answer
Follow this Question
Related Questions
Need help finding a library/solution for efficient 2D tilemap rendering, collisions and interaction. 1 Answer
why is unity set tile not working? 0 Answers
LWRP 2D Renderer: Tiles invisible in Tile Palette 2 Answers
Can isometric tiles be rotated? 0 Answers
Tilemap Collider 2D only works on upper and lower part of tile 0 Answers