Fix Pass:points / Pass:lines with vectors;

This commit is contained in:
bjorn 2022-08-12 18:11:45 -07:00
parent b51d4e7de7
commit 8233c202ba
1 changed files with 4 additions and 1 deletions

View File

@ -592,6 +592,7 @@ static uint32_t luax_getvertexcount(lua_State* L, int index) {
lua_pop(L, 1);
return luax_len(L, index) / (innerType == LUA_TNUMBER ? 3 : 1);
case LUA_TUSERDATA:
case LUA_TLIGHTUSERDATA:
return lua_gettop(L) - index + 1;
default:
return luax_typeerror(L, index, "number, table, or vector");
@ -629,8 +630,10 @@ static void luax_readvertices(lua_State* L, int index, float* vertices, uint32_t
}
break;
case LUA_TUSERDATA:
case LUA_TLIGHTUSERDATA:
for (uint32_t i = 0; i < count; i++) {
vec3_init(vertices, luax_checkvector(L, index + i, V_VEC3, NULL));
float *v = luax_checkvector(L, index + i, V_VEC3, NULL);
memcpy(vertices, v, 3 * sizeof(float));
vertices += 3;
}
break;