   drawn to the screen. Used in combination with [[ambient]], [[specular]], and
   [[shininess]] in setting the material properties of shapes.
 
-  If passed one arg it is assumed to be an `int` (i.e. a color),
+  If passed one arg it is assumed to be an `float` (gray),
   multiple args are converted to `floats`."
-     ([gray] (.emissive (current-graphics) gray))
+     ([gray] (.emissive (current-graphics) (float gray)))
      ([r g b] (.emissive (current-graphics) (float r) (float g) (float b)))))
 
 (defn

  help. (Bug 1094)"
  ([x y c] (set-pixel (current-graphics) x y c))
  ([^PImage img x y c]
   (.set img (int x) (int y) c)))

(defn
  ^{:requires-bindings true

  "Returns true if object is loaded."
  [object]
  (condp = (type object)
    #?@(:clj  (PImage (pos? (.-width ^PImage object))
               ; shader is loaded synchronously
                      PShader true)
        :cljs (js/p5.Shader (and (aget object "_vertSrc") (aget object "_fragSrc"))
