refactor the wrist tracker's debug gzmo settings into a ustruct in order to be re-used

This commit is contained in:
Mamadou Babaei
2023-04-28 01:21:20 +02:00
parent 890378a0df
commit 6e49d38907
11 changed files with 243 additions and 853 deletions
@@ -109,21 +109,21 @@ USGWristTrackerComponent::USGWristTrackerComponent(const FObjectInitializer& Obj
SetRight(true);
bOverridePluginWristTrackingSettings = false;
bDrawDebugWristTrackerGizmo = false;
bDrawWristTrackerDebugGizmo = false;
TrackingHardware = ESGPositionalTrackingHardware::None;
TrackingHardwareLocationOffset = FVector::ZeroVector;
TrackingHardwareLocationOffset = FVector::ZeroVector;
bOverridePluginWristTrackingDebugSettings = false;
bDrawDebugWristTrackerGizmo = false;
DebugWristTrackerGizmoLength = 4.0f;
DebugWristTrackerGizmoXAxisColor = FColor(1.0f, 0.0f, 0.0f, 1.0f);
DebugWristTrackerGizmoYAxisColor = FColor(0.0f, 1.0f, 0.0f, 1.0f);
DebugWristTrackerGizmoZAxisColor = FColor(0.0f, 0.0f, 1.0f, 1.0f);
bDebugWristTrackerGizmoPersistentLines = false;
DebugWristTrackerGizmoLifeTimeModifier = 1.1f;
DebugWristTrackerGizmoDepthPriority = 0;
DebugWristTrackerGizmoThickness = 1.0f;
bDrawWristTrackerDebugGizmo = false;
WristTrackerDebugGizmoSettings = FSGDebugGizmoSettings(
4.0f, 1.0f,
FColor(1.0f, 0.0f, 0.0f, 1.0f),
FColor(0.0f, 1.0f, 0.0f, 1.0f),
FColor(0.0f, 0.0f, 1.0f, 1.0f),
false, 1.1f, 0
);
bDrawWristTrackerDebugGizmo = false;
bBackendInitialized = false;
Glove = nullptr;
@@ -218,265 +218,53 @@ void USGWristTrackerComponent::SetTrackingHardwareRotationOffset(const FRotator&
TrackingHardwareRotationOffset = InTrackingHardwareRotationOffset;
}
bool USGWristTrackerComponent::GetDrawDebugWristTrackerGizmo() const
bool USGWristTrackerComponent::GetDrawWristTrackerDebugGizmo() const
{
if (OverridesPluginWristTrackingDebugSettings())
{
return !!bDrawDebugWristTrackerGizmo;
return !!bDrawWristTrackerDebugGizmo;
}
return USGSettings::GetInstance()->GetDrawDebugWristTrackerGizmo();
return USGSettings::GetInstance()->GetDrawWristTrackerDebugGizmo();
}
void USGWristTrackerComponent::SetDrawDebugWristTrackerGizmo(const bool bInDrawDebugWristTrackerGizmo)
void USGWristTrackerComponent::SetDrawWristTrackerDebugGizmo(const bool bInDrawWristTrackerDebugGizmo)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT( "Setting bDrawDebugWristTrackerGizmo is only permitted when bOverridePluginWristTrackingDebugSettings is"
TEXT( "Setting bDrawWristTrackerDebugGizmo is only permitted when bOverridePluginWristTrackingDebugSettings is"
" enabled!"));
bDrawDebugWristTrackerGizmo = bInDrawDebugWristTrackerGizmo;
bDrawWristTrackerDebugGizmo = bInDrawWristTrackerDebugGizmo;
}
float USGWristTrackerComponent::GetDebugWristTrackerGizmoLength() const
const FSGDebugGizmoSettings& USGWristTrackerComponent::GetWristTrackerDebugGizmoSettings() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoLength is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
GetDrawWristTrackerDebugGizmo(),
TEXT("Getting WristTrackerDebugGizmoLength is only permitted when bDrawWristTrackerDebugGizmo is enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoLength;
return WristTrackerDebugGizmoSettings;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoLength();
return USGSettings::GetInstance()->GetWristTrackerDebugGizmoSettings();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoLength(const float InDebugWristTrackerGizmoLength)
void USGWristTrackerComponent::SetWristTrackerDebugGizmoSettings(
const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoLength is only permitted when bOverridePluginWristTrackingDebugSettings is"
TEXT("Setting WristTrackerDebugGizmoLength is only permitted when bOverridePluginWristTrackingDebugSettings is"
" enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoLength is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
GetDrawWristTrackerDebugGizmo(),
TEXT("Setting WristTrackerDebugGizmoLength is only permitted when bDrawWristTrackerDebugGizmo is enabled!"));
DebugWristTrackerGizmoLength = InDebugWristTrackerGizmoLength;
}
const FColor& USGWristTrackerComponent::GetDebugWristTrackerGizmoXAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoXAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoXAxisColor;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoXAxisColor();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoXAxisColor(
const FColor& InDebugWristTrackerGizmoXAxisColor)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoXAxisColor is only permitted when bOverridePluginWristTrackingDebugSettings"
" is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoXAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoXAxisColor = InDebugWristTrackerGizmoXAxisColor;
}
const FColor& USGWristTrackerComponent::GetDebugWristTrackerGizmoYAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoYAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoYAxisColor;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoYAxisColor();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoYAxisColor(
const FColor& InDebugWristTrackerGizmoYAxisColor)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoYAxisColor is only permitted when bOverridePluginWristTrackingDebugSettings"
" is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoYAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoYAxisColor = InDebugWristTrackerGizmoYAxisColor;
}
const FColor& USGWristTrackerComponent::GetDebugWristTrackerGizmoZAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoZAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoZAxisColor;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoZAxisColor();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoZAxisColor(
const FColor& InDebugWristTrackerGizmoZAxisColor)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoZAxisColor is only permitted when bOverridePluginWristTrackingDebugSettings"
" is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoZAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoZAxisColor = InDebugWristTrackerGizmoZAxisColor;
}
bool USGWristTrackerComponent::GetDebugWristTrackerGizmoPersistentLines() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting bDebugWristTrackerGizmoPersistentLines is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return !!bDebugWristTrackerGizmoPersistentLines;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoPersistentLines();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoPersistentLines(
const bool bInDebugWristTrackerGizmoPersistentLines)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoPersistentLines is only permitted when"
" bOverridePluginWristTrackingDebugSettings is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting bDebugWristTrackerGizmoPersistentLines is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
bDebugWristTrackerGizmoPersistentLines = bInDebugWristTrackerGizmoPersistentLines;
}
float USGWristTrackerComponent::GetDebugWristTrackerGizmoLifeTimeModifier() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoLifeTimeModifier is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoLifeTimeModifier;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoLifeTimeModifier();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoLifeTimeModifier(
const float InDebugWristTrackerGizmoLifeTimeModifier)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoLifetimeModifier is only permitted when"
" bOverridePluginWristTrackingDebugSettings is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoLifeTimeModifier is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoLifeTimeModifier = InDebugWristTrackerGizmoLifeTimeModifier;
}
uint8 USGWristTrackerComponent::GetDebugWristTrackerGizmoDepthPriority() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoDepthPriority is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoDepthPriority;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoDepthPriority();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoDepthPriority(const uint8 InDebugWristTrackerGizmoDepthPriority)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoDepthPriority is only permitted when"
" bOverridePluginWristTrackingDebugSettings is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoDepthPriority is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoDepthPriority = InDebugWristTrackerGizmoDepthPriority;
}
float USGWristTrackerComponent::GetDebugWristTrackerGizmoThickness() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoThickness is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
if (OverridesPluginWristTrackingDebugSettings())
{
return DebugWristTrackerGizmoThickness;
}
return USGSettings::GetInstance()->GetDebugWristTrackerGizmoThickness();
}
void USGWristTrackerComponent::SetDebugWristTrackerGizmoThickness(float InDebugWristTrackerGizmoThickness)
{
ensureAlwaysMsgf(
OverridesPluginWristTrackingDebugSettings(),
TEXT("Setting DebugWristTrackerGizmoDepthThickness is only permitted when"
" bOverridePluginWristTrackingDebugSettings is enabled!"));
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoThickness is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
DebugWristTrackerGizmoThickness = InDebugWristTrackerGizmoThickness;
WristTrackerDebugGizmoSettings = InWristTrackerDebugGizmoSettings;
}
#if WITH_EDITOR
@@ -541,7 +329,7 @@ void USGWristTrackerComponent::TickComponent(
Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
if (GetDrawDebugWristTrackerGizmo())
if (GetDrawWristTrackerDebugGizmo())
{
Pimpl->DrawDebugGizmo();
}
@@ -749,18 +537,13 @@ void USGWristTrackerComponent::FImpl::DrawDebugGizmo()
const UWorld* World{Owner->GetWorld()};
const FVector& Location{Owner->GetComponentLocation()};
const FRotator& Rotation{Owner->GetComponentRotation()};
const float Length = Owner->GetDebugWristTrackerGizmoLength();
const bool bPersistentLines = Owner->GetDebugWristTrackerGizmoPersistentLines();
const float LifeTimeModifier = Owner->GetDebugWristTrackerGizmoLifeTimeModifier();
const float DepthPriority = Owner->GetDebugWristTrackerGizmoDepthPriority();
const float Thickness = Owner->GetDebugWristTrackerGizmoThickness();
const FColor& XAxisColor{Owner->GetDebugWristTrackerGizmoXAxisColor()};
const FColor& YAxisColor{Owner->GetDebugWristTrackerGizmoYAxisColor()};
const FColor& ZAxisColor{Owner->GetDebugWristTrackerGizmoZAxisColor()};
const FSGDebugGizmoSettings& DebugGizmoSettings{Owner->GetWristTrackerDebugGizmoSettings()};
FSGDebugGizmo::Draw(World, Location, Rotation, Length, Thickness,
XAxisColor, YAxisColor, ZAxisColor,
bPersistentLines, LifeTimeModifier, DepthPriority);
FSGDebugGizmo::Draw(
World, Location, Rotation,
DebugGizmoSettings.Length, DebugGizmoSettings.Thickness,
DebugGizmoSettings.XAxisColor, DebugGizmoSettings.YAxisColor, DebugGizmoSettings.ZAxisColor,
DebugGizmoSettings.bPersistentLines, DebugGizmoSettings.LifeTimeModifier, DebugGizmoSettings.DepthPriority);
}
void USGWristTrackerComponent::FImplDeleter::operator()(const FImpl* P) const
@@ -41,6 +41,7 @@
#include "MotionControllerComponent.h"
#include "Templates/UniquePtr.h"
#include "SGSettings/SGDebugGizmoSettings.h"
#include "SGTypes/SGCoreTypes.h"
#include "SGWristTrackerComponent.generated.h"
@@ -129,71 +130,15 @@ private:
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings", EditConditionHides))
uint8 bDrawDebugWristTrackerGizmo : 1;
uint8 bDrawWristTrackerDebugGizmo : 1;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
* Valid only if bDrawWristTrackerDebugGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawWristTrackerDebugGizmo",
EditConditionHides))
float DebugWristTrackerGizmoLength;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
FColor DebugWristTrackerGizmoXAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
FColor DebugWristTrackerGizmoYAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
FColor DebugWristTrackerGizmoZAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
uint8 bDebugWristTrackerGizmoPersistentLines : 1;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
float DebugWristTrackerGizmoLifeTimeModifier;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
uint8 DebugWristTrackerGizmoDepthPriority;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditAnywhere, Category = "Override Plugin Settings",
meta=(EditCondition="bOverridePluginWristTrackingDebugSettings && bDrawDebugWristTrackerGizmo",
EditConditionHides))
float DebugWristTrackerGizmoThickness;
FSGDebugGizmoSettings WristTrackerDebugGizmoSettings;
private:
UPROPERTY(Transient)
@@ -238,32 +183,11 @@ public:
bOverridePluginWristTrackingDebugSettings = bInOverridePluginWristTrackingDebugSettings;
}
bool GetDrawDebugWristTrackerGizmo() const;
void SetDrawDebugWristTrackerGizmo(bool bInDrawDebugWristTrackerGizmo);
bool GetDrawWristTrackerDebugGizmo() const;
void SetDrawWristTrackerDebugGizmo(bool bInDrawWristTrackerDebugGizmo);
float GetDebugWristTrackerGizmoLength() const;
void SetDebugWristTrackerGizmoLength(float InDebugWristTrackerGizmoLength);
const FColor& GetDebugWristTrackerGizmoXAxisColor() const;
void SetDebugWristTrackerGizmoXAxisColor(const FColor& InDebugWristTrackerGizmoXAxisColor);
const FColor& GetDebugWristTrackerGizmoYAxisColor() const;
void SetDebugWristTrackerGizmoYAxisColor(const FColor& InDebugWristTrackerGizmoYAxisColor);
const FColor& GetDebugWristTrackerGizmoZAxisColor() const;
void SetDebugWristTrackerGizmoZAxisColor(const FColor& InDebugWristTrackerGizmoZAxisColor);
bool GetDebugWristTrackerGizmoPersistentLines() const;
void SetDebugWristTrackerGizmoPersistentLines(bool bInDebugWristTrackerGizmoPersistentLines);
float GetDebugWristTrackerGizmoLifeTimeModifier() const;
void SetDebugWristTrackerGizmoLifeTimeModifier(float InDebugWristTrackerGizmoLifeTimeModifier);
uint8 GetDebugWristTrackerGizmoDepthPriority() const;
void SetDebugWristTrackerGizmoDepthPriority(uint8 InDebugWristTrackerGizmoDepthPriority);
float GetDebugWristTrackerGizmoThickness() const;
void SetDebugWristTrackerGizmoThickness(float InDebugWristTrackerGizmoThickness);
const FSGDebugGizmoSettings& GetWristTrackerDebugGizmoSettings() const;
void SetWristTrackerDebugGizmoSettings(const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings);
FORCEINLINE bool IsLeft() const
{
@@ -99,112 +99,28 @@ void UWristTrackerComponentKismetLibrary::OverridePluginWristTrackingDebugSettin
WristTrackerComponent->OverridePluginWristTrackingDebugSettings(bInOverridePluginWristTrackingDebugSettings);
}
bool UWristTrackerComponentKismetLibrary::GetDrawDebugWristTrackerGizmo(
bool UWristTrackerComponentKismetLibrary::GetDrawWristTrackerDebugGizmo(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDrawDebugWristTrackerGizmo();
return WristTrackerComponent->GetDrawWristTrackerDebugGizmo();
}
void UWristTrackerComponentKismetLibrary::SetDrawDebugWristTrackerGizmo(
USGWristTrackerComponent* WristTrackerComponent, const bool bInDrawDebugWristTrackerGizmo)
void UWristTrackerComponentKismetLibrary::SetDrawWristTrackerDebugGizmo(
USGWristTrackerComponent* WristTrackerComponent, const bool bInDrawWristTrackerDebugGizmo)
{
WristTrackerComponent->SetDrawDebugWristTrackerGizmo(bInDrawDebugWristTrackerGizmo);
WristTrackerComponent->SetDrawWristTrackerDebugGizmo(bInDrawWristTrackerDebugGizmo);
}
float UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoLength(
const FSGDebugGizmoSettings& UWristTrackerComponentKismetLibrary::GetWristTrackerDebugGizmoSettings(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoLength();
return WristTrackerComponent->GetWristTrackerDebugGizmoSettings();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoLength(
USGWristTrackerComponent* WristTrackerComponent, const float InDebugWristTrackerGizmoLength)
void UWristTrackerComponentKismetLibrary::SetWristTrackerDebugGizmoSettings(
USGWristTrackerComponent* WristTrackerComponent, const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings)
{
WristTrackerComponent->SetDebugWristTrackerGizmoLength(InDebugWristTrackerGizmoLength);
}
const FColor& UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoXAxisColor(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoXAxisColor();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoXAxisColor(
USGWristTrackerComponent* WristTrackerComponent, const FColor& InDebugWristTrackerGizmoXAxisColor)
{
WristTrackerComponent->SetDebugWristTrackerGizmoXAxisColor(InDebugWristTrackerGizmoXAxisColor);
}
const FColor& UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoYAxisColor(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoYAxisColor();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoYAxisColor(
USGWristTrackerComponent* WristTrackerComponent, const FColor& InDebugWristTrackerGizmoYAxisColor)
{
WristTrackerComponent->SetDebugWristTrackerGizmoYAxisColor(InDebugWristTrackerGizmoYAxisColor);
}
const FColor& UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoZAxisColor(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoZAxisColor();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoZAxisColor(
USGWristTrackerComponent* WristTrackerComponent, const FColor& InDebugWristTrackerGizmoZAxisColor)
{
WristTrackerComponent->SetDebugWristTrackerGizmoZAxisColor(InDebugWristTrackerGizmoZAxisColor);
}
bool UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoPersistentLines(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoPersistentLines();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoPersistentLines(
USGWristTrackerComponent* WristTrackerComponent, const bool bInDebugWristTrackerGizmoPersistentLines)
{
WristTrackerComponent->SetDebugWristTrackerGizmoPersistentLines(bInDebugWristTrackerGizmoPersistentLines);
}
float UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoLifeTimeModifier(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoLifeTimeModifier();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoLifeTimeModifier(
USGWristTrackerComponent* WristTrackerComponent, const float InDebugWristTrackerGizmoLifeTimeModifier)
{
WristTrackerComponent->SetDebugWristTrackerGizmoLifeTimeModifier(InDebugWristTrackerGizmoLifeTimeModifier);
}
uint8 UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoDepthPriority(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoDepthPriority();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoDepthPriority(
USGWristTrackerComponent* WristTrackerComponent, const uint8 InDebugWristTrackerGizmoDepthPriority)
{
WristTrackerComponent->SetDebugWristTrackerGizmoDepthPriority(InDebugWristTrackerGizmoDepthPriority);
}
float UWristTrackerComponentKismetLibrary::GetDebugWristTrackerGizmoThickness(
const USGWristTrackerComponent* WristTrackerComponent)
{
return WristTrackerComponent->GetDebugWristTrackerGizmoThickness();
}
void UWristTrackerComponentKismetLibrary::SetDebugWristTrackerGizmoThickness(
USGWristTrackerComponent* WristTrackerComponent, const float InDebugWristTrackerGizmoThickness)
{
WristTrackerComponent->SetDebugWristTrackerGizmoThickness(InDebugWristTrackerGizmoThickness);
WristTrackerComponent->SetWristTrackerDebugGizmoSettings(InWristTrackerDebugGizmoSettings);
}
bool UWristTrackerComponentKismetLibrary::IsLeft(const USGWristTrackerComponent* WristTrackerComponent)
@@ -40,6 +40,8 @@
#include "SGKismet/SGBlueprintFunctionLibrary.h"
#include "SGTypes/SGCoreTypes.h"
#include "SGSettings/SGDebugGizmoSettings.h"
#include "SGWristTrackerComponentKismetLibrary.generated.h"
class USkeletalMeshComponent;
@@ -65,21 +67,21 @@ public:
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetTrackingHardware(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
ESGPositionalTrackingHardware InTrackingHardware);
ESGPositionalTrackingHardware InTrackingHardware);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static const FVector& GetTrackingHardwareLocationOffset(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetTrackingHardwareLocationOffset(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FVector& InTrackingHardwareLocationOffset);
const FVector& InTrackingHardwareLocationOffset);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static const FRotator& GetTrackingHardwareRotationOffset(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetTrackingHardwareRotationOffset(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FRotator& InTrackingHardwareRotationOffset);
const FRotator& InTrackingHardwareRotationOffset);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static bool OverridesPluginWristTrackingDebugSettings(const USGWristTrackerComponent* WristTrackerComponent);
@@ -89,70 +91,19 @@ public:
bool bInOverridePluginWristTrackingDebugSettings);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static bool GetDrawDebugWristTrackerGizmo(const USGWristTrackerComponent* WristTrackerComponent);
static bool GetDrawWristTrackerDebugGizmo(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDrawDebugWristTrackerGizmo(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
bool bInDrawDebugWristTrackerGizmo);
static void SetDrawWristTrackerDebugGizmo(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
bool bInDrawWristTrackerDebugGizmo);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static float GetDebugWristTrackerGizmoLength(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoLength(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
float InDebugWristTrackerGizmoLength);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static const FColor& GetDebugWristTrackerGizmoXAxisColor(
static const FSGDebugGizmoSettings& GetWristTrackerDebugGizmoSettings(
const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoXAxisColor(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FColor& InDebugWristTrackerGizmoXAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static const FColor& GetDebugWristTrackerGizmoYAxisColor(
const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoYAxisColor(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FColor& InDebugWristTrackerGizmoYAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static const FColor& GetDebugWristTrackerGizmoZAxisColor(
const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoZAxisColor(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FColor& InDebugWristTrackerGizmoZAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static bool GetDebugWristTrackerGizmoPersistentLines(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoPersistentLines(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
bool bInDebugWristTrackerGizmoPersistentLines);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static float GetDebugWristTrackerGizmoLifeTimeModifier(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoLifeTimeModifier(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
float InDebugWristTrackerGizmoLifeTimeModifier);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static uint8 GetDebugWristTrackerGizmoDepthPriority(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoDepthPriority(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
uint8 InDebugWristTrackerGizmoDepthPriority);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static float GetDebugWristTrackerGizmoThickness(const USGWristTrackerComponent* WristTrackerComponent);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
static void SetDebugWristTrackerGizmoThickness(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
float InDebugWristTrackerGizmoThickness);
static void SetWristTrackerDebugGizmoSettings(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent,
const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings);
UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Wrist Tracker Component")
static bool IsLeft(const USGWristTrackerComponent* WristTrackerComponent);
@@ -58,6 +58,7 @@ public class SenseGloveKismet : ModuleRules
"SenseGlove",
"SenseGloveCore",
"SenseGloveLog",
"SenseGloveSettings",
"SenseGloveTypes",
"SenseGloveUtils",
}
@@ -0,0 +1,51 @@
/**
* @file
*
* @author Mamadou Babaei <mamadou@senseglove.com>
*
* @section LICENSE
*
* (The MIT License)
*
* Copyright (c) 2020 - 2023 SenseGlove
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* @section DESCRIPTION
*
*
*/
#include "SGSettings/SGDebugGizmoSettings.h"
FSGDebugGizmoSettings::FSGDebugGizmoSettings(
const float InLength, const float InThickness,
const FColor& InXAxisColor, const FColor& InYAxisColor, const FColor& InZAxisColor,
const bool bInPersistentLines, const float InLifeTimeModifier, const uint8 InDepthPriority)
: Length(InLength),
Thickness(InThickness),
XAxisColor(InXAxisColor),
YAxisColor(InYAxisColor),
ZAxisColor(InZAxisColor),
bPersistentLines(bInPersistentLines),
LifeTimeModifier(InLifeTimeModifier),
DepthPriority(InDepthPriority)
{
}
@@ -86,22 +86,20 @@ USGSettings::USGSettings()
Pimpl->ResetTrackingHardwareValuesToZero();
bDrawDebugWristTrackerGizmo = false;
TrackingHardware = ESGPositionalTrackingHardware::None;
TrackingHardwareLocationOffsetLeftHand = FVector::ZeroVector;
TrackingHardwareLocationOffsetRightHand = FVector::ZeroVector;
TrackingHardwareRotationOffsetLeftHand = FRotator::ZeroRotator;
TrackingHardwareRotationOffsetRightHand = FRotator::ZeroRotator;
bDrawDebugWristTrackerGizmo = false;
DebugWristTrackerGizmoLength = 4.0f;
DebugWristTrackerGizmoXAxisColor = FColor(1.0f, 0.0f, 0.0f, 1.0f);
DebugWristTrackerGizmoYAxisColor = FColor(0.0f, 1.0f, 0.0f, 1.0f);
DebugWristTrackerGizmoZAxisColor = FColor(0.0f, 0.0f, 1.0f, 1.0f);
bDebugWristTrackerGizmoPersistentLines = false;
DebugWristTrackerGizmoLifeTimeModifier = 1.1f;
DebugWristTrackerGizmoDepthPriority = 0;
DebugWristTrackerGizmoThickness = 1.0f;
bDrawWristTrackerDebugGizmo = false;
WristTrackerDebugGizmoSettings = FSGDebugGizmoSettings(
4.0f, 1.0f,
FColor(1.0f, 0.0f, 0.0f, 1.0f),
FColor(0.0f, 1.0f, 0.0f, 1.0f),
FColor(0.0f, 0.0f, 1.0f, 1.0f),
false, 1.1f, 0
);
}
const FVector& USGSettings::GetTrackingHardwareLocationOffsetLeftHand() const
@@ -178,145 +176,22 @@ void USGSettings::SetTrackingHardwareRotationOffsetRightHand(
TrackingHardwareRotationOffsetRightHand = InTrackingHardwareRotationOffsetRightHand;
}
float USGSettings::GetDebugWristTrackerGizmoLength() const
const FSGDebugGizmoSettings& USGSettings::GetWristTrackerDebugGizmoSettings() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoLength is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
return DebugWristTrackerGizmoLength;
}
void USGSettings::SetDebugWristTrackerGizmoLength(const float InDebugWristTrackerGizmoLength)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoLength is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
DebugWristTrackerGizmoLength = InDebugWristTrackerGizmoLength;
}
const FColor& USGSettings::GetDebugWristTrackerGizmoXAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoXAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoXAxisColor;
}
void USGSettings::SetDebugWristTrackerGizmoXAxisColor(const FColor& InDebugWristTrackerGizmoXAxisColor)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoXAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoXAxisColor = InDebugWristTrackerGizmoXAxisColor;
}
const FColor& USGSettings::GetDebugWristTrackerGizmoYAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoYAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoXAxisColor;
}
void USGSettings::SetDebugWristTrackerGizmoYAxisColor(const FColor& InDebugWristTrackerGizmoYAxisColor)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoYAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoYAxisColor = InDebugWristTrackerGizmoYAxisColor;
}
const FColor& USGSettings::GetDebugWristTrackerGizmoZAxisColor() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoZAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoZAxisColor;
}
void USGSettings::SetDebugWristTrackerGizmoZAxisColor(const FColor& InDebugWristTrackerGizmoZAxisColor)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoZAxisColor is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoZAxisColor = InDebugWristTrackerGizmoZAxisColor;
}
bool USGSettings::GetDebugWristTrackerGizmoPersistentLines() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting bDebugWristTrackerGizmoPersistentLines is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return !!bDebugWristTrackerGizmoPersistentLines;
}
void USGSettings::SetDebugWristTrackerGizmoPersistentLines(const bool bInDebugWristTrackerGizmoPersistentLines)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting bDebugWristTrackerGizmoPersistentLines is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
bDebugWristTrackerGizmoPersistentLines = bInDebugWristTrackerGizmoPersistentLines;
}
float USGSettings::GetDebugWristTrackerGizmoLifeTimeModifier() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoLifeTimeModifier is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoLifeTimeModifier;
}
void USGSettings::SetDebugWristTrackerGizmoLifeTimeModifier(const float InDebugWristTrackerGizmoLifeTimeModifier)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting DebugWristTrackerGizmoLifeTimeModifier is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoLifeTimeModifier = InDebugWristTrackerGizmoLifeTimeModifier;
}
uint8 USGSettings::GetDebugWristTrackerGizmoDepthPriority() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Getting DebugWristTrackerGizmoDepthPriority is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoDepthPriority;
}
void USGSettings::SetDebugWristTrackerGizmoDepthPriority(const uint8 InDebugWristTrackerGizmoDepthPriority)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
TEXT("Setting is only permitted when bDrawDebugWristTrackerGizmo is enabled!"));
DebugWristTrackerGizmoDepthPriority = InDebugWristTrackerGizmoDepthPriority;
}
float USGSettings::GetDebugWristTrackerGizmoThickness() const
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
GetDrawWristTrackerDebugGizmo(),
TEXT("Getting DebugWristTrackerGizmoThickness is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
return DebugWristTrackerGizmoThickness;
return WristTrackerDebugGizmoSettings;
}
void USGSettings::SetDebugWristTrackerGizmoThickness(const float InDebugWristTrackerGizmoThickness)
void USGSettings::SetWristTrackerDebugGizmoSettings(const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings)
{
ensureAlwaysMsgf(
GetDrawDebugWristTrackerGizmo(),
GetDrawWristTrackerDebugGizmo(),
TEXT("Setting DebugWristTrackerGizmoThickness is only permitted when bDrawDebugWristTrackerGizmo is"
" enabled!"));
DebugWristTrackerGizmoThickness = InDebugWristTrackerGizmoThickness;
WristTrackerDebugGizmoSettings = InWristTrackerDebugGizmoSettings;
}
bool USGSettings::ShouldCreateSubsystem(UObject* Outer) const
@@ -0,0 +1,81 @@
/**
* @file
*
* @author Mamadou Babaei <mamadou@senseglove.com>
*
* @section LICENSE
*
* (The MIT License)
*
* Copyright (c) 2020 - 2023 SenseGlove
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* @section DESCRIPTION
*
*
*/
#pragma once
#include "UObject/ObjectMacros.h"
#include "SGDebugGizmoSettings.generated.h"
USTRUCT(BlueprintType)
struct SENSEGLOVESETTINGS_API FSGDebugGizmoSettings
{
GENERATED_USTRUCT_BODY()
public:
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
float Length;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
float Thickness;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
FColor XAxisColor;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
FColor YAxisColor;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
FColor ZAxisColor;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
uint8 bPersistentLines : 1;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
float LifeTimeModifier;
UPROPERTY(EditAnywhere, Category = "Debug Gizmo Settings")
uint8 DepthPriority;
public:
explicit FSGDebugGizmoSettings(float InLength = 1.0f,
float InThickness = 1.0f,
const FColor& InXAxisColor = FColor(1.0f, 0.0f, 0.0f, 1.0f),
const FColor& InYAxisColor = FColor(0.0f, 1.0f, 0.0f, 1.0f),
const FColor& InZAxisColor = FColor(0.0f, 0.0f, 1.0f, 1.0f),
bool bInPersistentLines = false,
float InLifeTimeModifier = 1.1f,
uint8 InDepthPriority = 0);
};
@@ -42,6 +42,7 @@
#include "Templates/UniquePtr.h"
#include "UObject/ObjectMacros.h"
#include "SGSettings/SGDebugGizmoSettings.h"
#include "SGTypes/SGCoreTypes.h"
#include "SGSettings.generated.h"
@@ -104,63 +105,14 @@ private:
* If enabled, draws debug Wrist trackers where possible.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug")
uint8 bDrawDebugWristTrackerGizmo : 1;
uint8 bDrawWristTrackerDebugGizmo : 1;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
float DebugWristTrackerGizmoLength;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
FColor DebugWristTrackerGizmoXAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
FColor DebugWristTrackerGizmoYAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
FColor DebugWristTrackerGizmoZAxisColor;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
uint8 bDebugWristTrackerGizmoPersistentLines : 1;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
float DebugWristTrackerGizmoLifeTimeModifier;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
uint8 DebugWristTrackerGizmoDepthPriority;
/**
* Valid only if bDrawDebugWristTrackerGizmo is enabled.
*/
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking Debug",
meta=(EditCondition="bDrawDebugWristTrackerGizmo", EditConditionHides))
float DebugWristTrackerGizmoThickness;
FSGDebugGizmoSettings WristTrackerDebugGizmoSettings;
public:
USGSettings();
@@ -188,39 +140,18 @@ public:
const FRotator& GetTrackingHardwareRotationOffsetRightHand() const;
void SetTrackingHardwareRotationOffsetRightHand(const FRotator& InTrackingHardwareRotationOffsetRightHand);
FORCEINLINE bool GetDrawDebugWristTrackerGizmo() const
FORCEINLINE bool GetDrawWristTrackerDebugGizmo() const
{
return !!bDrawDebugWristTrackerGizmo;
return !!bDrawWristTrackerDebugGizmo;
}
void SetDrawDebugWristTrackerGizmo(const bool bInDrawDebugWristTrackerGizmo)
void SetDrawWristTrackerDebugGizmo(const bool bInDrawWristTrackerDebugGizmo)
{
bDrawDebugWristTrackerGizmo = bInDrawDebugWristTrackerGizmo;
bDrawWristTrackerDebugGizmo = bInDrawWristTrackerDebugGizmo;
}
float GetDebugWristTrackerGizmoLength() const;
void SetDebugWristTrackerGizmoLength(float InDebugWristTrackerGizmoLength);
const FColor& GetDebugWristTrackerGizmoXAxisColor() const;
void SetDebugWristTrackerGizmoXAxisColor(const FColor& InDebugWristTrackerGizmoXAxisColor);
const FColor& GetDebugWristTrackerGizmoYAxisColor() const;
void SetDebugWristTrackerGizmoYAxisColor(const FColor& InDebugWristTrackerGizmoYAxisColor);
const FColor& GetDebugWristTrackerGizmoZAxisColor() const;
void SetDebugWristTrackerGizmoZAxisColor(const FColor& InDebugWristTrackerGizmoZAxisColor);
bool GetDebugWristTrackerGizmoPersistentLines() const;
void SetDebugWristTrackerGizmoPersistentLines(bool bInDebugWristTrackerGizmoPersistentLines);
float GetDebugWristTrackerGizmoLifeTimeModifier() const;
void SetDebugWristTrackerGizmoLifeTimeModifier(float InDebugWristTrackerGizmoLifeTimeModifier);
uint8 GetDebugWristTrackerGizmoDepthPriority() const;
void SetDebugWristTrackerGizmoDepthPriority(uint8 InDebugWristTrackerGizmoDepthPriority);
float GetDebugWristTrackerGizmoThickness() const;
void SetDebugWristTrackerGizmoThickness(float InDebugWristTrackerGizmoThickness);
const FSGDebugGizmoSettings& GetWristTrackerDebugGizmoSettings() const;
void SetWristTrackerDebugGizmoSettings(const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings);
public:
virtual bool ShouldCreateSubsystem(UObject* Outer) const override;
@@ -97,101 +97,24 @@ void USGSettingsKismetLibrary::SetTrackingHardwareRotationOffsetRightHand(
Settings->SetTrackingHardwareRotationOffsetRightHand(InTrackingHardwareRotationOffsetRightHand);
}
bool USGSettingsKismetLibrary::GetDrawDebugWristTrackerGizmo(const USGSettings* Settings)
bool USGSettingsKismetLibrary::GetDrawWristTrackerDebugGizmo(const USGSettings* Settings)
{
return Settings->GetDrawDebugWristTrackerGizmo();
return Settings->GetDrawWristTrackerDebugGizmo();
}
void USGSettingsKismetLibrary::SetDrawDebugWristTrackerGizmo(
USGSettings* Settings, const bool bInDrawDebugWristTrackerGizmo)
void USGSettingsKismetLibrary::SetDrawWristTrackerDebugGizmo(
USGSettings* Settings, const bool bInDrawWristTrackerDebugGizmo)
{
Settings->SetDrawDebugWristTrackerGizmo(bInDrawDebugWristTrackerGizmo);
Settings->SetDrawWristTrackerDebugGizmo(bInDrawWristTrackerDebugGizmo);
}
float USGSettingsKismetLibrary::GetDebugWristTrackerGizmoLength(const USGSettings* Settings)
const FSGDebugGizmoSettings& USGSettingsKismetLibrary::GetWristTrackerDebugGizmoSettings(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoLength();
return Settings->GetWristTrackerDebugGizmoSettings();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoLength(
USGSettings* Settings, const float InDebugWristTrackerGizmoLength)
void USGSettingsKismetLibrary::SetWristTrackerDebugGizmoSettings(USGSettings* Settings,
const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings)
{
Settings->SetDebugWristTrackerGizmoLength(InDebugWristTrackerGizmoLength);
}
const FColor& USGSettingsKismetLibrary::GetDebugWristTrackerGizmoXAxisColor(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoXAxisColor();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoXAxisColor(
USGSettings* Settings, const FColor& InDebugWristTrackerGizmoXAxisColor)
{
Settings->SetDebugWristTrackerGizmoXAxisColor(InDebugWristTrackerGizmoXAxisColor);
}
const FColor& USGSettingsKismetLibrary::GetDebugWristTrackerGizmoYAxisColor(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoYAxisColor();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoYAxisColor(
USGSettings* Settings, const FColor& InDebugWristTrackerGizmoYAxisColor)
{
Settings->SetDebugWristTrackerGizmoYAxisColor(InDebugWristTrackerGizmoYAxisColor);
}
const FColor& USGSettingsKismetLibrary::GetDebugWristTrackerGizmoZAxisColor(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoZAxisColor();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoZAxisColor(
USGSettings* Settings, const FColor& InDebugWristTrackerGizmoZAxisColor)
{
Settings->SetDebugWristTrackerGizmoZAxisColor(InDebugWristTrackerGizmoZAxisColor);
}
bool USGSettingsKismetLibrary::GetDebugWristTrackerGizmoPersistentLines(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoPersistentLines();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoPersistentLines(
USGSettings* Settings, const bool bInDebugWristTrackerGizmoPersistentLines)
{
Settings->SetDebugWristTrackerGizmoPersistentLines(bInDebugWristTrackerGizmoPersistentLines);
}
float USGSettingsKismetLibrary::GetDebugWristTrackerGizmoLifeTimeModifier(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoLifeTimeModifier();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoLifeTimeModifier(
USGSettings* Settings, const float InDebugWristTrackerGizmoLifeTimeModifier)
{
Settings->SetDebugWristTrackerGizmoLifeTimeModifier(InDebugWristTrackerGizmoLifeTimeModifier);
}
uint8 USGSettingsKismetLibrary::GetDebugWristTrackerGizmoDepthPriority(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoDepthPriority();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoDepthPriority(
USGSettings* Settings, const uint8 InDebugWristTrackerGizmoDepthPriority)
{
Settings->SetDebugWristTrackerGizmoDepthPriority(InDebugWristTrackerGizmoDepthPriority);
}
float USGSettingsKismetLibrary::GetDebugWristTrackerGizmoThickness(const USGSettings* Settings)
{
return Settings->GetDebugWristTrackerGizmoThickness();
}
void USGSettingsKismetLibrary::SetDebugWristTrackerGizmoThickness(
USGSettings* Settings, const float InDebugWristTrackerGizmoThickness)
{
Settings->SetDebugWristTrackerGizmoThickness(InDebugWristTrackerGizmoThickness);
Settings->SetWristTrackerDebugGizmoSettings(InWristTrackerDebugGizmoSettings);
}
@@ -38,6 +38,8 @@
#include "SGKismet/SGBlueprintFunctionLibrary.h"
#include "SGTypes/SGCoreTypes.h"
#include "SGSettings/SGDebugGizmoSettings.h"
#include "SGSettingsKismetLibrary.generated.h"
class USGSettings;
@@ -55,95 +57,47 @@ public:
static ESGPositionalTrackingHardware GetTrackingHardware(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetTrackingHardware(UPARAM(ref) USGSettings* Settings, ESGPositionalTrackingHardware InTrackingHardware);
static void SetTrackingHardware(UPARAM(ref) USGSettings* Settings,
ESGPositionalTrackingHardware InTrackingHardware);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FVector& GetTrackingHardwareLocationOffsetLeftHand(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetTrackingHardwareLocationOffsetLeftHand(UPARAM(ref) USGSettings* Settings,
const FVector& InTrackingHardwareLocationOffsetLeftHand);
const FVector& InTrackingHardwareLocationOffsetLeftHand);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FVector& GetTrackingHardwareLocationOffsetRightHand(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetTrackingHardwareLocationOffsetRightHand(UPARAM(ref) USGSettings* Settings,
const FVector& InTrackingHardwareLocationOffsetRightHand);
const FVector& InTrackingHardwareLocationOffsetRightHand);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FRotator& GetTrackingHardwareRotationOffsetLeftHand(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetTrackingHardwareRotationOffsetLeftHand(UPARAM(ref) USGSettings* Settings,
const FRotator& InTrackingHardwareRotationOffsetLeftHand);
const FRotator& InTrackingHardwareRotationOffsetLeftHand);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FRotator& GetTrackingHardwareRotationOffsetRightHand(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetTrackingHardwareRotationOffsetRightHand(UPARAM(ref) USGSettings* Settings,
const FRotator& InTrackingHardwareRotationOffsetRightHand);
const FRotator& InTrackingHardwareRotationOffsetRightHand);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static bool GetDrawDebugWristTrackerGizmo(const USGSettings* Settings);
static bool GetDrawWristTrackerDebugGizmo(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDrawDebugWristTrackerGizmo(UPARAM(ref) USGSettings* Settings, bool bInDrawDebugWristTrackerGizmo);
static void SetDrawWristTrackerDebugGizmo(UPARAM(ref) USGSettings* Settings, bool bInDrawWristTrackerDebugGizmo);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static float GetDebugWristTrackerGizmoLength(const USGSettings* Settings);
static const FSGDebugGizmoSettings& GetWristTrackerDebugGizmoSettings(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoLength(UPARAM(ref) USGSettings* Settings,
float InDebugWristTrackerGizmoLength);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FColor& GetDebugWristTrackerGizmoXAxisColor(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoXAxisColor(UPARAM(ref) USGSettings* Settings,
const FColor& InDebugWristTrackerGizmoXAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FColor& GetDebugWristTrackerGizmoYAxisColor(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoYAxisColor(UPARAM(ref) USGSettings* Settings,
const FColor& InDebugWristTrackerGizmoYAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static const FColor& GetDebugWristTrackerGizmoZAxisColor(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoZAxisColor(UPARAM(ref) USGSettings* Settings,
const FColor& InDebugWristTrackerGizmoZAxisColor);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static bool GetDebugWristTrackerGizmoPersistentLines(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoPersistentLines(UPARAM(ref) USGSettings* Settings,
bool bInDebugWristTrackerGizmoPersistentLines);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static float GetDebugWristTrackerGizmoLifeTimeModifier(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoLifeTimeModifier(UPARAM(ref) USGSettings* Settings,
float InDebugWristTrackerGizmoLifeTimeModifier);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static uint8 GetDebugWristTrackerGizmoDepthPriority(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoDepthPriority(UPARAM(ref) USGSettings* Settings,
uint8 InDebugWristTrackerGizmoDepthPriority);
UFUNCTION(BlueprintPure, Category="SenseGlove | Settings")
static float GetDebugWristTrackerGizmoThickness(const USGSettings* Settings);
UFUNCTION(BlueprintCallable, Category="SenseGlove | Settings")
static void SetDebugWristTrackerGizmoThickness(UPARAM(ref) USGSettings* Settings,
float InDebugWristTrackerGizmoThickness);
static void SetWristTrackerDebugGizmoSettings(UPARAM(ref) USGSettings* Settings,
const FSGDebugGizmoSettings& InWristTrackerDebugGizmoSettings);
};