How can I use unity 4.6 gui to have a health bar that follows my enemy in world space?

From what I know of unity 4.6 gui so far, the only option I can think of is to create a world space canvas for each enemy just for the health bar. This will make for many many canvas in my scene. Is this the correct way to do this, or is there a better way? Again, I want to have each enemy have their own health bar hovering over their head in world space.

This is the cleanest way I can find of making a UI element follow a world object’s 3D position.

public RectTransform canvasRectT;
public RectTransform healthBar;
public Transform objectToFollow;

void Update()
{
    Vector2 screenPoint = RectTransformUtility.WorldToScreenPoint(Camera.main, objectToFollow.position);

    healthBar.anchoredPosition = screenPoint - canvasRectT.sizeDelta / 2f;
}

For many enemies, you will have to Instantiate the healthBar many times and store the instances in a list, then for loop through the list, setting their anchoredPosition.

Your onto the correct way to do it. Best bet is to include the canvas as a child object on whatever prefab you are using.

There are a couple options for the actual health bar too. You can use a slider. Or you can use any image and play with the fill effects.

That sounds quite normal, however, you should make sure that you save different kind of enemies as prefabs and use them as and when needed.
In case you need an article on hoe to create a health bar check out the link below

TheGameContriver - Unity Health Bar

P.S. This would have been better posted in the forum rather though, as it was more of a discussion rather than a question.