masx1996

Untitled

Mar 11th, 2018
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.99 KB | None | 0 0
  1. *****Zad1*****
  2.     switch(key)
  3.     {
  4.     case 'a':
  5.         glRotatef(10, 0, 1, 0);
  6.         break;
  7.     case 's':
  8.         glRotatef(10, 1, 0, 0);
  9.         break;
  10.     case 'd':
  11.         glRotatef(-10, 0, 1, 0);
  12.         break;
  13.     case 'w':
  14.         glRotatef(-10, 1, 0, 0);
  15.         break;
  16.     case 'q':
  17.         glRotatef(10, 0, 0, 1);
  18.         break;
  19.     case 'e':
  20.         glRotatef(-10, 0, 0, 1);
  21.         break;
  22. }
  23. *****Zad3*****
  24. void init_texture(void)
  25. {
  26.     glEnable(GL_DEPTH_TEST);
  27.     glDepthFunc(GL_LESS);
  28.  
  29.     Image *image1 = loadTexture("satin.bmp");
  30.     if (image1 == NULL)
  31.     {
  32.         printf("Image was not returned from loadTexture\n");
  33.         exit(0);
  34.     }
  35.  
  36.     glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
  37.     // Create Texture
  38.     glGenTextures(2, texture);
  39.     glBindTexture(GL_TEXTURE_2D, texture[0]);
  40.     glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
  41.     glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
  42.     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  43.     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
  44.  
  45.     //TO DO Task 3
  46.     //add texture from code stored in tex_brick
  47.  
  48.     glTexImage2D(GL_TEXTURE_2D, 0, 3, 8, 8, 0,
  49.         GL_RGB, GL_UNSIGNED_BYTE, tex_brick);
  50.     glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);
  51.  
  52.     //TO DO Task 3
  53.     //add second texture into texture[1] read from file
  54.  
  55.     glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
  56.     // Create Texture
  57.     //glGenTextures(2, texture);
  58.     glBindTexture(GL_TEXTURE_2D, texture[1]);
  59.     glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
  60.     glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
  61.     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  62.     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
  63.  
  64.     glTexImage2D(GL_TEXTURE_2D, 0, 3, image1->sizeX, image1->sizeY, 0,
  65.         GL_RGB, GL_UNSIGNED_BYTE, image1->data);
  66.     glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);
  67.  
  68.     free(image1);
  69.  
  70.  
  71.     glEnable(GL_TEXTURE_2D);
  72.     glShadeModel(GL_FLAT);
  73. }
  74.  
  75. glBindTexture(GL_TEXTURE_2D, texture[0]);
  76.     glPushMatrix();
  77.     //TO DO Task 3
  78.  
  79.     glTranslatef(4, 0, 0);
  80.     glutSolidTeapot(1.0);
  81.     glPopMatrix();
  82.  
  83.     //TO DO Task 3
  84.     glBindTexture(GL_TEXTURE_2D, texture[1]);
  85.     glPushMatrix();
  86.     //TO DO Task 3
  87.  
  88.     glTranslatef(-4, 0, 0);
  89.     glutSolidTeapot(1.0);
  90.     glPopMatrix();
  91. *****Zad4*****
  92. void init_fog(void)
  93. {
  94.     glFogi(GL_FOG_MODE, fogMode[fogfilter]);         // Fog mode
  95.     glFogfv(GL_FOG_COLOR, fogColor);         // Set fog color
  96.     glFogf(GL_FOG_DENSITY, fogDensity);         // Density of fog
  97.     glHint(GL_FOG_HINT, GL_DONT_CARE);         // kind of creation - pixel or vertex
  98.     glFogf(GL_FOG_START, 1.0f);         // length from begin
  99.     glFogf(GL_FOG_END, 5.0f);         // length to end
  100.     if (fogOn)
  101.         glEnable(GL_FOG);         // Enable GL_FOG
  102.     else
  103.         glDisable(GL_FOG);
  104. }
  105.  
  106. case 'f':
  107.         fogOn = !fogOn;
  108.         init_fog();
  109.         break;
  110.     case ' ':
  111.         fogfilter = fogfilter >= 2 ? 0 : ++fogfilter;
  112.         init_fog();
  113.         break;
  114.     case '+':
  115.         fogDensity += 0.1f;
  116.         init_fog();
  117.         break;
  118.     case '-':
  119.         fogDensity = fogDensity <= 0 ? 0 : fogDensity - 0.1f;
  120.         init_fog();
  121.         break;
  122.     }
  123. *****Zad5*****
Add Comment
Please, Sign In to add comment