Kaynağa Gözat

Clean up and added some TODO

Eiyeron Fulmincendii 11 yıl önce
ebeveyn
işleme
6e55043fda
2 değiştirilmiş dosya ile 2 ekleme ve 10 silme
  1. 2 0
      draw_states.c
  2. 0 10
      wall.c

+ 2 - 0
draw_states.c

@@ -125,6 +125,7 @@ static void drawPlayer(Camera *cam, int player_angle, int nb_lines, Line_Transit
 
 	do
 	{
+		// TODO : use fixed for only two trig calls?
 		x[i] = (8. + cam->zoom)*cos(PI * (tmp_angle + cam->angle)/180.) + cam->cX;
 		y[i] = (8. + cam->zoom)*sin(PI * (tmp_angle + cam->angle)/180.) + cam->cY;
 
@@ -154,6 +155,7 @@ static void drawPlayer(Camera *cam, int player_angle, int nb_lines, Line_Transit
 	//ML_filled_circle(cam.cX, cam.cY, 6, BLACK);
 	ML_polygone(x, y, nb_lines, BLACK);
 	//draw the player. At such a low scale, it was impossible to draw a rotating triangle, so its a radius 1 circle instead.
+	// TODO : Replace it for a quick sprite blit, or unwrapped ML_pixel procedure.
 	ML_filled_circle((9. + cam->zoom)*cos( PI*(player_angle + cam->angle)/180) + cam->cX, (9. + cam->zoom)*sin( PI*(player_angle+cam->angle)/180) + cam->cY, 1, BLACK);
 
 }

+ 0 - 10
wall.c

@@ -84,29 +84,21 @@ void updateWalls(Wall *list, unsigned int delta_time)
 
 void drawWalls(Wall *list, Camera *cam, int nb_lines, Line_Transition line_transition)
 {//NEEDS A COMPLETE REWRITE TO SUPPORT THE LINE TRANSITIONS !
-	// TODO : Speeed up with more fixed.
 	Wall *tmp;
 
 	fix coeff = 0;
-	// float coeff = 0.0;
 	fix transition_angle = 0;
-	// float transition_angle = 0.0;
 	fix delta_angle = fdiv(FIX(360), FIX(nb_lines));
-	// float delta_angle = 360.0 / nb_lines;
 	fix offset = 0;
-	// float offset = 0;
 
 	if(line_transition.delta_nb_lines == 1)
 		nb_lines ++;
 
 	if(line_transition.counter_start != 0)
 		coeff = fdiv(FIX(line_transition.counter), FIX(line_transition.counter_start));
-	// 	coeff = (float)line_transition.counter / (float)line_transition.counter_start;
 	transition_angle = fmul(delta_angle, coeff);
-	// transition_angle = delta_angle * coeff;
 
 	offset = fdiv(fmul((delta_angle - transition_angle), FIX(line_transition.delta_nb_lines)), FIX(nb_lines));
-	// offset = (delta_angle - transition_angle) * line_transition.delta_nb_lines/(float)nb_lines;
 
 	tmp = list;
 	do{
@@ -116,7 +108,6 @@ void drawWalls(Wall *list, Camera *cam, int nb_lines, Line_Transition line_trans
 			{
 				const fix delta_angle_minus_offset = delta_angle - offset;
 				const fix angle =  fmul(delta_angle_minus_offset, FIX(tmp->line)) + FIX(cam->angle);
-				// const float angle = ((delta_angle - offset) * tmp->line + cam->angle) * PI / 180.;
 				const fix cos1 = fcos(angle);
 				const fix cos2 = fcos(angle + delta_angle_minus_offset);
 				const fix sin1 = fsin(angle);
@@ -124,7 +115,6 @@ void drawWalls(Wall *list, Camera *cam, int nb_lines, Line_Transition line_trans
 				int i;
 
 				fix dist = ftofix(tmp->d + cam->zoom);
-				// float dist = tmp->d + cam->zoom;
 				for(i = 0; i < tmp->h && dist > FIX(8); ++i) {
 					ML_line(64 + fixtof(fmul(dist, cos1)), 32 + fixtof(fmul(dist,sin1)), 64 + fixtof(fmul(dist, cos2)), 32 + fixtof(fmul(dist, sin2)), BLACK);
 					dist -= FIX(1);