how does FBX exporter mark hard edges?
To summarize, FBX supports two kinds of smoothing:


Smooth groups (inherited from 3DMax), i.e. groups of faces that have smooth edges inside, and sharp edges on their boundaries.
Normals per vertex per face (aka split normals in Blender), where the whole mesh is set smooth, but shading of each face is influenced by its vertex (or corner) normals - two faces sharing a common edge which vertices have different normals will show a sharp edge (if shader system of target supports it of course).