Advertisement
Guest User

Untitled

a guest
Apr 9th, 2016
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     float posX = 9, posY = 12.5;
  2.     float dirX = -1, dirY = 0;
  3.     float planeX = 0, planeY = 0.9;
  4.     float time = 0, oldTime = 0;
  5.    
  6.     float cameraX, rayPosX, rayPosY, rayDirX, rayDirY, sideDistX, sideDistY, deltaDistX, deltaDistY, perpWallDist, frameTime, moveSpeed, rotSpeed, oldDirX, oldPlaneX;
  7.     int x, y, mapX, mapY, stepX, stepY, hit, side, lineHeight, drawStart, drawEnd;
  8.  
  9.                 cameraX = 2 * x / (float)(screenWidth) -1;
  10.             rayPosX = posX;
  11.             rayPosY = posY;
  12.             rayDirX = dirX + planeX * cameraX;
  13.             rayDirY = dirY + planeY * cameraX;
  14.            
  15.             mapX = (int)(rayPosX);
  16.             mapY = (int)(rayPosY);
  17.             deltaDistX = SquareRootFloat(1 + (rayDirY * rayDirY) / (rayDirX * rayDirX));
  18.             deltaDistY = SquareRootFloat(1 + (rayDirX * rayDirX) / (rayDirY * rayDirY));
  19.             hit = 0;
  20.            
  21.             if (rayDirX < 0)
  22.             {
  23.                 stepX = -1;
  24.                 sideDistX = (rayPosX - mapX) * deltaDistX;
  25.             }
  26.             else
  27.             {
  28.                 stepX = 1;
  29.                 sideDistX = (mapX + 1.0 - rayPosX) * deltaDistX;
  30.             }
  31.             if (rayDirY < 0)
  32.             {
  33.                 stepY = -1;
  34.                 sideDistY = (rayPosY - mapY) * deltaDistY;
  35.             }
  36.             else
  37.             {
  38.                 stepY = 1;
  39.                 sideDistY = (mapY + 1.0 - rayPosY) * deltaDistY;
  40.             }
  41.            
  42.             while (hit == 0)
  43.             {
  44.                 if (sideDistX < sideDistY)
  45.                 {
  46.                     sideDistX += deltaDistX;
  47.                     mapX += stepX;
  48.                     side = 0;
  49.                 }
  50.                 else
  51.                 {
  52.                     sideDistY += deltaDistY;
  53.                     mapY += stepY;
  54.                     side = 1;
  55.                 }
  56.                
  57.                 if (worldMap[mapX][mapY] > 0) hit = 1;
  58.             }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement