Action-based vs Device-based 정리 (XR Interaction Toolkit)

요약

Device-based는 초기 설정이 적지만 입력 처리는 별도로 커스터마이즈 할 수 없는 게 단점 (유니티에서 Action-based 권장)

Action-based는 초기 설정이 필요하지만 입력 처리를 커스터마이즈 할 수 있고 입력 시스템을 사용하여

간접적으로 사용자의 입력을 읽을 수 있으므로 가능한 모든 단일 장치에 대해 코딩할 필요가 없다.

각 컨트롤러에 대한 각 컨트롤을 수동으로 구체적으로 설정하지 않고 각 컨트롤에 작업이 할당되기 때문에 크로스 플랫폼 통합이 더 쉬워진다.

이렇게 하면 게임을 판매할 때 Oculus 이외의 다른 장치를 대상으로 하려는 경우 많은 시간을 절약할 수 있다.

Action-based vs Device-based

액션 기반 동작과 디바이스 기반 동작의 차이

https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.0/manual/general-setup.html

Several behaviors, such as the Snap Turn Provider, have two variants: an Action-based behavior and a Device-based behavior.

Snap Turn Provider 와 같은 동작에는 Action-based(액션 기반) 동작과 Device-based(장치 기반) 동작의 두 가지 유형이 있습니다.

Action-based behaviors use Actions to indirectly read input from one or more controls.

액션 기반 동작은 액션 을 사용하여 하나 이상의 컨트롤에서 입력을 간접적으로 읽습니다.

Device-based behaviors use InputDevice.

디바이스 기반 동작에서는 Input Device를 사용합니다.

TryGetFeatureValue to read input directly from an InputDevice from a specific control configured on the behavior itself.

동작 자체에 설정된 특정 컨트롤에서 입력 장치에서 직접 입력을 읽으려면 GetFeatureValue를 시도합니다.

It is recommended that you use the Action-based variant instead of the Device-based variant to take advantage of the benefits that the Input System package provides.

Input System 패키지의 이점을 활용하려면 장치 기반 동작이 아닌 액션 기반 동작을 사용하는 것이 좋습니다.

For example,

예를들면,

it separates the logical inputs from the physical inputs,

논리적 입력과 물리적 입력이 구별된다는 장점이 있으며

and users can create and switch between customized action maps, bind multiple cross-platform controller inputs to a single semantic action, and use event callbacks of input actions.

사용자가 사용자 정의한 액션 맵을 만들고 이들을 전환하거나 여러 크로스 플랫폼 컨트롤러의 입력을 단일 의미의 액션에 바인딩 하거나 입력 작업의 이벤트 콜백을 사용할 수 있습니다. 

Some features of the XR Interaction Toolkit package, such as the XR Device Simulator, are only supported when using input actions.

XR Device Simulator와 같은 XR Interaction Toolkit 패키지의 일부 기능은 입력 작업을 사용할 때만 지원됩니다.


XR Controller (Device-based)

https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-device-based.html?q=Device-based

Interprets feature values on a tracked input controller device from the XR input subsystem into XR Interaction states, such as Select.

XR 입력 서브 시스템에서 XR Interaction 상태로 전송되는 선택과 같은 조치를 사용하여 추적되는 입력 컨트롤러 장치의 특성 값을 해석합니다.

Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.

또한 추적 대상 장치의 현재 포즈 값을 GameObject변환에 적용합니다.

It is recommended to use the action-based controller instead of this behavior.

이 동작 대신 Action-based 컨트롤러 를 사용하는 것이 좋습니다.

This behavior does not need as much initial setup as compared to the action-based controller,

이 동작은 Action-based 의 컨트롤러에 비해 초기설정이 훨씬 적어집니다.

however input processing is less customizable and XRDeviceSimulator cannot be used to drive this behavior.

그러나 입력 처리는 별도로 커스터마이즈 할 수 없고, XRDeviceSimulator 는 이 동작의 실행에 사용할 수 없습니다.

XR Controller (Device-based) 속성

PropertyDescription
Update Tracking TypeThe time within the frame that the controller samples tracking input.

컨트롤러가 추적 입력을 샘플링하는 프레임의 시간입니다.
 UpdateSet Update Tracking Type to Update to sample tracking input only during the MonoBehaviour Update step.

