Ported more OpenCL to GLSL. Everything untested and most likely wrong.