public void render(File file) { w = new World<RGBColor>(); builder = new WorldBuilder<RGBColor>(w); builder.build(file); w.initialize(); vp = w.getViewPlane(); imf = new ImageFrame(vp.resolution, false, null); if (w.isDynamic()) { // w.render(imf); // imf.repaint(); // imf.finish(); w.set(); while (w.hasNext()) { w.render(imf); imf.repaint(); w.step(); SwingUtilities.invokeLater( new Runnable() { @Override public void run() {} }); } imf.finish(); } else { w.render(imf); String fileName2 = GuiUtilities.getOutputPngFileName(file.getName()); PngFilm png = new PngFilm(fileName2, imf.getFilm()); png.finish(); imf.repaint(); imf.finish(); } }