My son and I made this filament rack part after seeing a similar thing done by supinemonkey. We loved the use of 1/2" EMT Conduit but did not want to wall mount the heavy spools. Instead, we designed a similar 3D part which would sit on the floor. The parts are symmetrical to support two selfs, just print 4.
This rack is rigid and seems to hold the load well. Although it looks like the top rack is sagging in the picture, I don't see any significant sag. You can print an extra two adapters to put supports in the middle or shorten the rack if you don't need so much space. This rack is 5' long and as you can see has a huge load of filament.
Parts List: (copied from Supinemonkey)
5 5' lengths of 1/2" EMT Conduit.. $2.34*4
4 3D printed adapters
Print 4 of these adapters.
Cut one of the conduit pipes into 4 1' sections to use as the vertical bars. You can try less than 1' as there is plenty of space.
The vertical pipe holes are very tight and will require some cleaning if supports are used. Even after cleaning I used a hot air gun to soften the PLA to make the fit very tight, not sure this is absolutely necessary but I like the rigid result.