//很简单的一个案例,获取idx,根据idx得到P, 运算得到临时变量pos,把pos写入P
1 int idx = get_global_id(0); 2 if (idx >= P_length) 3 return; 4 float3 pos = vload3(idx, P); 5 pos.y += amplitude * sin( length(pos) / period + phase ); 6 vstore3(pos, idx, P);
可以得到涟漪的效果
//很简单的一个案例,获取idx,根据idx得到P, 运算得到临时变量pos,把pos写入P
1 int idx = get_global_id(0); 2 if (idx >= P_length) 3 return; 4 float3 pos = vload3(idx, P); 5 pos.y += amplitude * sin( length(pos) / period + phase ); 6 vstore3(pos, idx, P);
可以得到涟漪的效果