/** * Need to delete local textures and textures on servers. * XXX \todo this function should probably go elsewhere. * \param n * \param textures */ void TILESORTSPU_APIENTRY tilesortspu_DeleteTextures(GLsizei n, const GLuint *textures) { GET_THREAD(thread); tilesortspuFlush(thread); crStateDeleteTextures(n, textures); if (tilesort_spu.swap) crPackDeleteTexturesSWAP(n, textures); else crPackDeleteTextures(n, textures); tilesortspuBroadcastGeom(0); tilesortspuShipBuffers(); }
void SERVER_DISPATCH_APIENTRY crServerDispatchDeleteTextures( GLsizei n, const GLuint *textures) { GLuint *newTextures = (GLuint *) crAlloc(n * sizeof(GLuint)); GLint i; if (!newTextures) { crError("crServerDispatchDeleteTextures: out of memory"); return; } for (i = 0; i < n; i++) { newTextures[i] = crStateGetTextureHWID(textures[i]); } crStateDeleteTextures(n, textures); cr_server.head_spu->dispatch_table.DeleteTextures(n, newTextures); crFree(newTextures); }
void PACKSPU_APIENTRY packspu_DeleteTextures(GLsizei n, const GLuint * textures) { crStateDeleteTextures(n, textures); crPackDeleteTextures(n, textures); }