hey there !
i don t know if there s a limit , but if you want to get 20 materials, you ll have to name them differently in 3dsmax and you should get them in unreal.
BUT :
this is not a proper way to do, cause it will result in 1 mesh with 20 drawcalls and it will not be optimized at all.