91 lines
5.5 KiB
C++
91 lines
5.5 KiB
C++
// @lint-ignore-every LICENSELINT
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
#include "OculusXRHMD_ConsoleCommands.h"
|
|
|
|
#if OCULUS_HMD_SUPPORTED_PLATFORMS
|
|
#include "OculusXRHMD.h"
|
|
#include "OculusXRSceneCaptureCubemap.h"
|
|
|
|
namespace OculusXRHMD
|
|
{
|
|
|
|
//-------------------------------------------------------------------------------------------------
|
|
// FConsoleCommands
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
/// @cond DOXYGEN_WARNINGS
|
|
|
|
FConsoleCommands::FConsoleCommands(class FOculusXRHMD* InHMDPtr)
|
|
: UpdateOnRenderThreadCommand(TEXT("vr.oculus.bUpdateOnRenderThread"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_UpdateRT", "Oculus Rift specific extension.\nEnables or disables updating on the render thread.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::UpdateOnRenderThreadCommandHandler))
|
|
, PixelDensityMinCommand(TEXT("vr.oculus.PixelDensity.min"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_PixelDensityMin", "Oculus Rift specific extension.\nMinimum pixel density when adaptive pixel density is enabled").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::PixelDensityMinCommandHandler))
|
|
, PixelDensityMaxCommand(TEXT("vr.oculus.PixelDensity.max"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_PixelDensityMax", "Oculus Rift specific extension.\nMaximum pixel density when adaptive pixel density is enabled").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::PixelDensityMaxCommandHandler))
|
|
, HQBufferCommand(TEXT("vr.oculus.bHQBuffer"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_HQBuffer", "Oculus Rift specific extension.\nEnable or disable using floating point texture format for the eye layer.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::HQBufferCommandHandler))
|
|
, HQDistortionCommand(TEXT("vr.oculus.bHQDistortion"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_HQDistortion", "Oculus Rift specific extension.\nEnable or disable using multiple mipmap levels for the eye layer.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::HQDistortionCommandHandler))
|
|
, ShowGlobalMenuCommand(TEXT("vr.oculus.ShowGlobalMenu"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_GlobalMenu", "Oculus Rift specific extension.\nOpens the global menu.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::ShowGlobalMenuCommandHandler))
|
|
, ShowQuitMenuCommand(TEXT("vr.oculus.ShowQuitMenu"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_QuitMenu", "Oculus Rift specific extension.\nOpens the quit menu.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::ShowQuitMenuCommandHandler))
|
|
|
|
#if !UE_BUILD_SHIPPING
|
|
, StatsCommand(TEXT("vr.oculus.Debug.bShowStats"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_Stats", "Oculus Rift specific extension.\nEnable or disable rendering of stats.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::StatsCommandHandler))
|
|
, CubemapCommand(TEXT("vr.oculus.Debug.CaptureCubemap"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_Cubemap", "Oculus Rift specific extension.\nCaptures a cubemap for Oculus Home.\nOptional arguments (default is zero for all numeric arguments):\n xoff=<float> -- X axis offset from the origin\n yoff=<float> -- Y axis offset\n zoff=<float> -- Z axis offset\n yaw=<float> -- the direction to look into (roll and pitch is fixed to zero)\n mobile -- Generate a Mobile format cubemap\n (height of the captured cubemap will be 1024 instead of 2048 pixels)\n").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateStatic(&UOculusXRSceneCaptureCubemap::CaptureCubemapCommandHandler))
|
|
, ShowSettingsCommand(TEXT("vr.oculus.Debug.Show"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_Show", "Oculus Rift specific extension.\nShows the current value of various stereo rendering params.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::ShowSettingsCommandHandler))
|
|
, IPDCommand(TEXT("vr.oculus.Debug.IPD"),
|
|
*NSLOCTEXT("OculusRift", "CCommandText_IPD", "Oculus Rift specific extension.\nShows or changes the current interpupillary distance in meters.").ToString(),
|
|
FConsoleCommandWithWorldArgsAndOutputDeviceDelegate::CreateRaw(InHMDPtr, &FOculusXRHMD::IPDCommandHandler))
|
|
#endif // !UE_BUILD_SHIPPING
|
|
{
|
|
}
|
|
|
|
bool FConsoleCommands::Exec(UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Ar)
|
|
{
|
|
const TCHAR* OrigCmd = Cmd;
|
|
FString AliasedCommand;
|
|
|
|
if (FParse::Command(&Cmd, TEXT("OVRGLOBALMENU")))
|
|
{
|
|
AliasedCommand = TEXT("vr.oculus.ShowGlobalMenu");
|
|
}
|
|
else if (FParse::Command(&Cmd, TEXT("OVRQUITMENU")))
|
|
{
|
|
AliasedCommand = TEXT("vr.oculus.ShowQuitMenu");
|
|
}
|
|
#if !UE_BUILD_SHIPPING
|
|
else if (FParse::Command(&Cmd, TEXT("vr.oculus.Debug.EnforceHeadTracking")))
|
|
{
|
|
AliasedCommand = TEXT("vr.HeadTracking.bEnforced");
|
|
}
|
|
#endif // !UE_BUILD_SHIPPING
|
|
|
|
if (!AliasedCommand.IsEmpty())
|
|
{
|
|
Ar.Logf(ELogVerbosity::Warning, TEXT("%s is deprecated. Use %s instead"), OrigCmd, *AliasedCommand);
|
|
return IConsoleManager::Get().ProcessUserConsoleInput(*AliasedCommand, Ar, InWorld);
|
|
}
|
|
return false;
|
|
}
|
|
|
|
/// @endcond
|
|
|
|
} // namespace OculusXRHMD
|
|
|
|
#endif // OCULUS_HMD_SUPPORTED_PLATFORMS
|