Hard Merge is the process of merging a single tile onto a vertical/horizontal, and a vertical/horizontal onto a double.
This was pretty autistic to do
Soft Merge is the process of merging any tiles together with one or more of their adjacent (of same Y top and bottom), so as to gain performance.
This performance gain happens by reducing the total amount of collision boxes. Miniscule gains for a few tiles, but for an entire level, the performance difference is obvious, and this is easily seen comparing the 3 default levels/worlds which have soft merging, compared to any level editor's.
In short, levels that aren't using soft merge, cannot reach huge sizes without reducing FPS below 60.
Soft Merge isn't implemented currently, anywhere.
I see 3 implementation ways for Soft Merge. First is for Level Editor, the other 2 are the classic ones.
First
Get adjacent tiles
If top and bottom of current tile (column) is the same as the adjacent, do soft merge
Copy-Paste their sprite renderers
Bonus Autism: Make use of triple doubles sprites from default levels
Move towards the equal center distance of adjacent tile(s)
Expand box collision depending on how much the merge happened
Hard Merge is the process of merging a single tile onto a vertical/horizontal, and a vertical/horizontal onto a double. This was pretty autistic to do
Soft Merge is the process of merging any tiles together with one or more of their adjacent (of same Y top and bottom), so as to gain performance. This performance gain happens by reducing the total amount of collision boxes. Miniscule gains for a few tiles, but for an entire level, the performance difference is obvious, and this is easily seen comparing the 3 default levels/worlds which have soft merging, compared to any level editor's.
In short, levels that aren't using soft merge, cannot reach huge sizes without reducing FPS below 60. Soft Merge isn't implemented currently, anywhere.
I see 3 implementation ways for Soft Merge. First is for Level Editor, the other 2 are the classic ones.
First
Second https://docs.unity3d.com/ScriptReference/Mesh.CombineMeshes.html
Third