docs: function CanvasRenderer(width, height, options)
  {
      SystemRenderer.call(this, 'Canvas', width, height, options);
  
      this.type = CONST.RENDERER_TYPE.CANVAS;
  
      /**
       * The canvas 2d context that everything is drawn with.
       *
       * @member {CanvasRenderingContext2D}
       */
      this.context = this.view.getContext('2d', { alpha: this.transparent });
  
      /**
       * Boolean flag controlling canvas refresh.
       *
       * @member {boolean}
       */
      this.refresh = true;
  
      /**
       * Instance of a CanvasMaskManager, handles masking when using the canvas renderer.
       *
       * @member {CanvasMaskManager}
       */
      this.maskManager = new CanvasMaskManager();
  
      /**
       * If true Pixi will Math.floor() x/y values when rendering, stopping pixel interpolation.
       * Handy for crisp pixel art and speed on legacy devices.
       *
       * @member {boolean}
       */
      this.roundPixels = false;
  
      /**
       * Tracks the active scale mode for this renderer.
       *
       * @member {SCALE_MODE}
       */
      this.currentScaleMode = CONST.SCALE_MODES.DEFAULT;
  
      /**
       * Tracks the active blend mode for this renderer.
       *
       * @member {SCALE_MODE}
       */
      this.currentBlendMode = CONST.BLEND_MODES.NORMAL;
  
      /**
       * The canvas property used to set the canvas smoothing property.
       *
       * @member {string}
       */
      this.smoothProperty = 'imageSmoothingEnabled';
  
      if (!this.context.imageSmoothingEnabled)
      {
          if (this.context.webkitImageSmoothingEnabled)
          {
              this.smoothProperty = 'webkitImageSmoothingEnabled';
          }
          else if (this.context.mozImageSmoothingEnabled)
          {
              this.smoothProperty = 'mozImageSmoothingEnabled';
          }
          else if (this.context.oImageSmoothingEnabled)
          {
              this.smoothProperty = 'oImageSmoothingEnabled';
          }
          else if (this.context.msImageSmoothingEnabled)
          {
              this.smoothProperty = 'msImageSmoothingEnabled';
          }
      }
  
      this.initPlugins();
  
      this._mapBlendModes();
  
      /**
       * This temporary display object used as the parent of the currently being rendered item
       *
       * @member {DisplayObject}
       * @private
       */
      this._tempDisplayObjectParent = {
          worldTransform: new math.Matrix(),
          worldAlpha: 1
      };
  
  
      this.resize(width, height);
  }