void CreateCanvas()
{
if( !_didCreateUiStuff )
{
_didCreateUiStuff = true;
//Create the UI canvas game object
canvasRoot = new GameObject( "Canvas" );
var canvas = canvasRoot.AddComponent<Canvas>();
canvas.renderMode = RenderMode.ScreenSpaceOverlay;
var cs = canvasRoot.AddComponent<CanvasScaler>();
cs.uiScaleMode = CanvasScaler.ScaleMode.ScaleWithScreenSize;
cs.screenMatchMode = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
cs.referenceResolution = new Vector2(800,600);
//create our ui prefab
uiPrefab = new GameObject( "UItext" );
uiPrefab.transform.position = new Vector3( 1000, 10000 );
var txt = uiPrefab.AddComponent<Text>();
txt.font = Resources.GetBuiltinResource( typeof( Font ), "Arial.ttf" ) as Font;
txt.text = "Some text";
txt.horizontalOverflow = HorizontalWrapMode.Overflow;
txt.color = Color.white;
txt.resizeTextForBestFit = true;
// Make a recycle bin for it
var recycleBin = new TrashManRecycleBin()
{
prefab = uiPrefab
};
TrashMan.manageRecycleBin( recycleBin );
}
}