Update Tracking Type 을 Update 로 설정하면 MonoBehaviour Update단계 사이에서만 추적 입력을 샘플링합니다.
 Before RenderSet Update Tracking Type to Before Render to sample tracking input only during the step immediately before rendering.

Update Tracking Type 을 Before Render 로 설정하면 렌더링 직전의 단계 사이에서만 추적 입력을 샘플링합니다.
 Update And Before RenderSet Update Tracking Type to Update And Before Render to sample tracking input during both of the timings within a frame above.

Update Tracking Type 을 Update And Before Render 로 설정하면 위의 어느 타이밍에서든 프레임 내에서 추적 입력을 샘플링합니다.
Enable Input TrackingWhether input pose tracking is enabled for the controller.

대상 컨트롤러에서 입력 포즈 추적을 활성화할지 여부.

When enabled, Unity reads the current tracking pose input of the controller device each frame.

활성화되면 Unity는 프레임별로 컨트롤러 장치의 현재 추적 포즈 입력을 읽습니다.

You can disable this in order to drive the controller state manually instead of from reading current inputs, such as when playing back recorded pose inputs.

현재 입력을 읽는 대신 녹화된 포즈 입력을 재생하는 것과 같은 방법으로 컨트롤러의 상태를 수동으로 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.
Enable Input ActionsWhether input for XR Interaction events is enabled for the controller.

대상 컨트롤러에서 XR Interaction 이벤트 입력을 활성화할지 여부

When enabled, Unity reads the current input of the controller device each frame.

활성화되면 Unity는 프레임당 컨트롤러 장치의 현재 입력을 읽습니다.

You can disable this in order to drive the controller state manually instead of from reading current inputs, such as when playing back recorded inputs.

현재 입력을 읽는 대신 기록된 입력을 재생하는 것과 같은 방법으로 수동으로 컨트롤러 상태를 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.
Pose ProviderPose provider used to provide tracking data separate from the XRNode.

XRNode별도의 추적 데이터를 검색하는 데 사용되는 포즈 공급자.
Controller NodeThe XRNode for this controller.

이 컨트롤러의 XRNode.

Used to get the InputDevice when reading input from the controller, with calls such as IsPressed and TryGetFeatureValue.

컨트롤러에서 입력을 읽을 때 IsPressed등 TryGetFeatureValue을 호출하여 InputDevice얻는 데 사용됩니다.
Select UsageThe input to use for detecting a select. Refers to input mechanisms on an XR controller. The default select usage is Grip.

선택을 감지하는 데 사용되는 입력. XR 컨트롤러의 입력 메커니즘을 참조합니다. 기본 선택 방법은 Grip입니다.
Activate UsageThe input to use for detecting activation. Refers to input mechanisms on an XR controller. The default activation usage is Trigger.

활성화를 감지하는 데 사용되는 입력.  XR 컨트롤러의 입력 메커니즘을 참조합니다. 기본 활성화 방법은 Trigger입니다.

Not to be confused with the active state of a GameObject,

GameObject의 활성 상태와 혼동하지 마십시오,

an activate event in this context refers to a contextual command action, such as toggling a flashlight on and off.

여기에서 활성화 이벤트는 게임 객체의 활성 상태와 달리 손전등 켜기/끄기 전환과 같은 컨텍스트 종속 명령 동작을 가리킵니다.
UI Press UsageThe input to use for detecting a UI press. Refers to input mechanisms on an XR controller. The default UI press usage is Trigger.

UI 누름을 검출하는 데 사용되는 입력. XR 컨트롤러의 입력 메커니즘을 참조합니다. 기본 UI 누름 방법은 Trigger.
Axis To Press ThresholdThe amount that a user needs to press an axis in order to trigger an interaction event.

상호 작용 이벤트를 트리거하는 데 필요한 사용자가 축을 누르는 양

This value is normalized: 0 is not pressed at all, 1 is fully pressed. The default threshold is 0.1.

0은 전혀 누르지 않으며 1은 완전히 누르는 것처럼 값이 정규화됩니다. 기본 임계값은 0.1입니다.
Rotate Object LeftThe input to use to rotate an anchor to the Left (counter-clockwise).

앵커를 왼쪽으로 (반 시계 방향으로) 회전하는 데 사용되는 입력. 

Refers to input mechanisms on an XR controller. The default is PrimaryAxis2DLeft.

