@@ -9,51 +9,51 @@ void position_direction(t_seer *pSeer, t_camera *pCamera, int xPixel)
9
9
* pSeer -> dda .iter ;
10
10
pCamera -> map_x = (int )pSeer -> player .position .x ;
11
11
pCamera -> map_y = (int )pSeer -> player .position .y ;
12
- pSeer -> dda .delta_distance .x = sqrt (1 + (pCamera -> direction .y * pCamera -> direction .y ) / (pCamera -> direction .x * pCamera -> direction .x ));
13
- pSeer -> dda .delta_distance .y = sqrt (1 + (pCamera -> direction .x * pCamera -> direction .x ) / (pCamera -> direction .y * pCamera -> direction .y ));
12
+ pSeer -> dda .scaling_factor .x = sqrt (1 + (pCamera -> direction .y * pCamera -> direction .y ) / (pCamera -> direction .x * pCamera -> direction .x ));
13
+ pSeer -> dda .scaling_factor .y = sqrt (1 + (pCamera -> direction .x * pCamera -> direction .x ) / (pCamera -> direction .y * pCamera -> direction .y ));
14
14
}
15
15
16
16
void calculate_offsets (t_seer * pSeer , t_camera * pCamera )
17
17
{
18
18
if (pCamera -> direction .x < 0 )
19
19
{
20
20
pSeer -> dda .step_x = -1 ;
21
- pSeer -> dda .side_distance .x = (pSeer -> player .position .x - pCamera -> map_x )
22
- * pSeer -> dda .delta_distance .x ;
21
+ pSeer -> dda .distance .x = (pSeer -> player .position .x - pCamera -> map_x )
22
+ * pSeer -> dda .scaling_factor .x ;
23
23
}
24
24
else
25
25
{
26
26
pSeer -> dda .step_x = 1 ;
27
- pSeer -> dda .side_distance .x = (pCamera -> map_x + 1.0
28
- - pSeer -> player .position .x ) * pSeer -> dda .delta_distance .x ;
27
+ pSeer -> dda .distance .x = (pCamera -> map_x + 1.0
28
+ - pSeer -> player .position .x ) * pSeer -> dda .scaling_factor .x ;
29
29
}
30
30
if (pCamera -> direction .y < 0 )
31
31
{
32
32
pSeer -> dda .step_y = -1 ;
33
- pSeer -> dda .side_distance .y = (pSeer -> player .position .y - pCamera -> map_y )
34
- * pSeer -> dda .delta_distance .y ;
33
+ pSeer -> dda .distance .y = (pSeer -> player .position .y - pCamera -> map_y )
34
+ * pSeer -> dda .scaling_factor .y ;
35
35
}
36
36
else
37
37
{
38
38
pSeer -> dda .step_y = 1 ;
39
- pSeer -> dda .side_distance .y = (pCamera -> map_y + 1.0
40
- - pSeer -> player .position .y ) * pSeer -> dda .delta_distance .y ;
39
+ pSeer -> dda .distance .y = (pCamera -> map_y + 1.0
40
+ - pSeer -> player .position .y ) * pSeer -> dda .scaling_factor .y ;
41
41
}
42
42
}
43
43
44
44
void dda (t_seer * pSeer , t_camera * pCamera , int * side )
45
45
{
46
46
while (true)
47
47
{
48
- if (pSeer -> dda .side_distance .x < pSeer -> dda .side_distance .y )
48
+ if (pSeer -> dda .distance .x < pSeer -> dda .distance .y )
49
49
{
50
- pSeer -> dda .side_distance .x += pSeer -> dda .delta_distance .x ;
50
+ pSeer -> dda .distance .x += pSeer -> dda .scaling_factor .x ;
51
51
pCamera -> map_x += pSeer -> dda .step_x ;
52
52
* side = HORIZONTAL ;
53
53
}
54
54
else
55
55
{
56
- pSeer -> dda .side_distance .y += pSeer -> dda .delta_distance .y ;
56
+ pSeer -> dda .distance .y += pSeer -> dda .scaling_factor .y ;
57
57
pCamera -> map_y += pSeer -> dda .step_y ;
58
58
* side = VERTICAL ;
59
59
}
@@ -70,7 +70,7 @@ void vertline(t_seer *pSeer, t_camera *pCamera, int side)
70
70
pCamera -> wall_distance = fabs ((pCamera -> map_y - pSeer -> player .position .y + (1 - pSeer -> dda .step_y ) / 2 ) / pCamera -> direction .y );
71
71
if (pCamera -> wall_distance == 0 )
72
72
pCamera -> wall_distance = 0.0001 ;
73
- pSeer -> vertline .height = ( int )( SCREEN_HEIGHT / pCamera -> wall_distance ) ;
73
+ pSeer -> vertline .height = SCREEN_HEIGHT / pCamera -> wall_distance ;
74
74
pSeer -> vertline .start = - pSeer -> vertline .height / 2 + SCREEN_HEIGHT / 2 ;
75
75
if (pSeer -> vertline .start < 0 )
76
76
pSeer -> vertline .start = 0 ;
0 commit comments