public override void doInitialize() { // get font IResourceService resService = Owner.Game.Services.GetService(typeof(IResourceService)) as IResourceService; m_font = resService.Fonts[m_fontName]; // add to rendermanager m_renderManager = Owner.Game.Services.GetService(typeof(RenderManager)) as RenderManager; m_renderManager.addText(this); // get position IPosition3D pos = Owner.getFirst(typeof(IPosition3D)) as IPosition3D; if (pos != null) { m_position = pos.Position; pos.PositionChanged += new XnaScrapCore.Core.Delegates.Position3DChangedEventHandler(PositionChanged); } // get dimension IScale3D scale = Owner.getFirst(typeof(IScale3D)) as IScale3D; if (scale != null) { m_scale = scale.Scale; scale.Changed += new Scale3DChangedEventHandler(scale_Changed); } base.doInitialize(); }