diff --git a/src/Cxx/Rendering/GradientBackground.cxx b/src/Cxx/Rendering/GradientBackground.cxx
index f4a959ecd431742e34a399ca155e151fb65974cb..d20c5657240435feed386a7aac9884d35e7cb7d6 100644
--- a/src/Cxx/Rendering/GradientBackground.cxx
+++ b/src/Cxx/Rendering/GradientBackground.cxx
@@ -251,42 +251,42 @@ vtkNew<vtkPolyData> ReadPolyData(fs::path const& path)
   if (extension == ".ply")
   {
     vtkNew<vtkPLYReader> reader;
-    reader->SetFileName(path.c_str());
+    reader->SetFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }
   else if (extension == ".vtp")
   {
     vtkNew<vtkXMLPolyDataReader> reader;
-    reader->SetFileName(path.c_str());
+    reader->SetFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }
   else if (extension == ".obj")
   {
     vtkNew<vtkOBJReader> reader;
-    reader->SetFileName(path.c_str());
+    reader->SetFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }
   else if (extension == ".stl")
   {
     vtkNew<vtkSTLReader> reader;
-    reader->SetFileName(path.c_str());
+    reader->SetFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }
   else if (extension == ".vtk")
   {
     vtkNew<vtkPolyDataReader> reader;
-    reader->SetFileName(path.c_str());
+    reader->SetFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }
   else if (extension == ".g")
   {
     vtkNew<vtkBYUReader> reader;
-    reader->SetGeometryFileName(path.c_str());
+    reader->SetGeometryFileName(path.generic_string().c_str());
     reader->Update();
     polyData->DeepCopy(reader->GetOutput());
   }