The present invention provides preparation methods of protein nanoparticles for in vivo delivery of pharmacologically active agents, wherein said methods are to encase pharmaceutically active agents into proteins or peptides to form nanoparticles by unfolding the protein, and subsequently refolding or assembling the protein to produce a pharmacologically active agent encased within a protein nanoparticle.