Beispiel #1
0
 public virtual GLEx SaveBrush()
 {
     if (isClosed)
     {
         return(this);
     }
     if (lastBrush != null)
     {
         brushStack.Add(lastBrush = lastBrush.Cpy());
     }
     return(this);
 }
Beispiel #2
0
            internal virtual BrushSave Cpy()
            {
                BrushSave save = new BrushSave();

                save.baseColor   = this.baseColor;
                save.fillColor   = this.fillColor;
                save.pixSkip     = this.pixSkip;
                save.lineWidth   = this.lineWidth;
                save.alltextures = this.alltextures;
                save.font        = this.font;
                save.patternTex  = this.patternTex;
                save.blend       = this.blend;
                return(save);
            }
Beispiel #3
0
 public virtual GLEx RestoreBrush()
 {
     if (isClosed)
     {
         return(this);
     }
     lastBrush = brushStack.PreviousPop();
     if (lastBrush != null)
     {
         this.SetFont(lastBrush.font);
         this.SetLineWidth(lastBrush.lineWidth);
         this.SetBlendMode(lastBrush.blend);
     }
     return(this);
 }
Beispiel #4
0
 public GLEx(Graphics gfx, RenderTarget target, BaseBatch def, bool alltex, bool saveFrameBuffer)
 {
     this.gfx    = gfx;
     this.target = target;
     this.batch  = def;
     this.affineStack.Add(lastTrans = new Affine2f());
     this.colorTex = gfx.FinalColorTex();
     if (target != null)
     {
         this.Scale(scaleX = target.Xscale(), scaleY = target.Yscale());
     }
     else
     {
         this.Scale(scaleX = LSystem.GetScaleWidth(), scaleY = LSystem.GetScaleHeight());
     }
     this.lastBrush             = new BrushSave();
     this.lastBrush.font        = LSystem.GetSystemGameFont();
     this.lastBrush.alltextures = alltex;
     this.lastBrush.pixSkip     = LSystem.IsHTML5() ? def_skip_html5 : def_skip;
     this.lastBrush.blend       = BlendMethod.MODE_NORMAL;
     this.brushStack.Add(lastBrush);
     this.saveToFrameBufferTexture = saveFrameBuffer;
     this.Update();
 }