remove the experimental bHandTrackingVisualizationAllowed feature
This commit is contained in:
@@ -97,7 +97,6 @@ USGWristTrackerComponent::USGWristTrackerComponent(const FObjectInitializer& Obj
|
|||||||
|
|
||||||
bRight = true;
|
bRight = true;
|
||||||
|
|
||||||
DeviceVisualType = EXRVisualType::Controller;
|
|
||||||
WristLocation = FVector::ZeroVector;
|
WristLocation = FVector::ZeroVector;
|
||||||
WristRotation = FRotator::ZeroRotator;
|
WristRotation = FRotator::ZeroRotator;
|
||||||
}
|
}
|
||||||
@@ -228,22 +227,6 @@ void USGWristTrackerComponent::FImpl::UpdateMotionSource() const
|
|||||||
|
|
||||||
void USGWristTrackerComponent::FImpl::UpdateWristTrackingData() const
|
void USGWristTrackerComponent::FImpl::UpdateWristTrackingData() const
|
||||||
{
|
{
|
||||||
FXRMotionControllerData MotionControllerData;
|
|
||||||
const bool bGotMotionControllerData = Owner->GetMotionControllerData(MotionControllerData);
|
|
||||||
if (bGotMotionControllerData && MotionControllerData.bValid)
|
|
||||||
{
|
|
||||||
const bool bDeviceVisualTypeUpdated = Owner->DeviceVisualType != MotionControllerData.DeviceVisualType;
|
|
||||||
if (bDeviceVisualTypeUpdated)
|
|
||||||
{
|
|
||||||
Owner->DeviceVisualType = MotionControllerData.DeviceVisualType;
|
|
||||||
|
|
||||||
if (Owner->WristDeviceVisualTypeChangedEvent.IsBound())
|
|
||||||
{
|
|
||||||
Owner->WristDeviceVisualTypeChangedEvent.Broadcast(Owner->DeviceVisualType);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
FVector NewWristLocation{Owner->GetComponentLocation()};
|
FVector NewWristLocation{Owner->GetComponentLocation()};
|
||||||
FRotator NewWristRotation{Owner->GetComponentRotation()};
|
FRotator NewWristRotation{Owner->GetComponentRotation()};
|
||||||
|
|
||||||
|
|||||||
@@ -91,18 +91,6 @@ struct ASGPawn::FImpl
|
|||||||
|
|
||||||
void SetVisibility(USceneComponent* SceneComponent, const bool bVisibility) const;
|
void SetVisibility(USceneComponent* SceneComponent, const bool bVisibility) const;
|
||||||
|
|
||||||
void UpdateWristTrackerVisualization(const bool bRight, const EXRVisualType VisualType) const;
|
|
||||||
|
|
||||||
FORCEINLINE void UpdateLeftWristTrackerVisualization(const EXRVisualType VisualType) const
|
|
||||||
{
|
|
||||||
UpdateWristTrackerVisualization(false, VisualType);
|
|
||||||
}
|
|
||||||
|
|
||||||
FORCEINLINE void UpdateRightWristTrackerVisualization(const EXRVisualType VisualType) const
|
|
||||||
{
|
|
||||||
UpdateWristTrackerVisualization(true, VisualType);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UpdateHandLocation(const bool bRight, const FVector& Location, const bool bUpdateVirtualHand) const;
|
void UpdateHandLocation(const bool bRight, const FVector& Location, const bool bUpdateVirtualHand) const;
|
||||||
void UpdateLeftHandLocation(const FVector& Location, const bool bUpdateVirtualHand) const;
|
void UpdateLeftHandLocation(const FVector& Location, const bool bUpdateVirtualHand) const;
|
||||||
void UpdateRightHandLocation(const FVector& Location, const bool bUpdateVirtualHand) const;
|
void UpdateRightHandLocation(const FVector& Location, const bool bUpdateVirtualHand) const;
|
||||||
@@ -546,18 +534,6 @@ void ASGPawn::BeginPlay()
|
|||||||
WristTrackerRight->IsRight() && HandRight->IsRight(),
|
WristTrackerRight->IsRight() && HandRight->IsRight(),
|
||||||
TEXT("The right hand and the right wrist do not track the right hand!"));
|
TEXT("The right hand and the right wrist do not track the right hand!"));
|
||||||
|
|
||||||
WristTrackerLeft->OnWristDeviceVisualTypeChanged().AddWeakLambda(
|
|
||||||
this, [&](const EXRVisualType VisualType) -> void
|
|
||||||
{
|
|
||||||
Pimpl->UpdateLeftWristTrackerVisualization(VisualType);
|
|
||||||
});
|
|
||||||
|
|
||||||
WristTrackerLeft->OnWristDeviceVisualTypeChanged().AddWeakLambda(
|
|
||||||
this, [&](const EXRVisualType VisualType) -> void
|
|
||||||
{
|
|
||||||
Pimpl->UpdateRightWristTrackerVisualization(VisualType);
|
|
||||||
});
|
|
||||||
|
|
||||||
WristTrackerLeft->OnWristLocationChanged().AddWeakLambda(this, [&](const FVector& Location)-> void
|
WristTrackerLeft->OnWristLocationChanged().AddWeakLambda(this, [&](const FVector& Location)-> void
|
||||||
{
|
{
|
||||||
Pimpl->UpdateLeftHandLocation(Location, !Pimpl->IsLeftHandOverlappingWithAnyActor());
|
Pimpl->UpdateLeftHandLocation(Location, !Pimpl->IsLeftHandOverlappingWithAnyActor());
|
||||||
@@ -1675,30 +1651,6 @@ void ASGPawn::FImpl::SetVisibility(USceneComponent* SceneComponent, const bool b
|
|||||||
SceneComponent->SetVisibility(bVisibility);
|
SceneComponent->SetVisibility(bVisibility);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ASGPawn::FImpl::UpdateWristTrackerVisualization(const bool bRight, const EXRVisualType VisualType) const
|
|
||||||
{
|
|
||||||
const USGWristTrackerComponent* WristTracker{bRight ? Owner->WristTrackerRight : Owner->WristTrackerLeft};
|
|
||||||
if (!IsValid(WristTracker))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const FSGWristTrackingSettings& Settings{WristTracker->GetWristTrackingSettings()};
|
|
||||||
const bool bIsVisualizationActive = VisualType == EXRVisualType::Controller
|
|
||||||
|| !!Settings.bHandTrackingVisualizationAllowed;
|
|
||||||
|
|
||||||
UXRDeviceVisualizationComponent* ControllerVisualizer{
|
|
||||||
bRight ? Owner->ControllerVisualizerLeft : Owner->ControllerVisualizerRight
|
|
||||||
};
|
|
||||||
|
|
||||||
if (!IsValid(ControllerVisualizer))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
ControllerVisualizer->SetIsVisualizationActive(bIsVisualizationActive);
|
|
||||||
}
|
|
||||||
|
|
||||||
void ASGPawn::FImpl::UpdateHandLocation(const bool bRight, const FVector& Location, const bool bUpdateVirtualHand) const
|
void ASGPawn::FImpl::UpdateHandLocation(const bool bRight, const FVector& Location, const bool bUpdateVirtualHand) const
|
||||||
{
|
{
|
||||||
if (bRight)
|
if (bRight)
|
||||||
|
|||||||
@@ -52,13 +52,6 @@ class SENSEGLOVE_API USGWristTrackerComponent : public UMotionControllerComponen
|
|||||||
GENERATED_UCLASS_BODY()
|
GENERATED_UCLASS_BODY()
|
||||||
|
|
||||||
public:
|
public:
|
||||||
DECLARE_EVENT_OneParam(USGWristTrackerComponent, FWristDeviceVisualTypeChangedEvent, EXRVisualType)
|
|
||||||
|
|
||||||
FWristDeviceVisualTypeChangedEvent& OnWristDeviceVisualTypeChanged()
|
|
||||||
{
|
|
||||||
return WristDeviceVisualTypeChangedEvent;
|
|
||||||
};
|
|
||||||
|
|
||||||
DECLARE_EVENT_OneParam(USGWristTrackerComponent, FWristLocationChangedEvent, const FVector&)
|
DECLARE_EVENT_OneParam(USGWristTrackerComponent, FWristLocationChangedEvent, const FVector&)
|
||||||
|
|
||||||
FWristLocationChangedEvent& OnWristLocationChanged()
|
FWristLocationChangedEvent& OnWristLocationChanged()
|
||||||
@@ -82,7 +75,6 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
FWristDeviceVisualTypeChangedEvent WristDeviceVisualTypeChangedEvent;
|
|
||||||
FWristLocationChangedEvent WristLocationChangedEvent;
|
FWristLocationChangedEvent WristLocationChangedEvent;
|
||||||
FWristRotationChangedEvent WristRotationChangedEvent;
|
FWristRotationChangedEvent WristRotationChangedEvent;
|
||||||
FWristLocationAndRotationChangedEvent WristLocationAndRotationChangedEvent;
|
FWristLocationAndRotationChangedEvent WristLocationAndRotationChangedEvent;
|
||||||
@@ -103,9 +95,6 @@ private:
|
|||||||
uint8 bRight : 1;
|
uint8 bRight : 1;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
UPROPERTY(Transient)
|
|
||||||
EXRVisualType DeviceVisualType;
|
|
||||||
|
|
||||||
UPROPERTY(Transient)
|
UPROPERTY(Transient)
|
||||||
FVector WristLocation;
|
FVector WristLocation;
|
||||||
|
|
||||||
@@ -127,11 +116,6 @@ public:
|
|||||||
|
|
||||||
const FSGWristTrackingSettings& GetWristTrackingSettings() const;
|
const FSGWristTrackingSettings& GetWristTrackingSettings() const;
|
||||||
|
|
||||||
FORCEINLINE EXRVisualType GetDeviceVisualType() const
|
|
||||||
{
|
|
||||||
return DeviceVisualType;
|
|
||||||
}
|
|
||||||
|
|
||||||
FORCEINLINE const FVector& GetWristLocation() const
|
FORCEINLINE const FVector& GetWristLocation() const
|
||||||
{
|
{
|
||||||
return WristLocation;
|
return WristLocation;
|
||||||
|
|||||||
@@ -59,12 +59,6 @@ void UWristTrackerComponentKismetLibrary::SetRight(
|
|||||||
WristTrackerComponent->SetRight(bInRight);
|
WristTrackerComponent->SetRight(bInRight);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXRVisualType UWristTrackerComponentKismetLibrary::GetDeviceVisualType(
|
|
||||||
const USGWristTrackerComponent* WristTrackerComponent)
|
|
||||||
{
|
|
||||||
return WristTrackerComponent->GetDeviceVisualType();
|
|
||||||
}
|
|
||||||
|
|
||||||
const FVector& UWristTrackerComponentKismetLibrary::GetWristLocation(
|
const FVector& UWristTrackerComponentKismetLibrary::GetWristLocation(
|
||||||
const USGWristTrackerComponent* WristTrackerComponent)
|
const USGWristTrackerComponent* WristTrackerComponent)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -65,9 +65,6 @@ public:
|
|||||||
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
|
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
|
||||||
static void SetRight(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent, bool bInRight);
|
static void SetRight(UPARAM(ref) USGWristTrackerComponent* WristTrackerComponent, bool bInRight);
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
|
|
||||||
static EXRVisualType GetDeviceVisualType(const USGWristTrackerComponent* WristTrackerComponent);
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
|
UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Wrist Tracker Component")
|
||||||
static const FVector& GetWristLocation(const USGWristTrackerComponent* WristTrackerComponent);
|
static const FVector& GetWristLocation(const USGWristTrackerComponent* WristTrackerComponent);
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,6 @@
|
|||||||
|
|
||||||
FSGWristTrackingSettings::FSGWristTrackingSettings()
|
FSGWristTrackingSettings::FSGWristTrackingSettings()
|
||||||
: FSGWristTrackingSettings(
|
: FSGWristTrackingSettings(
|
||||||
false,
|
|
||||||
ESGPositionalTrackingHardware::None,
|
ESGPositionalTrackingHardware::None,
|
||||||
FVector::ZeroVector,
|
FVector::ZeroVector,
|
||||||
FVector::ZeroVector,
|
FVector::ZeroVector,
|
||||||
@@ -51,7 +50,6 @@ FSGWristTrackingSettings::FSGWristTrackingSettings()
|
|||||||
}
|
}
|
||||||
|
|
||||||
FSGWristTrackingSettings::FSGWristTrackingSettings(
|
FSGWristTrackingSettings::FSGWristTrackingSettings(
|
||||||
const bool bInHandTrackingVisualizationAllowed,
|
|
||||||
const ESGPositionalTrackingHardware InTrackingHardware,
|
const ESGPositionalTrackingHardware InTrackingHardware,
|
||||||
const FVector& InTrackingHardwareLocationOffsetLeftHand,
|
const FVector& InTrackingHardwareLocationOffsetLeftHand,
|
||||||
const FVector& InTrackingHardwareLocationOffsetRightHand,
|
const FVector& InTrackingHardwareLocationOffsetRightHand,
|
||||||
@@ -61,8 +59,7 @@ FSGWristTrackingSettings::FSGWristTrackingSettings(
|
|||||||
const EControllerHand InRightHandMotionSource,
|
const EControllerHand InRightHandMotionSource,
|
||||||
const bool bInDrawDebugGizmo,
|
const bool bInDrawDebugGizmo,
|
||||||
const FSGDebugGizmoSettings& InDebugGizmoSettings)
|
const FSGDebugGizmoSettings& InDebugGizmoSettings)
|
||||||
: bHandTrackingVisualizationAllowed(bInHandTrackingVisualizationAllowed),
|
: TrackingHardware(InTrackingHardware),
|
||||||
TrackingHardware(InTrackingHardware),
|
|
||||||
TrackingHardwareLocationOffsetLeftHand(InTrackingHardwareLocationOffsetLeftHand),
|
TrackingHardwareLocationOffsetLeftHand(InTrackingHardwareLocationOffsetLeftHand),
|
||||||
TrackingHardwareLocationOffsetRightHand(InTrackingHardwareLocationOffsetRightHand),
|
TrackingHardwareLocationOffsetRightHand(InTrackingHardwareLocationOffsetRightHand),
|
||||||
TrackingHardwareRotationOffsetLeftHand(InTrackingHardwareRotationOffsetLeftHand),
|
TrackingHardwareRotationOffsetLeftHand(InTrackingHardwareRotationOffsetLeftHand),
|
||||||
|
|||||||
@@ -49,9 +49,6 @@ struct SENSEGLOVESETTINGS_API FSGWristTrackingSettings
|
|||||||
GENERATED_USTRUCT_BODY()
|
GENERATED_USTRUCT_BODY()
|
||||||
|
|
||||||
public:
|
public:
|
||||||
UPROPERTY(Config, EditDefaultsOnly, Category = "Wrist Tracking")
|
|
||||||
uint8 bHandTrackingVisualizationAllowed : 1;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If set to Custom, any desired location and rotation can be specified.
|
* If set to Custom, any desired location and rotation can be specified.
|
||||||
*/
|
*/
|
||||||
@@ -117,7 +114,6 @@ public:
|
|||||||
FSGWristTrackingSettings();
|
FSGWristTrackingSettings();
|
||||||
|
|
||||||
FSGWristTrackingSettings(
|
FSGWristTrackingSettings(
|
||||||
bool bInHandTrackingVisualizationAllowed,
|
|
||||||
ESGPositionalTrackingHardware InTrackingHardware,
|
ESGPositionalTrackingHardware InTrackingHardware,
|
||||||
const FVector& InTrackingHardwareLocationOffsetLeftHand,
|
const FVector& InTrackingHardwareLocationOffsetLeftHand,
|
||||||
const FVector& InTrackingHardwareLocationOffsetRightHand,
|
const FVector& InTrackingHardwareLocationOffsetRightHand,
|
||||||
|
|||||||
Reference in New Issue
Block a user