private void RenderCharacterByCharacter(SpriteRenderer spriteRenderer) { BitmapFont fontToUse = mBitmapFont; if (mBitmapFont == null) { fontToUse = LoaderManager.Self.DefaultBitmapFont; } if (fontToUse != null) { widths.Clear(); int requiredWidth; int requiredHeight; fontToUse.GetRequiredWidthAndHeight(WrappedText, out requiredWidth, out requiredHeight, widths); UpdateIpsoForRendering(); var absoluteLeft = mTempForRendering.GetAbsoluteLeft(); var absoluteTop = mTempForRendering.GetAbsoluteTop(); fontToUse.DrawTextLines(WrappedText, HorizontalAlignment, this, requiredWidth, widths, spriteRenderer, Color, absoluteLeft, absoluteTop, this.Rotation, FontScale, FontScale); } }
private void RenderCharacterByCharacter(SpriteRenderer spriteRenderer) { BitmapFont fontToUse = mBitmapFont; if (mBitmapFont == null) { fontToUse = LoaderManager.Self.DefaultBitmapFont; } if (fontToUse != null) { // todo: reduce allocs by using a static here (static is prob okay since it can't be multithreaded) List <int> widths = new List <int>(); int requiredWidth; int requiredHeight; fontToUse.GetRequiredWidthAndHeight(WrappedText, out requiredWidth, out requiredHeight, widths); UpdateIpsoForRendering(); fontToUse.DrawTextLines(WrappedText, HorizontalAlignment, this, requiredWidth, widths, spriteRenderer, Color, mTempForRendering.GetAbsoluteLeft(), mTempForRendering.GetAbsoluteTop(), Rotation, FontScale, FontScale); } }