LuaBasicConversions.cpp luaval_to_vec4 转换bug

版本是刚下的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上面去了

这个问题太严重了,所有Vec4都要出问题。楼主很厉害,又发现了个BUG。
楼主用的是cocos2dx 3.1吧?这边quick的V3版本我可以修改,cocos2dx V3那边建议楼主发个PR给他们。

ccx那边我发帖子被移这边来那,貌似他们不管这个啊。。。

在论坛上发,开发组应该处理不过来。直接在 GitHub上给他们递交PullRequest肯定可以的。