if you export each part as .stl from a ProE assembly (rather than from the individual part files), it will remember the position and they will come up assembled in 3DS. Then you can group / ungroup as necessary to keep them together and add different matls.
dont know if this works for Max. but .stl file is almost same as .slp sent to Alias. in assembly assign different colors to your parts. export the whole thing to .stl. on import to Max the parts might autogroup. relative positions should hold.