public Rendering(
    int xd, int yd,
    int hz, boolean full
  ) {
    try {
      DisplayMode
        choices[] = Display.getAvailableDisplayModes(),
        chosen = choices[0] ;
      float bestFit = Float.POSITIVE_INFINITY, fit ;
      for (DisplayMode mode : choices) {
        if (mode.getWidth() < xd) continue ;
        if (mode.getHeight() < yd) continue ;
        //
        //  I always get zero here, for some reason-
        //if (mode.getFrequency() < hz) continue ;
        fit = mode.getWidth() + mode.getHeight() - (xd + yd) ;
        if (fit < bestFit) {
          chosen = mode ;
          bestFit = fit ;
        }
      }
      viewWide = chosen.getWidth() ;
      viewHigh = chosen.getHeight() ;
      I.say("View width/height are: "+viewWide+"/"+viewHigh) ;
      Display.setDisplayMode(chosen) ;
      Display.setFullscreen(full) ;
      Display.setResizable(true) ;
      Display.setVSyncEnabled(true) ;
      Display.setSwapInterval(25) ;
      Display.setTitle("Presidium") ;
      Display.create() ;
    }
    catch (Exception e) {
      e.printStackTrace() ;
    }
    port = new Viewport() ;
    lighting = new Lighting() ;
    lighting.setup(1.0f, 1.0f, 1.0f, true, true) ;
    lighting.direct(Lighting.DEFAULT_ANGLE.normalise()) ;
  }