Create a 3DText and a new axis, axisC. In the 3DText (Text1) type 1.
In Text1 transparency, enter expression :if((floor(axisC.position.x)%10)==1,0,100)
Copy the text branch 9 times, and change the text for each (2,3,4,5,6,7,8,9,0). The extra 2 nodes at the left top (below diagram) is light node.
In Text2 transparency, enter expression :if((floor(axisC.position.x)%10)==2,0,100)
Do the same for other 3DText node, just change 2 to 3 for Text3 and so on.
For Text10, enter expression :
if((floor(axisC.position.x)%10)==0,0,100)

Now, the expression part is done, we will animate it in axisC. At frame 0, positionX = 0.
At frame100, positionX = 50. Play the animation and see what happen, it should start counting from 0 to 9 continuously.
Add a master axis to all the 3DText, and animate the Y rotation.
Now we will add another number to it, duplicate the whole 3Dtext branch.
At frame100, positionX = 50. Play the animation and see what happen, it should start counting from 0 to 9 continuously.
Add a master axis to all the 3DText, and animate the Y rotation.
Now we will add another number to it, duplicate the whole 3Dtext branch. For the new branch, change all the expression which refer to axisC.position.x to axisC.position.y instead. For example :
if((floor(axisC.position.y)%10)==1,0,100)
Animate the new add digi number with axisC's position Y. You can add more number, just duplicate the branch and change the expression accordingly.
Animate the new add digi number with axisC's position Y. You can add more number, just duplicate the branch and change the expression accordingly.