Since gpu doesn’t have compilation error check when writing glsl shaders, it’s slow to find compilation errors by purely looking at the code. I found that we can write the glsl code in cpu with the aid of cpu compilation error check, then turn to gpu to run. PS. when writing on cpu, cpu should have a copy of the glsl builtin functions, such as vec2, normalization, et.