cljs-webgl.buffers documentation
clear-color-buffer
(clear-color-buffer gl-context red green blue alpha)
Clears the color buffer with specified `red`, `green`, `blue` and `alpha` values. Relevant OpenGL ES reference pages: * [glClearColor](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClearColor.xml) * [glClear](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClear.xml)
clear-depth-buffer
(clear-depth-buffer gl-context depth)
Clears the depth buffer with specified `depth` value. Relevant OpenGL ES reference pages: * [glClearDepthf](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClearDepthf.xml) * [glClear](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClear.xml)
clear-stencil-buffer
(clear-stencil-buffer gl-context index)
Clears the stencil buffer with specified `index` value. Relevant OpenGL ES reference pages: * [glClearStencil](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClearStencil.xml) * [glClear](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glClear.xml)
create-buffer
(create-buffer gl-context data target usage & [item-size])
Creates a new buffer with initialized `data`. `data` must be a typed-array `target` may be `cljs-webgl.constants.buffer-object/array-buffer` or `cljs-webgl.constants.buffer-object/element-array-buffer` `usage` may be `cljs-webgl.constants.buffer-object/static-draw` or `cljs-webgl.constants.buffer-object/dynamic-draw` `item-size` [optional] will set the item size as an attribute on the buffer, and the calculate the number of items accordingly. Relevant OpenGL ES reference pages: * [glGenBuffers(Similar to createBuffer)](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glGenBuffers.xml) * [glBindBuffer](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glBindBuffer.xml) * [glBufferData](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glBufferData.xml)
default-capabilities
draw!
(draw! gl-context & {:keys [shader draw-mode first count attributes uniforms textures element-array capabilities blend-function viewport], :as opts})
set-attribute
(set-attribute gl-context {:keys [buffer location components-per-vertex type normalized? stride offset]})
set-capability
(set-capability gl-context capability enabled?)
Enables/disables according to `enabled?` a given server-side GL `capability` The valid values for `capability` are: `cljs-webgl.constants.capability/blend`, `cljs-webgl.constants.capability/cull-face`, `cljs-webgl.constants.capability/depth-test`, `cljs-webgl.constants.capability/dither`, `cljs-webgl.constants.capability/polygon-offset-fill`, `cljs-webgl.constants.capability/sample-alpha-to-coverage`, `cljs-webgl.constants.capability/sample-coverage`, `cljs-webgl.constants.capability/scissor-test`, `cljs-webgl.constants.capability/stencil-test` Relevant OpenGL ES reference pages: * [glEnable](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glEnable.xml) * [glDisable](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glDisable.xml)
set-viewport
(set-viewport gl-context {:keys [x y width height], :as viewport})
Sets `gl-context` viewport according to `viewport` which is expected to have the form: {:x, :y, :width, :height} Relevant OpenGL ES reference pages: * [viewport](http://www.khronos.org/opengles/sdk/docs/man/xhtml/glViewport.xml)