day one: still some bugs
My goal is an easy to use, customizable and performance efficient way to display text on screen like damage numbers.
I use a single canvas for main hud widget. the hud stores a pool of empty widgets that only have a text component in it (which are the floating text/ numbers). When i call the interface it will convert the targets world location to screen space and play the animation for the damage number.
This way you dont create widgets at runtime all the time and especially avoid having multiple canvas components for every widget which is what i saw a lot in some tutorials.
I use a simple material and color curves to paint the font to my liking.
In the future i will try to profile and see if performance can be optimized and add more options. Also do more research and see if there are other ways to do that which are more efficient.