private void updateEngine(double delta) {
        //time related things must be multiplied by delta
        //non time related ignore delta 

        //draws tiles
        Tile[][] viewTiles = new Tile[20][15];

        for (int x = 0; x < 20; x++) {
            for (int y = 0; y < 15; y++) {
                if ((x + (RussianWordQuest.player.getX() - 320) / 32) >= 0 && (x + (RussianWordQuest.player.getX() - 320) / 32) < 40) {
                    if (y + ((RussianWordQuest.player.getY() - 240) / 32) >= 0 && (y + ((RussianWordQuest.player.getY() - 240) / 32) < 30)) {
                        viewTiles[x][y] = overworld.getTile(x + ((RussianWordQuest.player.getX() - 320) / 32), y + ((RussianWordQuest.player.getY() - 240) / 32));
                        viewTiles[x][y].setX(x);
                        viewTiles[x][y].setY(y);
                    }
                }
            }
        }
        //System.out.println(viewTiles[0][0].toString());
        Map view = new Map(15, 20, viewTiles);

        for (int x = 0; x < view.getRows(); x++) {
            for (int y = 0; y < view.getCols(); y++) {
                image.render(view.getTile(y, x));
            }
        }

        // draws entities
        for (int i = 0; i < Instances.getEntities().size(); i++) {
            Entity entity = (Entity) Instances.getEntities().get(i);
            image.render(entity);
        }

    }