public void render_fow(VGraphics g, Point pcm) {
        g.setTexture("fow/full.png");
        i++;
        for (int x = pcm.x / 64; x < 30 + pcm.x / 64; x++) {
            for (int y = -10 + pcm.y / 64; y < 20 + pcm.y / 64; y++) {

                int h = 20;
                int z = t(point(x, y)) * h;

                VPoint test = VConvert.to2DPoint(x * 64 + -pcm.x / 2, y * 64 + 32 - pcm.y / 2, z);

                if (x == 0 || x == 511 || y == 0 || y == 511) {
                    g.setColor(new Color(235, 0, 0));
                } else if (tf(point(x, y)) > 0) {
                    g.setColor(new Color(235, 235, 235));
                } else {
                    g.setColor(new Color(135, 135, 135));
                }
                VPoint p = VConvert.to2DPoint(x * 64 - pcm.x, y * 64 - pcm.y, z);

                if (tf(point(x, y)) <= 1) {
                    if (tf(point(x, y)) == 0) {
                        g.setColor(new Color(255, 255, 255, 75));
                    } else {
                        g.setColor(new Color(255, 255, 255, 15));
                    }
                    g.drawRect((int) p.x, (int) p.y, 255, 255, i);
                    g.drawRect((int) p.x, (int) p.y, 255, 255, -i);
                }
            }

        }
    }