public RenderingEngine(BoardAbstract board)
 {
     this.camera = new MovingCamera(board, this.graphics, board);
     this.ownerBoard = board;
     board.addEntityToUpdater(camera);
     init();
 }
        public void paintOverlay(Graphics2D g2, MovingCamera cam)
        {

            cam.setColor(Color.GREEN);
            g2.setColor(Color.GREEN);
            g2.setFont(contextFont);
            g2.drawString("SPRITE OVERLAY", 500, 30);
            g2.setFont(defaultFont);
            g2.drawString("Active Sprites: " + activeSpriteCompositeList.size(), 500, 45);

            while (activeSpriteCompositeList.hasNext())
            {

                ActiveGraphic graphic = activeSpriteCompositeList.get();

                Shape relativeShape = graphic.composite.getGraphicRelativeBounds(0);

                camera.drawShapeInWorld(relativeShape, graphic.composite.getOwnerEntity().getPosition());

            }

        }