XR 컨트롤러의 입력 메커니즘을 참조합니다. 기본값은 PrimaryAxis2DLeft입니다.
Rotate Object RightThe input to use to rotate an anchor to the Right (clockwise).

anchor를 오른쪽으로 (시계 방향으로) 회전하는 데 사용되는 입력. 

Refers to input mechanisms on an XR controller. The default is PrimaryAxis2DRight.

XR Controller의 입력 메커니즘을 참조합니다. 기본값은 PrimaryAxis2DRight입니다.
Move Object InThe input that will be used to translate the anchor away from the interactor (into the screen / away from the player).

앵커를 interactor로부터 멀리(화면에 들어가서, 플레이어로부터 멀어지는 방향으로 이동한다) 하기 위해서 사용하는 입력. 

Refers to input mechanisms on an XR Controller. The default is PrimaryAxis2DUp.

XR Controller의 입력 메커니즘을 참조합니다. 기본값은 PrimaryAxis2DUp입니다.
Move Object OutThe input that will be used to translate the anchor towards the interactor (out of the screen / towards the player).

앵커를 interactor쪽으로 (화면 밖으로, 플레이어를 향해) 이동하는데 사용하는 입력. 

Refers to input mechanisms on an XR Controller. The default is PrimaryAxis2DDown.

XR Controller의 입력 메커니즘을 참조합니다. 기본값은 PrimaryAxis2DDown입니다.
Directional Anchor RotationThe input to use to compute a directional angle to rotate the interactor’s attach point to match it.

인터랙터의 attach point를 회전시켜 일치시키는 방향 각도를 계산하기 위해 사용하는 입력.

Refers to input mechanisms on an XR Controller. The default is PrimaryAxis2D.

XR Controller의 입력 메커니즘을 참조합니다. 기본값은 Primary입니다.축 2D.
Model PrefabThe prefab of a controller model to show for this controller that this behavior automatically instantiates.

이 컨트롤러에 대해 표시되고 이 동작에 의해 자동으로 인스턴스화되는 컨트롤러 모델의 prefab.

This behavior automatically instantiates an instance of the prefab as a child of modelParent 

이 동작은, 시작 시에 자동적으로 prefab의 instance를 modelParent(아래 참조)의 자식으로서 instantiate화합니다. 

(see below) upon startup unless model (see further below) is already set, in which case this value is ignored.

그러나 model(아래 참조)가 이미 설정되어 있으면 이 값은 무시됩니다.
Model ParentThe transform that this behavior uses as the parent for the model prefab when it is instantiated.

이 동작으로 모델 프리팹이 인스턴스화될 때 부모로 사용되는 변환.

Automatically instantiated and set in Awake if not already set. Setting this will not automatically destroy the previous object.

자동으로 인스턴스화되고 설정되지 않은 경우 Awake설정됩니다. 이 설정은 이전 개체를 자동으로 제거하지 않습니다.
ModelThe instance of the controller model in the scene. You can set this to an existing object instead of using modelPrefab (see above).

씬에 존재하는 컨트롤러 모델의 인스턴스. modelPrefab(위 참조)를 사용하는 대신 기존 개체로 설정할 수 있습니다.

If set, it should reference a child GameObject of this behavior so it will update with the controller pose.

설정하는 경우는, 이 동작의 자식 GameObject를 참조합니다. 그러면 컨트롤러 포즈로 업데이트됩니다.
Animate ModelWhether to animate the model in response to interaction events.

상호작용 이벤트에 따라 모델을 애니메이션화할지 여부. 

When enabled, activates a named animation trigger upon selecting or deselecting.

활성화되면 선택 또는 선택 취소 시 명명된 애니메이션 트리거가 활성화됩니다.

XR Controller (Action-based)

https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-action-based.html?q=action

Interprets feature values on a tracked input controller device using actions from the Input System into XR Interaction states, such as Select.

Select 등 입력 시스템에서 XR Interaction 상태로의 액션을 사용하여 트래킹 대상 입력 컨트롤러 디바이스의 기능 값을 해석합니다.

Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.

또한 추적 대상 디바이스의 현재 Pose 값을 GameObject 변환에 적용합니다.

This behavior requires that the Input System is enabled in the Active Input Handling setting in Edit > Project Settings > Player for input values to be read.

이 동작에서는 입력값을 읽기 위해서, [Edit] > [Project Settings] > [Player]의 [Active Input Handling] 설정에서 Input System이 활성화되어 있어야 합니다.

