Remove seam on tiled gameObject while keeping a smooth-shaded look

Here’s my problem, I want to create randomly generated “biome” based on “mini zone” using hexagonal building block and I want to have seamless smooth shading between the block.

Here’s what it’s currently look like in my zonemaker

And here what I don’t want it to look like (flat shaded)

How can I achieve this

what is mesh normals set to, in the mesh properties?

try setting it to calculate, the to 30 to 35 and apply and see if that works

If you want seamless smooth shaded along the entire top when you put tiles together it won’t be possible unless they are actually a single piece of geometry.

You may be able to do this dynamically by modifying the mesh in code, but i think here is an easier way:
for every type of tile, have different versions with different combinations of soft/hard normals. Then in the scene you can detect which is needed: you put the soft ones along the edges and the 100% hard one in the center.

Nailed it!!!

For those interested to obtain a similar result, I did it by recalculating the normals for each block while taking into account the vertices of the adjacent ones. I wouldn’t recommend trying to do it without prior knowledge about meshes, normal, UVs etc…

…but I was able to do it so if you wish to try, here’s some useful links:

Anatomy of a Mesh

Script References - Mesh

Computing a perpendicular vector