    [thi.ng.luxor.presets :as presets]
    [thi.ng.common.math.core :as m]
    [thi.ng.geom.core :as g]
+   [thi.ng.geom.rect :as r]
    [thi.ng.geom.plane :as pl]
-   [thi.ng.geom.mesh :as mesh])
+   [thi.ng.geom.mesh :as mesh]
+   [thi.ng.geom.meshio :as mio]
+   [clojure.java.io :as io])
   (:import
    [java.io File Writer OutputStreamWriter StringWriter]
    [java.util Date]))

  [scene id]
  {:pre [(#{:none :single :emission :multi} id)]}
  (append scene :volume-integrator (name id) {} true))

;; "string config" ["opencl.gpu.use = 1" "opencl.cpu.use = 1"]

(defn renderer-slg
  [scene & {:keys [cpu? gpu?] :or {cpu? true gpu? true}}]

      (when tx (transform-common scene tx))
      (light-common scene opts)
      {:__type :area-light
       :__shape [(mesh-types mesh-type) {:__mesh mesh :__basename (str "light-" id)}]
       :nsamples [:int samples]}))))

(defn shape-disk
