Jelajahi Sumber

Add half frame to floor()

Metin Celik 4 tahun lalu
induk
melakukan
edcb7b8129
2 mengubah file dengan 2 tambahan dan 2 penghapusan
  1. 1 1
      scene/2d/canvas_item.cpp
  2. 1 1
      scene/resources/material.cpp

+ 1 - 1
scene/2d/canvas_item.cpp

@@ -148,7 +148,7 @@ void CanvasItemMaterial::_update_shader() {
 		code += "\t\tparticle_frame = mod(particle_frame, particle_total_frames);\n";
 		code += "\t}";
 		code += "\tUV /= vec2(h_frames, v_frames);\n";
-		code += "\tUV += vec2(mod(particle_frame, h_frames) / h_frames, floor(particle_frame / h_frames) / v_frames);\n";
+		code += "\tUV += vec2(mod(particle_frame, h_frames) / h_frames, floor((particle_frame + 0.5) / h_frames) / v_frames);\n";
 		code += "}\n";
 	}
 

+ 1 - 1
scene/resources/material.cpp

@@ -672,7 +672,7 @@ void SpatialMaterial::_update_shader() {
 			code += "\t\tparticle_frame = mod(particle_frame, particle_total_frames);\n";
 			code += "\t}";
 			code += "\tUV /= vec2(h_frames, v_frames);\n";
-			code += "\tUV += vec2(mod(particle_frame, h_frames) / h_frames, floor(particle_frame / h_frames) / v_frames);\n";
+			code += "\tUV += vec2(mod(particle_frame, h_frames) / h_frames, floor((particle_frame + 0.5) / h_frames) / v_frames);\n";
 		} break;
 	}