Inventory Engine
v3.8
|
Add this component to a UI rectangle and it'll act as a detection zone for a follower joystick. More...
Inherits MoreMountains.Tools.MMTouchJoystick.
Public Member Functions | |
override void | Initialize () |
On initialize, we set our knob transform More... | |
override void | OnPointerDown (PointerEventData data) |
When the zone is pressed, we move our joystick accordingly More... | |
override void | OnDrag (PointerEventData eventData) |
On drag, we adjust our target and constrain our background More... | |
override void | OnPointerUp (PointerEventData data) |
On pointer up we reset our joystick More... | |
Public Member Functions inherited from MoreMountains.Tools.MMTouchJoystick | |
virtual void | RefreshMaxRangeDistance () |
This method is used to compute the max range distance when in DistanceToTransform mode More... | |
virtual void | SetKnobTransform (Transform newTransform) |
Assigns a new transform as the joystick knob More... | |
virtual void | SetNeutralPosition () |
Sets the neutral position of the joystick More... | |
virtual void | SetNeutralPosition (Vector3 newPosition) |
virtual void | ResetJoystick () |
Resets the stick's position and values More... | |
virtual void | OnEndDrag (PointerEventData eventData) |
What happens when the stick stops being dragged More... | |
Public Attributes | |
CanvasGroup | KnobCanvasGroup |
the canvas group to use as the joystick's knob - the part that moves under your thumb More... | |
CanvasGroup | BackgroundCanvasGroup |
the canvas group to use as the joystick's background More... | |
bool | ResetPositionToInitialOnRelease = false |
if this is true, the joystick will return back to its initial position when released More... | |
bool | InterpolateFollowMovement = false |
if this is true, the background will follow its target with interpolation, otherwise it'll be instant movement More... | |
float | InterpolateFollowMovementSpeed = 0.3f |
if in interpolate mode, this defines the speed at which the backgrounds follows the knob More... | |
bool | SpringFollowInterpolation = false |
whether or not to add a spring to the interpolation of the background movement More... | |
float | SpringDamping = 0.6f |
when in SpringFollowInterpolation mode, the amount of damping to apply to the spring More... | |
float | SpringFrequency = 4f |
when in SpringFollowInterpolation mode, the frequency to apply to the spring More... | |
bool | ShouldConstrainBackground = true |
if this is true, the joystick won't be able to travel beyond the bounds of the top level canvas More... | |
RectTransform | BackgroundConstraintRectTransform |
the rect to consider as a background constraint zone, if left empty, will be auto created More... | |
float | BackgroundConstraintPaddingLeft |
the left padding to apply to the background constraint More... | |
float | BackgroundConstraintPaddingRight |
the right padding to apply to the background constraint More... | |
float | BackgroundConstraintPaddingTop |
the top padding to apply to the background constraint More... | |
float | BackgroundConstraintPaddingBottom |
the bottom padding to apply to the background constraint More... | |
Public Attributes inherited from MoreMountains.Tools.MMTouchJoystick | |
Camera | TargetCamera |
The camera to use as the reference for any ScreenToWorldPoint computations. More... | |
bool | HorizontalAxisEnabled = true |
Is horizontal axis allowed. More... | |
bool | VerticalAxisEnabled = true |
Is vertical axis allowed. More... | |
MaxRangeModes | MaxRangeMode = MaxRangeModes.Distance |
the mode in which to compute the range. Distance will be a flat value, DistanceToTransform will be a distance to a transform you can move around and potentially resize as you wish for various resolutions More... | |
float | MaxRange = 1.5f |
The MaxRange is the maximum distance from its initial center position you can drag the joystick to. More... | |
Transform | MaxRangeTransform |
in DistanceToTransform mode, the object whose distance to the center will be used to compute the max range. Note that this is computed once, at init. Call RefreshMaxRangeDistance() to recompute it. More... | |
JoystickEvent | JoystickValue |
An event to use the raw value of the joystick. More... | |
JoystickEvent | JoystickNormalizedValue |
An event to use the normalized value of the joystick. More... | |
JoystickFloatEvent | JoystickMagnitudeValue |
UnityEvent | OnPointerDownEvent |
An event triggered when tapping the joystick for the first time. More... | |
UnityEvent | OnDragEvent |
An event triggered when dragging the stick. More... | |
UnityEvent | OnPointerUpEvent |
An event triggered when releasing the stick. More... | |
Transform | RotatingIndicator |
an object you can rotate to show the direction of the joystick. Will only be visible if the movement is above a threshold More... | |
float | RotatingIndicatorThreshold = 0.1f |
the threshold above which the rotating indicator will appear More... | |
float | PressedOpacity = 0.5f |
the new opacity to apply to the canvas group when the button is pressed More... | |
bool | InterpolateOpacity = true |
whether or not to interpolate opacity changes on the knob's canvas group More... | |
float | InterpolateOpacitySpeed = 1f |
the speed at which to interpolate opacity More... | |
Vector2 | RawValue |
the raw value of the joystick, from 0 to 1 on each axis More... | |
Vector2 | NormalizedValue |
the normalized value of the joystick More... | |
float | Magnitude |
the magnitude of the stick's vector More... | |
bool | DrawGizmos = true |
whether or not to draw gizmos associated to this stick More... | |
Protected Member Functions | |
override void | Start () |
On Start, we instantiate our joystick's image if there's one More... | |
override void | Update () |
On update, we handle movement interpolation More... | |
virtual void | HandleMovementInterpolation () |
Handles the movement of the background relative to the knob More... | |
virtual void | CreateInnerRect () |
Creates a constraining inner rect More... | |
virtual void | ComputeJoystickValue () |
Determines the value of the joystick by computing the More... | |
virtual void | ConstrainBackground () |
Clamps the background inside the inner rect More... | |
override void | ClampToBounds () |
We don't clamp the stick anymore More... | |
Protected Member Functions inherited from MoreMountains.Tools.MMTouchJoystick | |
virtual void | HandleOpacity () |
Changes or interpolates the opacity of the knob More... | |
virtual void | RotateIndicator () |
Rotates an indicator to match the rotation of the stick More... | |
virtual Vector3 | ConvertToWorld (Vector3 position) |
Converts a position to world position More... | |
virtual float | EvaluateInputValue (float vectorPosition) |
We compute the axis value from the interval between neutral position, current stick position (vectorPosition) and max range More... | |
virtual void | OnEnable () |
On enable, we initialize our stick More... | |
Protected Attributes | |
Vector3 | _initialPosition |
Vector3 | _newPosition |
RectTransform | _rectTransform |
RectTransform | _backgroundRectTransform |
Vector3[] | _innerRectCorners = new Vector3[4] |
Vector3 | _newBackgroundPosition |
Vector3 | _backgroundPositionTarget |
Vector3 | _innerRectTransformBottomLeft |
Vector3 | _innerRectTransformTopLeft |
Vector3 | _innerRectTransformTopRight |
Vector3 | _innerRectTransformBottomRight |
Vector3 | _springVelocity |
Protected Attributes inherited from MoreMountains.Tools.MMTouchJoystick | |
Vector2 | _neutralPosition |
Vector2 | _newTargetPosition |
Vector3 | _newJoystickPosition |
float | _initialZPosition |
float | _targetOpacity |
CanvasGroup | _canvasGroup |
float | _initialOpacity |
Transform | _knobTransform |
bool | _rotatingIndicatorIsNotNull = false |
float | _maxRangeTransformDistance |
Additional Inherited Members | |
Public Types inherited from MoreMountains.Tools.MMTouchJoystick | |
enum | MaxRangeModes { MaxRangeModes.Distance, MaxRangeModes.DistanceToTransform } |
Properties inherited from MoreMountains.Tools.MMTouchJoystick | |
float? | ComputedMaxRange [get] |
virtual RenderMode | ParentCanvasRenderMode [get, protected set] |
the render mode of the parent canvas this stick is on More... | |
Add this component to a UI rectangle and it'll act as a detection zone for a follower joystick.
Note that this component extends the MMTouchJoystick class so you don't need to add another joystick to it. It's both the detection zone and the stick itself.
|
protectedvirtual |
We don't clamp the stick anymore
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
protectedvirtual |
Determines the value of the joystick by computing the
|
protectedvirtual |
Clamps the background inside the inner rect
|
protectedvirtual |
Creates a constraining inner rect
|
protectedvirtual |
Handles the movement of the background relative to the knob
|
virtual |
On initialize, we set our knob transform
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
virtual |
On drag, we adjust our target and constrain our background
eventData |
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
virtual |
When the zone is pressed, we move our joystick accordingly
data | Data. |
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
virtual |
On pointer up we reset our joystick
data |
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
protectedvirtual |
On Start, we instantiate our joystick's image if there's one
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
protectedvirtual |
On update, we handle movement interpolation
Reimplemented from MoreMountains.Tools.MMTouchJoystick.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
CanvasGroup MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundCanvasGroup |
the canvas group to use as the joystick's background
float MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundConstraintPaddingBottom |
the bottom padding to apply to the background constraint
float MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundConstraintPaddingLeft |
the left padding to apply to the background constraint
float MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundConstraintPaddingRight |
the right padding to apply to the background constraint
float MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundConstraintPaddingTop |
the top padding to apply to the background constraint
RectTransform MoreMountains.Tools.MMTouchFollowerJoystick.BackgroundConstraintRectTransform |
the rect to consider as a background constraint zone, if left empty, will be auto created
bool MoreMountains.Tools.MMTouchFollowerJoystick.InterpolateFollowMovement = false |
if this is true, the background will follow its target with interpolation, otherwise it'll be instant movement
float MoreMountains.Tools.MMTouchFollowerJoystick.InterpolateFollowMovementSpeed = 0.3f |
if in interpolate mode, this defines the speed at which the backgrounds follows the knob
CanvasGroup MoreMountains.Tools.MMTouchFollowerJoystick.KnobCanvasGroup |
the canvas group to use as the joystick's knob - the part that moves under your thumb
bool MoreMountains.Tools.MMTouchFollowerJoystick.ResetPositionToInitialOnRelease = false |
if this is true, the joystick will return back to its initial position when released
bool MoreMountains.Tools.MMTouchFollowerJoystick.ShouldConstrainBackground = true |
if this is true, the joystick won't be able to travel beyond the bounds of the top level canvas
float MoreMountains.Tools.MMTouchFollowerJoystick.SpringDamping = 0.6f |
when in SpringFollowInterpolation mode, the amount of damping to apply to the spring
bool MoreMountains.Tools.MMTouchFollowerJoystick.SpringFollowInterpolation = false |
whether or not to add a spring to the interpolation of the background movement
float MoreMountains.Tools.MMTouchFollowerJoystick.SpringFrequency = 4f |
when in SpringFollowInterpolation mode, the frequency to apply to the spring