版本是刚下的3.1,因为要给不同的node赋值不同的uniform,果断从3.0升级到3.1,将setUniformLocationF32改为了GLProgramState:setUniformVec4,结果就悲剧了,调了半天发现是下面代码的原因,
lua_pushstring(L, “z”);
lua_gettable(L, lo);
outValue->z = lua_isnil(L, -1) ? 0 : lua_tonumber(L, -1);
lua_pop(L, 1);
lua_pushstring(L, "w");
lua_gettable(L, lo);
outValue->w = lua_isnil(L, -1) ? 0 : lua_tonumber(L, -1);
原先红色字体部分都是y,这样传入的4个数字就都赋值到y上面去了