ManualObject 2D
From Ogre Wiki
This demonstrates an easy way to use ManualObject for creating 2D overlays. This is Eihort only, and you'll need Ogre 1.4.0RC1 or later.
Note that you should use a material that has lighting and depth write turned off for this to behave correctly. See Displaying 2D Backgrounds for an example how to set up such a material programmatically.
// Create a manual object for 2D
ManualObject* manual = mSceneMgr->createManualObject("manual");
// Use identity view/projection matrices
manual->setUseIdentityProjection(true);
manual->setUseIdentityView(true);
manual->begin("BaseWhiteNoLighting", RenderOperation::OT_LINE_STRIP);
manual->position(-0.2, -0.2, 0.0);
manual->position( 0.2, -0.2, 0.0);
manual->position( 0.2, 0.2, 0.0);
manual->position(-0.2, 0.2, 0.0);
manual->index(0);
manual->index(1);
manual->index(2);
manual->index(3);
manual->index(0);
manual->end();
// Use infinite AAB to always stay visible
AxisAlignedBox aabInf;
aabInf.setInfinite();
manual->setBoundingBox(aabInf);
// Render just before overlays
manual->setRenderQueueGroup(RENDER_QUEUE_OVERLAY - 1);
// Attach to scene
mSceneMgr->getRootSceneNode()->createChildSceneNode()->attachObject(manual);
Gives an outlined rectangle in the middle of the screen that is always visible.
See also ManualObject, Line3D, DynamicLineDrawing and Circle3D for other ManualObject examples.

