Advertisement
Guest User

Untitled

a guest
Jan 21st, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. glEnable(GL_DEPTH_TEST);
  2. GLUquadric* quadratic = gluNewQuadric();
  3. gluQuadricNormals(quadratic, GLU_SMOOTH);
  4. gluQuadricTexture(quadratic, GL_TRUE);
  5. gluQuadricDrawStyle(quadratic, GLU_FILL);
  6. GLuint textrure = LoadTexture("deski.BMP");
  7. glBindTexture(GL_TEXTURE_2D, textrure);
  8. gluQuadricTexture(quadratic, GL_TRUE);
  9. gluQuadricNormals(quadratic, GLU_SMOOTH);
  10.  
  11. glEnable(GL_TEXTURE_2D);
  12.  
  13. GLuint LoadTexture(const char * filename)
  14. {
  15.  
  16. GLuint texture;
  17.  
  18. int width, height;
  19.  
  20. unsigned char * data;
  21.  
  22. FILE * file;
  23.  
  24. file = fopen(filename, "rb");
  25.  
  26. if (file == NULL) return 0;
  27. width = 1024;
  28. height = 512;
  29. data = (unsigned char *)malloc(width * height * 3);
  30. //int size = fseek(file,);
  31. fread(data, width * height * 3, 1, file);
  32. fclose(file);
  33.  
  34. for (int i = 0; i < width * height; ++i)
  35. {
  36. int index = i * 3;
  37. unsigned char B, R;
  38. B = data[index];
  39. R = data[index + 2];
  40.  
  41. data[index] = R;
  42. data[index + 2] = B;
  43.  
  44. }
  45.  
  46.  
  47. glGenTextures(1, &texture);
  48. glBindTexture(GL_TEXTURE_2D, texture);
  49. glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
  50. glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST);
  51.  
  52.  
  53. glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  54. glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
  55. glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
  56. gluBuild2DMipmaps(GL_TEXTURE_2D, 3, width, height, GL_RGB, GL_UNSIGNED_BYTE, data);
  57. free(data);
  58.  
  59. return texture;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement