소스 검색

Merge pull request #52605 from TokageItLab/fixed-vtype-in-node-oneshot

Fixed value type and applied small change in `AnimationNodeOneShot`
Rémi Verschelde 4 년 전
부모
커밋
be63fdff80
1개의 변경된 파일6개의 추가작업 그리고 7개의 파일을 삭제
  1. 6 7
      scene/animation/animation_blend_tree.cpp

+ 6 - 7
scene/animation/animation_blend_tree.cpp

@@ -248,27 +248,26 @@ double AnimationNodeOneShot::process(double p_time, bool p_seek) {
 		if (fade_in > 0) {
 			blend = time / fade_in;
 		} else {
-			blend = 0; //wtf
+			blend = 0;
 		}
-
-	} else if (!do_start && remaining < fade_out) {
-		if (fade_out) {
+	} else if (!do_start && remaining <= fade_out) {
+		if (fade_out > 0) {
 			blend = (remaining / fade_out);
 		} else {
-			blend = 1.0;
+			blend = 0;
 		}
 	} else {
 		blend = 1.0;
 	}
 
-	float main_rem;
+	double main_rem;
 	if (mix == MIX_MODE_ADD) {
 		main_rem = blend_input(0, p_time, p_seek, 1.0, FILTER_IGNORE, !sync);
 	} else {
 		main_rem = blend_input(0, p_time, p_seek, 1.0 - blend, FILTER_BLEND, !sync);
 	}
 
-	float os_rem = blend_input(1, os_seek ? time : p_time, os_seek, blend, FILTER_PASS, false);
+	double os_rem = blend_input(1, os_seek ? time : p_time, os_seek, blend, FILTER_PASS, false);
 
 	if (do_start) {
 		remaining = os_rem;