diff --git a/flixel/FlxSprite.hx b/flixel/FlxSprite.hx index a0daab5ef..e11d8935d 100644 --- a/flixel/FlxSprite.hx +++ b/flixel/FlxSprite.hx @@ -803,26 +803,26 @@ class FlxSprite extends FlxObject */ override public function draw():Void { + checkClipRect(); + checkEmptyFrame(); - + if (alpha == 0 || _frame.type == FlxFrameType.EMPTY) return; - + if (dirty) // rarely calcFrame(useFramePixels); - checkClipRect(); - for (camera in getCamerasLegacy()) { if (!camera.visible || !camera.exists || !isOnScreen(camera)) continue; - + if (isSimpleRender(camera)) drawSimple(camera); else drawComplex(camera); - + #if FLX_DEBUG FlxBasic.visibleCount++; #end @@ -839,7 +839,8 @@ class FlxSprite extends FlxObject */ function checkClipRect() { - if ((clipRect == null && Math.isNaN(_lastClipRect.x)) + if (frames == null + || (clipRect == null && Math.isNaN(_lastClipRect.x)) || (clipRect != null && clipRect.equals(_lastClipRect))) return;