UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IHeadMountedDisplayModule Class Referenceabstract

#include <IHeadMountedDisplayModule.h>

+ Inheritance diagram for IHeadMountedDisplayModule:

Classes

struct  FCompareModulePriority
 

Public Member Functions

virtual FString GetModuleKeyName () const =0
 
virtual void GetModuleAliases (TArray< FString > &AliasesOut) const
 
float GetModulePriority () const
 
virtual void StartupModule () override
 
virtual bool PreInit ()
 
virtual bool IsHMDConnected ()
 
virtual uint64 GetGraphicsAdapterLuid ()
 
virtual FString GetAudioInputDevice ()
 
virtual FString GetAudioOutputDevice ()
 
virtual FString GetDeviceSystemName ()
 
virtual TSharedPtr< class IXRTrackingSystem, ESPMode::ThreadSafeCreateTrackingSystem ()=0
 
virtual TSharedPtr< IHeadMountedDisplayVulkanExtensions, ESPMode::ThreadSafeGetVulkanExtensions ()
 
virtual bool IsStandaloneStereoOnlyDevice ()
 
- Public Member Functions inherited from IModuleInterface
virtual ~IModuleInterface ()
 
virtual void PreUnloadCallback ()
 
virtual void PostLoadCallback ()
 
virtual void ShutdownModule ()
 
virtual bool SupportsDynamicReloading ()
 
virtual bool SupportsAutomaticShutdown ()
 
virtual bool IsGameModule () const
 

Static Public Member Functions

static FName GetModularFeatureName ()
 
static IHeadMountedDisplayModuleGet ()
 
static bool IsAvailable ()
 

Detailed Description

The public interface of the HeadmountedDisplay Module

Member Function Documentation

◆ CreateTrackingSystem()

virtual TSharedPtr< class IXRTrackingSystem, ESPMode::ThreadSafe > IHeadMountedDisplayModule::CreateTrackingSystem ( )
pure virtual

Attempts to create a new head tracking device interface

Returns
Interface to the new head tracking device, if we were able to successfully create one

◆ Get()

static IHeadMountedDisplayModule & IHeadMountedDisplayModule::Get ( )
inlinestatic

Singleton-like access to IHeadMountedDisplayModule

Returns
Returns reference to the highest priority IHeadMountedDisplayModule module

◆ GetAudioInputDevice()

virtual FString IHeadMountedDisplayModule::GetAudioInputDevice ( )
inlinevirtual

Get name of audio input device where the HMD was last connected

◆ GetAudioOutputDevice()

virtual FString IHeadMountedDisplayModule::GetAudioOutputDevice ( )
inlinevirtual

Get name of audio output device where the HMD was last connected

◆ GetDeviceSystemName()

virtual FString IHeadMountedDisplayModule::GetDeviceSystemName ( )
inlinevirtual

Get XR system name

◆ GetGraphicsAdapterLuid()

virtual uint64 IHeadMountedDisplayModule::GetGraphicsAdapterLuid ( )
inlinevirtual

Get LUID of graphics adapter where the HMD was last connected.

@TODO currently, for mac, GetGraphicsAdapterLuid() is used to return a device index (how the function "GetGraphicsAdapter" used to work), not a ID... eventually we want the HMD module to return the MTLDevice's registryID, but we cannot fully handle that until we drop support for 10.12 NOTE: this is why we use -1 as a sentinel value representing "no device" (instead of 0, which is used in the LUID case)

◆ GetModularFeatureName()

static FName IHeadMountedDisplayModule::GetModularFeatureName ( )
inlinestatic

◆ GetModuleAliases()

virtual void IHeadMountedDisplayModule::GetModuleAliases ( TArray< FString > &  AliasesOut) const
inlinevirtual

Returns an array of alternative ini/config names for this module (helpful if the module's name changes, so we can have back-compat)

◆ GetModuleKeyName()

virtual FString IHeadMountedDisplayModule::GetModuleKeyName ( ) const
pure virtual

Returns the key into the HMDPluginPriority section of the config file for this module

◆ GetModulePriority()

float IHeadMountedDisplayModule::GetModulePriority ( ) const
inline

Returns the priority of this module from INI file configuration

◆ GetVulkanExtensions()

virtual TSharedPtr< IHeadMountedDisplayVulkanExtensions, ESPMode::ThreadSafe > IHeadMountedDisplayModule::GetVulkanExtensions ( )
inlinevirtual

Extensions: If the HMD supports the various extensions listed below, it should return a valid pointer to an implementation contained within it.

◆ IsAvailable()

static bool IHeadMountedDisplayModule::IsAvailable ( )
inlinestatic

Checks to see if there exists a module registered as an HMD. It is only valid to call Get() if IsAvailable() returns true.

Returns
True if there exists a module registered as an HMD.

◆ IsHMDConnected()

virtual bool IHeadMountedDisplayModule::IsHMDConnected ( )
inlinevirtual

Test to see whether HMD is connected. Used to guide which plug-in to select.

◆ IsStandaloneStereoOnlyDevice()

virtual bool IHeadMountedDisplayModule::IsStandaloneStereoOnlyDevice ( )
inlinevirtual

Indicates that the device we're currently running does not support a spectator view. This will only be called once at initialization and should only return a result based for the current device the engine is running on.

◆ PreInit()

virtual bool IHeadMountedDisplayModule::PreInit ( )
inlinevirtual

Optionally pre-initialize the HMD module. Return false on failure.

◆ StartupModule()

virtual void IHeadMountedDisplayModule::StartupModule ( )
inlineoverridevirtual

Register module as an HMD on startup.

Reimplemented from IModuleInterface.


The documentation for this class was generated from the following file: