Here are two sources, the first of which is the
more substantive. The problem is even hard to approximate,
but algorithms are available that achieve about $2\frac{1}{2} \times$ the optimal packing.

>(1) Miyazawa, Flavio Keidi, and Yoshiko Wakabayashi. "Three-dimensional packings with rotations." *Computers & Operations Research*. 36.10 (2009): 2801-2815.
([PDF download](http://www.ic.unicamp.br/~fkm/publication/rotation.pdf).)

<hr />
&nbsp;
![BinPacking1][1]
<hr />

> (2) E. Dube, L.R. Kanavathy. "Optimizing three-dimensional bin packing through simulation." *Proc. Modeling, Simulation, Optimization*. 2006. 
([PDF download](http://www.cs.ukzn.ac.za/publications/erick_dube_507-034.pdf).)

<hr />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
![BinPacking2][2]
<hr />


  [1]: https://i.sstatic.net/P65mC.png
  [2]: https://i.sstatic.net/msYN2.png