Each input action must also be enabled to read the current value of the action.

각 입력 액션은 액션의 현재 값을 읽기 위해서도 활성화해야 합니다.

Externally referenced input actions in an Input Action Asset are not enabled by default.

Input Action Asset의 외부 참조 입력 액션은 기본적으로 활성화되어 있지 않습니다.

The Select Action, Activate Action, and UI Press Action properties have corresponding Select Action Value, Activate Action Value, and UI Press Action Value properties.

[Select Action], [ActivateAction] 및 [UIPressAction] 속성에는 해당 [SelectActionValue], [ActivateActionValue] 및 [UIPressActionValue] 속성이 있습니다.

The Action types of these actions are such that the former are usually Button type Actions, and the latter are optional Value type Actions.

이러한 액션 유형은 일반적으로 전자는 버튼 유형의 액션이고 후자는 옵션 값 유형의 액션입니다.

Each frame, the component will read whether the Select Action is performed to capture whether the select interaction state is active, and also capture the float value from the Select Action Value.

프레임마다 컴포넌트는 [Select Action]이 실행되고 있는지 여부를 읽고 선택 조작 상태가 활성화되어 있는지를 캡처합니다. 또한 [Select Action Value]에서 부동 소수점 값도 캡처합니다.

If the Select Action Value is not set, the float value will be read from the Select Action instead.

[Select Action Value]가 설정되어 있지 않은 경우 대신 [Select Action]에서 부동 소수점 값을 읽을 수 있습니다.

This process is repeated for the Activate and UI Press actions.

이 프로세스는 [Activate] 액션과 [UIPress] 액션에 대해 반복됩니다.

NOTE [노트]

Having two Input Actions allows you as a developer to set the binding path for the Select Action to,

두 개의 입력 액션을 사용하면 개발자로서 Select Action의 바인딩 경로를 다음과 같이 설정할 수 있습니다.

for example, {LeftHand}/gripPressed and set the binding for the Select Value Action to {LeftHand}/grip.

예를 들어 {LeftHand}/gripPressed에서 값 선택 작업 바인딩을 {LeftHand}/grip로 설정합니다.

The threshold for the control being pressed is determined by the platform for gripPressed used for Select Action, and the axis amount can be read from grip.

눌리는 컨트롤 임계값은 Select Action에 사용되는 grippressed 플랫폼에 의해 결정되며 축의 양을 그립에서 읽을 수 있습니다.

If you want to control the threshold yourself,

임계값을 스스로 제어하는 경우

you could consolidate both actions into a single Value type Select Action with an expected Axis control type and a binding path of grip, and add a Press Interaction where the Press Point can then be adjusted.

두 액션을 단일 값 유형 선택 액션으로 통합하고 예상되는 축 제어 유형과 그립 바인딩 경로를 사용하여 프레스 상호 작용을 추가하여 프레스 포인트를 조정할 수 있습니다.

See the Starter Assets sample for steps to import assets to streamline setup of this component.

자산을 가져와서 이 구성요소의 설정을 간소화하는 방법은 Starter Assets 샘플을 참조하십시오.

That sample contains a default set of input actions and presets which makes configuring this component easier.

이 샘플에는, 이 컴퍼넌트의 설정을 돕는 입력 액션과 프리셋의 디폴트 세트가 포함되어 있습니다.

XR Controller (Action-based) 속성

PropertyDescription
Update Tracking TypeThe time within the frame that the controller samples tracking input.

컨트롤러가 추적 입력을 샘플링하는 프레임의 시간입니다.
 UpdateSet Update Tracking Type to Update to sample tracking input only during the MonoBehaviour Update step.

Update Tracking Type 을 Update 로 설정하면 MonoBehaviour Update단계 사이에서만 추적 입력을 샘플링합니다.
 Before RenderSet Update Tracking Type to Before Render to sample tracking input only during the step immediately before rendering.

Update Tracking Type 을 Before Render 로 설정하면 렌더링 직전의 단계 사이에서만 추적 입력을 샘플링합니다.
 Update And Before RenderSet Update Tracking Type to Update And Before Render to sample tracking input during both of the timings within a frame above.

Update Tracking Type 을 Update And Before Render 로 설정하면 위의 어느 타이밍에서든 프레임 내에서 추적 입력을 샘플링합니다.
Enable Input TrackingWhether input pose tracking is enabled for the controller.

