First you must obviously create a textured 3d model in an application, such as 3Ds Max or Maya. Then export it to any suitable format. The simplest is OBJ (there are many examples on how to download it). There are two options in animation:
Make the animation manually by rotating the cover object. This is probably the easiest way to do this.
Create animations in a 3D editor, and then interpolate between frames. By doing this, you can get a much more realistic look. However, in this case, the OBJ format is not suitable, but there is COLLADA. To download it, I suggest using the Assimp library.
And if you don't need some kind of advanced pursuit, another option is to use pseud 3D: just imagine all the frames of the compass animation and use this animation that applies to 2d text.
source share