我正在使用luaglut在 lua 中做一些图形。我正在为这个函数苦苦挣扎glReadPixels
,尤其是它的最后一个输入参数GLvoid *pixels
。
void glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
pixels
是指针类型,所以在 lua 中它是 type lightuserdata
。根据这篇文章,我设法在lua中获得了一个lightuserdata
类型变量;但是,在我得到我想通过调用进入的框架之后:img
img
glReadPixels(0, 0, 250, 250, GL_RGB, GL_UNSIGNED_BYTE, img)
我无能为力img
。我尝试使用 ffi 在 lua 中创建相同的结构并将其img
转换为torch.Tensor类型,但它太慢了,因为我必须逐个像素地分配值。
所以我在这里问是否有比我采取的这种麻烦的方法更好的方法来使用这个glReadPixels
函数?img
两者table
和torch.Tensor
类型img
都可以。先感谢您!