소스 검색

AnimatedTexture: fix float precision issues causing glitches on WebGL

trethaller 4 년 전
부모
커밋
a51738fdfc
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      h3d/shader/AnimatedTexture.hx

+ 1 - 1
h3d/shader/AnimatedTexture.hx

@@ -32,7 +32,7 @@ class AnimatedTexture extends hxsl.Shader {
 		function vertex() {
 		function vertex() {
 			var frame = (global.time - startTime) * speed + float(int(startFrame));
 			var frame = (global.time - startTime) * speed + float(int(startFrame));
 			blendFactor = frame.fract();
 			blendFactor = frame.fract();
-			frame -= blendFactor;
+			frame = floor(frame);
 			if( loop ) frame %= totalFrames else frame = min(frame, totalFrames - 1);
 			if( loop ) frame %= totalFrames else frame = min(frame, totalFrames - 1);
 			var nextFrame = if( loop ) (frame + 1) % totalFrames else min(frame + 1, totalFrames - 1);
 			var nextFrame = if( loop ) (frame + 1) % totalFrames else min(frame + 1, totalFrames - 1);