         (.clear fg-image-data)
         (.clear bg-image-data)
         (doseq [[layer-id character-map] layers-character-map]
-          (doseq [[row line] (map-indexed vector (reverse @character-map))
-                  [col c]    (map-indexed vector line)]
+        ;;  (doseq [[row line] (map-indexed vector (reverse @character-map))
+        ;;          [col c]    (map-indexed vector line)]
             ;;(log/info "row" row "col" col "c" c)
+        (loop-with-index row [line (reverse @character-map)]
+          (loop-with-index col [c line]
             (let [chr        (char (or (get c :fx-character) (get c :character)))
                   chr        (if (and (= layer-id base-layer-id)
                                       (= chr (char 0)))

                  (.position bg-image-data (+ 4 (.position bg-image-data)))))))
          (.rewind glyph-image-data)
          (.rewind fg-image-data)
          (.rewind bg-image-data))
        (.position glyph-image-data (.limit glyph-image-data))
        (.position fg-image-data (.limit fg-image-data))
        (.position bg-image-data (.limit bg-image-data))

                     (.getData dbb))))]
    (.put texture-buffer data 0 (alength data))
    (.flip texture-buffer)
    texture-buffer))

(defn- get-fields [#^Class static-class]
