diff --git a/src/quick3d/qdemonscenerenderer.cpp b/src/quick3d/qdemonscenerenderer.cpp
index 21b1a76b4d71027d572cb06f9afc29a04d26554c..cf3633fbb5a3555940a98a2444c906c2d282e55b 100644
--- a/src/quick3d/qdemonscenerenderer.cpp
+++ b/src/quick3d/qdemonscenerenderer.cpp
@@ -81,7 +81,7 @@ void SGFramebufferObjectNode::render()
 
 void SGFramebufferObjectNode::handleScreenChange()
 {
-    if (window->effectiveDevicePixelRatio() != devicePixelRatio) {
+    if (!qFuzzyCompare(window->effectiveDevicePixelRatio(), devicePixelRatio)) {
         renderer->invalidateFramebufferObject();
         quickFbo->update();
     }