remove SGWristTrackerVisualizationComponent
This commit is contained in:
@@ -24,7 +24,6 @@ This is a minor release focusing mainly on bringing OpenXR-compatible hand track
|
|||||||
- Added USGVirtualHandComponent::OnHandVisibilityChanged() event in order to notify other components/actors whenever the virtual hand mesh appears or disappears (for example, this could happen when a glove is connected/disconnected).
|
- Added USGVirtualHandComponent::OnHandVisibilityChanged() event in order to notify other components/actors whenever the virtual hand mesh appears or disappears (for example, this could happen when a glove is connected/disconnected).
|
||||||
- Added USGWristTrackerComponent::GetMotionControllerData().
|
- Added USGWristTrackerComponent::GetMotionControllerData().
|
||||||
- Added USGWristTrackerComponent::OnWristDeviceVisualTypeChanged event in order to be able to notify other components/actors whenever the wrist-tracking device switches between hand tracking or motion controllers.
|
- Added USGWristTrackerComponent::OnWristDeviceVisualTypeChanged event in order to be able to notify other components/actors whenever the wrist-tracking device switches between hand tracking or motion controllers.
|
||||||
- Added SGWristTrackerVisualizationComponent which is replacing UXRDeviceVisualizationComponent usage inside SGPawn.
|
|
||||||
- Added the SenseGloveDebugKismet module in order to allow drawing of debugging gizmos and virtual hands from Blueprint.
|
- Added the SenseGloveDebugKismet module in order to allow drawing of debugging gizmos and virtual hands from Blueprint.
|
||||||
- Added a new static Draw() method overload to DebugGizmo which allows passing an FQuat instead of a FRotator.
|
- Added a new static Draw() method overload to DebugGizmo which allows passing an FQuat instead of a FRotator.
|
||||||
- Added SGEngineUtils.
|
- Added SGEngineUtils.
|
||||||
|
|||||||
-169
@@ -1,169 +0,0 @@
|
|||||||
/**
|
|
||||||
* @file
|
|
||||||
*
|
|
||||||
* @author Mamadou Babaei <mamadou@senseglove.com>
|
|
||||||
*
|
|
||||||
* @section LICENSE
|
|
||||||
*
|
|
||||||
* (The MIT License)
|
|
||||||
*
|
|
||||||
* Copyright (c) 2020 - 2024 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 "SenseGlove/Components/SGWristTrackerVisualizationComponent.h"
|
|
||||||
|
|
||||||
#include "SenseGlove/Components/SGWristTrackerComponent.h"
|
|
||||||
#include "SGLog/SGLog.h"
|
|
||||||
|
|
||||||
struct USGWristTrackerVisualizationComponent::FImpl
|
|
||||||
{
|
|
||||||
/************************
|
|
||||||
* Static methods
|
|
||||||
************************/
|
|
||||||
|
|
||||||
/************************
|
|
||||||
* Owner object
|
|
||||||
************************/
|
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent* Owner;
|
|
||||||
|
|
||||||
/************************
|
|
||||||
* Constructor / Destructor
|
|
||||||
************************/
|
|
||||||
|
|
||||||
explicit FImpl(USGWristTrackerVisualizationComponent* InOwner);
|
|
||||||
~FImpl();
|
|
||||||
|
|
||||||
/************************
|
|
||||||
* Default copy constructor & copy assignment operator
|
|
||||||
************************/
|
|
||||||
|
|
||||||
FImpl(const FImpl& Rhs) = default;
|
|
||||||
FImpl& operator=(const FImpl& Rhs) = default;
|
|
||||||
|
|
||||||
/************************
|
|
||||||
* Methods
|
|
||||||
************************/
|
|
||||||
|
|
||||||
bool IsEditor() const;
|
|
||||||
|
|
||||||
void UpdateLocationAndRotation() const;
|
|
||||||
};
|
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent::USGWristTrackerVisualizationComponent(const FObjectInitializer& ObjectInitializer)
|
|
||||||
: Super(ObjectInitializer),
|
|
||||||
Pimpl(TUniquePtr<FImpl, FImplDeleter>(new FImpl{this}, PimplDeleter))
|
|
||||||
{
|
|
||||||
PrimaryComponentTick.bTickEvenWhenPaused = false;
|
|
||||||
PrimaryComponentTick.bCanEverTick = true;
|
|
||||||
PrimaryComponentTick.bStartWithTickEnabled = true;
|
|
||||||
bTickInEditor = true;
|
|
||||||
bNeverNeedsRenderUpdate = true;
|
|
||||||
bAllowConcurrentTick = true;
|
|
||||||
|
|
||||||
SetCastShadow(false);
|
|
||||||
SetCastHiddenShadow(false);
|
|
||||||
bCastDynamicShadow = false;
|
|
||||||
SetOnlyOwnerSee(false);
|
|
||||||
SetReceivesDecals(false);
|
|
||||||
SetCanEverAffectNavigation(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::InitializeComponent()
|
|
||||||
{
|
|
||||||
Super::InitializeComponent();
|
|
||||||
|
|
||||||
Pimpl->UpdateLocationAndRotation();
|
|
||||||
}
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::BeginPlay()
|
|
||||||
{
|
|
||||||
Super::BeginPlay();
|
|
||||||
|
|
||||||
Pimpl->UpdateLocationAndRotation();
|
|
||||||
}
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::TickComponent(
|
|
||||||
const float DeltaTime, const ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
|
|
||||||
{
|
|
||||||
#if WITH_EDITOR
|
|
||||||
if (Pimpl->IsEditor())
|
|
||||||
{
|
|
||||||
EditorTick(DeltaTime, TickType, ThisTickFunction);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif /* WITH_EDITOR */
|
|
||||||
|
|
||||||
Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
|
|
||||||
|
|
||||||
Pimpl->UpdateLocationAndRotation();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::EditorTick(
|
|
||||||
const float DeltaTime, const ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
|
|
||||||
{
|
|
||||||
Pimpl->UpdateLocationAndRotation();
|
|
||||||
}
|
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent::FImpl::FImpl(USGWristTrackerVisualizationComponent* InOwner)
|
|
||||||
: Owner(InOwner)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent::FImpl::~FImpl() = default;
|
|
||||||
|
|
||||||
bool USGWristTrackerVisualizationComponent::FImpl::IsEditor() const
|
|
||||||
{
|
|
||||||
const UWorld* World{Owner->GetWorld()};
|
|
||||||
if (World && (World->WorldType == EWorldType::Editor || World->WorldType == EWorldType::EditorPreview))
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::FImpl::UpdateLocationAndRotation() const
|
|
||||||
{
|
|
||||||
USGWristTrackerComponent* ParentComponent{Cast<USGWristTrackerComponent>(Owner->GetAttachParent())};
|
|
||||||
if (!ensureAlwaysMsgf(IsValid(ParentComponent),
|
|
||||||
TEXT("This component should be attached to a SGWristTackerComponent!")))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
SGLOG(ParentComponent->GetWristRotation(), ParentComponent->GetWristLocation())
|
|
||||||
|
|
||||||
//Owner->MotionSource = FName("Left");
|
|
||||||
// Owner->SetWorldLocation(ParentComponent->GetWristLocation());
|
|
||||||
// Owner->SetWorldRotation(ParentComponent->GetWristRotation());
|
|
||||||
}
|
|
||||||
|
|
||||||
void USGWristTrackerVisualizationComponent::FImplDeleter::operator()(const FImpl* P) const
|
|
||||||
{
|
|
||||||
delete P;
|
|
||||||
}
|
|
||||||
@@ -40,12 +40,12 @@
|
|||||||
#include "Components/SphereComponent.h"
|
#include "Components/SphereComponent.h"
|
||||||
#include "Kismet/KismetMathLibrary.h"
|
#include "Kismet/KismetMathLibrary.h"
|
||||||
#include "UObject/UObjectGlobals.h"
|
#include "UObject/UObjectGlobals.h"
|
||||||
|
#include "XRDeviceVisualizationComponent.h"
|
||||||
|
|
||||||
#include "SenseGlove/Components/SGGrabComponent.h"
|
#include "SenseGlove/Components/SGGrabComponent.h"
|
||||||
#include "SenseGlove/Components/SGTouchComponent.h"
|
#include "SenseGlove/Components/SGTouchComponent.h"
|
||||||
#include "SenseGlove/Components/SGVirtualHandComponent.h"
|
#include "SenseGlove/Components/SGVirtualHandComponent.h"
|
||||||
#include "SenseGlove/Components/SGWristTrackerComponent.h"
|
#include "SenseGlove/Components/SGWristTrackerComponent.h"
|
||||||
#include "SenseGlove/Components/SGWristTrackerVisualizationComponent.h"
|
|
||||||
#include "SGLog/SGLog.h"
|
#include "SGLog/SGLog.h"
|
||||||
|
|
||||||
static constexpr float SG_HAND_MESH_YAW_CORRECTION_OFFSET = -90.0f;
|
static constexpr float SG_HAND_MESH_YAW_CORRECTION_OFFSET = -90.0f;
|
||||||
@@ -190,7 +190,7 @@ ASGPawn::ASGPawn(const FObjectInitializer& ObjectInitializer)
|
|||||||
WristTrackerLeft->SetupAttachment(GetRootComponent());
|
WristTrackerLeft->SetupAttachment(GetRootComponent());
|
||||||
WristTrackerLeft->SetRight(false);
|
WristTrackerLeft->SetRight(false);
|
||||||
|
|
||||||
ControllerVisualizerLeft = ObjectInitializer.CreateDefaultSubobject<USGWristTrackerVisualizationComponent>(
|
ControllerVisualizerLeft = ObjectInitializer.CreateDefaultSubobject<UXRDeviceVisualizationComponent>(
|
||||||
this, TEXT("ControllerVisualizerLeft"));
|
this, TEXT("ControllerVisualizerLeft"));
|
||||||
ControllerVisualizerLeft->SetupAttachment(WristTrackerLeft);
|
ControllerVisualizerLeft->SetupAttachment(WristTrackerLeft);
|
||||||
ControllerVisualizerLeft->SetDisplayModelSource(FName("OpenXR"));
|
ControllerVisualizerLeft->SetDisplayModelSource(FName("OpenXR"));
|
||||||
@@ -349,7 +349,7 @@ ASGPawn::ASGPawn(const FObjectInitializer& ObjectInitializer)
|
|||||||
WristTrackerRight->SetupAttachment(GetRootComponent());
|
WristTrackerRight->SetupAttachment(GetRootComponent());
|
||||||
WristTrackerRight->SetRight(true);
|
WristTrackerRight->SetRight(true);
|
||||||
|
|
||||||
ControllerVisualizerRight = ObjectInitializer.CreateDefaultSubobject<USGWristTrackerVisualizationComponent>(
|
ControllerVisualizerRight = ObjectInitializer.CreateDefaultSubobject<UXRDeviceVisualizationComponent>(
|
||||||
this, TEXT("ControllerVisualizerRight"));
|
this, TEXT("ControllerVisualizerRight"));
|
||||||
ControllerVisualizerRight->SetupAttachment(WristTrackerRight);
|
ControllerVisualizerRight->SetupAttachment(WristTrackerRight);
|
||||||
ControllerVisualizerRight->SetDisplayModelSource(FName("OpenXR"));
|
ControllerVisualizerRight->SetDisplayModelSource(FName("OpenXR"));
|
||||||
@@ -1687,7 +1687,7 @@ void ASGPawn::FImpl::UpdateWristTrackerVisualization(const bool bRight, const EX
|
|||||||
const bool bIsVisualizationActive = VisualType == EXRVisualType::Controller
|
const bool bIsVisualizationActive = VisualType == EXRVisualType::Controller
|
||||||
|| !!Settings.bHandTrackingVisualizationAllowed;
|
|| !!Settings.bHandTrackingVisualizationAllowed;
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent* ControllerVisualizer{
|
UXRDeviceVisualizationComponent* ControllerVisualizer{
|
||||||
bRight ? Owner->ControllerVisualizerLeft : Owner->ControllerVisualizerRight
|
bRight ? Owner->ControllerVisualizerLeft : Owner->ControllerVisualizerRight
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,76 +0,0 @@
|
|||||||
/**
|
|
||||||
* @file
|
|
||||||
*
|
|
||||||
* @author Mamadou Babaei <mamadou@senseglove.com>
|
|
||||||
*
|
|
||||||
* @section LICENSE
|
|
||||||
*
|
|
||||||
* (The MIT License)
|
|
||||||
*
|
|
||||||
* Copyright (c) 2020 - 2024 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 "GameFramework/Actor.h"
|
|
||||||
#include "HeadMountedDisplayTypes.h"
|
|
||||||
#include "Math/Rotator.h"
|
|
||||||
#include "Math/Vector.h"
|
|
||||||
#include "XRDeviceVisualizationComponent.h"
|
|
||||||
#include "Templates/UniquePtr.h"
|
|
||||||
|
|
||||||
#include "SGWristTrackerVisualizationComponent.generated.h"
|
|
||||||
|
|
||||||
UCLASS(Blueprintable, ClassGroup = MotionController, meta = (BlueprintSpawnableComponent))
|
|
||||||
class SENSEGLOVE_API USGWristTrackerVisualizationComponent : public UXRDeviceVisualizationComponent
|
|
||||||
{
|
|
||||||
GENERATED_UCLASS_BODY()
|
|
||||||
|
|
||||||
private:
|
|
||||||
struct FImpl;
|
|
||||||
|
|
||||||
struct FImplDeleter
|
|
||||||
{
|
|
||||||
void operator()(const FImpl* P) const;
|
|
||||||
};
|
|
||||||
|
|
||||||
TUniquePtr<FImpl, FImplDeleter> Pimpl;
|
|
||||||
FImplDeleter PimplDeleter;
|
|
||||||
|
|
||||||
public:
|
|
||||||
virtual void InitializeComponent() override;
|
|
||||||
|
|
||||||
virtual void BeginPlay() override;
|
|
||||||
|
|
||||||
virtual void TickComponent(float DeltaTime,
|
|
||||||
enum ELevelTick TickType,
|
|
||||||
FActorComponentTickFunction* ThisTickFunction) override;
|
|
||||||
|
|
||||||
protected:
|
|
||||||
virtual void EditorTick(float DeltaTime,
|
|
||||||
enum ELevelTick TickType,
|
|
||||||
FActorComponentTickFunction* ThisTickFunction);
|
|
||||||
};
|
|
||||||
@@ -48,10 +48,10 @@
|
|||||||
class UCameraComponent;
|
class UCameraComponent;
|
||||||
class UPrimitiveComponent;
|
class UPrimitiveComponent;
|
||||||
class USphereComponent;
|
class USphereComponent;
|
||||||
|
class UXRDeviceVisualizationComponent;
|
||||||
|
|
||||||
class USGVirtualHandComponent;
|
class USGVirtualHandComponent;
|
||||||
class USGWristTrackerComponent;
|
class USGWristTrackerComponent;
|
||||||
class USGWristTrackerVisualizationComponent;
|
|
||||||
|
|
||||||
UCLASS(Config=Game, BlueprintType, Blueprintable)
|
UCLASS(Config=Game, BlueprintType, Blueprintable)
|
||||||
class SENSEGLOVE_API ASGPawn : public APawn
|
class SENSEGLOVE_API ASGPawn : public APawn
|
||||||
@@ -131,7 +131,7 @@ private:
|
|||||||
USGWristTrackerComponent* WristTrackerLeft;
|
USGWristTrackerComponent* WristTrackerLeft;
|
||||||
|
|
||||||
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
||||||
USGWristTrackerVisualizationComponent* ControllerVisualizerLeft;
|
UXRDeviceVisualizationComponent* ControllerVisualizerLeft;
|
||||||
|
|
||||||
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
||||||
USGVirtualHandComponent* HandLeft;
|
USGVirtualHandComponent* HandLeft;
|
||||||
@@ -167,7 +167,7 @@ private:
|
|||||||
USGWristTrackerComponent* WristTrackerRight;
|
USGWristTrackerComponent* WristTrackerRight;
|
||||||
|
|
||||||
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
||||||
USGWristTrackerVisualizationComponent* ControllerVisualizerRight;
|
UXRDeviceVisualizationComponent* ControllerVisualizerRight;
|
||||||
|
|
||||||
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
UPROPERTY(VisibleAnywhere, Category="SenseGlove", meta=(AllowPrivateAccess="false"))
|
||||||
USGVirtualHandComponent* HandRight;
|
USGVirtualHandComponent* HandRight;
|
||||||
@@ -251,7 +251,7 @@ public:
|
|||||||
return WristTrackerLeft;
|
return WristTrackerLeft;
|
||||||
}
|
}
|
||||||
|
|
||||||
FORCEINLINE USGWristTrackerVisualizationComponent* GetControllerVisualizerLeft() const
|
FORCEINLINE UXRDeviceVisualizationComponent* GetControllerVisualizerLeft() const
|
||||||
{
|
{
|
||||||
return ControllerVisualizerLeft;
|
return ControllerVisualizerLeft;
|
||||||
}
|
}
|
||||||
@@ -311,7 +311,7 @@ public:
|
|||||||
return WristTrackerRight;
|
return WristTrackerRight;
|
||||||
}
|
}
|
||||||
|
|
||||||
FORCEINLINE USGWristTrackerVisualizationComponent* GetControllerVisualizerRight() const
|
FORCEINLINE UXRDeviceVisualizationComponent* GetControllerVisualizerRight() const
|
||||||
{
|
{
|
||||||
return ControllerVisualizerLeft;
|
return ControllerVisualizerLeft;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,13 +35,13 @@
|
|||||||
|
|
||||||
#include "SGKismet/SGPawnKismetLibrary.h"
|
#include "SGKismet/SGPawnKismetLibrary.h"
|
||||||
|
|
||||||
#include "Runtime/Launch/Resources/Version.h"
|
|
||||||
#include "Camera/CameraComponent.h"
|
#include "Camera/CameraComponent.h"
|
||||||
#include "Components/SphereComponent.h"
|
#include "Components/SphereComponent.h"
|
||||||
|
#include "Runtime/Launch/Resources/Version.h"
|
||||||
|
#include "XRDeviceVisualizationComponent.h"
|
||||||
|
|
||||||
#include "SenseGlove/Components/SGVirtualHandComponent.h"
|
#include "SenseGlove/Components/SGVirtualHandComponent.h"
|
||||||
#include "SenseGlove/Components/SGWristTrackerComponent.h"
|
#include "SenseGlove/Components/SGWristTrackerComponent.h"
|
||||||
#include "SenseGlove/Components/SGWristTrackerVisualizationComponent.h"
|
|
||||||
#include "SenseGlove/GameFramework/SGPawn.h"
|
#include "SenseGlove/GameFramework/SGPawn.h"
|
||||||
|
|
||||||
UCameraComponent* UPawnKismetLibrary::GetCamera(const ASGPawn* Pawn)
|
UCameraComponent* UPawnKismetLibrary::GetCamera(const ASGPawn* Pawn)
|
||||||
@@ -54,7 +54,7 @@ USGWristTrackerComponent* UPawnKismetLibrary::GetWristTrackerLeft(const ASGPawn*
|
|||||||
return Pawn->GetWristTrackerLeft();
|
return Pawn->GetWristTrackerLeft();
|
||||||
}
|
}
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent* UPawnKismetLibrary::GetControllerVisualizerLeft(const ASGPawn* Pawn)
|
UXRDeviceVisualizationComponent* UPawnKismetLibrary::GetControllerVisualizerLeft(const ASGPawn* Pawn)
|
||||||
{
|
{
|
||||||
return Pawn->GetControllerVisualizerLeft();
|
return Pawn->GetControllerVisualizerLeft();
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,7 @@ USGWristTrackerComponent* UPawnKismetLibrary::GetWristTrackerRight(const ASGPawn
|
|||||||
return Pawn->GetWristTrackerRight();
|
return Pawn->GetWristTrackerRight();
|
||||||
}
|
}
|
||||||
|
|
||||||
USGWristTrackerVisualizationComponent* UPawnKismetLibrary::GetControllerVisualizerRight(const ASGPawn* Pawn)
|
UXRDeviceVisualizationComponent* UPawnKismetLibrary::GetControllerVisualizerRight(const ASGPawn* Pawn)
|
||||||
{
|
{
|
||||||
return Pawn->GetControllerVisualizerRight();
|
return Pawn->GetControllerVisualizerRight();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,17 +43,16 @@
|
|||||||
#include "UObject/NameTypes.h"
|
#include "UObject/NameTypes.h"
|
||||||
|
|
||||||
#include "SGKismet/SGBlueprintFunctionLibrary.h"
|
#include "SGKismet/SGBlueprintFunctionLibrary.h"
|
||||||
#include "SGTypes/SGNameArray.h"
|
|
||||||
|
|
||||||
#include "SGPawnKismetLibrary.generated.h"
|
#include "SGPawnKismetLibrary.generated.h"
|
||||||
|
|
||||||
class UCameraComponent;
|
class UCameraComponent;
|
||||||
class USphereComponent;
|
class USphereComponent;
|
||||||
|
class UXRDeviceVisualizationComponent;
|
||||||
|
|
||||||
class ASGPawn;
|
class ASGPawn;
|
||||||
class USGVirtualHandComponent;
|
class USGVirtualHandComponent;
|
||||||
class USGWristTrackerComponent;
|
class USGWristTrackerComponent;
|
||||||
class USGWristTrackerVisualizationComponent;
|
|
||||||
|
|
||||||
UCLASS(meta=(ScriptName = "SesneGlovePawnKismetLibrary"))
|
UCLASS(meta=(ScriptName = "SesneGlovePawnKismetLibrary"))
|
||||||
class SENSEGLOVEKISMET_API UPawnKismetLibrary final : public USGBlueprintFunctionLibrary
|
class SENSEGLOVEKISMET_API UPawnKismetLibrary final : public USGBlueprintFunctionLibrary
|
||||||
@@ -68,7 +67,7 @@ public:
|
|||||||
static USGWristTrackerComponent* GetWristTrackerLeft(const ASGPawn* Pawn);
|
static USGWristTrackerComponent* GetWristTrackerLeft(const ASGPawn* Pawn);
|
||||||
|
|
||||||
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
||||||
static USGWristTrackerVisualizationComponent* GetControllerVisualizerLeft(const ASGPawn* Pawn);
|
static UXRDeviceVisualizationComponent* GetControllerVisualizerLeft(const ASGPawn* Pawn);
|
||||||
|
|
||||||
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
||||||
static USGVirtualHandComponent* GetHandLeft(const ASGPawn* Pawn);
|
static USGVirtualHandComponent* GetHandLeft(const ASGPawn* Pawn);
|
||||||
@@ -104,7 +103,7 @@ public:
|
|||||||
static USGWristTrackerComponent* GetWristTrackerRight(const ASGPawn* Pawn);
|
static USGWristTrackerComponent* GetWristTrackerRight(const ASGPawn* Pawn);
|
||||||
|
|
||||||
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
||||||
static USGWristTrackerVisualizationComponent* GetControllerVisualizerRight(const ASGPawn* Pawn);
|
static UXRDeviceVisualizationComponent* GetControllerVisualizerRight(const ASGPawn* Pawn);
|
||||||
|
|
||||||
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
UFUNCTION(BlueprintPure, Category="SenseGlove | Game Framework | Pawn")
|
||||||
static USGVirtualHandComponent* GetHandRight(const ASGPawn* Pawn);
|
static USGVirtualHandComponent* GetHandRight(const ASGPawn* Pawn);
|
||||||
|
|||||||
Reference in New Issue
Block a user