Jogamp
02356b2a8e0724f740676b0dc9f09e5b0169dd21
[jocl-demos.git] / src / com / mbien / opencl / demos / joglinterop / JoglInterop.cl
1 /*
2  * Simple kernel to modify vertex positions in sine wave pattern
3  */
4 __kernel void sineWave(__global float4 * pos, unsigned int width, unsigned int height, float time) {
5
6     unsigned int x = get_global_id(0);
7     unsigned int y = get_global_id(1);
8
9     // calculate uv coordinates
10     float u = x / (float) width;
11     float v = y / (float) height;
12
13     u = u*2.0f - 1.0f;
14     v = v*2.0f - 1.0f;
15
16     // calculate simple sine wave pattern
17     float freq = 4.0f;
18     float w = sin(u*freq + time) * cos(v*freq + time) * 0.5f;
19
20     // write output vertex
21     pos[y*width+x] = (float4)(u, w, v, 1.0f);
22 }
23
http://JogAmp.org git info: FAQ, tutorial and man pages.