대상 컨트롤러에서 입력 포즈 추적을 활성화할지 여부.

When enabled, Unity reads the current tracking pose input of the controller device each frame.

활성화되면 Unity는 프레임별로 컨트롤러 장치의 현재 추적 포즈 입력을 읽습니다.

You can disable this in order to drive the controller state manually instead of from reading current inputs, such as when playing back recorded pose inputs.

현재 입력을 읽는 대신 녹화된 포즈 입력을 재생하는 것과 같은 방법으로 컨트롤러의 상태를 수동으로 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.
Position Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for Position Tracking for this GameObject. Must be a Vector3Control Control.

이 게임 오브젝트에 대한 위치 추적에 사용되는 입력 시스템 액션. Vector3Control 컨트롤이어야 합니다.
Rotation Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for Rotation Tracking for this GameObject. Must be a QuaternionControl Control.

이 게임 개체의 회전 추적에 사용할 입력 시스템 액션입니다. QuaternionControl 컨트롤이어야 합니다.
Tracking State Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to get the Tracking State when updating this GameObject position and rotation;

이 GameObject 위치 및 회전을 업데이트할 때 추적 상태를 가져오기 위한 Input System action.

falls back to the tracked device’s tracking state that drives the position or rotation action when not set. Must be an IntegerControl Control.

설정하지 않을 때 위치 또는 회전 동작을 구동하는 추적 장치의 추적 상태로 돌아갑니다. IntegerControl 컨트롤이어야 합니다.
Enable Input ActionsWhether input for XR Interaction events is enabled for the controller.

대상 컨트롤러에서 XR Inter액션이벤트 입력을 사용할지 여부.

When enabled, Unity reads the current input of the controller device each frame.

활성화되면 Unity는 프레임당 컨트롤러 장치의 현재 입력을 읽습니다.

You can disable this in order to drive the controller state manually instead of from reading current inputs, such as when playing back recorded inputs.

현재 입력을 읽는 대신 기록된 입력을 재생하는 것과 같은 방법으로 수동으로 컨트롤러 상태를 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.
Select Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for selecting an Interactable.

상호 작용 가능한 항목을 선택하는 데 사용할 Input System action 입니다.

Must be an action with a button-like interaction or ButtonControl Control.

버튼과 같은 상호 작용 또는 ButtonControl이 있는 동작이어야 합니다.
Select Action ValueOptional, uses Select Action when not set.

선택사항 – 설정하지 않은 경우 [Select Action]을 사용합니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to read the float value of Select Action, if different. Must be an AxisControl or Vector2Control Control.

[Select Action]의 부동 소수점 값을 읽는 입력 시스템 액션(다른 경우). Axis Control 또는 Vector 2 Control Control이 필요합니다.
Activate Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for activating a selected Interactable.

상호작용 형식의 활성화에 사용하는 Input System action.

Must be an action with a button-like interaction or ButtonControl Control.

버튼과 같은 상호작용 또는 버튼 제어 제어를 사용하는 액션이어야 합니다.
Activate Action ValueOptional, uses Activate Action when not set.

선택사항, 설정하지 않은 경우 Activate Action을 사용합니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to read the float value of Activate Action, if different.

다른 경우 Activate 액션값 float을 읽는 입력 시스템 작업. 

Must be an AxisControl or Vector2Control Control.

AxisControl또는 Vector2Control컨트롤이어야 합니다.
UI Press ActionOptional, used by XR Ray Interactor when Enable Interaction with UI GameObjects is enabled.

선택 사항. UI GameObjects와의 상호 작용 사용이 활성화된 경우 XR Ray Interactor에서 사용됩니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for Canvas UI interaction.

Canvas UI 상호 작용에 사용할 입력 시스템 작업.

Must be an action with a button-like interaction or ButtonControl Control.

버튼과 같은 상호작용이나 ButtonControl컨트롤이 있는 동작이어야 합니다.
UI Press Action ValueOptional, uses UI Press Action when not set.

선택 사항, 설정하지 않은 경우 UI Press Action을 사용합니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to read the float value of UI Press Action, if different.

다른 경우에는 UI Press Action 값 float을 읽는 입력 시스템 작업. 

Must be an AxisControl or Vector2Control Control.

AxisControl 또는 Vector2Control컨트롤이어야 합니다.
Haptic Device Action
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for identifying the device to send haptic impulses to.

