You can use SurfaceAppearance objects to apply PBR material to an object, which is quite similar to UE4 and Unity. IMO, it’s not perfect yet. Unreal and Unity’s PBR looks much better. Roblox’s seems to lack a bit of depth still. But it’s better by far than not using it!
That will allow you to apply normal, metalness, and roughness maps alongside your albedo/color texture image. Your title mentions normals, but the body of your thread mentions just baking the detail into the image. Either works, but I would prefer to use SurfaceAppearances for the extra detail & let Roblox’s auto-adjusted performance settings do the rest.