Oh, thank you for your reply. I originally thought it was a 3D model. It seems that implementing it is not that simple. But achieving this effect in a 2D way seems quite interesting.
Yeah it's basically just a 2d shader with some transformations to make it look 3d, so it can run really efficiently that way.