Hi, I can't get "clCreateFromGLTexture2D" to work.. here is the relevant code:
Code :glGenTextures(1, &t); glBindTexture(GL_TEXTURE_2D, t); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 1024, 768, 0, GL_RGBA, GL_FLOAT, 0); glBindTexture(GL_TEXTURE_2D, 0); glFlush(); cl_int err = 0; cl_mem img = clCreateFromGLTexture2D(clContext(), CL_MEM_READ_WRITE, GL_TEXTURE_2D, 0, t, &err); std::cout << err << std::endl;
this always outputs -60 which is the constant CL_INVALID_GL_OBJECT. But Why?
- t contains a valid texture id (i've checked this)
- t has a valid internal format. I tried many, including GL_RGBA16F, etc..
- t is complete according to GL specification -- as a test: using this texture in framebuffer works (I've tried to set other texture parameters to be sure)
- Is this maybe a driver problem?
- Is there other relevant code I've maybe done wrong? (as device I used my only GPU)
thanks for your help