public/0.12.xpublic/0.8.xpublic/0.9.xpublic/0.11.x
  • Features
  • API Documentation
  • API Documentation
  • UUxtManipulatorComponentBase

    Show / Hide Table of Contents
    • AUxtBasePressableButtonActor
    • AUxtHandInteractionActor
    • AUxtInputSimulationActor
    • AUxtPinchSliderActor
    • AUxtPressableButtonActor
    • AUxtPressableCheckButtonActor
    • AUxtPressableRadioButtonActor
    • AUxtPressableSwitchButtonActor
    • AUxtPressableToggleButtonActor
    • AUxtTextRenderActor
    • FScrollingCollectionProperties
    • FUxtAffordanceConfig
    • FUxtAffordanceInstance
    • FUxtButtonAudioBrush
    • FUxtButtonBrush
    • FUxtButtonVisualsBrush
    • FUxtFontCharacter
    • FUxtGrabPointerData
    • FUxtGrabPointerFocus
    • FUxtHandProximityMeshData
    • FUxtIconBrush
    • FUxtIconBrushCustomization
    • FUxtInputAnimationUtils
    • FUxtInputSimulationHandState
    • FUxtInteractionUtils
    • FUXToolsEditorModule
    • FUXToolsModule
    • FUXToolsShadersModule
    • FUXToolsWMRModule
    • FUxtPointerFocus
    • FUxtPointerFocusSearchResult
    • FUxtPokePointerFocus
    • FUxtPressableButtonComponentVisualizer
    • FUxtRuntimeSettingsButtonSet
    • FUxtTextBrush
    • FUxtTooltipSpawnerComponentVisualizer
    • FUxtWmrHandTracker
    • IUxtCollectionObject
    • IUxtFarHandler
    • IUxtFarTarget
    • IUxtGrabHandler
    • IUxtGrabTarget
    • IUxtHandTracker
    • IUxtPokeHandler
    • IUxtPokeTarget
    • UUxtBaseObjectCollection
    • UUxtBoundsControlComponent
    • UUxtBoundsControlConfig
    • UUxtCollectionObject
    • UUxtFaceUserConstraint
    • UUxtFarBeamComponent
    • UUxtFarCursorComponent
    • UUxtFarHandler
    • UUxtFarPointerComponent
    • UUxtFarTarget
    • UUxtFingerCursorComponent
    • UUxtFixedDistanceConstraint
    • UUxtFixedRotationToUserConstraint
    • UUxtFixedRotationToWorldConstraint
    • UUxtFollowComponent
    • UUxtFunctionLibrary
    • UUxtGrabHandler
    • UUxtGrabPointerDataFunctionLibrary
    • UUxtGrabTarget
    • UUxtGrabTargetComponent
    • UUxtHandConstraintComponent
    • UUxtHandTrackingFunctionLibrary
    • UUxtIconBrushEditorUtilityWidget
    • UUxtInputSimulationHeadMovementComponent
    • UUxtInputSimulationLocalPlayerSubsystem
    • UUxtInputSimulationState
    • UUxtInputSubsystem
    • UUxtInternalFunctionLibrary
    • UUxtMaintainApparentSizeConstraint
    • UUxtManipulatorComponentBase
    • UUxtMathUtilsFunctionLibrary
    • UUxtMoveAxisConstraint
    • UUxtNearPointerComponent
    • UUxtPalmUpConstraintComponent
    • UUxtPinchSliderComponent
    • UUxtPointerComponent
    • UUxtPokeHandler
    • UUxtPokeTarget
    • UUxtPressableButtonComponent
    • UUxtRotationAxisConstraint
    • UUxtRuntimeSettings
    • UUxtTapToPlaceComponent
    • UUxtTextRenderComponent
    • UUxtToggleGroupComponent
    • UUxtTouchableVolumeComponent
    • UUxtTouchBasedHandTrackerComponent
    • UUxtTouchBasedHandTrackerSubsystem
    • UUxtTransformConstraint
    • UUxtUIElementComponent
    • UUxtWidgetComponent
    • UxtConstraintManager
    • UxtManipulationMoveLogic
    • UXTools
    • UXToolsEditor
    • UXToolsInputSimulation
    • UXToolsRuntimeSettings
    • UXToolsShaders
    • UXToolsWMR
    • UxtTwoHandManipulationRotateLogic
    • UxtTwoHandManipulationScaleLogic

    Class UUxtManipulatorComponentBase

    Base class for manipulation components that react to pointer interactions.

    This class does not modify the actor as-is. Implementations should use the provided functions to compute a target transform from grabbing pointers and call the ApplyTargetTransform method to actually modify the actor.

    Inheritance
    System::Object
    USceneComponent
    UUxtGrabTargetComponent
    UUxtManipulatorComponentBase
    Inherited Members
    IUxtFarHandler::CanHandleFar(UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::CanHandleFar_Implementation(UPrimitiveComponent *Primitive)
    IUxtGrabHandler::CanHandleGrab(UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::CanHandleGrab_Implementation(UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::FindGrabPointer(UUxtNearPointerComponent *NearPointer, UUxtFarPointerComponent *FarPointer, bool &Success, FUxtGrabPointerData &PointerData, int &Index)
    UUxtGrabTargetComponent::ForceEndGrab()
    UUxtGrabTargetComponent::GetGrabPointCentroid(const FTransform &Transform)
    UUxtGrabTargetComponent::GetGrabPointers()
    UUxtGrabTargetComponent::GetPointerCentroid()
    UUxtGrabTargetComponent::GetPrimaryGrabPointer(bool &Valid, FUxtGrabPointerData &PointerData)
    UUxtGrabTargetComponent::GetSecondaryGrabPointer(bool &Valid, FUxtGrabPointerData &PointerData)
    UUxtGrabTargetComponent::GetTargetCentroid()
    UUxtGrabTargetComponent::GetTickOnlyWhileGrabbed()
    UUxtGrabTargetComponent::InteractionMode
    IUxtFarTarget::IsFarFocusable(const UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::IsFarFocusable_Implementation(const UPrimitiveComponent *Primitive)
    IUxtGrabTarget::IsGrabFocusable(const UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::IsGrabFocusable_Implementation(const UPrimitiveComponent *Primitive)
    UUxtGrabTargetComponent::OnBeginGrab
    IUxtGrabHandler::OnBeginGrab(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnBeginGrab_Implementation(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEndGrab
    IUxtGrabHandler::OnEndGrab(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEndGrab_Implementation(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEnterFarFocus
    IUxtFarHandler::OnEnterFarFocus(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEnterFarFocus_Implementation(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEnterGrabFocus
    IUxtGrabHandler::OnEnterGrabFocus(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnEnterGrabFocus_Implementation(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnExitFarFocus
    IUxtFarHandler::OnExitFarFocus(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnExitFarFocus_Implementation(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnExitGrabFocus
    IUxtGrabHandler::OnExitGrabFocus(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnExitGrabFocus_Implementation(UUxtNearPointerComponent *Pointer)
    IUxtFarHandler::OnFarDragged(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnFarDragged_Implementation(UUxtFarPointerComponent *Pointer)
    IUxtFarHandler::OnFarPressed(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnFarPressed_Implementation(UUxtFarPointerComponent *Pointer)
    IUxtFarHandler::OnFarReleased(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnFarReleased_Implementation(UUxtFarPointerComponent *Pointer)
    IUxtFarHandler::OnUpdatedFarFocus(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnUpdatedFarFocus_Implementation(UUxtFarPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnUpdateFarFocus
    UUxtGrabTargetComponent::OnUpdateGrab
    IUxtGrabHandler::OnUpdateGrab(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnUpdateGrab_Implementation(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnUpdateGrabFocus
    IUxtGrabHandler::OnUpdateGrabFocus(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::OnUpdateGrabFocus_Implementation(UUxtNearPointerComponent *Pointer)
    UUxtGrabTargetComponent::SetTickOnlyWhileGrabbed(bool bEnable)
    UUxtGrabTargetComponent::UUxtGrabTargetComponent()
    Namespace:
    Assembly: .dll
    Syntax
    public: class UUxtManipulatorComponentBase : public xtGrabTargetComponent

    Constructors

    | Improve this Doc View Source

    ~UUxtManipulatorComponentBase()

    Declaration
    public: ~UUxtManipulatorComponentBase()
    | Improve this Doc View Source

    UUxtManipulatorComponentBase()

    Declaration
    public: UUxtManipulatorComponentBase()

    Fields

    | Improve this Doc View Source

    bAutoSetInitialTransform

    If true the initial transform will be set automatically when the component is grabbed.

    Declaration
    public: bool bAutoSetInitialTransform= true
    Field Value
    Type Description
    bool
    | Improve this Doc View Source

    Constraints

    Declaration
    protected: UxtConstraintManager * Constraints
    Field Value
    Type Description
    UxtConstraintManager *
    | Improve this Doc View Source

    InitialCameraSpaceTransform

    Declaration
    public: FTransform InitialCameraSpaceTransform
    Field Value
    Type Description
    FTransform
    | Improve this Doc View Source

    InitialTransform

    Declaration
    public: FTransform InitialTransform
    Field Value
    Type Description
    FTransform
    | Improve this Doc View Source

    MoveLogic

    Declaration
    protected: UxtManipulationMoveLogic * MoveLogic
    Field Value
    Type Description
    UxtManipulationMoveLogic *
    | Improve this Doc View Source

    OnUpdateTransform

    Declaration
    public: FUxtUpdateTransformDelegate OnUpdateTransform
    Field Value
    Type Description
    FUxtUpdateTransformDelegate
    | Improve this Doc View Source

    TransformTarget

    The component to transform, will default to the root scene component if not specified

    Declaration
    public: USceneComponent * TransformTarget= nullptr
    Field Value
    Type Description
    USceneComponent *
    | Improve this Doc View Source

    TwoHandRotateLogic

    Declaration
    protected: UxtTwoHandManipulationRotateLogic * TwoHandRotateLogic
    Field Value
    Type Description
    UxtTwoHandManipulationRotateLogic *
    | Improve this Doc View Source

    TwoHandScaleLogic

    Declaration
    protected: UxtTwoHandManipulationScaleLogic * TwoHandScaleLogic
    Field Value
    Type Description
    UxtTwoHandManipulationScaleLogic *

    Methods

    | Improve this Doc View Source

    ApplyTargetTransform(const FTransform &TargetTransform)

    Apply the transform to the actor root scene component. Relative transform between the manipulator component and the root scene component is preserved.

    Declaration
    public: void ApplyTargetTransform(const FTransform &TargetTransform)
    Parameters
    Type Name Description
    const FTransform & TargetTransform
    | Improve this Doc View Source

    BeginPlay()

    Declaration
    protected: virtual void BeginPlay() override
    Overrides
    UUxtGrabTargetComponent::BeginPlay()
    | Improve this Doc View Source

    EndPlay(const EEndPlayReason::Type EndPlayReason)

    Declaration
    protected: virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override
    Parameters
    Type Name Description
    const EEndPlayReason::Type EndPlayReason
    | Improve this Doc View Source

    GetTargetComponent()

    Get the component the manipulator is targeting.

    Declaration
    public: USceneComponent * GetTargetComponent()
    Returns
    Type Description
    USceneComponent *
    | Improve this Doc View Source

    MoveToTargets(const FTransform &SourceTransform, FTransform &TargetTransform, bool UsePointerRotation)

    Translate the source transform such that grab points match targets. If more than one pointer is used then the centroid of the grab points and targets is used.

    Declaration
    public: void MoveToTargets(const FTransform &SourceTransform, FTransform &TargetTransform, bool UsePointerRotation) const
    Parameters
    Type Name Description
    const FTransform & SourceTransform
    FTransform & TargetTransform
    bool UsePointerRotation
    | Improve this Doc View Source

    RotateAboutAxis(const FTransform &SourceTransform, const FVector &Pivot, const FVector &Axis, FTransform &TargetTransform)

    Rotates the source transform around the pivot point on the given axis such that the pointers line up with current targets. If more than one pointer is used then the resulting rotation will minimize the mean square of target distances.

    Declaration
    public: void RotateAboutAxis(const FTransform &SourceTransform, const FVector &Pivot, const FVector &Axis, FTransform &TargetTransform) const
    Parameters
    Type Name Description
    const FTransform & SourceTransform
    const FVector & Pivot
    const FVector & Axis
    FTransform & TargetTransform
    | Improve this Doc View Source

    RotateAroundPivot(const FTransform &SourceTransform, const FVector &Pivot, FTransform &TargetTransform)

    Rotates the source transform around the pivot point such that the pointers line up with current targets. If more than one pointer is used then the resulting rotation will minimize the mean square of target distances.

    Declaration
    public: void RotateAroundPivot(const FTransform &SourceTransform, const FVector &Pivot, FTransform &TargetTransform) const
    Parameters
    Type Name Description
    const FTransform & SourceTransform
    const FVector & Pivot
    FTransform & TargetTransform
    | Improve this Doc View Source

    SetInitialTransform()

    Cache the initial world space and camera space transform. Manipulation should be based on these initial transform for stable results. If bAutoSetInitialTransform is true then the initial transform is updated when grabbed.

    Declaration
    public: void SetInitialTransform()
    | Improve this Doc View Source

    SmoothTransform(const FTransform &SourceTransform, float LocationSmoothing, float RotationSmoothing, float DeltaSeconds, FTransform &TargetTransform)

    Apply a low-pass filter to the source transform location and rotation to smooth out jittering. Target transform is a exponentially weighted average of the current component transform and the source transform based on the time step.

    Declaration
    public: void SmoothTransform(const FTransform &SourceTransform, float LocationSmoothing, float RotationSmoothing, float DeltaSeconds, FTransform &TargetTransform) const
    Parameters
    Type Name Description
    const FTransform & SourceTransform
    float LocationSmoothing
    float RotationSmoothing
    float DeltaSeconds
    FTransform & TargetTransform
    | Improve this Doc View Source

    TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction)

    Declaration
    protected: virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction) override
    Parameters
    Type Name Description
    float DeltaTime
    ELevelTick TickType
    FActorComponentTickFunction * ThisTickFunction
    • Improve this Doc
    • View Source
    In This Article
    • Constructors
      • ~UUxtManipulatorComponentBase()
      • UUxtManipulatorComponentBase()
    • Fields
      • bAutoSetInitialTransform
      • Constraints
      • InitialCameraSpaceTransform
      • InitialTransform
      • MoveLogic
      • OnUpdateTransform
      • TransformTarget
      • TwoHandRotateLogic
      • TwoHandScaleLogic
    • Methods
      • ApplyTargetTransform(const FTransform &TargetTransform)
      • BeginPlay()
      • EndPlay(const EEndPlayReason::Type EndPlayReason)
      • GetTargetComponent()
      • MoveToTargets(const FTransform &SourceTransform, FTransform &TargetTransform, bool UsePointerRotation)
      • RotateAboutAxis(const FTransform &SourceTransform, const FVector &Pivot, const FVector &Axis, FTransform &TargetTransform)
      • RotateAroundPivot(const FTransform &SourceTransform, const FVector &Pivot, FTransform &TargetTransform)
      • SetInitialTransform()
      • SmoothTransform(const FTransform &SourceTransform, float LocationSmoothing, float RotationSmoothing, float DeltaSeconds, FTransform &TargetTransform)
      • TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction)
    Back to top Generated by DocFX