haptic impulses를 보내는 장치를 식별하는 데 사용되는 Input System action. 

Can be any control type that will have an active control driving the action.

액션을 추진하는 활성 컨트롤과 관련된 모든 컨트롤 유형.
Rotate Anchor ActionOptional, used by XR Ray Interactor when Anchor Control is enabled and Rotation Mode is set to Rotate Over Time.

선택 사항. Anchor Control가 활성화되고Rotation Mode가 시간 경과에 따라 회전으로 설정된 경우 XR Ray Interactor에서 사용됩니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for rotating the interactor’s attach point over time.

interactor’s attach 을 회전하는 데 사용되는 Input System action. 

Must be a Vector2Control Control. Uses the x-axis as the rotation input.

Vector2Control컨트롤이어야 합니다. 회전 입력으로 X축을 사용합니다.
Directional Anchor Rotation ActionOptional, used by XR Ray Interactor when Anchor Control is enabled and Rotation Mode is set to Match Direction.

선택 사항. Anchor Control가 활성화되고 Rotation Mode가 방향 일치로 설정된 경우 XR Ray Interactor에서 사용됩니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for computing a direction angle to rotate the interactor’s attach point to match it.

interactor’s attach point를 회전시켜 그에 일치시키는 방향 각도 계산에 사용하는 Input System action.

Must be a Vector2Control Control.

Vector2ControlControl이어야 합니다.

The direction angle is computed as the arctangent function of x/y.

방향 각도는 x/y의 arctangent 함수로 계산됩니다.
Translate Anchor ActionOptional, used by XR Ray Interactor when Anchor Control is enabled.

선택적으로 Anchor Control이 활성화되면 XR Ray Interactor에서 사용됩니다.
 Use ReferenceEnable to reference an action externally defined using the accompanying field.

함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.
 ReferenceThe Input System action to use for translating the interactor’s attach point closer or further away from the interactor.

인터랙터의 attach point를 인터랙터에 접근하거나 반대로 멀리하는 데 사용되는 입력 시스템 액션입니다.

Must be a Vector2Control Control. Uses the y-axis as the translation input.

Vector2Control컨트롤이어야 합니다. 이동 입력으로 Y 축을 사용합니다.
Model PrefabThe prefab of a controller model to show for this controller that this behavior automatically instantiates.

이 컨트롤러에 대해 표시되고 이 동작에 의해 자동으로 인스턴스화되는 컨트롤러 모델의 prefab.

This behavior automatically instantiates an instance of the prefab as a child of modelParent 

이 동작은, 시작 시에 자동적으로 prefab의 instance를 modelParent(아래 참조)의 자식으로서 instantiate화합니다. 

(see below) upon startup unless model (see further below) is already set, in which case this value is ignored.

그러나 model(아래 참조)가 이미 설정되어 있으면 이 값은 무시됩니다.
Model ParentThe transform that this behavior uses as the parent for the model prefab when it is instantiated.

이 동작으로 모델 프리팹이 인스턴스화될 때 부모로 사용되는 변환.

Automatically instantiated and set in Awake if not already set. Setting this will not automatically destroy the previous object.

자동으로 인스턴스화되고 설정되지 않은 경우 Awake설정됩니다. 이 설정은 이전 개체를 자동으로 제거하지 않습니다.
ModelThe instance of the controller model in the scene. You can set this to an existing object instead of using modelPrefab (see above).

씬에 존재하는 컨트롤러 모델의 인스턴스. modelPrefab(위 참조)를 사용하는 대신 기존 개체로 설정할 수 있습니다.

If set, it should reference a child GameObject of this behavior so it will update with the controller pose.

설정하는 경우는, 이 동작의 자식 GameObject를 참조합니다. 그러면 컨트롤러 포즈로 업데이트됩니다.
Animate ModelWhether to animate the model in response to interaction events.

상호작용 이벤트에 따라 모델을 애니메이션화할지 여부. 

When enabled, activates a named animation trigger upon selecting or deselecting.

활성화되면 선택 또는 선택 취소 시 명명된 애니메이션 트리거가 활성화됩니다.

Action-based vs Device-based 정리 (XR Interaction Toolkit)”의 1개의 생각

  1. 핑백: Unity / Oculus Quest 연결 (XR Plugin Management, Xr Interaction Toolkit) - 어제와 내일의 나 그 사이의 이야기

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다