cocos shader 不能时时向glsl传递参数

求大神解释下,这代码根本没用啊,getlocation返回的是2,然而并不能把"step"传递到shader里去,运行时每次调用setuniform,都报opengl错误

Given when a value parameter is not a legal value for that function. This is only given for local problems; if the spec allows the value in certain circumstances, where other parameters or state dictate those circumstances, then GL_INVALID_OPERATION is the result instead.

意思就是参数错了。