diff --git a/Source/RWTHVRToolkit/Private/Utility/VirtualRealityUtilities.cpp b/Source/RWTHVRToolkit/Private/Utility/VirtualRealityUtilities.cpp
index 83caec4ba4c7aa5da751329224cc38656d64bf94..799dcfa2e1de5080fc684891807a4f89ba0536cb 100644
--- a/Source/RWTHVRToolkit/Private/Utility/VirtualRealityUtilities.cpp
+++ b/Source/RWTHVRToolkit/Private/Utility/VirtualRealityUtilities.cpp
@@ -12,11 +12,13 @@
 
 #include "Engine/Engine.h"
 #include "IXRTrackingSystem.h"
+#include "IHeadMountedDisplay.h"
 
 bool UVirtualRealityUtilities::IsDesktopMode()
 {
 	return !IsRoomMountedMode() && !IsHeadMountedMode();
 }
+
 bool UVirtualRealityUtilities::IsRoomMountedMode()
 {
 #if PLATFORM_SUPPORTS_NDISPLAY
@@ -25,6 +27,7 @@ bool UVirtualRealityUtilities::IsRoomMountedMode()
 	return false;
 #endif
 }
+
 bool UVirtualRealityUtilities::IsHeadMountedMode()
 {
 	return GEngine->XRSystem.IsValid() && GEngine->XRSystem->IsHeadTrackingAllowed();
@@ -101,14 +104,22 @@ FString UVirtualRealityUtilities::GetNodeName()
 	return FString(TEXT("Localhost"));
 #endif
 }
+
 float UVirtualRealityUtilities::GetEyeDistance()
 {
+	if(IsHeadMountedMode())
+	{
+	    return GEngine->XRSystem->GetHMDDevice()->GetInterpupillaryDistance();
+	}
+    else
+	{
 #if PLATFORM_SUPPORTS_NDISPLAY
-	ADisplayClusterRootActor* RootActor = IDisplayCluster::Get().GetGameMgr()->GetRootActor();
-	return (RootActor) ? RootActor->GetDefaultCamera()->GetInterpupillaryDistance() : 0;
+	    ADisplayClusterRootActor* RootActor = IDisplayCluster::Get().GetGameMgr()->GetRootActor();
+	    return (RootActor) ? RootActor->GetDefaultCamera()->GetInterpupillaryDistance() : 0.0f;
 #else
-	return 0;
+	    return 0.0f;
 #endif
+	}
 }
 
 EEyeStereoOffset UVirtualRealityUtilities::GetNodeEyeType()
diff --git a/Source/RWTHVRToolkit/Public/Utility/VirtualRealityUtilities.h b/Source/RWTHVRToolkit/Public/Utility/VirtualRealityUtilities.h
index ac1d18728792013b9c759fdefe3582ed12bad7c3..23689665292042eb4ec13111e8453089b3d02b7d 100644
--- a/Source/RWTHVRToolkit/Public/Utility/VirtualRealityUtilities.h
+++ b/Source/RWTHVRToolkit/Public/Utility/VirtualRealityUtilities.h
@@ -52,6 +52,7 @@ public:
 	UFUNCTION(BlueprintPure, Category = "DisplayCluster") static bool IsSlave();
 
 	UFUNCTION(BlueprintPure, Category = "DisplayCluster") static FString GetNodeName();
+	/* Distance in meters */
 	UFUNCTION(BlueprintPure, Category = "DisplayCluster") static float GetEyeDistance();
 
 	UFUNCTION(BlueprintPure, Category = "DisplayCluster") static EEyeStereoOffset GetNodeEyeType();