示例#1
0
 public void AddToList(List <Sprite> sprites, Sprite.IMaterialProvider provider)
 {
     foreach (CharDef cd in CharDefs)
     {
         var s = GetNextSprite();
         s.Tag      = Tag;
         s.Position = cd.Position;
         s.Size     = cd.Size(FontHeight);
         s.UV0      = cd.FontChar.UV0;
         s.UV1      = cd.FontChar.UV1;
         s.Texture  = cd.FontChar.Texture;
         s.Texture.TransformUVCoordinatesToAtlasSpace(ref s.UV0);
         s.Texture.TransformUVCoordinatesToAtlasSpace(ref s.UV1);
         s.Color = Color;
         if (cd.FontChar.RgbIntensity)
         {
             s.Material = Sprite.LcdFontMaterialProvider.Instance.GetMaterial(Tag);
         }
         else
         {
             s.Material = provider.GetMaterial(Tag);
         }
         sprites.Add(s);
     }
 }
示例#2
0
 public void Render(Color4 color, Sprite.IMaterialProvider materialProvider)
 {
     TextSprite.Index = 0;
     foreach (var w in items)
     {
         w.AddToList(sprites, materialProvider);
     }
     Renderer.DrawSpriteList(sprites, color);
     sprites.Clear();
 }
示例#3
0
 public void AddToList(List <Sprite> sprites, Sprite.IMaterialProvider provider)
 {
     Material = provider.GetMaterial(Texture, Tag);
     sprites.Add(this);
 }