(defn
shape-entity
[game {:keys [positions normals texcoords indices]}]
(c/compile
game
{:vertex data/advanced-vertex-shader,
:fragment data/advanced-fragment-shader,
:attributes
{'a_position {:data positions, :type (gl game FLOAT), :size 3},
'a_normal {:data normals, :type (gl game FLOAT), :size 3},
'a_texCoord {:data texcoords, :type (gl game FLOAT), :size 2}},
:indices
{:data
(#?(:clj short-array :cljs (fn* [p1__45475#] (js/Uint16Array. p1__45475#)))
indices),
:type (gl game UNSIGNED_SHORT)}}))