private void GenerateResources()
{
if (this.mat != null || this.texture != null || this.pixelData != null)
this.ReleaseResources();
TextRenderingHint textRenderingHint;
if (this.renderMode == RenderMode.MonochromeBitmap)
textRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit;
else
textRenderingHint = TextRenderingHint.AntiAliasGridFit;
int cols;
int rows;
cols = rows = (int)Math.Ceiling(Math.Sqrt(SupportedChars.Length));
LoadOrCreatePixelData(cols, rows, textRenderingHint);
// Determine Font properties
this.height = this.internalFont.Height;
this.ascent = (int)Math.Round(this.internalFont.FontFamily.GetCellAscent(this.internalFont.Style) * this.internalFont.Size / this.internalFont.FontFamily.GetEmHeight(this.internalFont.Style));
this.bodyAscent /= BodyAscentRef.Length;
this.descent = (int)Math.Round(this.internalFont.FontFamily.GetCellDescent(this.internalFont.Style) * this.internalFont.GetHeight() / this.internalFont.FontFamily.GetLineSpacing(this.internalFont.Style));
this.baseLine = (int)Math.Round(this.internalFont.FontFamily.GetCellAscent(this.internalFont.Style) * this.internalFont.GetHeight() / this.internalFont.FontFamily.GetLineSpacing(this.internalFont.Style));
CreateInternalTexture();
CreateInternalMaterial();
}