private void DrawGameObjects(IGameObject rootGameObject) { foreach (IComponent component in rootGameObject.GetComponents()) { ISpriteRenderer sr = component as ISpriteRenderer; if (sr != null) { RenderSpriteHandler?.Invoke(sr); } ITextRenderer tr = component as ITextRenderer; if (tr != null) { RenderTextHandler?.Invoke(tr.Font, tr.Text, tr.Transform.Position + tr.Offset, tr.Color, 0.5f, tr.Transform.Rotation, tr.Size, 0.5f); } ILineRenderer lr = component as ILineRenderer; if (lr != null) { RenderLineHandler?.Invoke(lr.Start, lr.End, lr.Color, lr.Size); } } }
void IRenderManagerInternal.RenderText(Font font, string text, Vector2 position, Color color, float alignmentOffset, float rotation, float scale, float layer) { RenderTextHandler?.Invoke(font, text, position, color, alignmentOffset, rotation, scale, layer); }