Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2011
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.80 KB | None | 0 0
  1. uint8_t data[256];
  2. srand ( time(NULL) );
  3. for (int i = 0 ; i < 256; i ++)
  4. data[i] = rand() % 256;
  5.  
  6. // uint8_t *data = vp->bitmap;
  7. GLuint textureName;
  8.  
  9. glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  10.  
  11. glMatrixMode(GL_PROJECTION);
  12. glLoadIdentity();
  13.  
  14. glScalef(1.0f, -1.0f, 1.0f);
  15. glOrtho(0, plugin_width , 0, plugin_height , -1.0, 1.0);
  16.  
  17. glActiveTexture(GL_TEXTURE0);
  18. glEnable(GL_TEXTURE_RECTANGLE_ARB);
  19. glGenTextures(1, &textureName);
  20.  
  21. glBindTexture(GL_TEXTURE_RECTANGLE_ARB, textureName);
  22. glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_STORAGE_HINT_APPLE , GL_STORAGE_SHARED_APPLE);
  23. glPixelStorei(GL_UNPACK_CLIENT_STORAGE_APPLE, GL_TRUE);
  24. glTextureRangeAPPLE(GL_TEXTURE_RECTANGLE_ARB, width * height * 2,data);
  25.  
  26.  
  27. glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
  28. glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  29. glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
  30. glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
  31. // glPixelStorei(GL_UNPACK_ROW_LENGTH, 0);
  32. // glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
  33.  
  34. glTexImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, GL_RGBA, width, height, 0 ,GL_YCBCR_422_APPLE, GL_UNSIGNED_SHORT_8_8_REV_APPLE,data);
  35.  
  36. glTexSubImage2D (GL_TEXTURE_RECTANGLE_ARB, 0, 0, 0, width, height,GL_YCBCR_422_APPLE, GL_UNSIGNED_SHORT_8_8_REV_APPLE ,data);
  37.  
  38.  
  39. glMatrixMode(GL_MODELVIEW);
  40. glLoadIdentity();
  41.  
  42. glBegin(GL_QUADS);
  43.  
  44. glTexCoord2f(0.0f,0.0f);
  45. glVertex3f(0, 0, -1.0f);
  46.  
  47. glTexCoord2f(1.0f,0.0f);
  48. glVertex3f(width, 0, -1.0f);
  49.  
  50. glTexCoord2f(1.0f,1.0f);
  51. glVertex3f(width, height, -1.0f);
  52.  
  53. glTexCoord2f(0.0f,1.0f);
  54. glVertex3f(0, height, -1.0f);
  55.  
  56. glEnd();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement