Browse Source

Fixed Geometry:getVertexMap to return 1-based vertex indices and made it return the default vertex map instead of nil if no map is set.

Alex Szpakowski 12 years ago
parent
commit
c230098642

+ 1 - 3
src/modules/graphics/opengl/Image.cpp

@@ -539,8 +539,6 @@ bool Image::refresh()
 	if (texture == 0)
 		return false;
 
-	if (gl.getMaxTextureSize())
-
 	while (glGetError() != GL_NO_ERROR); // clear errors
 
 	// We want this lock to potentially cover mipmap creation as well.
@@ -593,7 +591,7 @@ void Image::uploadDefaultTexture()
 
 	// A nice friendly checkerboard to signify invalid textures...
 	GLubyte px[] = {0xFF,0xFF,0xFF,0xFF, 0xC0,0xC0,0xC0,0xFF,
-					0xC0,0xC0,0xC0,0xFF, 0xFF,0xFF,0xFF,0xFF};
+	                0xC0,0xC0,0xC0,0xFF, 0xFF,0xFF,0xFF,0xFF};
 
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, 2, 2, 0, GL_RGBA, GL_UNSIGNED_BYTE, px);
 }

+ 7 - 3
src/modules/graphics/opengl/wrap_Geometry.cpp

@@ -151,13 +151,17 @@ int w_Geometry_getVertexMap(lua_State *L)
 	size_t elemcount = g->getElementCount();
 	const uint16 *elements = g->getElementArray();
 
-	if (elemcount == 0 || elements == 0)
-		return 0;
+	if (elemcount == 0)
+		elemcount = g->getVertexCount();
 
 	lua_createtable(L, elemcount, 0);
 	for (size_t i = 0; i < elemcount; i++)
 	{
-		lua_pushinteger(L, elements[i]);
+		if (elements)
+			lua_pushinteger(L, elements[i] + 1);
+		else
+			lua_pushinteger(L, i + 1);
+
 		lua_rawseti(L, -2, i + 1);
 	}