<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oculus Archives - 어제와 내일의 나 그 사이의 이야기</title>
	<atom:link href="https://lycos7560.com/tag/oculus/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>생각의 흐름을 타고 다니며 만드는 블로그</description>
	<lastBuildDate>Wed, 14 Jun 2023 08:57:26 +0000</lastBuildDate>
	<language>ko-KR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://lycos7560.com/wp-content/uploads/2022/11/cropped-cropped-cropped-log-1-150x150-1-80x80.png</url>
	<title>Oculus Archives - 어제와 내일의 나 그 사이의 이야기</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Oculus Unity-Integration &#8211; Snap Interactions</title>
		<link>https://lycos7560.com/unity/unity-vr/oculus-unity-integration-snap-interactions/35453/</link>
					<comments>https://lycos7560.com/unity/unity-vr/oculus-unity-integration-snap-interactions/35453/#respond</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Wed, 14 Jun 2023 08:41:53 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[Interactions]]></category>
		<category><![CDATA[MovementProvider]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Oculus Unity-Integration]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[Snap]]></category>
		<category><![CDATA[Snap Interactions]]></category>
		<category><![CDATA[SnapInteractable]]></category>
		<category><![CDATA[SnapInteractor]]></category>
		<category><![CDATA[SnapPosesProvider]]></category>
		<category><![CDATA[Trigger collider]]></category>
		<category><![CDATA[Unity-Integration]]></category>
		<category><![CDATA[오큘러스]]></category>
		<category><![CDATA[유니티]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=35453</guid>

					<description><![CDATA[<p>Oculus Unity-Integration SDK를 정리한 내용입니다. (This is a summary of the Oculus Unity-Integration SDK.)</p>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/oculus-unity-integration-snap-interactions/35453/">Oculus Unity-Integration &#8211; Snap Interactions</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>


				<div class="wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-4963675b      "
					data-scroll= "1"
					data-offset= "30"
					style=""
				>
				<div class="uagb-toc__wrap">
						<div class="uagb-toc__title">
							Oculus Unity-Integration						</div>
																						<div class="uagb-toc__list-wrap ">
						<ol class="uagb-toc__list"><li class="uagb-toc__list"><a href="#snap-interactions" class="uagb-toc-link__trigger">Snap Interactions</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#snapinteractor" class="uagb-toc-link__trigger">SnapInteractor</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#snapinteractable" class="uagb-toc-link__trigger">SnapInteractable</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#trigger-collider" class="uagb-toc-link__trigger">Trigger collider</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#movementprovider" class="uagb-toc-link__trigger">MovementProvider</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#snapposesprovider" class="uagb-toc-link__trigger">SnapPosesProvider</a></ul></ul></ol>					</div>
									</div>
				</div>
			


<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h1 class="wp-block-heading">Snap Interactions</h1>



<p class="has-small-font-size"><a href="https://developer.oculus.com/documentation/unity/unity-isdk-snap-interaction/" target="_blank" rel="noreferrer noopener">https://developer.oculus.com/documentation/unity/unity-isdk-snap-interaction/</a></p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Snap interactions allow items to automatically snap to poses in the environment. <br>스냅 상호 작용을 사용하면 항목이 환경의 포즈에 자동으로 스냅될 수 있습니다.</p>



<p>The&nbsp;<strong>DistanceGrabExample</strong>&nbsp;scene uses them to simply have the items snap back to their original position when not in use,<br>but it is possible to create custom behaviors so the objects snap to inventories, cells in a board game, slots around the user body, etc.<br><strong>DistanceGrabExample</strong>&nbsp;씬은 사용하지 않을 때 단순히 아이템을 원래 위치로 되돌리기 위해 이를 사용하지만, <br>오브젝트가 인벤토리, 보드 게임의 셀, 사용자 몸 주위의 슬롯 등에 스냅되도록 커스텀 동작을 만들 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1016" style="aspect-ratio: 1864 / 1016;" width="1864" controls muted src="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_16_42_19_590.mp4"></video></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">SnapInteractor</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p>The SnapInteractor is the Interactor class for this interaction. <br>SnapInteractor는 이 상호 작용에 대한 Interactor 클래스입니다.</p>



<p>This component is placed in the item that we want to be able to snap, e.g. a chess piece, <br>and will take care of detecting nearby SnapInteractables and move the item towards the best available pose provided by them.<br>이 컴포넌트는 스냅할 수 있는 아이템(예: 체스 말)에 배치되며,<br>근처의 SnapInteractables를 감지하고 아이템이 제공하는 최상의 포즈로 아이템을 이동합니다.</p>



<p>When the Optional&nbsp;<strong>TimeOutInteractable</strong>&nbsp;and&nbsp;<strong>TimeOut</strong>&nbsp;are provided, <br>the Interactor will automatically move to said interactable after TimeOut seconds <br>if the Grabbable is not being Selected or Hovered by any other interactor.</p>



<p>선택적&nbsp;<strong>TimeOutInteractable</strong>&nbsp;및 TimeOut이 제공되면 다른 인터랙터가 <br>Grabbable을 선택하거나 가리키지 않는 경우 인터랙터는&nbsp;<strong>TimeOut</strong>(초) 후에 자동으로 해당 인터랙터로 이동합니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img fetchpriority="high" decoding="async" src="https://lycos7560.com/wp-content/uploads/2023/06/image-30.jpg" alt="" class="wp-image-35462" width="1714" height="1053" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-30.jpg 1714w, https://lycos7560.com/wp-content/uploads/2023/06/image-30-300x184.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-30-768x472.jpg 768w, https://lycos7560.com/wp-content/uploads/2023/06/image-30-1536x944.jpg 1536w" sizes="(max-width: 1714px) 100vw, 1714px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1016" style="aspect-ratio: 1864 / 1016;" width="1864" controls muted src="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_16_56_43_18.mp4"></video></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">SnapInteractable</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p>The SnapInteractable component is the Interactable class for this interaction.<br>SnapInteractable 구성 요소는 이 상호 작용에 대한 Interactable 클래스입니다.</p>



<p>When used as-is it provides a single pose in space to which the interactors can snap too, but optionally it can be enhanced in several ways.<br>있는 그대로 사용하면 상호 작용자가 스냅할 수 있는 공간에서 단일 포즈를 제공하지만 선택적으로 여러 가지 방법으로 향상시킬 수 있습니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading"><strong>Trigger collider</strong></h3>



<p>when a&nbsp;<strong>Trigger</strong>&nbsp;volume is present in the same gameobject, <br>Interactors entering the volume will be tracked and automatically snap to the interactable pos as soon as their state becomes equal to Normal.<br><strong>트리거</strong>&nbsp;볼륨이 동일한 게임 오브젝트에 있는 경우 볼륨에 진입하는 인터랙터가 추적되고 <br>상태가 Normal이 되는 즉시 상호 작용 가능한 위치에 자동으로 스냅됩니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/2023/06/image-30.png" alt="" class="wp-image-35468" width="938" height="390" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-30.png 938w, https://lycos7560.com/wp-content/uploads/2023/06/image-30-300x125.png 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-30-768x319.png 768w" sizes="(max-width: 938px) 100vw, 938px" /></figure>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/2023/06/image-31.jpg" alt="" class="wp-image-35469" width="1145" height="930" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-31.jpg 1145w, https://lycos7560.com/wp-content/uploads/2023/06/image-31-300x244.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-31-768x624.jpg 768w" sizes="(max-width: 1145px) 100vw, 1145px" /></figure>



<figure class="wp-block-video"><video height="1016" style="aspect-ratio: 1896 / 1016;" width="1896" controls muted src="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_15_38_779.mp4"></video></figure>



<div style="height:60px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading"><strong>MovementProvider</strong></h3>



<p>by referencing a&nbsp;<strong>MovementProvider</strong>&nbsp;the method for snapping can be fully customized. <br><strong>MovementProvider</strong>를 참조하여 스냅 메서드를&nbsp;완전히 사용자 지정할 수 있습니다.</p>



<p>By default the interactor will follow the slot at a fixed speed, but following the different MovementProvider it could trace a curve, add easing, etc.<br>기본적으로 인터랙터는 고정된 속도로 슬롯을 따라가지만 다른 MovementProvider를 따라 커브를 추적하고 부드럽게를 추가하는 등의 작업을 수행할 수 있습니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/2023/06/image-31.png" alt="" class="wp-image-35473" width="1205" height="687" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-31.png 1205w, https://lycos7560.com/wp-content/uploads/2023/06/image-31-300x171.png 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-31-768x438.png 768w" sizes="(max-width: 1205px) 100vw, 1205px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1016" style="aspect-ratio: 2552 / 1016;" width="2552" controls muted src="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_25_26_898.mp4"></video></figure>



<div style="height:60px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading"><strong>SnapPosesProvider</strong></h3>



<p>the&nbsp;<strong>ISnapPoseProvider</strong>&nbsp;interface allows creating multiple poses within a SnapInteractable. <br><strong>ISnapPoseProvider</strong>&nbsp;인터페이스를 사용하면 SnapInteractable 내에서 여러 포즈를 만들 수 있습니다.&nbsp;</p>



<p>Implementing and providing this interface is useful for using a single SnapInteractable for all the cells within a board in a board game, <br>or to define all the different slots in an inventory system, allowing to even move snapped items when hovering new interactors to make room.<br>이 인터페이스를 구현하고 제공하면 보드 게임의 보드 내의 모든 셀에 대해 단일 SnapInteractable을 사용하거나 인벤토리 시스템에서 모든 다른 슬롯을 정의하는 데 유용하며, <br>공간을 만들기 위해 새 상호 작용기를 마우스로 가리킬 때 스냅된 항목을 이동할 수도 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1670" height="803" src="https://lycos7560.com/wp-content/uploads/2023/06/image-32-1.jpg" alt="" class="wp-image-35480" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-32-1.jpg 1670w, https://lycos7560.com/wp-content/uploads/2023/06/image-32-1-300x144.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-32-1-768x369.jpg 768w, https://lycos7560.com/wp-content/uploads/2023/06/image-32-1-1536x739.jpg 1536w" sizes="(max-width: 1670px) 100vw, 1670px" /></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="878" height="711" src="https://lycos7560.com/wp-content/uploads/2023/06/image-32.png" alt="" class="wp-image-35481" srcset="https://lycos7560.com/wp-content/uploads/2023/06/image-32.png 878w, https://lycos7560.com/wp-content/uploads/2023/06/image-32-300x243.png 300w, https://lycos7560.com/wp-content/uploads/2023/06/image-32-768x622.png 768w" sizes="(max-width: 878px) 100vw, 878px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="false" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">using UnityEngine;

namespace Oculus.Interaction
{
    /// &lt;summary>
    /// SnapPoseDelegate는 맞춤형 SnapPose 로직을 제공하는 데 사용할 수 있습니다
    /// 추적되거나 스냅되는 요소 집합이 주어집니다.
    /// &lt;/summary>
    public interface ISnapPoseDelegate
    {
        /// &lt;summary>
        /// 새 요소가 추적 중임을 나타냅니다.
        /// &lt;/summary>
        /// &lt;param name="id">추적할 요소 ID입니다.&lt;/param>
        /// &lt;param name="params">요소의 포즈입니다.&lt;/param>
        void TrackElement(int id, Pose p);
        /// &lt;summary>
        /// 요소가 더 이상 추적되지 않음을 나타냅니다.
        /// &lt;/summary>
        /// &lt;param name="id">추적을 중지할 요소 ID입니다.&lt;/param>
        void UntrackElement(int id);
        /// &lt;summary>
        /// 추적된 요소가 스냅되어야 함을 나타냅니다.
        /// &lt;/summary>
        /// &lt;param name="id">스냅할 요소 ID입니다.&lt;/param>
        /// &lt;param name="params">요소의 포즈입니다.&lt;/param>
        void SnapElement(int id, Pose pose);
        /// &lt;summary>
        /// 요소가 더 이상 스냅되지 않아야 함을 나타냅니다.
        /// &lt;/summary>
        /// &lt;param name="id">스냅을 중지할 요소 ID입니다.&lt;/param>
        void UnsnapElement(int id);
        /// &lt;summary>
        /// 추적된 요소 포즈가 업데이트되었음을 나타냅니다.
        /// &lt;/summary>
        /// &lt;param name="id">요소 ID.&lt;/param>
        /// &lt;param name="params">새로운 요소 포즈.&lt;/param>
        void MoveTrackedElement(int id, Pose p);
        /// &lt;summary>
        /// 쿼리된 요소 ID에 대한 대상 스냅 포즈입니다.
        /// &lt;/summary>
        /// &lt;param name="id">요소 ID.&lt;/param>
        /// &lt;param name="params">타깃 포즈.&lt;/param>
        /// &lt;returns>요소에 스냅할 포즈가 있으면 참입니다.&lt;/returns>
        bool SnapPoseForElement(int id, Pose pose, out Pose result);
    }
}</pre>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1016" style="aspect-ratio: 1936 / 1016;" width="1936" controls muted src="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_35_02_372.mp4"></video></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/oculus-unity-integration-snap-interactions/35453/">Oculus Unity-Integration &#8211; Snap Interactions</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/unity-vr/oculus-unity-integration-snap-interactions/35453/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_16_42_19_590.mp4" length="9771598" type="video/mp4" />
<enclosure url="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_16_56_43_18.mp4" length="16439396" type="video/mp4" />
<enclosure url="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_15_38_779.mp4" length="13835677" type="video/mp4" />
<enclosure url="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_25_26_898.mp4" length="9707333" type="video/mp4" />
<enclosure url="https://lycos7560.com/wp-content/uploads/2023/06/녹화_2023_06_14_17_35_02_372.mp4" length="16034540" type="video/mp4" />

			</item>
		<item>
		<title>Oculus Unity-Integration &#8211; Hand Pose Detection</title>
		<link>https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%86%90-%ed%8f%ac%ec%a6%88-%ea%b0%90%ec%a7%80/34843/</link>
					<comments>https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%86%90-%ed%8f%ac%ec%a6%88-%ea%b0%90%ec%a7%80/34843/#comments</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Mon, 22 May 2023 15:49:57 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[Abduction]]></category>
		<category><![CDATA[Curl]]></category>
		<category><![CDATA[Finger Features]]></category>
		<category><![CDATA[FingerFeatureStateProvider]]></category>
		<category><![CDATA[FingerFeatureStateThresholds]]></category>
		<category><![CDATA[Flexion]]></category>
		<category><![CDATA[Hand]]></category>
		<category><![CDATA[Hand Pose]]></category>
		<category><![CDATA[Hand Pose Detection]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Oculus Unity-Integration]]></category>
		<category><![CDATA[Pose Prefabs]]></category>
		<category><![CDATA[ShapeRecognizer]]></category>
		<category><![CDATA[ShapeRecognizerActiveState]]></category>
		<category><![CDATA[study]]></category>
		<category><![CDATA[Unity-Integration]]></category>
		<category><![CDATA[공부]]></category>
		<category><![CDATA[기초]]></category>
		<category><![CDATA[유니티]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=34843</guid>

					<description><![CDATA[<p>이론이 필요없고 적용하는 과정이 궁금하다면 아래글로 Oculus Hand Pose Detection https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/?ref=blog.immersive-insiders.com Hand Pose Detection uses multiple components and configurators to detect hand poses. 손 포즈 감지는 여러 컴포넌트와 구성 요소를 사용하여 손의 동작을 감지하는 기술입니다. A hand pose is defined by shapes and transforms.이를 판단하기 위해 형태(shape)와 변환(transform)이라는 두 가지 요소를 사용합니다. Shapes are boolean [&#8230;]</p>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%86%90-%ed%8f%ac%ec%a6%88-%ea%b0%90%ec%a7%80/34843/">Oculus Unity-Integration &#8211; Hand Pose Detection</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">이론이 필요없고 적용하는 과정이 궁금하다면 아래글로</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-어제와-내일의-나-그-사이의-이야기 wp-block-embed-어제와-내일의-나-그-사이의-이야기"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="vbVz6GAD9S"><a href="https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%97%b0%ec%8a%b5/35047/">Oculus Hand Pose Detection 연습</a></blockquote><iframe loading="lazy" class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;Oculus Hand Pose Detection 연습&#8221; &#8212; 어제와 내일의 나 그 사이의 이야기" src="https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%97%b0%ec%8a%b5/35047/embed/#?secret=IB6B3qIX84#?secret=vbVz6GAD9S" data-secret="vbVz6GAD9S" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>


				<div class="wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-fddbe69c      "
					data-scroll= "1"
					data-offset= "30"
					style=""
				>
				<div class="uagb-toc__wrap">
						<div class="uagb-toc__title">
							목차 테이블						</div>
																						<div class="uagb-toc__list-wrap ">
						<ol class="uagb-toc__list"><li class="uagb-toc__list"><a href="#oculus-hand-pose-detection" class="uagb-toc-link__trigger">Oculus Hand Pose Detection</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#pose-prefabs" class="uagb-toc-link__trigger">Pose Prefabs</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#shaperecognizer" class="uagb-toc-link__trigger">ShapeRecognizer</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#shaperecognizeractivestate" class="uagb-toc-link__trigger">ShapeRecognizerActiveState</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#shaperecognizer" class="uagb-toc-link__trigger">ShapeRecognizer</a></li></ul><li class="uagb-toc__list"><a href="#fingerfeaturestateprovider" class="uagb-toc-link__trigger">FingerFeatureStateProvider</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#fingerfeaturestatethresholds" class="uagb-toc-link__trigger">FingerFeatureStateThresholds</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#fingerfeaturestatethresholds-example" class="uagb-toc-link__trigger">FingerFeatureStateThresholds Example</a></li></ul><li class="uagb-toc__list"><a href="#finger-features" class="uagb-toc-link__trigger">Finger Features</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#curl" class="uagb-toc-link__trigger">Curl</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#flexion" class="uagb-toc-link__trigger">Flexion</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#abduction" class="uagb-toc-link__trigger">Abduction</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#opposition" class="uagb-toc-link__trigger">Opposition</a></li></ul></li></ul></li></ul><li class="uagb-toc__list"><a href="#transform-recognition" class="uagb-toc-link__trigger">Transform Recognition</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformrecognizeractivestate" class="uagb-toc-link__trigger">TransformRecognizerActiveState</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformfeaturestateprovider" class="uagb-toc-link__trigger">TransformFeatureStateProvider</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformconfig" class="uagb-toc-link__trigger">TransformConfig</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#velocity-recognition" class="uagb-toc-link__trigger">Velocity Recognition</a></li></ul><li class="uagb-toc__list"><a href="#sequences" class="uagb-toc-link__trigger">Sequences</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#sequence-classes" class="uagb-toc-link__trigger">Sequence Classes</a></li></ul><li class="uagb-toc__list"><a href="#debugging-pose-recognition-포즈-인식-디버깅" class="uagb-toc-link__trigger">Debugging Pose Recognition (포즈 인식 디버깅)</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#activestatedebugtree" class="uagb-toc-link__trigger">ActiveStateDebugTree</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#fingerfeatureskeletaldebugvisual" class="uagb-toc-link__trigger">FingerFeatureSkeletalDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#handshapeskeletaldebugvisual" class="uagb-toc-link__trigger">HandShapeSkeletalDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformfeaturedebugvisual" class="uagb-toc-link__trigger">TransformFeatureDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformfeaturevectordebugparentvisual" class="uagb-toc-link__trigger">TransformFeatureVectorDebugParentVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformfeaturevectordebugvisual" class="uagb-toc-link__trigger">TransformFeatureVectorDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#transformrecognizerdebugvisual" class="uagb-toc-link__trigger">TransformRecognizerDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#jointrotationdebugvisual" class="uagb-toc-link__trigger">JointRotationDebugVisual</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#jointvelocitydebugvisual" class="uagb-toc-link__trigger">JointVelocityDebugVisual</a></li></ul><li class="uagb-toc__list"><a href="#internal-implementation-classes" class="uagb-toc-link__trigger">Internal Implementation Classes</a><ul class="uagb-toc__list"><li class="uagb-toc__list"><a href="#featurestateprovider" class="uagb-toc-link__trigger">FeatureStateProvider</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#featurestatethresholdseditor" class="uagb-toc-link__trigger">FeatureStateThresholdsEditor</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#featuredescriptionattribute" class="uagb-toc-link__trigger">FeatureDescriptionAttribute</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#ifeaturestatethreshold" class="uagb-toc-link__trigger">IFeatureStateThreshold</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#ifeaturestatethresholds" class="uagb-toc-link__trigger">IFeatureStateThresholds</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#ifeature-thresholds" class="uagb-toc-link__trigger">IFeature Thresholds</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#collidercontainshandjointactivestate" class="uagb-toc-link__trigger">ColliderContainsHandJointActiveState</a><li class="uagb-toc__list"><li class="uagb-toc__list"><a href="#hmdoffset" class="uagb-toc-link__trigger">HmdOffset</a></ul></ul></ol>					</div>
									</div>
				</div>
			


<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h1 class="wp-block-heading has-large-font-size">Oculus Hand Pose Detection</h1>



<p><a href="https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/?ref=blog.immersive-insiders.com" target="_blank" rel="noreferrer noopener">https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/?ref=blog.immersive-insiders.com</a></p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Hand Pose Detection uses multiple components and configurators to detect hand poses. <br>손 포즈 감지는 여러 컴포넌트와 구성 요소를 사용하여 손의 동작을 감지하는 기술입니다.</p>



<p class="has-medium-font-size">A hand pose is defined by shapes and transforms.<br>이를 판단하기 위해 형태(shape)와 변환(transform)이라는 두 가지 요소를 사용합니다.</p>



<p class="has-medium-font-size">Shapes are boolean conditions about the required position of the hand’s finger joints.<br>형태는 손가락 관절의 위치에 대한 부울 조건을 나타냅니다.</p>



<p class="has-medium-font-size">Transforms are boolean conditions about the required orientation of the hand in the world space. <br>Transform은 세계 공간에서 손의 요구되는 방향에 대한 bool 조건입니다.</p>



<p class="has-medium-font-size">A pose is detected when the tracked hand matches that pose&#8217;s required shapes and transforms. <br>추적된 손이 해당 포즈의 요구 형태와 Transform이 일치할 때 포즈가 감지됩니다.</p>



<p class="has-medium-font-size">This topic explains poses, shape and transform recognition, and the criteria used to determine if a pose is detected. <br>이 글에서는 포즈, 형태 및 Transform 인식, 그리고 포즈가 감지되는지 여부를 결정하는 기준에 대해 설명합니다.</p>



<p class="has-medium-font-size">It also describes debug components you can use to visually debug poses. <br>시각적으로 포즈를 디버깅하기 위해 사용할 수 있는 debug components에 대해서도 설명합니다.</p>



<p class="has-medium-font-size">To learn how to detect a hand pose, see Build a Hand Pose Recognizer. (나중에 링크)<br>손 포즈를 감지하는 방법을 알아보려면 &#8220;손 포즈 인식기 만들기&#8221;를 참조하세요.</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading has-large-font-size">Pose Prefabs</h2>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Interaction SDK includes 6 ready to use example pose prefabs.<br>Interaction SDK에는 6개의 준비된 예제 포즈 프리팹이 포함되어 있습니다.</p>



<p class="has-medium-font-size">You can define your own poses using the patterns defined in these prefabs.<br>이러한 프리팹에서 정의된 패턴을 사용하여 직접 포즈를 정의할 수 있습니다.</p>



<p class="has-medium-font-size">You can experiment with pose detection using these pose prefabs in the PoseExamples sample scene.<br>PoseExamples 샘플 씬에서 이러한 포즈 prefab을 사용하여 포즈 감지를 실험해 볼 수 있습니다.</p>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li>RockPose</li>



<li>PaperPose</li>



<li>ScissorsPose</li>



<li>ThumbsUpPose</li>



<li>ThumbsDownPose</li>



<li>StopPose</li>
</ul>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1363" height="352" src="https://lycos7560.com/wp-content/uploads/2023/05/image-94.jpg" alt="" class="wp-image-34862" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-94.jpg 1363w, https://lycos7560.com/wp-content/uploads/2023/05/image-94-300x77.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-94-768x198.jpg 768w" sizes="(max-width: 1363px) 100vw, 1363px" /></figure>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Each pose prefab has these components:<br>각 pose prefab에는 다음과 같은 구성 요소가 있습니다</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">A <strong>HandRef</strong> is a component that takes an <strong>IHand</strong> as input.<br>이 <strong>HandRef</strong>는 <strong>IHand</strong>를 입력 값으로 받는 component입니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="814" height="390" src="https://lycos7560.com/wp-content/uploads/2023/05/image-95.png" alt="" class="wp-image-34864" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-95.png 814w, https://lycos7560.com/wp-content/uploads/2023/05/image-95-300x144.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-95-768x368.png 768w" sizes="(max-width: 814px) 100vw, 814px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="796" height="459" src="https://lycos7560.com/wp-content/uploads/2023/05/image-94.png" alt="" class="wp-image-34863" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-94.png 796w, https://lycos7560.com/wp-content/uploads/2023/05/image-94-300x173.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-94-768x443.png 768w" sizes="(max-width: 796px) 100vw, 796px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The other components on this prefab will read hand state via this reference.<br>이 프리팹의 다른 컴포넌트들은 이 참조를 통해 손의 상태를 읽습니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1268" height="957" src="https://lycos7560.com/wp-content/uploads/2023/05/image-99.jpg" alt="" class="wp-image-34868" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-99.jpg 1268w, https://lycos7560.com/wp-content/uploads/2023/05/image-99-300x226.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-99-768x580.jpg 768w" sizes="(max-width: 1268px) 100vw, 1268px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>ShapeRecognizerActiveState</strong> is a component that becomes active when the criteria of a specified Shape is met.<br><strong>ShapeRecognizerActiveState</strong>는 지정된 형태의 조건이 충족되면 활성화되는 component입니다.</p>



<p class="has-medium-font-size"><strong>TransformRecognizerActive</strong> is a component that becomes active when a transform feature, such as a particular wrist orientation, is detected.<br><strong>TransformRecognizerActive</strong>은 특정 손목 방향과 같은 변환 기능이 감지되었을 때 활성화되는 component입니다.</p>



<p class="has-medium-font-size"><strong>ActiveStateGroup</strong> is a component that returns true when all dependent ActiveStates are true.<br><strong>ActiveStateGroup</strong>은 종속적인 ActiveState가 모두 true일 때 true를 반환하는 컴포넌트입니다.</p>



<p class="has-medium-font-size"><strong>ActiveStateSelector</strong> and <strong>SelectorUnityEventWrapper</strong> are components that can invoke events when a pose is detected.<br><strong>ActiveStateSelector</strong>와 <strong>SelectorUnityEventWrapper</strong>는 포즈가 감지되었을 때 이벤트를 호출할 수 있는 component입니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="761" height="300" src="https://lycos7560.com/wp-content/uploads/2023/05/image-135.png" alt="" class="wp-image-35043" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-135.png 761w, https://lycos7560.com/wp-content/uploads/2023/05/image-135-300x118.png 300w" sizes="(max-width: 761px) 100vw, 761px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="733" height="327" src="https://lycos7560.com/wp-content/uploads/2023/05/image-136.png" alt="" class="wp-image-35045" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-136.png 733w, https://lycos7560.com/wp-content/uploads/2023/05/image-136-300x134.png 300w" sizes="(max-width: 733px) 100vw, 733px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="698" height="632" src="https://lycos7560.com/wp-content/uploads/2023/05/image-99.png" alt="" class="wp-image-34871" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-99.png 698w, https://lycos7560.com/wp-content/uploads/2023/05/image-99-300x272.png 300w" sizes="(max-width: 698px) 100vw, 698px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">A pose includes required transforms (which are bundled in TransformRecognizerActiveState) and shapes (which are bundled in ShapeRecognizerActiveState).<br>한 pose에는 필요한 transforms(이는 TransformRecognizerActiveState에서 묶여 있음)와 shapes(이는 ShapeRecognizerActiveState에서 묶여 있음)가 포함됩니다.</p>



<p class="has-medium-font-size">These are combined using ActiveStateGroup to define the pose.<br>이들은 ActiveStateGroup을 사용하여 결합되어 pose를 정의합니다.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="1175" height="1202" src="https://lycos7560.com/wp-content/uploads/2023/05/image-100.png" alt="" class="wp-image-34874" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-100.png 1175w, https://lycos7560.com/wp-content/uploads/2023/05/image-100-293x300.png 293w, https://lycos7560.com/wp-content/uploads/2023/05/image-100-768x786.png 768w" sizes="(max-width: 1175px) 100vw, 1175px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">wrist up =&gt; 손목을 위로 향하게</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="808" style="aspect-ratio: 1432 / 808;" width="1432" controls muted src="https://lycos7560.com/wp-content/uploads/2023/05/녹화_2023_05_22_21_16_30_889.mp4"></video></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading has-large-font-size">ShapeRecognizer</h2>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Poses include one or more shapes. <br>포즈에는 하나 이상의 형태가 포함됩니다.</p>



<p class="has-medium-font-size">A shape is a set of boolean conditions about the position of one or more fingers. <br>형태는 하나 이상의 손가락 위치에 대한 boolean 조건의 집합입니다.</p>



<p class="has-medium-font-size">The conditions are defined using Finger Features states. <br>이러한 조건은 Finger Features 상태를 사용하여 정의됩니다.</p>



<p class="has-medium-font-size">If a tracked hand meets these conditions, then the shape becomes active.<br>추적된 손이 이러한 조건을 충족하면 형태가 활성화됩니다.</p>



<p class="has-medium-font-size">If all the shapes in the pose are active and the transform is also active, the pose is detected. <br>포즈의 모든 형태가 활성화되고 변형도 활성화된 경우, 포즈가 감지됩니다.</p>



<p class="has-medium-font-size">A pose’s shapes are stored as ShapeRecognizer assets in the pose’s ShapeRecognizerActiveState component.<br>포즈의 형태는 포즈의 ShapeRecognizerActiveState component에 저장되는 ShapeRecognizer 자산으로 저장됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="695" height="520" src="https://lycos7560.com/wp-content/uploads/2023/05/image-101.png" alt="" class="wp-image-34879" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-101.png 695w, https://lycos7560.com/wp-content/uploads/2023/05/image-101-300x224.png 300w" sizes="(max-width: 695px) 100vw, 695px" /></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading has-large-font-size">ShapeRecognizerActiveState</h3>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1186" height="581" src="https://lycos7560.com/wp-content/uploads/2023/05/image-103.png" alt="" class="wp-image-34885" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-103.png 1186w, https://lycos7560.com/wp-content/uploads/2023/05/image-103-300x147.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-103-768x376.png 768w" sizes="(max-width: 1186px) 100vw, 1186px" /></figure>



<p class="has-medium-font-size"><strong>ShapeRecognizerActiveState</strong>&nbsp;takes a hand, the current state of the hand’s fingers, and a list of shape configs. <br><strong>ShapeRecognizerActiveState</strong>&nbsp;는 손, 손 손가락의 현재 상태 및 셰이프 구성 목록을 사용합니다.</p>



<p class="has-medium-font-size">To get the current state of the fingers, it uses the&nbsp;method to retrieve the&nbsp;<strong>FingerFeatureStateProvider</strong>&nbsp;component from the hand. <br>손가락의 현재 상태를 가져오기 위해 이 메서드를 사용하여 손에서&nbsp;<strong>FingerFeatureStateProvider</strong>&nbsp;구성 요소를 검색합니다.</p>



<p class="has-medium-font-size">If the state of every finger matches the states in the listed shapes,&nbsp;<strong>ShapeRecognizerActiveState</strong>&nbsp;becomes active.&nbsp;<br>모든 손가락의 상태가 나열된 도형의 상태와 일치하면&nbsp;<strong>ShapeRecognizerActiveState</strong>가 활성화됩니다.</p>



<p class="has-medium-font-size"><strong>ShapeRecognizerActiveState</strong>&nbsp;implements the&nbsp;<strong>IActiveState</strong>&nbsp;interface.<code>GetHandAspect</code><br>Shape RecognizerActiveState는 the IActiveState interface.GetHandAspect를 구현합니다</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table"><table><thead><tr><th class="has-text-align-left" data-align="left">Property</th><th class="has-text-align-left" data-align="left">Description</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Hand</td><td class="has-text-align-left" data-align="left">A&nbsp;<strong>Hand Ref</strong>&nbsp;component. Determines which hand is read for state data.<br><strong>Hand Ref</strong>&nbsp;구성 요소입니다.  데이터를 읽을 Hand를 결정합니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Finger Feature State Provider</td><td class="has-text-align-left" data-align="left">A&nbsp;<strong>FingerFeatureStateProvider</strong>&nbsp;component, which provides the current state of the tracked hand’s fingers.<br>추적된 손 손가락의 현재 상태를 제공하는&nbsp;<strong>FingerFeatureStateProvider&nbsp;</strong>구성 요소입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Shapes</td><td class="has-text-align-left" data-align="left">A list of shape configs (<a href="https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/?ref=blog.immersive-insiders.com#shape-recognizer">ShapeRecognizer</a>&nbsp;assets) that define the pose. <br>포즈를 정의하는 셰이프 구성(<a href="https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/?ref=blog.immersive-insiders.com#shape-recognizer">ShapeRecognizer</a>&nbsp;자산)의 목록입니다.<br><br>The states in these shape configs are compared to the finger states from the&nbsp;<strong>Finger Feature State Provider</strong>&nbsp;property.<br>&nbsp;이러한 셰이프 구성의 상태는&nbsp;<strong>Finger Feature State Provider</strong>&nbsp;속성의 손가락 상태와 비교됩니다.</td></tr></tbody></table></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size" id="shape-recognizer">ShapeRecognizer</h4>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1893" height="738" src="https://lycos7560.com/wp-content/uploads/2023/05/image-106.png" alt="" class="wp-image-34901" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-106.png 1893w, https://lycos7560.com/wp-content/uploads/2023/05/image-106-300x117.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-106-768x299.png 768w, https://lycos7560.com/wp-content/uploads/2023/05/image-106-1536x599.png 1536w" sizes="(max-width: 1893px) 100vw, 1893px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>ShapeRecognizer</strong>&nbsp;is a that defines a shape. <br><strong>ShapeRecognizer</strong>는 도형을 정의하는 것입니다.</p>



<p class="has-medium-font-size">To define a shape, it uses a set of rules&nbsp;called Feature Configs. <br>&nbsp;shape를 정의하기 위해&nbsp;Feature Configs라는 rules을 사용합니다.</p>



<p class="has-medium-font-size">Feature Configs specify a required position (state) for each of the five fingers. <br>기능 구성은 다섯 손가락 각각에 필요한 위치(상태)를 지정합니다.</p>



<p class="has-medium-font-size">Feature Configs define state using at least one of the Finger Features: Curl, Flexion, Abduction, and Opposition.&nbsp;<br>기능 구성은 손가락 기능(Curl, Flexion, Abduction, Opposition) 중 하나 이상을 사용하여 상태를 정의합니다.</p>



<p class="has-medium-font-size"><strong>ShapeRecognizer</strong>&nbsp;is referenced by the&nbsp;<strong>ShapeRecognizerActiveState</strong>&nbsp;component to determine if a pose is active.<code>ScriptableObject</code><br><strong>ShapeRecognizer</strong>는&nbsp;<strong>ShapeRecognizerActiveState</strong>&nbsp;구성 요소에서 참조하여 포즈가 활성 상태인지 확인합니다.<code>ScriptableObject</code></p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading has-large-font-size">FingerFeatureStateProvider</h3>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1190" height="681" src="https://lycos7560.com/wp-content/uploads/2023/05/image-104.png" alt="" class="wp-image-34897" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-104.png 1190w, https://lycos7560.com/wp-content/uploads/2023/05/image-104-300x172.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-104-768x440.png 768w" sizes="(max-width: 1190px) 100vw, 1190px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Finger&nbsp;Feature&nbsp;State Provider</strong>&nbsp;provides the finger states of the tracked hands and&nbsp;contains the state transition thresholds for each finger. <br><strong>손가락&nbsp;기능&nbsp;상태 공급자</strong>는 추적된 손의 손가락 상태를 제공하고 각 손가락에 대한 상태 전환 임계값을 포함합니다.</p>



<p class="has-medium-font-size">It’s referenced by the&nbsp;ShapeRecognizerActiveState&nbsp;component.<br>ShapeRecognizerActiveState&nbsp;구성 요소에서 참조합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table"><table><thead><tr><th class="has-text-align-left" data-align="left">Property</th><th class="has-text-align-left" data-align="left">Description</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Hand</td><td class="has-text-align-left" data-align="left">The&nbsp;<strong>Hand</strong>&nbsp;component to use for finger state data.<br>손가락 상태 데이터에 사용할&nbsp;<strong>Hand</strong>&nbsp;구성 요소입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Finger State Thresholds</td><td class="has-text-align-left" data-align="left">A list of five elements, one for each finger. <br>각 손가락에 하나 씩 5개의 요소 목록입니다. <br><br>Each element has two properties, a&nbsp;<strong>Finger</strong>&nbsp;(Thumb, Index, Middle, Ring, Pinky), and a&nbsp;<strong>State Thresholds</strong>&nbsp;(FingerFeatureStateThresholds).<br>각 요소에는 Finger(Thumb,&nbsp;Index, Middle, Ring, Pinky)와 <strong>State Thresholds</strong>(FingerFeatureStateThresholds)의 두 가지 속성이 있습니다.</td></tr></tbody></table></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size" id="finger-feature-state-thresholds">FingerFeatureStateThresholds</h4>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>FingerFeatureStateThresholds</strong>&nbsp;is a&nbsp;that defines the state thresholds for each&nbsp;Finger Feature.<br><strong>FingerFeatureStateThresholds</strong>는 각&nbsp;손가락 특징에 대한 상태 임계값을 정의하는 것입니다.</p>



<p class="has-medium-font-size"> A <strong>state threshold</strong> is a set of boundaries that determine when a finger has transitioned between states. <br>&nbsp;<strong>state threshold</strong> 는 손가락이 상태 간에 전환된 시기를 결정하는 경계 집합입니다.&nbsp;</p>



<p class="has-medium-font-size">For example, the curl feature has 3 states: Open, Neutral, and Closed.<br>예를 들어 curl 기능에는 3가지 상태(Open, Neutral 및 Closed)가 있습니다.</p>



<p class="has-medium-font-size"> So the state thresholds for curl use an angle in degrees to define when the finger’s state has changed from Open to Neutral, Neutral to Closed, or vice-versa.<code>ScriptableObject</code><br>따라서 curl의 상태 임계값은 각도(도)를 사용하여 손가락의 상태가 열림에서 보통으로, 보통에서 닫힘으로 또는 그 반대로 변경된 시기를 정의합니다.<code>ScriptableObject</code></p>



<p class="has-medium-font-size">Interaction SDK provides four sets of default state thresholds, which are under&nbsp;:<code>DefaultSettings/PoseDetection</code><br>Interaction SDK는 아래에 있는 4개의 기본 상태 임계값 집합을 제공합니다.<code>DefaultSettings/PoseDetection</code></p>



<ul class="wp-block-list">
<li>DefaultThumbFeatureStateThresholds (for the thumb)(엄지 손가락의 경우)</li>



<li>IndexFingerFeatureStateThresholds (for the Index finger)(집게 손가락의 경우)</li>



<li>MiddleFingerFeatureStateThresholds (for the Middle finger)(가운데 손가락의 경우)</li>



<li>DefaultFingerFeatureStateThresholds (for the Ring &amp; Pinky fingers)(약지 및 새끼손가락용)</li>
</ul>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1920" height="991" src="https://lycos7560.com/wp-content/uploads/2023/05/image-107.jpg" alt="" class="wp-image-34908" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-107.jpg 1920w, https://lycos7560.com/wp-content/uploads/2023/05/image-107-300x155.jpg 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-107-768x396.jpg 768w, https://lycos7560.com/wp-content/uploads/2023/05/image-107-1536x793.jpg 1536w" sizes="(max-width: 1920px) 100vw, 1920px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="473" height="380" src="https://lycos7560.com/wp-content/uploads/2023/05/image-107.png" alt="" class="wp-image-34909" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-107.png 473w, https://lycos7560.com/wp-content/uploads/2023/05/image-107-300x241.png 300w" sizes="(max-width: 473px) 100vw, 473px" /></figure>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The thumb’s curl state threshold.<br>엄지 손가락의 curl 상태 임계값입니다.</p>



<p class="has-medium-font-size">For curl, the value is an angle in degrees.<br>curl의 경우 값은 각도(도)입니다.</p>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table"><table><thead><tr><th class="has-text-align-left" data-align="left">Property</th><th class="has-text-align-left" data-align="left">Description</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Min Time In State</td><td class="has-text-align-left" data-align="left">How long the value must be in the new state before the feature will actually change to that state. <br>기능이 실제로 해당 상태로 변경되기 전에 값이 새로운 상태에 있어야 하는 기간입니다.&nbsp;<br><br>This is to prevent rapid flickering at transition edges. <br>이는 전환 가장자리에서 빠른 깜박임을 방지하기 위한 것입니다.&nbsp;<br><br>This value applies to all features.<br>이 값은 모든 기능에 적용됩니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Expected Value Range</td><td class="has-text-align-left" data-align="left">A rough guide that indicates what range of motion the average human will be able to achieve.<br>평균적인 인간이 달성할 수 있는 동작 범위를 나타내는 대략적인 가이드입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Midpoint</td><td class="has-text-align-left" data-align="left">The value at which a state will transition from A &gt; B (or B &gt; A).<br>상태가 A에서 B(또는 B&gt; A)&gt; 전환되는 값입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Width</td><td class="has-text-align-left" data-align="left">How far the value must exceed the midpoint until the transition can occur. <br>전환이 발생할 수 있을 때까지 값이 중간점을 초과해야 하는 거리입니다.<br><br>This is to prevent rapid flickering at transition edges.<br>이는 전환 가장자리에서 빠른 깜박임을 방지하기 위한 것입니다.</td></tr></tbody></table></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h5 class="wp-block-heading has-large-font-size" id="fingerfeaturestatethresholds-example">FingerFeatureStateThresholds Example</h5>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Given the transition between two states, A &lt;&gt; B:<br>두 상태 간의 전환할 때 A&lt;&gt; B는 다음과 같습니다.</p>



<p class="has-medium-font-size">If the current state is “A”, to transition up to “B” then the angle must rise above the midpoint for that pairing by at least (width / 2.0) for “Min Time In State” seconds.<br>현재 상태가 &#8220;A&#8221;인 경우 &#8220;B&#8221;로 전환하려면 각도가 &#8220;Min Time In State&#8221; 초 동안 해당 페어링의 중간점 이상으로 최소(너비/2.0) 상승해야 합니다.</p>



<p class="has-medium-font-size">If the current state is “B”, to transition down to “A” then the angle must drop below the midpoint for that pairing by at least (width / 2.0) for “Min Time In State” seconds.<br>현재 상태가 &#8220;B&#8221;인 경우 &#8220;A&#8221;로 전환하려면 각도가 &#8220;Min Time In State&#8221; 초 동안 해당 페어링의 중간점 아래로 최소(너비 / 2.0) 떨어져야 합니다.</p>



<p class="has-medium-font-size">So for Curl, to transition:<br>따라서 Curl의 경우 전환하려면 다음을 수행하십시오:</p>



<ul class="wp-block-list">
<li>From Open &gt; Neutral: value must be above 195 for 0.0222 seconds</li>



<li>From Neutral &gt; Open: value must be below 185 for 0.0222 seconds</li>



<li>From Neutral &gt; Closed: value must be above 210 for 0.0222 seconds</li>



<li>From Closed &gt; Neutral: value must be below 200 for 0.0222 seconds</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li>개방에서 중립&gt;: 값은 195.0초 동안 0222보다 커야 합니다.</li>



<li>중립에서 시&gt;까지: 값은 185.0초 동안 0222 미만이어야 합니다.</li>



<li>중립에서 닫힘으로&gt;: 값은 210.0초 동안 0222보다 커야 합니다.</li>



<li>닫힘에서 중립&gt;: 값은 200.0초 동안 0222 미만이어야 합니다.</li>
</ul>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size" id="finger-features">Finger Features</h4>



<p class="has-medium-font-size">Finger Features are specific finger positions that let you define a shape. There are four features:<br>손가락 기능은 모양을 정의할 수 있는 특정 손가락 위치입니다. 네 가지 기능이 있습니다.</p>



<ul class="wp-block-list">
<li>Curl </li>



<li>Flexion</li>



<li>Abduction</li>



<li>Opposition</li>
</ul>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="664" height="429" src="https://lycos7560.com/wp-content/uploads/2023/05/image-115.png" alt="" class="wp-image-34938" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-115.png 664w, https://lycos7560.com/wp-content/uploads/2023/05/image-115-300x194.png 300w" sizes="(max-width: 664px) 100vw, 664px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h5 class="wp-block-heading has-large-font-size" id="curl">Curl</h5>



<p class="has-medium-font-size">Represents how bent the top two joints of the finger or thumb are. <br>손가락 또는 엄지손가락의 위쪽 두 관절이 얼마나 구부러졌는지를 나타냅니다.</p>



<p class="has-medium-font-size">This feature doesn’t take the Proximal (knuckle) joint into consideration.<br>이 기능은 근위부(너클) 조인트를 고려하지 않습니다.</p>



<p class="has-medium-font-size">States:</p>



<ul class="wp-block-list">
<li><strong>Open</strong>: Fingers are fully extended straight.</li>



<li><strong>Neutral</strong>: Fingers are slightly curled inwards, as if they were wrapped around a coffee mug.</li>



<li><strong>Closed</strong>&nbsp;(pictured): Fingers are tightly curled inwards such that the tips are almost touching the palm.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>열림</strong>: 손가락을 완전히 똑바로 뻗습니다.</li>



<li><strong>중립</strong>: 손가락이 마치 커피 머그잔을 감싼 것처럼 안쪽으로 약간 말려 있습니다.</li>



<li><strong>닫힘</strong>&nbsp;(사진) : 손가락이 안쪽으로 단단히 말려서 끝이 손바닥에 거의 닿을 정도입니다.</li>
</ul>



<div style="height:18px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="291" height="529" src="https://lycos7560.com/wp-content/uploads/2023/05/image-108.png" alt="" class="wp-image-34913" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-108.png 291w, https://lycos7560.com/wp-content/uploads/2023/05/image-108-165x300.png 165w" sizes="(max-width: 291px) 100vw, 291px" /></figure>



<div style="height:18px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The joints used to measure the curl feature.<br>컬 형상을 측정하는 데 사용되는 조인트.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h5 class="wp-block-heading has-large-font-size" id="flexion">Flexion</h5>



<p class="has-medium-font-size">The extent that the Proximal (knuckle) joint is bent. <br>근위부(너클) 관절이 구부러진 정도.&nbsp;</p>



<p class="has-medium-font-size">Flexion is only reliable on the 4 fingers.<br>굴곡은 4개의 손가락에서만 신뢰할 수 있습니다.&nbsp; (엄지 X )</p>



<p class="has-medium-font-size"> It can provide false positives on the thumb.<br>이것은 엄지 손가락에 잘못된 긍정을 제공 할 수 있습니다.</p>



<p class="has-medium-font-size"><strong>States:</strong></p>



<ul class="wp-block-list">
<li><strong>Open</strong>: The first bone on the fingers is fully extended and is parallel to the palm.</li>



<li><strong>Neutral</strong>: Somewhat bent.</li>



<li><strong>Closed</strong>: Knuckle joint is fully bent (pictured).</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>열림</strong>: 손가락의 첫 번째 뼈가 완전히 확장되고 손바닥과 평행합니다.</li>



<li><strong>중립:</strong>&nbsp;약간 구부러져 있습니다.</li>



<li><strong>닫힘</strong>: 너클 조인트가 완전히 구부러져 있습니다(사진).</li>
</ul>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Warning</strong></p>



<p class="has-medium-font-size">Flexion is only reliable on the 4 fingers.<br>굴곡은 4개의 손가락에서만 신뢰할 수 있습니다. </p>



<p class="has-medium-font-size"> It can provide false positives on the thumb.<br>엄지 손가락에 잘못된 긍정을 제공 할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image"><img decoding="async" src="https://scontent-ssn1-1.xx.fbcdn.net/v/t39.2365-6/309860470_1137837473813430_4556848194095159268_n.png?_nc_cat=109&amp;ccb=1-7&amp;_nc_sid=ad8a9d&amp;_nc_ohc=ZKwYFdpy-J0AX9zGOWy&amp;_nc_ht=scontent-ssn1-1.xx&amp;oh=00_AfDCf0AgRjvTKySJl0nN4zFee__gKeLgnJJPAy0aTXlzJQ&amp;oe=64703882" alt="Four fingers bent perpendicular to the palm"/></figure>



<p class="has-medium-font-size">An example of flexion where the knuckle joint is in the&nbsp;<strong>Closed</strong>&nbsp;state.<br>너클 관절이&nbsp;<strong>닫힌</strong>&nbsp;상태인 굴곡의 예.</p>



<div style="height:99px" aria-hidden="true" class="wp-block-spacer"></div>



<h5 class="wp-block-heading has-large-font-size">Abduction</h5>



<p class="has-medium-font-size">The angle between two adjacent fingers, measured at the base of those two fingers.<br>인접한 두 손가락 사이의 각도로, 두 손가락의 밑면에서 측정됩니다.</p>



<p class="has-medium-font-size">Abduction measures the angle between the given finger and the adjacent finger that’s closer to the pinky. <br>외전은 주어진 손가락과 새끼 손가락에 더 가까운 인접한 손가락 사이의 각도를 측정합니다.</p>



<p class="has-medium-font-size">For example, Abduction for the index finger is the angle between the index and middle finger.<br>예를 들어, 집게 손가락의 외전은 집게 손가락과 가운데 손가락 사이의 각도입니다.</p>



<p class="has-medium-font-size"><strong>States:</strong></p>



<ul class="wp-block-list">
<li><strong>Open</strong>&nbsp;The two fingers are spread apart (pictured for index).</li>



<li><strong>Closed</strong>: The two fingers are tightly compressed together (pictured for thumb, middle, ring).</li>



<li><strong>None</strong>: Not currently used.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>열다</strong>&nbsp;두 손가락이 벌어져 있습니다(인덱스 사진).</li>



<li><strong>닫힘</strong>: 두 손가락이 함께 단단히 압축됩니다(엄지, 가운데, 반지 사진).</li>



<li><strong>없음</strong>: 현재 사용되지 않습니다.</li>
</ul>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Note</strong></p>



<p class="has-medium-font-size">Abduction on Pinkie is not supported.<br>핑키의 외전은 지원되지 않습니다. (새끼 손가락)</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="395" height="564" src="https://lycos7560.com/wp-content/uploads/2023/05/image-109.png" alt="" class="wp-image-34921" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-109.png 395w, https://lycos7560.com/wp-content/uploads/2023/05/image-109-210x300.png 210w" sizes="(max-width: 395px) 100vw, 395px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">An example of abduction. <br>The index finger is in the&nbsp;<strong>Open</strong>&nbsp;state.<br>집게 손가락이&nbsp;<strong>열린</strong>&nbsp;상태입니다. </p>



<p class="has-medium-font-size">The thumb, middle, and ring fingers are in the&nbsp;<strong>Closed</strong>&nbsp;state.<br>엄지, 중지, 약지가&nbsp;<strong>닫힌</strong>&nbsp;상태입니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h5 class="wp-block-heading has-large-font-size"><strong>Opposition</strong></h5>



<p class="has-medium-font-size">How close a given fingertip is to the thumb tip. <br>주어진 손가락 끝이 엄지 손가락 끝에 얼마나 가까운지.</p>



<p class="has-medium-font-size">Can only be used on index, middle, ring, and pinky fingers.<br>검지, 중지, 약지, 새끼손가락에만 사용할 수 있습니다.</p>



<p class="has-medium-font-size">States:</p>



<ul class="wp-block-list">
<li><strong>Touching</strong>: The fingertip joints are within ~1.5cm (pictured for index).</li>



<li><strong>Near</strong>: The fingertip joints are between ~1.5cm and ~15cm apart.</li>



<li><strong>None</strong>: The fingertip joints are greater than ~15cm apart.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>만지기</strong>: 손가락 끝 관절은 ~1.5cm 이내입니다(인덱스 사진).</li>



<li><strong>근거리</strong>: 손가락 끝 관절은 ~1.5cm에서 ~15cm 떨어져 있습니다.</li>



<li><strong>없음</strong>: 손가락 끝 관절이 ~15cm 이상 떨어져 있습니다.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="438" height="596" src="https://lycos7560.com/wp-content/uploads/2023/05/image-110.png" alt="" class="wp-image-34922" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-110.png 438w, https://lycos7560.com/wp-content/uploads/2023/05/image-110-220x300.png 220w" sizes="(max-width: 438px) 100vw, 438px" /></figure>



<p class="has-medium-font-size">An example of opposition. The index finger is in the&nbsp;<strong>Touching</strong>&nbsp;state.<br>반대의 예. 집게 손가락이&nbsp;<strong>Touching</strong>&nbsp;상태입니다.</p>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading has-large-font-size" id="transform-recognition">Transform Recognition</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Poses consist of one or more transforms. <br>포즈는 하나 이상의 변환으로 구성됩니다.</p>



<p class="has-medium-font-size">The transform of the hand only represents the orientation and position.<br>손의 변형은 방향과 위치만 나타냅니다.</p>



<p class="has-medium-font-size">The orientation is only evaluated relative to the WristUp, WristDown, PalmDown, PalmUp, PalmTowardsFace, PalmsAwayFromFace, FingersUp, FingersDown, and PinchClear transforms.<br>방향은 WristUp, WristDown, PalmDown, PalmUp, PalmTowardsFace, PalmsAwayFromFace, FingersUp, FingersDown 및 PinchClear 변환을 기준으로만 평가됩니다.</p>



<p class="has-medium-font-size">A pose’s required transforms are listed in the pose’s&nbsp;TransformRecognizerActiveState&nbsp;component.<br>포즈의 필수 변환은 포즈의&nbsp;TransformRecognizerActiveState&nbsp;구성 요소에 나열됩니다.&nbsp;</p>



<p class="has-medium-font-size">During hand tracking, the hand’s transforms are compared to the pose’s transforms. <br>핸드 트래킹 중에 손의 변형이 포즈의 변형과 비교됩니다.</p>



<p class="has-medium-font-size">If both sets of transforms match and all the shapes in the pose are active, then the pose is detected.<br>두 변환 집합이 모두 일치하고 포즈의 모든 shape가 활성 상태이면 포즈가 감지됩니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="568" height="328" src="https://lycos7560.com/wp-content/uploads/2023/05/image-111.png" alt="" class="wp-image-34926" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-111.png 568w, https://lycos7560.com/wp-content/uploads/2023/05/image-111-300x173.png 300w" sizes="(max-width: 568px) 100vw, 568px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The axes that define the hand’s fingers, wrist, and palm.<br>손의 손가락, 손목 및 손바닥을 정의하는 축입니다.</p>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size">TransformRecognizerActiveState</h4>



<figure class="wp-block-image size-full"><img decoding="async" width="1195" height="315" src="https://lycos7560.com/wp-content/uploads/2023/05/image-114.png" alt="" class="wp-image-34934" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-114.png 1195w, https://lycos7560.com/wp-content/uploads/2023/05/image-114-300x79.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-114-768x202.png 768w" sizes="(max-width: 1195px) 100vw, 1195px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>TransformRecognizerActiveState</strong>&nbsp;takes a hand, the current state of the hand’s transforms, and a list of transform feature configs, and a transform config.<br><strong>TransformRecognizerActiveState</strong>&nbsp;는 손 변환의 현재 상태, 변환 기능 구성 목록 및 변환 구성을 사용합니다.</p>



<p class="has-medium-font-size">To get the current state of the hand’s transforms, it uses the&nbsp;method to retrieve the&nbsp;<strong>TransformFeatureStateProvider</strong>&nbsp;component.<br>손 변환의 현재 상태를 가져오기 위해 method를 사용하여&nbsp;<strong>TransformFeatureStateProvider</strong>&nbsp;구성 요소를 검색합니다.</p>



<p class="has-medium-font-size">That component reads the raw feature values and quantizes them into&nbsp;<strong>TransformFeatureStates</strong>&nbsp;using the&nbsp;<strong>Transform Config</strong>&nbsp;you provide in this component.<code>GetHandAspect</code><br>이 구성 요소는 raw 기능 값을 읽고 이 구성 요소에서 제공하는&nbsp;<strong>변환 구성을</strong>&nbsp;사용하여&nbsp;<strong>TransformFeatureStates</strong>로 정량화 합니다.<code>GetHandAspect</code></p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table"><table><thead><tr><th class="has-text-align-left" data-align="left">Property</th><th class="has-text-align-left" data-align="left">Description</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Hand</td><td class="has-text-align-left" data-align="left">A&nbsp;<strong>Hand Ref</strong>&nbsp;component. Determines which hand is read for state data.<br><strong>Hand Ref</strong>&nbsp;구성 요소입니다. 상태 데이터를 읽을 핸드를 결정합니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Transform Feature State Provider</td><td class="has-text-align-left" data-align="left">A&nbsp;TransformFeatureStateProvider&nbsp;component, which provides the current state of the tracked hand’s transforms.<br>추적된 손 변환의 현재 상태를 제공하는&nbsp;TransformFeatureStateProvider&nbsp;구성 요소입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Transform Feature Configs</td><td class="has-text-align-left" data-align="left">A list of required transforms that the tracked hand must match for the pose to become active (assuming all shapes are also active). <br>포즈가 활성화되기 위해 추적된 손이 일치해야 하는 필수 변환 목록입니다(모든 셰이프도 활성 상태라고 가정).<br><br>Each transform is an orientation and a boolean (ex.&nbsp;<strong>PalmTowardsFace</strong>&nbsp;is&nbsp;<strong>True</strong>.)<br>각 변환은 방향과 부울입니다(예:&nbsp;<strong>PalmTowardsFace</strong>는&nbsp;<strong>True</strong>임).</td></tr><tr><td class="has-text-align-left" data-align="left">Transform Config</td><td class="has-text-align-left" data-align="left">See&nbsp;TransformConfig.<br>TransformConfig를 참조하세요.</td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size" id="transform-feature-state-provider">TransformFeatureStateProvider</h4>



<figure class="wp-block-image size-full"><img decoding="async" width="1200" height="255" src="https://lycos7560.com/wp-content/uploads/2023/05/image-113.png" alt="" class="wp-image-34933" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-113.png 1200w, https://lycos7560.com/wp-content/uploads/2023/05/image-113-300x64.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-113-768x163.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" /></figure>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>TransformFeatureStateProvider</strong>&nbsp;provides the transform states of the tracked hand. <br><strong>TransformFeatureStateProvider</strong>는 추적된 손의 변환 상태를 제공합니다.</p>



<p class="has-medium-font-size">It’s referenced by the&nbsp;TransformRecognizerActiveState&nbsp;component.<br>TransformRecognizerActiveState&nbsp;구성 요소에서 참조합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table"><table><thead><tr><th class="has-text-align-left" data-align="left">Property</th><th class="has-text-align-left" data-align="left">Description</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Hand</td><td class="has-text-align-left" data-align="left">The&nbsp;<strong>Hand</strong>&nbsp;component to use for finger state data.<br>손가락 상태 데이터에 사용할&nbsp;<strong>Hand</strong>&nbsp;구성 요소입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Hmd</td><td class="has-text-align-left" data-align="left">The&nbsp;<strong>Hmd</strong>&nbsp;component.<br><strong>Hmd</strong>&nbsp;구성 요소입니다.</td></tr><tr><td class="has-text-align-left" data-align="left">Tracking to World Transformer</td><td class="has-text-align-left" data-align="left">The&nbsp;<strong>OVRInteraction</strong>&nbsp;GameObject from&nbsp;Set up Camera Rig.<br>OVR카메라 릭 셋업의&nbsp;<strong>내부 액션</strong>&nbsp;게임 오브젝트입니다.</td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size" id="transform-config">TransformConfig</h4>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Transform Config</strong>&nbsp;influences state transitions computed via&nbsp;TransformFeatureStateProvider. <br><strong>변환 구성은</strong>&nbsp;TransformFeatureStateProvider를 통해 계산된 상태 전환에 영향을 줍니다.</p>



<p class="has-medium-font-size">It implements the&nbsp;<strong>IActiveState</strong>&nbsp;interface and becomes active whenever all of the listed transform states are active.<br><strong>IActiveState</strong>&nbsp;인터페이스를 구현하고 나열된 모든 변환 상태가 활성화될 때마다 활성화됩니다.</p>



<p class="has-medium-font-size">Its&nbsp;<strong>Feature Thresholds</strong>&nbsp;property takes a&nbsp;,&nbsp;<strong>TransformFeatureStateThresholds</strong>, that defines the transform feature thresholds for each orientation. <br><strong>해당 Feature</strong>&nbsp;Thresholds 속성은 각 방향에 대한 변환 기능 임계값을 정의하는&nbsp;<strong>TransformFeatureStateThresholds</strong>를 사용합니다.</p>



<p class="has-medium-font-size">The transform feature thresholds use the same properties as the&nbsp;FingerFeatureStateThresholds.<code>ScriptableObject</code><br>변환 기능 임계값은&nbsp;FingerFeatureStateThresholds와 동일한 속성을 사용합니다.<code>ScriptableObject</code></p>



<p class="has-medium-font-size"><strong>Note</strong></p>



<p class="has-medium-font-size">Once you register a specific configuration, the&nbsp;method can then query the state of each state tracked for configuration. <br>특정 구성을 등록하면 메서드는 구성을 위해 추적된 각 상태의 상태를 쿼리할 수 있습니다.</p>



<p class="has-medium-font-size">It leverages&nbsp;<strong>FeatureStateProvider</strong>&nbsp;to drive state-changing logic.<code>RegisterConfig</code><br><strong>FeatureStateProvider</strong>를 활용하여 상태 변경 논리를 구동합니다.<code>RegisterConfig</code></p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h4 class="wp-block-heading has-large-font-size">Velocity Recognition</h4>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Velocity recognition components detect motion, whereas shape recognition only detects static poses. <br>속도 인식 구성 요소는 동작을 감지하는 반면 모양 인식은 정적 포즈만 감지합니다.</p>



<p class="has-medium-font-size">For example, shape recognition can detect a hand in a thumbs-up pose, <br>예를 들어 모양 인식은 엄지손가락을 위로 올리는 포즈에서 손을 감지할 수 있지만</p>



<p class="has-medium-font-size">but cannot determine if the hand is moving upward while in that pose.<br>해당 포즈에서 손이 위로 움직이는지 여부는 확인할 수 없습니다.</p>



<p class="has-medium-font-size">There are two velocity recognition components. <br>속도 인식 구성 요소에는 두 가지가 있습니다.&nbsp;</p>



<p class="has-medium-font-size">Both components get joint data from the&nbsp;<strong>JointDeltaProvider</strong>&nbsp;component.<br>두 구성 요소 모두&nbsp;<strong>JointDeltaProvider</strong>&nbsp;구성 요소에서 조인트 데이터를 가져옵니다.</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>JointVelocityActiveState</strong>&nbsp;tracks velocities (position deltas over the last two frames) for a list of joints and compares them to a velocity target along the provided axes. <br><strong>JointVelocityActiveState</strong>는 조인트 목록에 대한 속도(마지막 두 프레임에 대한 위치 델타)를 추적하고 제공된 축을 따라 속도 목표와 비교합니다.&nbsp;<br><br>If the velocity target (units per second) is met for the minimum time threshold, the state becomes Active.<br>속도 목표(초당 단위)가 최소 시간 임계값에 충족되면 상태가 활성이 됩니다.</li>



<li><strong>JointRotationActiveState</strong>&nbsp;tracks angular velocities (rotation deltas over the last two frames) for a list of joints and compares them to a rotation target around the provided axes. <br><strong>JointRotationActiveState</strong>는 조인트 목록에 대한 각속도(마지막 두 프레임의 회전 델타)를 추적하고 제공된 축 주위의 회전 대상과 비교합니다.<br><br>If the rotation target (degrees per second) is met for the minimum time threshold, the state becomes Active.<br>최소 시간 임계값에 대해 회전 목표(초당 도)가 충족되면 상태가 활성이 됩니다.</li>
</ul>



<figure class="wp-block-image size-full"><img decoding="async" width="1534" height="528" src="https://lycos7560.com/wp-content/uploads/2023/05/image-116.png" alt="" class="wp-image-34945" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-116.png 1534w, https://lycos7560.com/wp-content/uploads/2023/05/image-116-300x103.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-116-768x264.png 768w" sizes="(max-width: 1534px) 100vw, 1534px" /></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading has-large-font-size">Sequences</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>IActiveState</strong>&nbsp;components can be chained together using the&nbsp;<strong>Sequence</strong>&nbsp;component. <br><strong>IActiveState</strong>&nbsp;구성 요소는&nbsp;<strong>Sequence</strong>&nbsp;구성 요소를 사용하여 함께 연결할 수 있습니다.&nbsp;</p>



<p class="has-medium-font-size">Because&nbsp;<strong>Sequences</strong>&nbsp;can recognize a series of&nbsp;<strong>IActiveStates</strong>&nbsp;over time, they can be used to compose complex gestures. <br><strong>시퀀스는</strong>&nbsp;시간이 지남에 따라 일련의&nbsp;<strong>IActiveStates</strong>를 인식할 수 있으므로 복잡한 제스처를 작성하는 데 사용할 수 있습니다.</p>



<p class="has-medium-font-size">For examples of complex gestures, see the&nbsp;GestureExamples&nbsp;sample scene.<br>복잡한 제스처의 예는&nbsp;GestureExamples&nbsp;샘플 장면을 참조하세요.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="948" style="aspect-ratio: 1688 / 948;" width="1688" controls muted src="https://lycos7560.com/wp-content/uploads/2023/05/녹화_2023_05_23_00_24_04_459.mp4"></video></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1513" height="762" src="https://lycos7560.com/wp-content/uploads/2023/05/image-118.png" alt="" class="wp-image-34947" srcset="https://lycos7560.com/wp-content/uploads/2023/05/image-118.png 1513w, https://lycos7560.com/wp-content/uploads/2023/05/image-118-300x151.png 300w, https://lycos7560.com/wp-content/uploads/2023/05/image-118-768x387.png 768w" sizes="(max-width: 1513px) 100vw, 1513px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading has-large-font-size">Sequence Classes</h3>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Sequence</strong>&nbsp;takes a list of&nbsp;<strong>ActivationSteps</strong>&nbsp;and iterates through them as they become active. <br><strong>Sequence</strong>는&nbsp;<strong>ActivationSteps</strong>의 목록을 가져와서 활성화될 때 반복합니다.</p>



<p>Each&nbsp;<strong>ActivationStep</strong>&nbsp;consists of an&nbsp;<strong>IActiveState</strong>, a minimum active time, and a maximum step time. <br><strong>ActivationStep</strong>은&nbsp;<strong>IActiveState</strong>, 최소 활성 시간 및 최대 단계 시간으로 구성됩니다.</p>



<p class="has-medium-font-size">These steps function as follows:</p>



<ul class="wp-block-list">
<li>The&nbsp;<strong>IActiveState</strong>&nbsp;must be active for at least the minimum active time before the&nbsp;<strong>Sequence</strong>&nbsp;proceeds to the next step.</li>



<li>If an&nbsp;<strong>IActiveState</strong>&nbsp;is active for longer than the maximum step time, the step will fail and the&nbsp;<strong>Sequence</strong>&nbsp;will restart.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li><strong>IActiveState</strong>는&nbsp;<strong>시퀀스</strong>가 다음 단계로 진행하기 전에 최소 활성 시간 이상 활성 상태여야 합니다.</li>



<li><strong>IActiveState</strong>가 최대 단계 시간보다 오래 활성 상태이면 단계가 실패하고&nbsp;<strong>시퀀스</strong>가 다시 시작됩니다.</li>
</ul>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Once the final&nbsp;<strong>ActivationStep</strong>&nbsp;in the&nbsp;<strong>Sequence</strong>&nbsp;has completed, the&nbsp;<strong>Sequence</strong>&nbsp;becomes active. <br><strong>시퀀스</strong>의 마지막&nbsp;<strong>ActivationStep</strong>이 완료되면&nbsp;<strong>시퀀스</strong>가 활성화됩니다.</p>



<p class="has-medium-font-size">If an optional KeepActiveWhile&nbsp;<strong>IActiveState</strong>&nbsp;has been provided, the&nbsp;<strong>Sequence</strong>&nbsp;will remain active as long as KeepActiveWhile is active.<br>선택적 KeepActiveWhile&nbsp;<strong>IActiveState</strong>가 제공된 경우 KeepActiveWhile이 활성화되어 있는 한&nbsp;<strong>시퀀스</strong>는 활성 상태로 유지됩니다.</p>



<p class="has-medium-font-size">The last phase of a&nbsp;<strong>Sequence</strong>&nbsp;is the optional cooldown phase, the duration of which can be set in the RemainActiveCooldown field. <br><strong>시퀀스</strong>의 마지막 단계는 선택적 휴지 단계이며, 지속 시간은 RemainActiveCooldown 필드에서 설정할 수 있습니다.</p>



<p class="has-medium-font-size">A&nbsp;<strong>Sequence</strong>&nbsp;that is deactivating will wait for this cooldown timer to elapse before finally becoming inactive.<br>비활성화 중인&nbsp;<strong>시퀀스</strong>는 이 재사용 대기시간 타이머가 경과할 때까지 기다렸다가 최종적으로 비활성화됩니다.</p>



<p class="has-medium-font-size"><strong>SequenceActiveState</strong>&nbsp;is an&nbsp;<strong>IActiveState</strong>&nbsp;wrapper for a&nbsp;<strong>Sequence</strong>, and can either report active once the Sequence has started, once the&nbsp;<strong>Sequence</strong>&nbsp;steps have finished, or both.<br><strong>SequenceActiveState</strong>는 시퀀스에 대한&nbsp;<strong>IActiveState</strong>&nbsp;래퍼이며, 시퀀스가 시작되거나,&nbsp;<strong>시퀀스</strong>&nbsp;단계가 완료되거나, 둘 다 활성으로 보고될 수 있습니다.</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Debugging Pose Recognition (포즈 인식 디버깅)</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The following classes let you visually debug elements of the pose recognition system.<br>다음 클래스를 사용하면 포즈 인식 시스템의 요소를 시각적으로 디버깅할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="activestatedebugtree">ActiveStateDebugTree</h3>



<p class="has-medium-font-size">Builds a visual representation of an IActiveState tree on a UI canvas, based on a provided root IActiveState. <br>제공된 루트 IActiveState를 기반으로 UI 캔버스에서 IActiveState 트리의 시각적 표현을 빌드합니다.</p>



<p class="has-medium-font-size">Two different node layout types are provided,&nbsp;<strong>ActiveStateDebugTreeHorizontal</strong>&nbsp;(for a left-to-right representation) and **ActiveStateDebugTreeVertical **(for a more compact top to bottom tree view).<br><strong>ActiveStateDebugTreeHorizontal</strong>(왼쪽에서 오른쪽 표현용) 및 ActiveStateDebugTreeVertical(보다 간결한 위에서 아래쪽 트리 보기)의 두 가지 노드 레이아웃 유형이 제공됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="fingerfeatureskeletaldebugvisual">FingerFeatureSkeletalDebugVisual</h3>



<p class="has-medium-font-size">Uses a line renderer to indicate if a finger feature is active on a specific finger (green) or not (red).<br>라인 렌더러를 사용하여 손가락 기능이 특정 손가락에서 활성화되어 있는지(녹색) 또는 활성화되지 않았는지(빨간색)를 나타냅니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="handshapeskeletaldebugvisual">HandShapeSkeletalDebugVisual</h3>



<p class="has-medium-font-size">Creates a series of&nbsp;<strong>FingerFeatureSkeletalDebugVisuals</strong>&nbsp;for the features belonging to a&nbsp;<strong>ShapeRecognizerActiveState</strong>.<br><strong>ShapeRecognizerActiveState</strong>에 속하는 기능에 대한 일련의&nbsp;<strong>FingerFeatureSkeletalDebugVisuals</strong>를 만듭니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="transformfeaturedebugvisual">TransformFeatureDebugVisual</h3>



<p class="has-medium-font-size">Changes the color of a target renderer to green if the specific&nbsp;<strong>TransformFeatureState</strong>&nbsp;is active; red if not.<br>특정&nbsp;<strong>TransformFeatureState</strong>가 활성 상태인 경우 대상 렌더러의 색을 녹색으로 변경합니다. 그렇지 않은 경우 빨간색.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="transformfeaturevectordebugparentvisual">TransformFeatureVectorDebugParentVisual</h3>



<p class="has-medium-font-size">Creates vector debug views for the&nbsp;<strong>FeatureStates</strong>&nbsp;belonging to a&nbsp;<strong>TransformRecognizerActiveState</strong>; one vector for the feature and another vector for the hand. <br><strong>TransformRecognizerActiveState</strong>에 속하는&nbsp;<strong>FeatureStates</strong>에 대한 벡터 디버그 뷰를 만듭니다. 하나의 벡터는 기능에 대한 것이고 다른 하나는 손에 대한 벡터입니다. </p>



<p class="has-medium-font-size">When both vectors are visualized, one can see how close the (blue) hand vector is to the (black) feature vector that it is being tested against in&nbsp;<strong>TransformFeatureValueProvider</strong>.<br>두 벡터를 모두 시각화하면 손 벡터(파란색)가&nbsp;<strong>TransformFeatureValueProvider</strong>에서 테스트 중인 (검은색) 기능 벡터에 얼마나 가까운지 확인할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="transformfeaturevectordebugvisual">TransformFeatureVectorDebugVisual</h3>



<p class="has-medium-font-size">Uses a line renderer to visualize a simple vector.<br>라인 렌더러를 사용하여 간단한 벡터를 시각화합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="transformrecognizerdebugvisual">TransformRecognizerDebugVisual</h3>



<p class="has-medium-font-size">Creates a series of&nbsp;<strong>TransformFeatureDebugVisuas</strong>&nbsp;to visually debug the&nbsp;<strong>TransformFeatureStates</strong>&nbsp;belonging to a collection of&nbsp;<strong>TransformRecognizerActiveState</strong>.<br><strong>TransformRecognizerActiveState</strong>&nbsp;컬렉션에 속하는&nbsp;<strong>TransformFeatureStates</strong>를 시각적으로 디버깅하기 위해 일련의&nbsp;<strong>TransformFeatureDebugVisuas</strong>를 만듭니다.</p>



<p class="has-medium-font-size">This allows one to visually debug the active state of each transform feature via the created instances of&nbsp;<strong>TransformFeatureDebugVisual</strong>.<br>이렇게 하면&nbsp;<strong>TransformFeatureDebugVisual</strong>의 생성된 인스턴스를 통해 각 변환 기능의 활성 상태를 시각적으로 디버그할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="jointrotationdebugvisual">JointRotationDebugVisual</h3>



<p class="has-medium-font-size">Renders lines along the rotation axes tracked by the&nbsp;<strong>JointRotationActiveState</strong>. <br><strong>JointRotationActiveState</strong>에 의해 추적되는 회전 축을 따라 선을 렌더링합니다.</p>



<p class="has-medium-font-size">Lines are red while not rotating along that axis, and they fill up yellow as rotation amount increases toward the target, at which point they become green.<br>선은 해당 축을 따라 회전하지 않는 동안 빨간색으로 표시되며, 대상을 향해 회전량이 증가함에 따라 노란색으로 채워지며, 이때 녹색이 됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="jointvelocitydebugvisual">JointVelocityDebugVisual</h3>



<p class="has-medium-font-size">Renders lines along the velocity axes tracked by the&nbsp;<strong>JointVelocityActiveState</strong>. <br><strong>JointRotationActiveState</strong>에 의해 추적되는 회전 축을 따라 선을 렌더링합니다.&nbsp;</p>



<p class="has-medium-font-size">Lines are red while not moving along that axis, and they fill up yellow as velocity increases toward the target, at which point they become green.<br>선은 해당 축을 따라 회전하지 않는 동안 빨간색으로 표시되며, 대상을 향해 회전량이 증가함에 따라 노란색으로 채워지며, 이때 녹색이 됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" id="internal-implementation-classes">Internal Implementation Classes</h2>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The classes described here implement the underlying functionality, but will not need to be modified in order to use Pose Recognition.<br>여기에 설명된 클래스는 기본 기능을 구현하지만 포즈 인식을 사용하기 위해 수정할 필요는 없습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="featurestateprovider">FeatureStateProvider</h3>



<p class="has-medium-font-size">A generic helper class that keeps track of the current state of features, and uses thresholds to determine state changes.<br>기능의 현재 상태를 추적하고 임계값을 사용하여 상태 변경을 확인하는 제네릭 도우미 클래스입니다.</p>



<p class="has-medium-font-size">The class uses buffers to state changes to ensure that features do not switch rapidly between states.<br>이 클래스는 버퍼를 사용하여 상태 변경이 상태 간에 빠르게 전환되지 않도록 합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="featurestatethresholdseditor">FeatureStateThresholdsEditor</h3>



<p class="has-medium-font-size">A generic editor class that defines the look and feel of dependent editor classes such as&nbsp;<strong>FingerFeatureStateThresholdsEditor</strong>&nbsp;and&nbsp;<strong>TransformStatesThresholdsEditor</strong>.<br><strong>FingerFeatureStateThresholdsEditor</strong>&nbsp;및&nbsp;<strong>TransformStatesThresholdsEditor</strong>와 같은 종속 편집기 클래스의 모양과 느낌을 정의하는 제네릭 편집기 클래스입니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="featuredescriptionattribute">FeatureDescriptionAttribute</h3>



<p class="has-medium-font-size">Lets you define editor-visible descriptions and hints and values to aid users in setting thresholds for features.<br>사용자가 기능에 대한 임계값을 설정하는 데 도움이 되도록 편집기에서 볼 수 있는 설명과 힌트 및 값을 정의할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="ifeaturestatethreshold">IFeatureStateThreshold</h3>



<p class="has-medium-font-size"><strong>IFeatureStateThreshold</strong>&nbsp;is a generic interface that defines the functionality of all thresholds used in hand pose detection.<br><strong>IFeatureStateThreshold</strong>는 손 자세 감지에 사용되는 모든 임계값의 기능을 정의하는 제네릭 인터페이스입니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="ifeaturestatethresholds">IFeatureStateThresholds</h3>



<p class="has-medium-font-size">Defines a collection of IFeatureStateThresholds, specific to a feature type, whether that is finger features or transform features.<br>손가락 기능이든 변환 기능이든 기능 형식과 관련된 IFeatureStateThresholds의 컬렉션을 정의합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="ifeature-thresholds">IFeature Thresholds</h3>



<p class="has-medium-font-size">Provides an interface to a collection of&nbsp;<strong>IFeatureStateThresholds</strong>&nbsp;as well as&nbsp;<strong>MinTimeInState</strong>&nbsp;(i.e. a minimum threshold of time a feature can be in a certain state before transitioning to another state).<br><strong>IFeatureStateThresholds</strong>&nbsp;및&nbsp;<strong>MinTimeInState</strong>&nbsp;컬렉션에 대한 인터페이스를 제공합니다(즉, 다른 상태로 전환하기 전에 기능이 특정 상태에 있을 수 있는 최소 임계값).</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="collidercontainshandjointactivestate">ColliderContainsHandJointActiveState</h3>



<p class="has-medium-font-size">An&nbsp;<strong>IActiveState</strong>&nbsp;that tests to see if a hand joint is inside a collider. <br>손 관절이 콜라이더 내부에 있는지 테스트하는&nbsp;<strong>IActiveState</strong>입니다.</p>



<p class="has-medium-font-size">If a SphereCollider is specified then its radius is used for checking, otherwise the script relies on the collider’s bounds. <br>SphereCollider가 지정되면 해당 반경이 검사에 사용되고, 그렇지 않으면 스크립트가 콜라이더의 경계에 의존합니다.&nbsp;</p>



<p class="has-medium-font-size">This class is useful in case a developer wishes to see if the hand joint exists within a certain volume when a pose is active.<br>이 클래스는 개발자가 포즈가 활성 상태일 때 손 관절이 특정 볼륨 내에 존재하는지 확인하려는 경우에 유용합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading" id="hmdoffset">HmdOffset</h3>



<p class="has-medium-font-size">Can be attached to an object that needs to be anchored from the center eye. <br>중앙 눈에서 고정해야 하는 물체에 부착할 수 있습니다.</p>



<p class="has-medium-font-size">Position and rotation offsets can be specified, along with options to toggle the roll, pitch and yaw of the latter. <br>위치 및 회전 오프셋을 지정할 수 있으며, 후자의 롤, 피치 및 요를 토글하는 옵션도 지정할 수 있습니다.</p>



<p class="has-medium-font-size">One can combine this with a&nbsp;<strong>ColliderContainsHandJointActiveState</strong>to position a collider relative to the center eye.<br>이를&nbsp;<strong>ColliderContainsHandJointActiveState</strong>와 결합하여 중심 눈을 기준으로 콜라이더를 배치할 수 있습니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%86%90-%ed%8f%ac%ec%a6%88-%ea%b0%90%ec%a7%80/34843/">Oculus Unity-Integration &#8211; Hand Pose Detection</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/unity-vr/oculus-hand-pose-detection-%ec%86%90-%ed%8f%ac%ec%a6%88-%ea%b0%90%ec%a7%80/34843/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		<enclosure url="https://lycos7560.com/wp-content/uploads/2023/05/녹화_2023_05_22_21_16_30_889.mp4" length="13747023" type="video/mp4" />
<enclosure url="https://lycos7560.com/wp-content/uploads/2023/05/녹화_2023_05_23_00_24_04_459.mp4" length="16054352" type="video/mp4" />

			</item>
		<item>
		<title>Unity / Input System and Hand Animation</title>
		<link>https://lycos7560.com/unity/unity-vr/unity-input-system-and-hand-animation/6045/</link>
					<comments>https://lycos7560.com/unity/unity-vr/unity-input-system-and-hand-animation/6045/#respond</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Mon, 06 Feb 2023 16:21:31 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[action]]></category>
		<category><![CDATA[Actions]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[Hand]]></category>
		<category><![CDATA[Input System]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR Grab Interactable]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[XR Ray Interactor]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[테스트]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=6045</guid>

					<description><![CDATA[<p>XR Interaction Toolkit을 이용하여 들어오는 입력 값에 따라 손 애니메이션이 움직이는 것을 구현하였습니다.  (Using the XR Interaction Toolkit, the hand animation moves according to the incoming input value.)</p>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/unity-input-system-and-hand-animation/6045/">Unity / Input System and Hand Animation</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:62px" aria-hidden="true" class="wp-block-spacer"></div>



<pre class="EnlighterJSRAW" data-enlighter-language="raw" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="false" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">Unity Version : 2021.3.5f1
XR Interaction Toolkit : 2.2.0
XR Plugin Management : 4.3.1

Meta Quest 1</pre>



<div style="height:45px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1072" style="aspect-ratio: 1904 / 1072;" width="1904" controls muted poster="https://lycos7560.com/wp-content/uploads/2023/02/제목-없음.jpg" src="https://lycos7560.com/wp-content/uploads/2023/02/녹화_2023_02_07_00_31_28_546.mp4"></video></figure>



<div style="height:48px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1126" height="563" src="https://lycos7560.com/wp-content/uploads/2023/02/image-37.png" alt="" class="wp-image-6051" srcset="https://lycos7560.com/wp-content/uploads/2023/02/image-37.png 1126w, https://lycos7560.com/wp-content/uploads/2023/02/image-37-300x150.png 300w, https://lycos7560.com/wp-content/uploads/2023/02/image-37-768x384.png 768w" sizes="(max-width: 1126px) 100vw, 1126px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1632" height="832" src="https://lycos7560.com/wp-content/uploads/2023/02/image-38.png" alt="" class="wp-image-6054" srcset="https://lycos7560.com/wp-content/uploads/2023/02/image-38.png 1632w, https://lycos7560.com/wp-content/uploads/2023/02/image-38-300x153.png 300w, https://lycos7560.com/wp-content/uploads/2023/02/image-38-768x392.png 768w, https://lycos7560.com/wp-content/uploads/2023/02/image-38-1536x783.png 1536w" sizes="(max-width: 1632px) 100vw, 1632px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading">Hand.cs</h3>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="false" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR;

public class Hand : MonoBehaviour
{
    public InputDeviceCharacteristics targetDeiveCharacteristics;

    public InputDevice targetDevice;

    [SerializeField]
    private Animator handAnimator;


    private void Start()
    {
        InitializeHand();
    }

    private void InitializeHand()
    {
        List&lt;InputDevice> devices = new ();

        InputDevices.GetDevicesWithCharacteristics(targetDeiveCharacteristics, devices);

        if (devices.Count > 0) {
            targetDevice = devices[0];
            handAnimator = this.gameObject.GetComponent&lt;Animator>();
        }
    }



    private void Update()
    {
        if (!targetDevice.isValid) InitializeHand();
        else UpdateHand();
    }

    private void UpdateHand()
    {
        if (targetDevice.TryGetFeatureValue(CommonUsages.trigger, out float triggerValue)) {
            handAnimator.SetFloat("Trigger", triggerValue);
        }
        else {
            handAnimator.SetFloat("Trigger", 0);
        }

        
        if (targetDevice.TryGetFeatureValue(CommonUsages.grip, out float gripValue))
        {
            handAnimator.SetFloat("Grip", gripValue);
        }
        else
        {
            handAnimator.SetFloat("Grip", 0);
        }
    }
}
</pre>



<div style="height:68px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><a href="https://www.youtube.com/watch?v=qQqNQ4y-cU8" target="_blank" rel="noreferrer noopener">https://www.youtube.com/watch?v=qQqNQ4y-cU8</a> &lt;- 참고 자료 </p>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/unity-input-system-and-hand-animation/6045/">Unity / Input System and Hand Animation</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/unity-vr/unity-input-system-and-hand-animation/6045/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://lycos7560.com/wp-content/uploads/2023/02/녹화_2023_02_07_00_31_28_546.mp4" length="13251806" type="video/mp4" />

			</item>
		<item>
		<title>XR Grab Interactable 속성 정리 (XR Interaction Toolkit)</title>
		<link>https://lycos7560.com/unity/xr-grab-interactable-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4877/</link>
					<comments>https://lycos7560.com/unity/xr-grab-interactable-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4877/#respond</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Wed, 18 Jan 2023 05:07:15 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[Action-based]]></category>
		<category><![CDATA[Device-based]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[Grab]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Interactor]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Properties]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[Ray]]></category>
		<category><![CDATA[study]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR Grab Interactable]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[XR Ray Interactor]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[공부]]></category>
		<category><![CDATA[속성]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=4877</guid>

					<description><![CDATA[<p>XR Interaction Toolkit의 XR Grab Interactable 속성을 정리한 글입니다.</p>
<p>The post <a href="https://lycos7560.com/unity/xr-grab-interactable-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4877/">XR Grab Interactable 속성 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Unity Version</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">Unity Version : 2021.3.5f1
</pre>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="737" height="236" src="https://lycos7560.com/wp-content/uploads/image-983.png" alt="" class="wp-image-4720" srcset="https://lycos7560.com/wp-content/uploads/image-983.png 737w, https://lycos7560.com/wp-content/uploads/image-983-300x96.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></figure>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="739" height="152" src="https://lycos7560.com/wp-content/uploads/image-984.png" alt="" class="wp-image-4721" srcset="https://lycos7560.com/wp-content/uploads/image-984.png 739w, https://lycos7560.com/wp-content/uploads/image-984-300x62.png 300w" sizes="(max-width: 739px) 100vw, 739px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Grab Interactable</h2>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.2/manual/xr-grab-interactable.html" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.2/manual/xr-grab-interactable.html</a></p>



<div style="height:38px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Interactable component that allows for basic grab functionality. </p>



<p>기본적인 그랩 기능을 가능하게 해주는 &#8216;상호 작용 가능한 컴포넌트&#8217;.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">When this behavior is selected (grabbed) by an Interactor, this behavior will follow it around and inherit velocity when released.</p>



<p>Interactor가 이 동작을 선택(잡으면)하면 이 동작은 주변을 따라다니며 놓을 때 속도를 상속합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-992.png" alt="" class="wp-image-4878" width="957" height="1046" srcset="https://lycos7560.com/wp-content/uploads/image-992.png 655w, https://lycos7560.com/wp-content/uploads/image-992-274x300.png 274w" sizes="(max-width: 957px) 100vw, 957px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Grab Interactable <strong>Property</strong></h2>



<div style="height:27px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table has-medium-font-size"><table><thead><tr><th><strong>Property</strong></th><th><strong>Description</strong></th></tr></thead><tbody><tr><td><strong>Interaction Manager</strong></td><td>The <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-interaction-manager.html" target="_blank" rel="noreferrer noopener">XR InteractionManager</a> that this Interactor will communicate with (will find one if <strong>None</strong>).<br><br>이 Interactor가 통신 할 XR InteractionManager (None 인 경우 XR InteractionManager)를 찾습니다.</td></tr><tr><td><strong>Interaction Layer Mask</strong></td><td>Allows interaction with Interactables whose <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a> overlaps with any Layer in this Interaction Layer Mask.<br><br><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a>가 이 <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a> 마스크의 모든 Layer와 겹치는 상호작용 객체와의 상호작용을 허용합니다.</td></tr><tr><td><strong>Colliders</strong></td><td>Colliders to use for interaction with this Interactable (if empty, will use any child Colliders).<br><br>&#8216;Colliders&#8217;는 이 &#8216;Interactable&#8217;과의 상호 작용을 위해 사용됩니다 (비어 있으면 모든 하위 Colliders를 사용합니다).</td></tr><tr><td><strong>Distance Calculation Mode</strong></td><td>Specifies how distance is calculated to Interactors, from fastest to most accurate. <br><br>가장 빠른 것부터 가장 정확한 것까지 Interactors까지의 거리를 계산하는 방법을 지정합니다.<br><br>If using Mesh Colliders, Collider Volume only works if the mesh is convex.<br><br>메쉬 Collider를 사용하는 경우 Collider 볼륨은 메쉬가 볼록한 경우에만 작동합니다.</td></tr><tr><td> Transform Position</td><td>Calculates the distance using the Interactable&#8217;s transform position.<br><br>Interactable의 변환 위치를 사용하여 거리를 계산합니다. <br><br>This option has low performance cost, but it may have low distance calculation accuracy for some objects.<br><br>이 옵션은 성능 비용이 낮지만 일부 개체에 대한 거리 계산 정확도가 낮을 ​​수 있습니다.</td></tr><tr><td> Collider Position</td><td>Calculates the distance using the Interactable&#8217;s Colliders list using the shortest distance to each. <br><br>각각의 최단 거리를 사용하여 Interactable의 Colliders 목록을 사용하여 거리를 계산합니다. <br><br>This option has moderate performance cost and should have moderate distance calculation accuracy for most objects.<br><br>이 옵션은 성능 비용이 적당하며 대부분의 개체에 대해 중간 정도의 거리 계산 정확도를 가져야 합니다.</td></tr><tr><td> Collider Volume</td><td>Calculates the distance using the Interactable&#8217;s Colliders list using the shortest distance to the closest point of each <br><br>(either on the surface or inside the Collider).<br><br>Interactable의 충돌체 목록을 사용하여 각각의 가장 가까운 지점(표면 또는 충돌체 내부)까지의 <br><br>최단 거리를 사용하여 거리를 계산합니다. <br><br>This option has high performance cost but high distance calculation accuracy.<br><br>이 옵션은 성능 비용이 높지만 거리 계산 정확도가 높습니다.</td></tr><tr><td><strong>Custom Reticle</strong></td><td>The reticle that appears at the end of the line when valid.<br><br>유효한 경우 줄 끝에 나타나는 레티클(십자선)입니다.</td></tr><tr><td><strong>Select Mode</strong></td><td>Indicates the selection policy of an Interactable. <br><br>Interactable의 선택 정책을 나타냅니다. <br><br>This controls how many Interactors can select this Interactable.<br><br>이 Interactable을 선택할 수 있는 Interactor 수를 제어합니다.<br><br>The value is only read by the Interaction Manager when a selection attempt is made, <br><br>so changing this value from <strong>Multiple</strong> to <strong>Single</strong> will not cause selections to be exited.<br><br>Interaction Manager는 선택을 시도할 때만 값을 읽으므로 이 값을 <strong>다중</strong> 에서 <strong>단일</strong> 로 변경해 도 선택이 종료되지 않습니다.</td></tr><tr><td> Single</td><td>Set <strong>Select Mode</strong> to <strong>Single</strong> to prevent additional simultaneous selections from more than one Interactor at a time.<br><br><strong>선택 모드</strong> 를 <strong>단일</strong> 로 설정 하여 한 번에 둘 이상의 Interactor에서 동시에 추가로 선택하는 것을 방지합니다.</td></tr><tr><td> Multiple</td><td>Set <strong>Select Mode</strong> to <strong>Multiple</strong> to allow simultaneous selections on the Interactable from multiple Interactors.<br><br>여러 Interactor에서 Interactable에 대한 동시 선택을 허용 하려면 <strong>Select Mode</strong> 를 <strong>Multiple</strong> 로 설정 하십시오.</td></tr><tr><td><strong>Movement Type</strong></td><td>Specifies how this object moves when selected, either through setting the velocity of the <code>Rigidbody</code>, <br><br>moving the kinematic <code>Rigidbody</code> during Fixed Update, or by directly updating the <code>Transform</code> each frame.<br><br>Rigidbody의 속도를 설정하거나, Fixed Update 중에 &#8216;Kinematic Rigidbody&#8217;를 이동하거나, <br><br>각 프레임을 직접 업데이트하여 이 개체가 선택될 때 이동하는 방법을 지정합니다.</td></tr><tr><td> Velocity Tracking</td><td>Set <strong>Movement Type</strong> to Velocity Tracking to move the Interactable object by setting the velocity and angular velocity of the Rigidbody. <br><br><strong>Movement Type</strong>을 속도 추적으로 설정하여 Rigidbody의 속도 및 각속도를 설정하여 Interactable 객체를 이동합니다.<br><br>Use this if you don&#8217;t want the object to be able to move through other Colliders without a Rigidbody as it follows the Interactor, <br><br>객체가 Interactor를 따라 가면서 Rigidbody없이 다른 Colliders를 통과 할 수 없도록 하려면 이를 사용하십시오. <br><br>however with the tradeoff that it can appear to lag behind and not move as smoothly as Instantaneous.<br><br>그러나 Instantaneous만큼 부드럽게 움직이지 않고 뒤쳐져 있는 것처럼 보일 수 있습니다.</td></tr><tr><td> Kinematic</td><td>Set <strong>Movement Type</strong> to Kinematic to move the Interactable object by moving the kinematic Rigidbody towards the target position and orientation. <br><br><strong>Movement Type</strong>을 Kinematic으로 설정하여 Kinematic Rigidbody를 목표 위치 및 방향으로 이동하여 상호 작용 가능한 객체를 이동합니다.<br><br>Use this if you want to keep the visual representation synchronized to match its Physics state, <br><br>and if you want to allow the object to be able to move through other Colliders without a Rigidbody as it follows the Interactor.<br><br>물리적 상태와 일치하도록 시각적 표현을 동기화하고 객체가 Interactor를 따르는 것처럼 <br><br>Rigidbody없이 다른 Colliders를 통해 이동할 수 있도록 하려면 이를 사용하십시오.</td></tr><tr><td> Instantaneous</td><td>Set <strong>Movement Type</strong> to Instantaneous to move the Interactable object by setting the position and rotation of the Transform every frame. <br><br>모든 프레임에서 변환의 위치와 회전을 설정하여 상호 작용 가능한 객체를 이동하려면 <strong>Movement Type</strong>을 Instantaneous으로 설정합니다.<br><br>Use this if you want the visual representation to be updated each frame, minimizing latency, <br><br>however with the tradeoff that it will be able to move through other Colliders without a Rigidbody as it follows the Interactor.<br><br>시각적 표현을 각 프레임에 업데이트하여 대기 시간을 최소화하려면이를 사용하십시오. <br><br>그러나 Interactor를 따라 가면서 Rigidbody 없이 다른 Colliders를 통과할 수 있는 절충안이 있습니다.</td></tr><tr><td><strong>Retain Transform Parent</strong></td><td>Enable to have Unity set the parent of this object back to its original parent this object was a child of after this object is dropped.<br><br>Unity가 이 개체의 부모를 이 개체가 삭제된 후 이 개체의 자식이었던 원래 부모로 다시 설정하도록 활성화합니다.</td></tr><tr><td><strong>Track Position</strong></td><td>Enable to have this object follow the position of the Interactor when selected.<br><br>선택 시 이 개체가 Interactor의 위치를 ​​따르도록 활성화합니다.</td></tr><tr><td><strong>Smooth Position</strong></td><td>Enable to have Unity apply smoothing while following the position of the Interactor when selected.<br><br>선택 시 인터랙터의 위치를 ​​따라가는 동안 Unity가 smoothing을 적용하도록 활성화합니다.</td></tr><tr><td><strong>Smooth Position Amount</strong></td><td>Scale factor for how much smoothing is applied while following the position of the Interactor when selected. <br><br>선택 시 Interactor의 위치를 ​​따라가는 동안 smoothing이 얼마나 적용되는지에 대한 배율 인수입니다. <br><br>The larger the value, the closer this object will remain to the position of the Interactor.<br><br>값이 클수록 이 개체는 Interactor의 위치에 더 가깝게 유지됩니다.</td></tr><tr><td><strong>Tighten Position</strong></td><td>Reduces the maximum follow position difference when using smoothing.<br><br>smoothing 을 사용할 때 최대 follow position 차이를 줄입니다.<br><br>Fractional amount of how close the smoothed position should remain to the position of the Interactor when using smoothing. <br><br>smoothing을 사용할 때 smoothing된 위치가 Interactor의 위치에 얼마나 가깝게 유지되어야 하는 지에 대한 분수 양 입니다. <br><br>The value ranges from 0 meaning no bias in the smoothed follow distance, to 1 meaning effectively no smoothing at all.<br><br>값의 범위는 smoothing 된 추적 거리에 편향이 없음을 의미하는 0부터 / 사실상 smoothing이 전혀 없음을 의미하는 1까지입니다.</td></tr><tr><td><strong>Velocity Damping</strong></td><td>Scale factor of how much to dampen the existing velocity when tracking the position of the Interactor. <br><br>Interactor의 위치를 ​​추적할 때 기존 속도를 얼마나 감쇠할지에 대한 배율 인수입니다. <br><br>The smaller the value, the longer it takes for the velocity to decay.<br><br>값이 작을수록 속도가 감소하는 데 더 오래 걸립니다. <br><br>Only applies when <strong>Movement Type</strong> is in Velocity Tracking mode.<br><br><strong>Movement Type</strong> 이 Velocity Tracking 모드인 경우에만 적용됩니다.<br></td></tr><tr><td><strong>Velocity Scale</strong></td><td>Scale factor Unity applies to the tracked velocity while updating the <code>Rigidbody</code> when tracking the position of the Interactor.<br><br>Scale factor Unity는 Interactor의 위치를 추적할 때 Rigidbody를 업데이트하는 동안 추적된 속도에 적용됩니다.<br><br>Only applies when <strong>Movement Type</strong> is in Velocity Tracking mode.<br><br><strong>Movement Type</strong> 이 Velocity Tracking 모드인 경우에만 적용됩니다.</td></tr><tr><td><strong>Track Rotation</strong></td><td>Enable to have this object follow the rotation of the Interactor when selected.<br><br>선택 시 이 개체가 Interactor의 회전을 따르도록 하려면 활성화합니다.</td></tr><tr><td><strong>Smooth Rotation</strong></td><td>Apply smoothing while following the rotation of the Interactor when selected.<br><br>선택한 경우 Interactor의 회전을 따라 smoothing을 적용합니다.</td></tr><tr><td><strong>Smooth Rotation Amount</strong></td><td>Scale factor for how much smoothing is applied while following the rotation of the Interactor when selected. <br><br>선택한 경우 Interactor의 회전을 따라가는 동안 얼마나 많은 smoothing이 적용되는지에 대한 배율 인수입니다. <br><br>The larger the value, the closer this object will remain to the rotation of the Interactor.<br><br>값이 클수록 이 객체는 Interactor의 회전에 더 가깝게 유지됩니다.</td></tr><tr><td><strong>Tighten Rotation</strong></td><td>Reduces the maximum follow rotation difference when using smoothing.<br><br>smoothing을 사용할 때 maximum follow rotation 차이를 줄입니다.<br><br>Fractional amount of how close the smoothed rotation should remain to the rotation of the Interactor when using smoothing. <br><br>smoothing을 사용할 때 smoothing된 회전이 Interactor의 회전에 얼마나 근접하게 유지되어야 하는 지에 대한 분수 양입니다. <br><br>The value ranges from 0 meaning no bias in the smoothed follow rotation, to 1 meaning effectively no smoothing at all.<br><br>값의 범위는 0(매끄러운 후속 회전에 편향 없음)에서 1(효과적으로 전혀 매끄럽지 않음)까지 입니다.</td></tr><tr><td><strong>Angular Velocity Damping</strong></td><td>Scale factor of how much Unity dampens the existing angular velocity when tracking the rotation of the Interactor. <br><br>Interactor의 회전을 추적할 때 Unity가 기존 각속도를 감쇠시키는 정도의 배율입니다. <br><br>The smaller the value, the longer it takes for the angular velocity to decay.<br><br>값이 작을수록 각속도가 감소하는 데 더 오래 걸립니다.<br><br>Only applies when <strong>Movement Type</strong> is in <em>VelocityTracking</em> mode.<br><br><strong>Movement Type</strong> 이 Velocity Tracking 모드인 경우에만 적용됩니다.</td></tr><tr><td><strong>Angular Velocity Scale</strong></td><td>Scale factor Unity applies to the tracked angular velocity while updating the <code>Rigidbody</code> when tracking the rotation of the Interactor.<br><br>Scale Factor Unity는 Interactor의 회전을 추적할 때 Rigidbody를 업데이트하면서 추적된 각속도에 적용됩니다.<br><br>Only applies when <strong>Movement Type</strong> is in Velocity Tracking mode.<br><br><strong>Movement Type</strong> 이 Velocity Tracking 모드인 경우에만 적용됩니다.</td></tr><tr><td><strong>Throw On Detach</strong></td><td>Enable to have this object inherit the velocity of the Interactor when released. <br><br>해제 시 이 객체가 Interactor의 속도를 상속하도록 설정할 수 있습니다.<br><br>This is not supported for a kinematic Rigidbody.<br><br>이는 운동학적 Rigidbody에 대해 지원되지 않습니다.</td></tr><tr><td><strong>Throw Smoothing Duration</strong></td><td>Time period to average thrown velocity over.<br><br>평균 투척 속도가 초과되는 시간입니다.</td></tr><tr><td><strong>Throw Smoothing Curve</strong></td><td>The curve to use to weight thrown velocity smoothing (most recent frames to the right).<br><br>던지는 속도 smoothing(오른쪽의 가장 최근 프레임)에 가중치를 적용하는 데 사용할 곡선.</td></tr><tr><td><strong>Throw Velocity Scale</strong></td><td>Scale factor Unity applies to this object&#8217;s velocity inherited from the Interactor when released.<br><br>배율 계수 Unity는 놓을 때 Interactor에서 상속된 이 개체의 속도에 적용됩니다.</td></tr><tr><td><strong>Throw Angular Velocity Scale</strong></td><td>Scale factor Unity applies to this object&#8217;s angular velocity inherited from the Interactor when released.<br><br>Scale factor Unity는 Interactor를 놓았을 때 상속된 이 객체의 각속도에 적용됩니다.</td></tr><tr><td><strong>Force Gravity On Detach</strong></td><td>Forces this object to have gravity when released (will still use pre-grab value if this is <code>false</code> / unchecked).<br><br>이 객체가 해제 될 때 중력을 갖도록 강제합니다 (이것이 false / unchecked 인 경우 여전히 잡기 전 값을 사용합니다).</td></tr><tr><td><strong>Attach Transform</strong></td><td>The attachment point Unity uses on this Interactable (will use this object&#8217;s position if none set).<br><br>이 Interactable에서 Unity가 사용하는 연결 지점입니다(설정되지 않은 경우 이 객체의 위치를 ​​사용함).</td></tr><tr><td><strong>Use Dynamic Attach</strong></td><td>Enable to make the effective attachment point based on the pose of the Interactor when the selection is made.<br><br>선택 시 Interactor의 포즈를 기반으로 효과적인 첨부 지점을 만들 수 있습니다.</td></tr><tr><td><strong>Match Position</strong></td><td>Match the position of the Interactor&#8217;s attachment point when initializing the grab. <br><br>잡기를 초기화할 때 Interactor의 연결 지점 위치를 일치시킵니다. <br><br>This will override the position of Attach Transform.<br><br>이는 Attach Transform의 위치를 ​​재정의합니다.</td></tr><tr><td><strong>Match Rotation</strong></td><td>Match the rotation of the Interactor&#8217;s attachment point when initializing the grab. <br><br>잡기를 초기화할 때 Interactor의 연결 지점 회전을 일치시킵니다. <br><br>This will override the rotation of Attach Transform.<br><br>이는 Attach Transform의 회전을 재정의합니다.</td></tr><tr><td><strong>Snap To Collider Volume</strong></td><td>Adjust the dynamic attachment point to keep it on or inside the Colliders that make up this object.<br><br>동적 연결 지점을 조정하여 이 개체를 구성하는 Colliders 또는 내부에 유지합니다.</td></tr><tr><td><strong>Attach Ease In Time</strong></td><td>Time in seconds Unity eases in the attach when selected (a value of 0 indicates no easing).<br><br>시간(초) Unity는 선택 시 연결을 완화합니다 (0 값은 완화 없음을 나타냄).</td></tr><tr><td><strong>Attach Point Compatibility Mode</strong></td><td>Controls the method used when calculating the target position of the object. <br><br>객체의 목표 위치를 계산할 때 사용되는 방법을 제어합니다.<br><br>Use <code>AttachPointCompatibilityMode.</code><br><br>AttachPoint CompatibilityMode를 사용하십시오.<br><br><code>Default</code> for consistent attach points between all <code>XRBaseInteractable.MovementType</code> values. <br><br>모든 XRBaseInteractable .MovementType 값 사이의 일관된 연결 지점에 대한 기본값 입니다.<br><br>Marked for deprecation, this property will be removed in a future version.<br><br>사용 중지로 표시된 이 속성은 이후 버전에서 제거됩니다.<br><br>This is a backwards compatibility option in order to keep the old, incorrect method of calculating the attach point. <br><br>부착 점을 계산하는 오래되고 잘못된 방법을 유지하기 위해 이전 버전과의 호환성 옵션입니다.<br><br>Projects that already accounted for the difference can use the Legacy option to maintain the same attach positioning <br><br>from older versions without needing to modify the <strong>Attach Transform</strong> position.<br><br>차이를 이미 설명한 프로젝트는 Legacy 옵션을 사용하여 Attach Transform 위치를 수정할 필요없이 <br><br>이전 버전과 동일한 부착 위치를 유지할 수 있습니다.<br></td></tr><tr><td><strong>Add Default Grab Transformers</strong></td><td>Whether Unity will add the default set of grab transformers if either the Single or Multiple Grab Transformers lists are empty.<br><br>Single 또는 Multiple Grab Transformers 목록이 비어 있는 경우 Unity가 기본 Grab 변환기 세트를 추가할지 여부입니다.</td></tr><tr><td><strong>Starting Multiple Grab Transformers</strong></td><td>The grab transformers that this Interactable automatically links at startup (optional, may be empty). <br><br>시작 시 이 Interactable이 자동으로 링크하는 그랩 변환기입니다(선택 사항, 비어 있을 수 있음). <br><br>Used for multi-interactor selection. After startup, this property is not used. <br><br>multi-interactor 선택에 사용됩니다. 시작 후에는 이 속성이 사용되지 않습니다. <br><br>Useful when there is more than one Grab Transformer that should be processed and you need to specify the order.<br><br>처리해야 하는 Grab Transformer가 둘 이상 있고 순서를 지정해야 하는 경우에 유용합니다.</td></tr><tr><td><strong>Starting Single Grab Transformers</strong></td><td>The grab transformers that this Interactable automatically links at startup (optional, may be empty). <br><br>시작 시 이 Interactable이 자동으로 링크하는 그랩 변환기입니다(선택 사항, 비어 있을 수 있음).<br><br>Used for single-interactor selection. After startup, this property is not used. <br><br>single-interactor 선택에 사용됩니다. 시작 후에는 이 속성이 사용되지 않습니다.<br><br>Useful when there is more than one Grab Transformer that should be processed and you need to specify the order.<br><br>처리해야 하는 Grab Transformer가 둘 이상 있고 순서를 지정해야 하는 경우에 유용합니다.</td></tr><tr><td><strong>Multiple Grab Transformers</strong></td><td>(Play mode only) The grab transformers used when there are multiple interactors selecting this object.<br><br>(재생 모드 전용) 이 개체를 선택하는 multiple interactors가 있을 때 사용되는 잡기 변환기입니다.</td></tr><tr><td><strong>Single Grab Transformers</strong></td><td>(Play mode only) The grab transformers used when there is a single interactor selecting this object.<br><br>(재생 모드 전용) 이 개체를 선택하는 single interactor 가 있을 때 사용되는 잡기 변환기입니다.</td></tr><tr><td><strong>Interactable Events</strong></td><td>See the <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interactable-events.html" target="_blank" rel="noreferrer noopener">Interactable Events</a> page.<br><br>참조 -> <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.2/manual/interactable-events.html" target="_blank" rel="noreferrer noopener">상호작용 가능한 이벤트</a>페이지.<br></td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" style="margin-top:var(--wp--preset--spacing--80);margin-bottom:var(--wp--preset--spacing--80)"/>



<h2 class="wp-block-heading">Grab transformers</h2>



<div style="height:32px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This XR Grab Interactable behavior is responsible for applying the position, rotation, and local scale calculated by one or more <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.2/api/UnityEngine.XR.Interaction.Toolkit.Transformers.IXRGrabTransformer.html">IXRGrabTransformer</a> implementations. </p>



<p>이 XR Grab Interactable 동작은 하나 이상의 <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.2/api/UnityEngine.XR.Interaction.Toolkit.Transformers.IXRGrabTransformer.html" target="_blank" rel="noreferrer noopener">IXRGrabTransformer</a> 구현에서 계산된 위치, 회전 및 로컬 배율 적용을 담당합니다. </p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">A default set of grab transformers are automatically added by Unity (when <strong>Add Default Grab Transformers</strong> is enabled), </p>



<p>기본 Grab 변환기 세트는 Unity에 의해 자동으로 추가되지만( <strong><strong>Add Default Grab Transformers</strong></strong> 가 활성화된 경우)</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">but this functionality can be disabled to manually set those used by this behavior, allowing you to customize where this component should move and rotate to.</p>



<p>이 기능을 비활성화하여 이 동작에 사용되는 변환기를 수동으로 설정하여 이 구성 요소가 이동하고 회전해야 하는 위치를 사용자 지정할 수 있습니다.</p>



<div style="height:60px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Grab transformer components can be added to the GameObject to link them with the XR Grab Interactable. </p>



<p>Grab 변환기 구성 요소를 GameObject에 추가하여 XR Grab Interactable과 연결할 수 있습니다. </p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">They can be found in the <strong>Component</strong> > <strong>XR</strong> > <strong>Transformers</strong> menu. </p>



<p><strong>Component</strong> > <strong>XR</strong> > <strong>Transformers</strong> 메뉴 에서 찾을 수 있습니다 .</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">You can then add references to those components explicitly to <strong>Starting Single Grab Transformers</strong> or <strong>Starting Multiple Grab Transformers</strong> </p>



<p class="has-medium-font-size">if you have more than one and need to specify the order in which they execute, or if you need to override which list the grab transformer is automatically added to.</p>



<p>그런 다음 <strong><strong>Starting Single Grab Transformers</strong></strong> 또는 <strong>Starting Multiple Grab Transformers</strong>에 이러한 구성 요소에 대한 참조를 명시 적으로 추가 할 수 있습니다. </p>



<p>둘 이상이 있고 실행 순서를 지정해야 하거나 grab transformer가 자동으로 추가되는 목록을 재정의 해야 하는 경우.</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/xr-grab-interactable-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4877/">XR Grab Interactable 속성 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/xr-grab-interactable-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4877/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>XR Ray Interactor 속성 정리 (XR Interaction Toolkit)</title>
		<link>https://lycos7560.com/unity/xr-ray-interactor-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4817/</link>
					<comments>https://lycos7560.com/unity/xr-ray-interactor-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4817/#respond</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Tue, 17 Jan 2023 14:39:43 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[Action-based]]></category>
		<category><![CDATA[Device-based]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Interactor]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Properties]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[Ray]]></category>
		<category><![CDATA[study]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[XR Ray Interactor]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[공부]]></category>
		<category><![CDATA[속성]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=4817</guid>

					<description><![CDATA[<p>Unity XR Ray Interactor 속성에 대하여 정리한 글입니다.  (XR Interaction Toolkit)</p>
<p>The post <a href="https://lycos7560.com/unity/xr-ray-interactor-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4817/">XR Ray Interactor 속성 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:68px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Unity Version</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">Unity Version : 2021.3.5f1
</pre>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="737" height="236" src="https://lycos7560.com/wp-content/uploads/image-983.png" alt="" class="wp-image-4720" srcset="https://lycos7560.com/wp-content/uploads/image-983.png 737w, https://lycos7560.com/wp-content/uploads/image-983-300x96.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></figure>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="739" height="152" src="https://lycos7560.com/wp-content/uploads/image-984.png" alt="" class="wp-image-4721" srcset="https://lycos7560.com/wp-content/uploads/image-984.png 739w, https://lycos7560.com/wp-content/uploads/image-984-300x62.png 300w" sizes="(max-width: 739px) 100vw, 739px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Ray Interactor</h2>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-ray-interactor.html?q=xr%20ray" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-ray-interactor.html?q=xr%20ray</a></p>



<div style="height:47px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">An Interactor component controls how a GameObject interacts with Interactable components in the scene.</p>



<p>Interactor component는 GameObject와 Scene의 Interactable components 간의 상호작용을 제어합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">There are multiple types of Interactors, one of which is an XR Ray Interactor, a component that uses ray casting in order to find valid Interactable objects in the scene.</p>



<p>Interactor 에는 여러 종류가 있습니다. 그 중의 1 개는 XR Ray Interactor 로, 이 component는 Scene 내에서 조작할 수 있는 유효한 Interactable object를 찾아내기 위해서 ray casting를 사용합니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">To read input from an XR input device, the Interactor requires an XR Controller component.</p>



<p>XR input device에서 입력을 읽으려면 the Interactor 에 XR Controller 구성 요소가 필요합니다.</p>



<div style="height:68px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-989.png" alt="" class="wp-image-4819" width="632" height="2811"/></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Ray Interactor 속성</h2>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-ray-interactor.html?q=xr%20ray" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-ray-interactor.html?q=xr%20ray</a></p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Interactor used for interacting with Interactables at a distance. </p>



<p>Interactor는 먼 거리에서 Interactables와 상호 작용할 때 사용됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This is handled via ray casts that update the current set of valid targets for this interactor.</p>



<p>이것은 이 &#8216;interactor&#8217;에 대한 유효한 대상의 현재 세트를 업데이트하는 광선 캐스트를 통해 처리됩니다.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table" style="font-size:18px"><table><thead><tr><th><strong>Property</strong></th><th><strong>Description</strong></th></tr></thead><tbody><tr><td><strong>Interaction Manager</strong></td><td>The <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-interaction-manager.html" target="_blank" rel="noreferrer noopener">XR InteractionManager</a> that this Interactor will communicate with (will find one if <strong>None</strong>).<br><br>이 Interactor가 통신 할 XR InteractionManager (None 인 경우 XR InteractionManager)를 찾습니다.<br></td></tr><tr><td><strong>Interaction Layer Mask</strong></td><td>Allows interaction with Interactables whose <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a> overlaps with any Layer in this Interaction Layer Mask.<br><br><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a>가 이 <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interaction-layers.html" target="_blank" rel="noreferrer noopener">Interaction Layer Mask</a> 마스크의 모든 Layer와 겹치는 상호작용 객체와의 상호작용을 허용합니다.<br></td></tr><tr><td><strong>Enable Interaction with UI GameObjects</strong></td><td>Enable to allow this Interactor to affect UI.<br><br>이 Interactor 가 UI에 영향을 미칠 수 있습니다.</td></tr><tr><td><strong>Force Grab</strong></td><td>Force grab moves the object to your hand rather than interacting with it at a distance.<br><br>&#8216;Force grab&#8217;은 물체를 멀리서 상호 작용하기보다는 손으로 움직입니다.</td></tr><tr><td><strong>Anchor Control</strong></td><td>Allows the user to move the attach anchor point using the joystick.<br><br>사용자가 &#8216;joystick&#8217;을 사용하여 &#8216;attach anchor point&#8217;를 이동할 수 있습니다.</td></tr><tr><td><strong>Translate Speed</strong></td><td>Speed that the anchor is translated. Only used and displayed when <strong>Anchor Control</strong> is enabled.<br><br>앵커가 변환되는 속도. &#8216;<strong>Anchor Control</strong>&#8216;이 활성화된 경우에만 사용되고 표시됩니다.</td></tr><tr><td><strong>Rotate Reference Frame</strong></td><td>The optional reference frame to define the up axis when rotating the attach anchor point. <br><br>&#8216;attach anchor point&#8217;를 회전할 때 위쪽 축을 정의하는 선택적 참조 프레임입니다.<br><br>When not set, rotates about the local up axis of the attach transform. Only used and displayed when <strong>Anchor Control</strong> is enabled.<br><br>설정되지 않은 경우 부착 변환의 로컬 위쪽 축을 중심으로 회전합니다. &#8216;<strong>Anchor Control</strong>&#8216;이 활성화된 경우에만 사용되고 표시됩니다.</td></tr><tr><td><strong>Rotation Mode</strong></td><td>Specifies how the anchor rotation is controlled. Only used and displayed when <strong>Anchor Control</strong> is enabled.<br><br>앵커 회전 제어 방법을 지정합니다. &#8216;<strong>Anchor Control</strong>&#8216;가 활성화된 경우에만 사용 및 표시됩니다.</td></tr><tr><td> Rotate Over Time</td><td>Set <strong>Rotation Mode</strong> to <strong>Rotate Over Time</strong> to control anchor rotation over time while rotation input is active.<br><br>&#8216;<strong>Rotation Mode</strong>&#8216;를 &#8216;<strong>Rotate Over Time</strong>&#8216;으로 설정하여 회전 입력이 활성화된 상태에서 시간 경과에 따른 앵커 회전을 제어합니다.</td></tr><tr><td> Match Direction</td><td>Set <strong>Rotation Mode</strong> to <strong>Match Direction</strong> to match the anchor rotation to the direction of the 2-dimensional rotation input.<br><br>앵커 회전을 2차원 회전 입력 방향과 일치시키려면 &#8216;<strong>Rotation Mode</strong>&#8216;를 &#8216;<strong>Match Direction</strong>&#8216;으로 설정합니다.</td></tr><tr><td><strong>Rotate Speed</strong></td><td>Speed that the anchor is rotated. Only used and displayed when <strong>Anchor Control</strong> is enabled and <strong>Rotation Mode</strong> is set to <strong>Rotate Over Time</strong>.<br><br>앵커가 회전되는 속도입니다. &#8216;<strong>Anchor Control</strong> &#8216;이 활성화되고 &#8216;<strong>Rotation Mode</strong>&#8216;가 &#8216;<strong>Rotate Over Time</strong>&#8216;으로 설정된 경우에만 사용 및 표시됩니다.</td></tr><tr><td><strong>Attach Transform</strong></td><td>The <code>Transform</code> that is used as the attach point for Interactables.<br><br>Interactable 의 <code>Transform</code>연결 지점으로 사용되는 입니다.<br><br>Automatically instantiated and set in <code>Awake</code> if <strong>None</strong>.<br><br><strong>None</strong> 인 경우 자동으로 인스턴스화되고 <code>Awake</code> 설정됩니다.<br><br>Setting this will not automatically destroy the previous object.<br><br>이것을 설정하면 이전 object가 자동으로 삭제되지 않습니다.</td></tr><tr><td><strong>Ray Origin Transform</strong></td><td>The starting position and direction of any ray casts.<br><br>레이 캐스트의 시작 위치와 첫 번째 방향<br><br>Automatically instantiated and set in Awake if None and initialized with the pose of the &#8216;XRBaseInteractor&#8217;.<br><br><strong>None</strong> 의 경우 자동으로 인스턴스화되고 <code>Awake</code>로 설정되어 &#8216;XRBaseInteractor&#8217;의  pos로 초기화됩니다.<br><br>&#8216;attachTransform&#8217;. Setting this will not automatically destroy the previous object.</td></tr><tr><td><strong>Disable Visuals When Blocked In Group</strong></td><td>Whether to disable visuals when this Interactor is part of an <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-interaction-group.html" target="_blank" rel="noreferrer noopener">Interaction Group</a> <br><br>and is incapable of interacting due to active interaction by another Interactor in the Group.<br><br>이 Interactor가 Interaction Group의 일부이며 그룹의 다른 Interactor의 적극적인 상호 작용으로 인해 <br><br>상호 작용할 수 없는 경우 비주얼을 비활성화할지 여부.</td></tr><tr><td><strong>Line Type</strong></td><td>The type of ray cast.<br><br>레이 캐스트 유형입니다.</td></tr><tr><td> Straight Line</td><td>Set Line Type to Straight Line to perform a single ray cast into the scene with a set ray length.<br><strong><br>Line Type</strong> 을 <strong>Straight Line</strong> 으로 설정하면 장면에 대해 구성된 길이의 단일 레이 캐스트를 수행합니다.</td></tr><tr><td> Projectile Curve</td><td>Set <strong>Line Type</strong> to <strong>Projectile Curve</strong> to sample the trajectory of a projectile to generate a projectile curve.<br><br><strong>Line Type</strong> 을 <strong>Projectile Curve</strong> 로 설정하면 투사물의 궤적을 샘플링하여 포물선을 생성합니다.</td></tr><tr><td> Bezier Curve</td><td>Set <strong>Line Type</strong> to <strong>Bezier Curve</strong> to use a control point and an end point to create a quadratic Bezier curve.<br><br><strong>Line Type</strong> 을 <strong>Bezier Curve</strong> 로 설정하면 제어점과 끝점을 사용하여 2차 베지어 곡선을 만듭니다.</td></tr><tr><td> Max Raycast Distance</td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Straight Line</strong>.<br><br><strong>Line Type</strong> 이 <strong>Straight Line</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Increasing this value will make the line reach further.<br><br>이 값을 늘리면 선이 더 멀리 도달할 수 있습니다.</td></tr><tr><td><strong>Reference Frame</strong></td><td>Only used and displayed if <strong>Line Type</strong> is either <strong>Projectile Curve</strong> or <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 또는 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>The reference frame of the curve to define the ground plane and up. <br><br>원곡선의 기준 프레임으로 지면과 위를 정의합니다.<br><br>If not set at startup it will try to find the <code><mark>XR</mark>Origin.</code><br><br>시작할 때 설정하지 않으면 &#8216;XROrigin&#8217;을 찾으려고합니다.<br><br><code>Origin</code> <code>GameObject</code>, and if that does not exist it will use global up and origin by default.<br><br>&#8216;Origin GameObject&#8217;이며, 존재하지 않으면 기본적으로 global up과 origin을 사용합니다.</td></tr><tr><td><strong>Velocity</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Projectile Curve</strong>. Initial velocity of the projectile.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다. 투사물의 초속.<br><br>Increasing this value will make the curve reach further.<br><br>이 값을 늘리면 커브가 더 멀리 도달할 수 있습니다.</td></tr><tr><td><strong>Acceleration</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Projectile Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Gravity of the projectile in the reference frame.<br><br>참조 프레임 내에서 투사물에 가해지는 중력.</td></tr><tr><td><strong>Additional Ground Height</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Projectile Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Additional height below ground level that the projectile will continue to. <br><br>투사물이 계속 움직이는 지면보다 낮은 위치에서 추가 높이. <br><br>Increasing this value will make the end point drop lower in height.<br><br>이 값을 늘리면 종점 높이가 낮아집니다.</td></tr><tr><td><strong>Additional Flight Time</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Projectile Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Additional flight time after the projectile lands at the adjusted ground level. <br><br>투사물이 조정된 지면 높이에 착지한 후의 추가 체공 시간. <br><br>Increasing this value will make the end point drop lower in height.<br><br>이 값을 늘리면 종점 높이가 낮아집니다.</td></tr><tr><td><strong>Sample Frequency</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Projectile Curve</strong> or <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Projectile Curve</strong> 또는 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>The number of sample points Unity uses to approximate curved paths. <br><br>Unity가 곡선 경로를 근사하는 데 사용하는 샘플 포인트 수입니다. <br><br>Larger values produce a better quality approximate at the cost of reduced performance due to the number of <mark>ray</mark> casts.<br><br>이 값을 늘리면 근사의 질이 높아지지만, 대조적으로 레이 캐스트 수에서 파생 된 성능 저하가 발생합니다.<br><br>A value of <code>n</code> will result in <code>n - 1</code> line segments for <mark>ray</mark> casting. <br><br>값을 <code>n</code>설정하면 <code>n - 1</code>책의 레이캐스트 선분이 만들어집니다.<br><br>This property is not used when using a <strong>Line Type</strong> of <strong>Straight Line</strong> since the effective value would always be 2.<br><br><strong>Line Type</strong> 으로 <strong>Straight Line</strong> 을 사용하는 경우 유효한 값이 항상 2이므로 이 속성은 사용되지 않습니다.</td></tr><tr><td><strong>End Point Distance</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Increase this value distance to make the end of the curve further from the start point.<br><br>이 거리의 값을 늘리면 곡선의 끝이 원점에서 더 멀리 연장됩니다.</td></tr><tr><td><strong>End Point Height</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Decrease this value to make the end of the curve drop lower relative to the start point.<br><br>이 값을 줄이면 곡선의 끝이 원점에 대해 낮아집니다.</td></tr><tr><td><strong>Control Point Distance</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Increase this value to make the peak of the curve further from the start point.<br><br>이 값을 늘리면 곡선의 정점이 원점에서 멀어집니다.</td></tr><tr><td><strong>Control Point Height</strong></td><td>Only used and displayed if <strong>Line Type</strong> is <strong>Bezier Curve</strong>.<br><br><strong>Line Type</strong> 이 <strong>Bezier Curve</strong> 인 경우에만 표시되며 사용할 수 있습니다.<br><br>Increase this value to make the peak of the curve higher relative to the start point.<br><br>이 값을 올리면 곡선의 정점이 기점에 비해 높아집니다.</td></tr><tr><td><strong><mark>Ray</mark>cast Mask</strong></td><td>The layer mask used for limiting ray cast targets.<br><br>ray cast의 타겟을 제한하는 레이어 마스크.</td></tr><tr><td><strong><mark>Ray</mark>cast Trigger Interaction</strong></td><td>The type of interaction with trigger volumes via ray cast.<br><br>ray cast를 통해 트리거 볼륨을 활용하는 유형의 상호작용.</td></tr><tr><td><strong>Hit Detection Type</strong></td><td>Which type of hit detection to use for the ray cast.<br><br>ray cast에 적용할 히트 감지 유형.</td></tr><tr><td> <mark>Ray</mark>cast</td><td>Set <strong>Hit Detection Type</strong> to <strong><mark>Ray</mark>cast</strong> to use <code>Physics</code> <mark>Ray</mark>cast to detect collisions.<br><br><strong>Hit Detection Type</strong> 을 <strong><mark>Ray</mark>cast</strong> 로 설정하면 충돌 감지에<code>Physics</code> <mark>Ray</mark>cast를 사용합니다.</td></tr><tr><td> Sphere Cast</td><td>Set <strong>Hit Detection Type</strong> to <strong>Sphere Cast</strong> to use <code>Physics</code> Sphere Cast to detect collisions.<br><br><strong>Hit Detection Type</strong> 을 <strong>Sphere Cast</strong> 로 설정하면 충돌 감지에 <code>Physics</code>Sphere Cast를 사용합니다.</td></tr><tr><td><strong>Hit Closest Only</strong></td><td>Whether Unity considers only the closest Interactable as a valid target for interaction.<br><br>Unity가 가장 가까운 Interactable 만  interaction의 유효한 대상으로 간주할지 여부.<br><br>Enable this to make only the closest Interactable receive hover events. <br><br>활성화하면 가장 가까운 Interactable만 호버 이벤트를 받게 됩니다. <br><br>Otherwise, all hit Interactables will be considered valid and this Interactor will multi-hover.<br><br>활성화되어 있지 않으면 히트된 Interactables이 모두 유효한 것으로 간주되며 이 Interactor가 여러 호버를 수행합니다.</td></tr><tr><td><strong>Blend Visual Line Points</strong></td><td>Blend the line sample points Unity uses for ray casting with the current pose of the controller.<br><br>Unity가 다음에 사용하는 라인 샘플 포인트 블렌드레이컨트롤러의 현재 포즈로 캐스팅합니다.<br><br><br>Use this to make the line visual stay connected with the controller instead of lagging behind.<br><br>이를 사용하여 뒤처지는 대신 라인 비주얼이 컨트롤러와 연결된 상태를 유지하도록 합니다.<br><br><br>When the controller is configured to sample tracking input directly before rendering to reduce input latency, <br><br>the controller may be in a new position or rotation relative to the starting point of the sample curve used for ray casting.<br><br>제어기가 입력 레이턴시를 감소시키기 위해 렌더링 전에 직접 트래킹 입력을 샘플링하도록 구성되는 경우, <br><br>제어기는 광선 주조에 사용되는 샘플 곡선의 시작점에 대해 새로운 위치 또는 회전에 있을 수 있다.<br><br>A value of false will make the line visual stay at a fixed reference frame rather than bending or curving towards the end of the ray cast line.<br><br>false 값을 사용하면 선이 광선 주조 선의 끝을 향해 구부러 지거나 휘어지기보다는 고정된 참조 프레임에 시각적으로 유지됩니다.</td></tr><tr><td><strong>Select Action Trigger</strong></td><td>Choose how Unity interprets the select input action from the controller. <br><br>Unity가 컨트롤러의 선택 입력 작업을 해석하는 방법을 선택합니다. <br><br>Controls between different input styles for determining if this Interactor can select, <br><br>such as whether the button is currently pressed or just toggles the active state.<br><br>이 Interactor가 현재 버튼을 눌렀는지 또는 활성 상태를 토글하는지와 같이 <br><br>선택할 수 있는지 여부를 결정하기 위해 서로 다른 입력 스타일 사이를 제어합니다.</td></tr><tr><td><strong>Keep Selected Target Valid</strong></td><td>Whether to keep selecting an Interactable after initially selecting it even when it is no longer a valid target.<br><br>Interactable이 더 이상 유효한 대상이 아닌 경우에도 초기에 선택한 후 Interactable을 계속 선택할지 여부입니다. <br><br>Enable to make the XRInteractionManager retain the selection even if the Interactable is not contained within the list of valid targets. <br><br> <br>Interactable이 유효한 대상 목록에 포함되지 않은 경우에도 선택을 유지하려면 활성화하십시오.<br><br>Disable to make the Interaction Manager clear the selection if it isn&#8217;t within the list of valid targets. <br><br>유효한 대상 목록에 없는 경우 Interaction Manager가 선택을 취소하도록 하려면 비활성화합니다. <br><br>A common use for disabling this is for Ray Interactors used for teleportation to make the teleportation Interactable no longer selected when not currently pointing at it.<br><br>이를 비활성화하는 일반적인 용도는 다음과 같습니다.XRInteractionManager Ray teleportation을 Interactable로 만들기 위해 <br><br> teleportation에 사용되는 Interactors는 현재 가리키고 있지 않을 때 더 이상 선택되지 않습니다.</td></tr><tr><td><strong>Hide Controller On Select</strong></td><td>Controls whether this Interactor should hide the controller model on selection.<br><br>이 Interactor가 선택 시 컨트롤러 모델을 숨길지 여부를 제어합니다.</td></tr><tr><td><strong>Allow Hovered Activate</strong></td><td>Controls whether to send activate and deactivate events to interactables that this interactor is hovered over but not selected when there is no current selection. <br><br>현재 선택 항목이 없을 때 이 interactor가 호버링되지만 선택되지 않은 이벤트를 interactables에 보내고 비활성화할지 여부를 제어합니다.<br><br>By default, the interactor will only send activate and deactivate events to interactables that it&#8217;s selected.<br><br>기본적으로 인터랙터는 선택한 상호 작용 가능 항목에만 활성화 및 비활성화 이벤트를 보냅니다</td></tr><tr><td><strong>Target Track Mode</strong></td><td>Specifies how many Interactables that should be tracked in the Targets For Selection property, useful for custom feedback. <br><br>사용자 지정 피드백에 유용한 Targets For Selection 속성에서 추적해야 하는 Interactable의 수를 지정합니다. <br><br>The options are in order of best performance.<br><br>옵션은 최상의 성능 순입니다.</td></tr><tr><td><strong>Hover To Select</strong></td><td>Enable to have Interactor automatically select an Interactable after hovering over it for a period of time.<br><br>Interactor가 Interactable을 일정 시간 동안 마우스로 가리키면 자동으로 선택하도록 설정합니다.</td></tr><tr><td><strong>Hover Time To Select</strong></td><td>Number of seconds an Interactor must hover over an Interactable to select it.<br><br>Interactor가 Interactable을 선택하기 위해 마우스를 올려야 하는 시간(초)입니다.</td></tr><tr><td><strong>Auto Deselect</strong></td><td>Enable to have Interactor automatically deselect an Interactable after selecting it for a period of time.<br><br>Interactor가 Interactable을 일정 시간 동안 선택한 후 자동으로 선택 취소하도록 활성화합니다.</td></tr><tr><td><strong>Time To Auto Deselect</strong></td><td>Number of seconds an Interactor must select an Interactable before it is automatically deselected when <strong>Auto Deselect</strong> is true.<br><br><strong>Auto Deselect</strong> 가 true 인 경우 Interactor가 Interactable을 선택해야 자동으로 선택 취소되는 시간(초 )입니다.</td></tr><tr><td><strong>Starting Selected Interactable</strong></td><td>The Interactable that this Interactor automatically selects at startup (optional, may be <strong>None</strong>).<br><br>시작 시 이 Interactor가 자동으로 선택하는 Interactable입니다(선택 사항, <strong>None</strong> 일 수 있음 ).</td></tr><tr><td><strong>Audio Events</strong></td><td>These tie into the same selection and hover events as the <strong>Interactor Events</strong> further below <br><br>이들은 이 표의 맨 아래에 나열된 <strong>Interactor Events</strong> 와 동일한 선택 및 호버 이벤트에 연결됩니다. <br><br>&#8211; these audio events provide a convenient way to play specified audio clips for any of those events you want.<br><br>다음 오디오 이벤트는 해당 이벤트에 맞게 지정된 오디오 클립을 재생하는 데 유용합니다.</td></tr><tr><td> On Select Entered</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor begins selecting an Interactable.<br><br>사용하도록 설정하면 Interactor가 Interactable 선택을 시작할 때 재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Select Exited</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor successfully exits selection of an Interactable.<br><br>사용하도록 설정하면 Interactor가 Interactable 선택을 성공적으로 완료하면 재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Select Canceled</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor cancels selection of an Interactable.<br><br>사용하도록 설정하면 Interactor가 Interactable 선택을 취소할 때 재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Entered</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor begins hovering over an Interactable.<br><br>활성화된 경우, Unity 편집기는 이 Interactor가 Interactable 위를 맴돌기 시작할 때 재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Exited</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor successfully ends hovering over an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 성공적으로 Interactable 위에서 호버를 성공적으로 종료할 때 <br>재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Canceled</td><td>If enabled, the Unity editor will display UI for supplying the audio clip to play when this Interactor cancels hovering over an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable에서 호버를 취소할 때 재생할 오디오 클립을 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> Allow Hover Audio While Selecting</td><td>Whether to allow playing audio from hover events if the hovered Interactable is currently selected by this Interactor.<br><br>현재 이  Interactor에서 호버된 Interactable을 선택한 경우 호버 이벤트에서 오디오 재생을 허용할지 여부입니다. <br><br>This is enabled by default.<br><br>기본적으로 이 옵션을 사용할 수 있습니다.</td></tr><tr><td><strong>Haptic Events</strong></td><td>These tie into the same selection and hover events as the <strong>Interactor Events</strong> further below <br><br>이것들은 아래의 Interactor Events와 동일한 선택 및 호버 이벤트와 연결됩니다.<br><br>&#8211; these haptic events provide a convenient way to provide haptic feedback for any of those events you want.<br><br>&#8211; 이러한 햅틱 이벤트는 원하는 이벤트에 대해 햅틱 피드백을 제공하는 편리한 방법을 제공합니다.</td></tr><tr><td> On Select Entered</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor begins selecting an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable을 선택하기 시작할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위) 및 강도(정규화)를  나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Select Exited</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor successfully exits selection of an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable 선택을 성공적으로 종료할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위) 및 강도(정규화)를 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Select Canceled</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor cancels selection of an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable 선택을 취소할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위) 및 강도(정규화)를 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Entered</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor begins hovering over an Interactable.<br><br>활성화된 경우, Unity 편집기는 이 Interactor가 Interactable 위를 맴돌기 시작할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위)과 강도(정규화)를 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Exited</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor successfully ends hovering over an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable을 성공적으로 호버링할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위) 및 강도(정규화)를 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> On Hover Canceled</td><td>If enabled, the Unity editor will display UI for supplying the duration (in seconds) <br><br>and intensity (normalized) to play in haptic feedback when this Interactor cancels hovering over an Interactable.<br><br>활성화된 경우 Unity 편집기는 이 Interactor가 Interactable을 통해 호버링을 취소할 때 햅틱 피드백으로 <br><br>재생할 지속 시간(초 단위) 및 강도(정규화)를 나타내는 UI가 Unity 편집기에 표시됩니다.</td></tr><tr><td> Allow Hover Haptics While Selecting</td><td>Whether to allow playing haptics from hover events if the hovered Interactable is currently selected by this Interactor. <br><br>현재 이  Interactor에서 호버 Interactable을 선택한 경우 호버 이벤트에서 햅틱을 재생할 수 있는지 여부를 지정합니다.<br><br>This is enabled by default.<br><br>이것은 기본적으로 활성화되어 있습니다.</td></tr><tr><td><strong>Interactor Events</strong></td><td>See the <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interactor-events.html">Interactor Events</a> page.<br><br>참조-> <a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/interactor-events.html" target="_blank" rel="noreferrer noopener">인터랙터 이벤트</a>페이지.<br></td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/xr-ray-interactor-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4817/">XR Ray Interactor 속성 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/xr-ray-interactor-%ec%86%8d%ec%84%b1-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4817/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Action-based vs Device-based 정리 (XR Interaction Toolkit)</title>
		<link>https://lycos7560.com/unity/unity-vr/action-based-vs-device-based-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4745/</link>
					<comments>https://lycos7560.com/unity/unity-vr/action-based-vs-device-based-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4745/#comments</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Tue, 17 Jan 2023 07:56:36 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[Action-based]]></category>
		<category><![CDATA[Device-based]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=4745</guid>

					<description><![CDATA[<p>XR Interaction Toolkit의 Action-based vs Device-based에 관한 글입니다.</p>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/action-based-vs-device-based-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4745/">Action-based vs Device-based 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">요약</h2>



<p class="has-medium-font-size">Device-based는 초기 설정이 적지만 입력 처리는 별도로 커스터마이즈 할 수 없는 게 단점 (유니티에서 Action-based 권장)</p>



<div style="height:32px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Action-based는 초기 설정이 필요하지만 입력 처리를 커스터마이즈 할 수 있고 입력 시스템을 사용하여 </p>



<p class="has-medium-font-size">간접적으로 사용자의 입력을 읽을 수 있으므로 가능한 모든 단일 장치에 대해 코딩할 필요가 없다.</p>



<p class="has-medium-font-size">각 컨트롤러에 대한 각 컨트롤을 수동으로 구체적으로 설정하지 않고 각 컨트롤에 작업이 할당되기 때문에 크로스 플랫폼 통합이 더 쉬워진다.</p>



<p class="has-medium-font-size">이렇게 하면 게임을 판매할 때 Oculus 이외의 다른 장치를 대상으로 하려는 경우 많은 시간을 절약할 수 있다.</p>



<div style="height:56px" aria-hidden="true" class="wp-block-spacer"></div>



<h1 class="wp-block-heading">Action-based vs Device-based</h1>



<p>액션 기반 동작과 디바이스 기반 동작의 차이</p>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.0/manual/general-setup.html" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.0/manual/general-setup.html</a></p>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Several behaviors, such as the Snap Turn Provider, have two variants: an Action-based behavior and a Device-based behavior. </p>



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



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Action-based behaviors use Actions to indirectly read input from one or more controls. </strong></p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>Device-based behaviors use InputDevice.</strong></p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">TryGetFeatureValue to read input directly from an InputDevice from a specific control configured on the behavior itself.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">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. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">For example, </p>



<p>예를들면,</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">it separates the logical inputs from the physical inputs, </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">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. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Some features of the XR Interaction Toolkit package, such as the XR Device Simulator, are only supported when using input actions.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" style="margin-top:var(--wp--preset--spacing--80);margin-bottom:var(--wp--preset--spacing--80)"/>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Controller (Device-based)</h2>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-device-based.html?q=Device-based" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-device-based.html?q=Device-based</a></p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Interprets feature values on a tracked input controller device from the XR input subsystem into XR Interaction states, such as Select. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">It is recommended to use the action-based controller instead of this behavior.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This behavior does not need as much initial setup as compared to the action-based controller, </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">however input processing is less customizable and XRDeviceSimulator cannot be used to drive this behavior.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-987.png" alt="" class="wp-image-4753" width="700" height="700"/></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Controller (Device-based) 속성</h2>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table is-style-regular has-medium-font-size"><table><thead><tr><th><strong>Property</strong></th><th><strong>Description</strong></th></tr></thead><tbody><tr><td><strong>Update Tracking Type</strong></td><td>The time within the frame that the controller samples tracking input.<br><br>컨트롤러가 추적 입력을 샘플링하는 프레임의 시간입니다.<br></td></tr><tr><td> Update</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Update</strong>&nbsp;to sample tracking input only during the&nbsp;<code>MonoBehaviour</code>&nbsp;<code>Update</code>&nbsp;step.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Update</strong>&nbsp;로 설정하면&nbsp;<code>MonoBehaviour</code>&nbsp;<code>Update</code>단계 사이에서만 추적 입력을 샘플링합니다.<br></td></tr><tr><td> Before Render</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Before Render</strong>&nbsp;to sample tracking input only during the step immediately before rendering.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Before Render</strong>&nbsp;로 설정하면 렌더링 직전의 단계 사이에서만 추적 입력을 샘플링합니다.<br></td></tr><tr><td> Update And Before Render</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Update And Before Render</strong>&nbsp;to sample tracking input during both of the timings within a frame above.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Update And Before Render</strong>&nbsp;로 설정하면 위의 어느 타이밍에서든 프레임 내에서 추적 입력을 샘플링합니다.<br></td></tr><tr><td><strong>Enable Input Tracking</strong></td><td>Whether input pose tracking is enabled for the controller. <br><br>대상 컨트롤러에서 입력 포즈 추적을 활성화할지 여부.<br><br>When enabled, Unity reads the current tracking pose input of the controller device each frame.<br><br>활성화되면 Unity는 프레임별로 컨트롤러 장치의 현재 추적 포즈 입력을 읽습니다.<br><br>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.<br><br>현재 입력을 읽는 대신 녹화된 포즈 입력을 재생하는 것과 같은 방법으로 컨트롤러의 상태를 수동으로 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.<br></td></tr><tr><td><strong>Enable Input Actions</strong></td><td>Whether input for XR Interaction events is enabled for the controller. <br><br>대상 컨트롤러에서 XR Interaction 이벤트 입력을 활성화할지 여부<br><br>When enabled, Unity reads the current input of the controller device each frame.<br><br>활성화되면 Unity는 프레임당 컨트롤러 장치의 현재 입력을 읽습니다.<br><br>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.<br><br>현재 입력을 읽는 대신 기록된 입력을 재생하는 것과 같은 방법으로 수동으로 컨트롤러 상태를 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.<br></td></tr><tr><td><strong>Pose Provider</strong></td><td>Pose provider used to provide tracking data separate from the&nbsp;<code>XRNode</code>.<br><br><code>XRNode</code>별도의 추적 데이터를 검색하는 데 사용되는 포즈 공급자.<br></td></tr><tr><td><strong>Controller Node</strong></td><td>The&nbsp;<code>XRNode</code>&nbsp;for this controller.<br><br>이 컨트롤러의&nbsp;<code>XRNode</code>.<br><br>Used to get the&nbsp;<code>InputDevice</code>&nbsp;when reading input from the controller, with calls such as&nbsp;<code>IsPressed</code>&nbsp;and&nbsp;<code>TryGetFeatureValue</code>.<br><br>컨트롤러에서 입력을 읽을 때&nbsp;<code>IsPressed</code>등&nbsp;<code>TryGetFeatureValue</code>을 호출하여&nbsp;<code>InputDevice</code>얻는 데 사용됩니다.<br></td></tr><tr><td><strong>Select Usage</strong></td><td>The input to use for detecting a select. Refers to input mechanisms on an XR controller. The default select usage is&nbsp;<code>Grip</code>.<br><br>선택을 감지하는 데 사용되는 입력.&nbsp;XR 컨트롤러의 입력 메커니즘을 참조합니다.&nbsp;기본 선택 방법은&nbsp;<code>Grip</code>입니다.<br></td></tr><tr><td><strong>Activate Usage</strong></td><td>The input to use for detecting activation. Refers to input mechanisms on an XR controller. The default activation usage is&nbsp;<code>Trigger</code>.<br><br>활성화를 감지하는 데 사용되는 입력.&nbsp; XR 컨트롤러의 입력 메커니즘을 참조합니다. 기본 활성화 방법은&nbsp;<code>Trigger</code>입니다.<br><br>Not to be confused with the active state of a GameObject, <br><br>GameObject의 활성 상태와 혼동하지 마십시오,<br><br>an activate event in this context refers to a contextual command action, such as toggling a flashlight on and off.<br><br>여기에서 활성화 이벤트는 게임 객체의 활성 상태와 달리 손전등 켜기/끄기 전환과 같은 컨텍스트 종속 명령 동작을 가리킵니다.<br></td></tr><tr><td><strong>UI Press Usage</strong></td><td>The input to use for detecting a UI press. Refers to input mechanisms on an XR controller. The default UI press usage is&nbsp;<code>Trigger</code>.<br><br>UI 누름을 검출하는 데 사용되는 입력.&nbsp;XR 컨트롤러의 입력 메커니즘을 참조합니다.&nbsp;기본 UI 누름 방법은&nbsp;<code>Trigger</code>.<br></td></tr><tr><td><strong>Axis To Press Threshold</strong></td><td>The amount that a user needs to press an axis in order to trigger an interaction event. <br><br>상호 작용 이벤트를 트리거하는 데 필요한 사용자가 축을 누르는 양<br><br>This value is normalized: 0 is not pressed at all, 1 is fully pressed. The default threshold is&nbsp;<code>0.1</code>.<br><br>0은 전혀 누르지 않으며 1은 완전히 누르는 것처럼 값이 정규화됩니다.&nbsp;기본 임계값은&nbsp;<code>0.1</code>입니다.<br></td></tr><tr><td><strong>Rotate Object Left</strong></td><td>The input to use to rotate an anchor to the Left (counter-clockwise). <br><br>앵커를 왼쪽으로 (반 시계 방향으로) 회전하는 데 사용되는 입력.&nbsp;<br><br>Refers to input mechanisms on an XR controller. The default is&nbsp;<code>PrimaryAxis2DLeft</code>.<br><br>XR 컨트롤러의 입력 메커니즘을 참조합니다.&nbsp;기본값은&nbsp;<code>PrimaryAxis2DLeft</code>입니다.<br></td></tr><tr><td><strong>Rotate Object Right</strong></td><td>The input to use to rotate an anchor to the Right (clockwise). <br><br>anchor를 오른쪽으로 (시계 방향으로) 회전하는 데 사용되는 입력.&nbsp;<br><br>Refers to input mechanisms on an XR controller. The default is&nbsp;<code>PrimaryAxis2DRight</code>.<br><br>XR Controller의 입력 메커니즘을 참조합니다.&nbsp;기본값은&nbsp;<code>PrimaryAxis2DRight</code>입니다.<br></td></tr><tr><td><strong>Move Object In</strong></td><td>The input that will be used to translate the anchor away from the interactor (into the screen / away from the player). <br><br>앵커를 interactor로부터 멀리(화면에 들어가서, 플레이어로부터 멀어지는 방향으로 이동한다) 하기 위해서 사용하는 입력.&nbsp;<br><br>Refers to input mechanisms on an XR Controller. The default is&nbsp;<code>PrimaryAxis2DUp</code>.<br><br>XR Controller의 입력 메커니즘을 참조합니다.&nbsp;기본값은&nbsp;<code>PrimaryAxis2DUp</code>입니다.<br></td></tr><tr><td><strong>Move Object Out</strong></td><td>The input that will be used to translate the anchor towards the interactor (out of the screen / towards the player). <br><br>앵커를 interactor쪽으로 (화면 밖으로, 플레이어를 향해) 이동하는데 사용하는 입력.&nbsp;<br><br>Refers to input mechanisms on an XR Controller. The default is&nbsp;<code>PrimaryAxis2DDown</code>.<br><br>XR Controller의 입력 메커니즘을 참조합니다.&nbsp;기본값은&nbsp;<code>PrimaryAxis2DDown</code>입니다.<br></td></tr><tr><td><strong>Directional Anchor Rotation</strong></td><td>The input to use to compute a directional angle to rotate the interactor&#8217;s attach point to match it. <br><br>인터랙터의 attach point를 회전시켜 일치시키는 방향 각도를 계산하기 위해 사용하는 입력. <br><br>Refers to input mechanisms on an XR Controller. The default is&nbsp;<code>PrimaryAxis2D</code>.<br><br>XR Controller의 입력 메커니즘을 참조합니다. 기본값은 Primary입니다.축 2D.<br></td></tr><tr><td><strong>Model Prefab</strong></td><td>The prefab of a controller model to show for this controller that this behavior automatically instantiates.<br><br>이 컨트롤러에 대해 표시되고 이 동작에 의해 자동으로 인스턴스화되는 컨트롤러 모델의 prefab.<br><br>This behavior automatically instantiates an instance of the prefab as a child of&nbsp;<code>modelParent</code>&nbsp;<br><br>이 동작은, 시작 시에 자동적으로 prefab의 instance를&nbsp;<code>modelParent</code>(아래 참조)의 자식으로서 instantiate화합니다.&nbsp;<br><br>(see below) upon startup unless&nbsp;<code>model</code>&nbsp;(see further below) is already set, in which case this value is ignored.<br><br>그러나&nbsp;<code>model</code>(아래 참조)가 이미 설정되어 있으면 이 값은 무시됩니다.<br></td></tr><tr><td><strong>Model Parent</strong></td><td>The transform that this behavior uses as the parent for the model prefab when it is instantiated.<br><br>이 동작으로 모델 프리팹이 인스턴스화될 때 부모로 사용되는 변환.<br><br>Automatically instantiated and set in&nbsp;<code>Awake</code>&nbsp;if not already set. Setting this will not automatically destroy the previous object.<br><br>자동으로 인스턴스화되고 설정되지 않은 경우&nbsp;<code>Awake</code>설정됩니다.&nbsp;이 설정은 이전 개체를 자동으로 제거하지 않습니다.<br></td></tr><tr><td><strong>Model</strong></td><td>The instance of the controller model in the scene. You can set this to an existing object instead of using&nbsp;<code>modelPrefab</code>&nbsp;(see above).<br><br>씬에 존재하는 컨트롤러 모델의 인스턴스.&nbsp;<code>modelPrefab</code>(위 참조)를 사용하는 대신 기존 개체로 설정할 수 있습니다.<br><br>If set, it should reference a child GameObject of this behavior so it will update with the controller pose.<br><br>설정하는 경우는, 이 동작의 자식 GameObject를 참조합니다.&nbsp;그러면 컨트롤러 포즈로 업데이트됩니다.<br></td></tr><tr><td><strong>Animate Model</strong></td><td>Whether to animate the model in response to interaction events. <br><br>상호작용 이벤트에 따라 모델을 애니메이션화할지 여부.&nbsp;<br><br>When enabled, activates a named animation trigger upon selecting or deselecting.<br><br>활성화되면 선택 또는 선택 취소 시 명명된 애니메이션 트리거가 활성화됩니다.<br></td></tr></tbody></table></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" style="margin-top:var(--wp--preset--spacing--80);margin-bottom:var(--wp--preset--spacing--80)"/>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Controller (Action-based)</h2>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-action-based.html?q=action" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/xr-controller-action-based.html?q=action</a></p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Interprets feature values on a tracked input controller device using actions from the Input System into XR Interaction states, such as Select. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This behavior requires that the Input System is enabled in the Active Input Handling setting in Edit &gt; Project Settings &gt; Player for input values to be read. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Each input action must also be enabled to read the current value of the action. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">Externally referenced input actions in an Input Action Asset are not enabled by default.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The Select Action, Activate Action, and UI Press Action properties have corresponding Select Action Value, Activate Action Value, and UI Press Action Value properties.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">The Action types of these actions are such that the former are usually Button type Actions, and the latter are optional Value type Actions. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">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.</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"> If the Select Action Value is not set, the float value will be read from the Select Action instead. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This process is repeated for the Activate and UI Press actions.</p>



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



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size"><strong>NOTE [노트]</strong></p>



<p class="has-medium-font-size">Having two Input Actions allows you as a developer to set the binding path for the Select Action to,</p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">for example, {LeftHand}/gripPressed and set the binding for the Select Value Action to {LeftHand}/grip. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">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. </p>



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



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">If you want to control the threshold yourself, </p>



<p>임계값을 스스로 제어하는 경우</p>



<p class="has-medium-font-size">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.</p>



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



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">See the Starter Assets sample for steps to import assets to streamline setup of this component. </p>



<p>자산을 가져와서 이 구성요소의 설정을 간소화하는 방법은&nbsp;<a href="https://docs.unity3d.com/ja/Packages/com.unity.xr.interaction.toolkit@2.0/manual/samples.html#starter-assets" target="_blank" rel="noreferrer noopener">Starter Assets</a>&nbsp;샘플을 참조하십시오.</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">That sample contains a default set of input actions and presets which makes configuring this component easier.</p>



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



<p></p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-988.png" alt="" class="wp-image-4790" width="762" height="1720" srcset="https://lycos7560.com/wp-content/uploads/image-988.png 486w, https://lycos7560.com/wp-content/uploads/image-988-133x300.png 133w" sizes="(max-width: 762px) 100vw, 762px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR Controller (Action-based) 속성</h2>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-table has-medium-font-size"><table><thead><tr><th>Property</th><th><strong>Description</strong></th></tr></thead><tbody><tr><td><strong>Update Tracking Type</strong></td><td>The time within the frame that the controller samples tracking input.<br><br>컨트롤러가 추적 입력을 샘플링하는 프레임의 시간입니다.</td></tr><tr><td> Update</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Update</strong>&nbsp;to sample tracking input only during the&nbsp;<code>MonoBehaviour</code>&nbsp;<code>Update</code>&nbsp;step.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Update</strong>&nbsp;로 설정하면&nbsp;<code>MonoBehaviour</code>&nbsp;<code>Update</code>단계 사이에서만 추적 입력을 샘플링합니다.</td></tr><tr><td> Before Render</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Before Render</strong>&nbsp;to sample tracking input only during the step immediately before rendering.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Before Render</strong>&nbsp;로 설정하면 렌더링 직전의 단계 사이에서만 추적 입력을 샘플링합니다.</td></tr><tr><td> Update And Before Render</td><td>Set&nbsp;<strong>Update Tracking Type</strong>&nbsp;to&nbsp;<strong>Update And Before Render</strong>&nbsp;to sample tracking input during both of the timings within a frame above.<br><br><strong>Update Tracking Type</strong>&nbsp;을&nbsp;<strong>Update And Before Render</strong>&nbsp;로 설정하면 위의 어느 타이밍에서든 프레임 내에서 추적 입력을 샘플링합니다.</td></tr><tr><td><strong>Enable Input Tracking</strong></td><td>Whether input pose tracking is enabled for the controller.<br><br>대상 컨트롤러에서 입력 포즈 추적을 활성화할지 여부.<br><br>When enabled, Unity reads the current tracking pose input of the controller device each frame.<br><br>활성화되면 Unity는 프레임별로 컨트롤러 장치의 현재 추적 포즈 입력을 읽습니다.<br><br>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.<br><br>현재 입력을 읽는 대신 녹화된 포즈 입력을 재생하는 것과 같은 방법으로 컨트롤러의 상태를 수동으로 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.</td></tr><tr><td><strong>Position&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System action to use for Position Tracking for this GameObject. Must be a Vector3Control Control.<br><br>이 게임 오브젝트에 대한 위치 추적에 사용되는 입력 시스템 액션. Vector3Control 컨트롤이어야 합니다.</td></tr><tr><td><strong>Rotation&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for Rotation Tracking for this GameObject. Must be a&nbsp;QuaternionControl&nbsp;Control.<br><br>이 게임 개체의 회전 추적에 사용할 입력 시스템 액션입니다. QuaternionControl 컨트롤이어야 합니다.</td></tr><tr><td><strong>Tracking State&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to get the Tracking State when updating this GameObject position and rotation; <br><br>이 GameObject 위치 및 회전을 업데이트할 때 추적 상태를 가져오기 위한 Input System&nbsp;action. <br><br>falls back to the tracked device&#8217;s tracking state that drives the position or rotation&nbsp;action&nbsp;when not set. Must be an&nbsp;IntegerControl&nbsp;Control.<br><br>설정하지 않을 때 위치 또는 회전 동작을 구동하는 추적 장치의 추적 상태로 돌아갑니다. IntegerControl 컨트롤이어야 합니다.</td></tr><tr><td><strong>Enable Input&nbsp;Actions</strong></td><td>Whether input for XR Interaction&nbsp;events is enabled for the controller. <br><br>대상 컨트롤러에서 XR Inter액션이벤트 입력을 사용할지 여부. <br><br>When enabled, Unity reads the current input of the controller device each frame.<br><br>활성화되면 Unity는 프레임당 컨트롤러 장치의 현재 입력을 읽습니다.<br><br>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.<br><br>현재 입력을 읽는 대신 기록된 입력을 재생하는 것과 같은 방법으로 수동으로 컨트롤러 상태를 설정하려는 경우 이 옵션을 비활성화할 수 있습니다.</td></tr><tr><td><strong>Select&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for selecting an Interactable. <br><br>상호 작용 가능한 항목을 선택하는 데 사용할 Input System&nbsp;action 입니다. <br><br>Must be an&nbsp;action&nbsp;with a button-like interaction&nbsp;or&nbsp;ButtonControl&nbsp;Control.<br><br>버튼과 같은 상호 작용 또는 ButtonControl이 있는 동작이어야 합니다.</td></tr><tr><td><strong>Select&nbsp;Action&nbsp;Value</strong></td><td>Optional, uses&nbsp;Select&nbsp;Action&nbsp;when not set.<br><br>선택사항 &#8211; 설정하지 않은 경우 [Select&nbsp;Action]을 사용합니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System action to read the float value of Select Action, if different. Must be an AxisControl or Vector2Control Control.<br><br>[Select Action]의 부동 소수점 값을 읽는 입력 시스템 액션(다른 경우). Axis Control 또는 Vector 2 Control Control이 필요합니다.</td></tr><tr><td><strong>Activate&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for activating a selected Interactable.<br><br>상호작용 형식의 활성화에 사용하는 Input System&nbsp;action.<br><br>Must be an&nbsp;action&nbsp;with a button-like interaction&nbsp;or&nbsp;ButtonControl&nbsp;Control.<br><br>버튼과 같은 상호작용 또는 버튼 제어 제어를 사용하는 액션이어야 합니다.</td></tr><tr><td><strong>Activate&nbsp;Action&nbsp;Value</strong></td><td>Optional, uses&nbsp;Activate&nbsp;Action&nbsp;when not set.<br><br>선택사항, 설정하지 않은 경우 Activate Action을 사용합니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to read the&nbsp;float&nbsp;value of Activate&nbsp;Action, if different.<br><br>다른 경우 Activate 액션값&nbsp;float을 읽는 입력 시스템 작업.&nbsp;<br><br>Must be an&nbsp;AxisControl&nbsp;or&nbsp;Vector2Control&nbsp;Control.<br><br>AxisControl또는&nbsp;Vector2Control컨트롤이어야 합니다.</td></tr><tr><td><strong>UI Press&nbsp;Action</strong></td><td>Optional, used by XR Ray Interactor when Enable Interaction&nbsp;with UI GameObjects is enabled.<br><br>선택 사항. UI GameObjects와의 상호 작용 사용이 활성화된 경우 XR Ray Interactor에서 사용됩니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for Canvas UI interaction. <br><br>Canvas UI 상호 작용에 사용할 입력 시스템 작업.<br><br>Must be an&nbsp;action&nbsp;with a button-like interaction&nbsp;or&nbsp;ButtonControl&nbsp;Control.<br><br>버튼과 같은 상호작용이나 ButtonControl컨트롤이 있는 동작이어야 합니다.</td></tr><tr><td><strong>UI Press&nbsp;Action&nbsp;Value</strong></td><td>Optional, uses&nbsp;UI Press&nbsp;Action&nbsp;when not set.<br><br>선택 사항, 설정하지 않은 경우 UI Press Action을 사용합니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to read the&nbsp;float&nbsp;value of UI Press&nbsp;Action, if different. <br><br>다른 경우에는 UI Press&nbsp;Action 값&nbsp;float을 읽는 입력 시스템 작업.&nbsp;<br><br>Must be an&nbsp;AxisControl&nbsp;or&nbsp;Vector2Control&nbsp;Control.<br><br>AxisControl 또는 Vector2Control컨트롤이어야 합니다.</td></tr><tr><td><strong>Haptic Device&nbsp;Action</strong></td><td></td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for identifying the device to send haptic impulses to.<br><br>haptic impulses를 보내는 장치를 식별하는 데 사용되는 Input System&nbsp;action.&nbsp;<br><br>Can be any control type that will have an active control driving the&nbsp;action.<br><br>액션을 추진하는 활성 컨트롤과 관련된 모든 컨트롤 유형.</td></tr><tr><td><strong>Rotate Anchor&nbsp;Action</strong></td><td>Optional, used by XR Ray Interactor when Anchor Control is enabled and Rotation Mode is set to Rotate Over Time.<br><br>선택 사항. Anchor Control가 활성화되고Rotation Mode가 시간 경과에 따라 회전으로 설정된 경우 XR Ray Interactor에서 사용됩니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for rotating the interactor&#8217;s attach point over time.<br><br>interactor&#8217;s attach 을 회전하는 데 사용되는 Input System&nbsp;action.&nbsp;<br><br>Must be a&nbsp;Vector2Control&nbsp;Control. Uses the x-axis as the rotation input.<br><br>Vector2Control컨트롤이어야 합니다.&nbsp;회전 입력으로 X축을 사용합니다.</td></tr><tr><td><strong>Directional Anchor Rotation&nbsp;Action</strong></td><td>Optional, used by XR Ray Interactor when Anchor Control is enabled and Rotation Mode is set to Match Direction.<br><br>선택 사항. Anchor Control가 활성화되고 Rotation Mode가 방향 일치로 설정된 경우 XR Ray Interactor에서 사용됩니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System action to use for computing a direction angle to rotate the interactor&#8217;s attach point to match it.<br><br>interactor&#8217;s attach point를 회전시켜 그에 일치시키는 방향 각도 계산에 사용하는 Input System action.<br><br>Must be a&nbsp;Vector2Control&nbsp;Control.<br><br>Vector2ControlControl이어야 합니다.<br><br>The direction angle is computed as the arctangent function of x/y.<br><br>방향 각도는 x/y의 arctangent 함수로 계산됩니다.<br></td></tr><tr><td><strong><strong>Translate Anchor&nbsp;Action</strong></strong></td><td>Optional, used by XR Ray Interactor when Anchor Control is enabled.<br><br>선택적으로 Anchor Control이 활성화되면 XR Ray Interactor에서 사용됩니다.</td></tr><tr><td> Use Reference</td><td>Enable to reference an&nbsp;action&nbsp;externally defined using the accompanying field.<br><br>함께 제공되는 필드를 사용하여 외부적으로 정의된 동작을 참조할 수 있습니다.</td></tr><tr><td> Reference</td><td>The Input System&nbsp;action&nbsp;to use for translating the interactor&#8217;s attach point closer or further away from the interactor. <br><br>인터랙터의 attach point를 인터랙터에 접근하거나 반대로 멀리하는 데 사용되는 입력 시스템 액션입니다.<br><br>Must be a&nbsp;<code>Vector2Control</code>&nbsp;Control. Uses the y-axis as the translation input.<br><br><code>Vector2Control</code>컨트롤이어야 합니다.&nbsp;이동 입력으로 Y 축을 사용합니다.<br></td></tr><tr><td><strong>Model Prefab</strong></td><td>The prefab of a controller model to show for this controller that this behavior automatically instantiates.<br><br>이 컨트롤러에 대해 표시되고 이 동작에 의해 자동으로 인스턴스화되는 컨트롤러 모델의 prefab.<br><br>This behavior automatically instantiates an instance of the prefab as a child of&nbsp;<code>modelParent</code>&nbsp;<br><br>이 동작은, 시작 시에 자동적으로 prefab의 instance를&nbsp;<code>modelParent</code>(아래 참조)의 자식으로서 instantiate화합니다.&nbsp;<br><br>(see below) upon startup unless&nbsp;<code>model</code>&nbsp;(see further below) is already set, in which case this value is ignored.<br><br>그러나&nbsp;<code>model</code>(아래 참조)가 이미 설정되어 있으면 이 값은 무시됩니다.</td></tr><tr><td><strong>Model Parent</strong></td><td>The transform that this behavior uses as the parent for the model prefab when it is instantiated.<br><br>이 동작으로 모델 프리팹이 인스턴스화될 때 부모로 사용되는 변환.<br><br>Automatically instantiated and set in&nbsp;<code>Awake</code>&nbsp;if not already set. Setting this will not automatically destroy the previous object.<br><br>자동으로 인스턴스화되고 설정되지 않은 경우&nbsp;<code>Awake</code>설정됩니다.&nbsp;이 설정은 이전 개체를 자동으로 제거하지 않습니다.</td></tr><tr><td><strong>Model</strong></td><td>The instance of the controller model in the scene. You can set this to an existing object instead of using&nbsp;<code>modelPrefab</code>&nbsp;(see above).<br><br>씬에 존재하는 컨트롤러 모델의 인스턴스.&nbsp;<code>modelPrefab</code>(위 참조)를 사용하는 대신 기존 개체로 설정할 수 있습니다.<br><br>If set, it should reference a child GameObject of this behavior so it will update with the controller pose.<br><br>설정하는 경우는, 이 동작의 자식 GameObject를 참조합니다.&nbsp;그러면 컨트롤러 포즈로 업데이트됩니다.</td></tr><tr><td><strong>Animate Model</strong></td><td>Whether to animate the model in response to interaction events.<br><br>상호작용 이벤트에 따라 모델을 애니메이션화할지 여부.&nbsp;<br><br>When enabled, activates a named animation trigger upon selecting or deselecting.<br><br>활성화되면 선택 또는 선택 취소 시 명명된 애니메이션 트리거가 활성화됩니다.</td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<p></p>
<p>The post <a href="https://lycos7560.com/unity/unity-vr/action-based-vs-device-based-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4745/">Action-based vs Device-based 정리 (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/unity-vr/action-based-vs-device-based-%ec%a0%95%eb%a6%ac-xr-interaction-toolkit/4745/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Unity / Oculus Quest 연결 (XR Plugin Management, XR Interaction Toolkit)</title>
		<link>https://lycos7560.com/unity/unity-oculus-quest-connect-xr-plugin-management/4639/</link>
					<comments>https://lycos7560.com/unity/unity-oculus-quest-connect-xr-plugin-management/4639/#respond</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Mon, 16 Jan 2023 20:25:04 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[테스트]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=4639</guid>

					<description><![CDATA[<p>'XR Plugin Management'을 이용하여 'Unity'와 'Oculus Quest' 연결하는 과정을 기록한 글입니다. (This article records the process of connecting 'Unity' and 'Oculus Quest' using 'XR Plugin Management'.)</p>
<p>The post <a href="https://lycos7560.com/unity/unity-oculus-quest-connect-xr-plugin-management/4639/">Unity / Oculus Quest 연결 (XR Plugin Management, XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:76px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Unity Version</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">Unity Version : 2021.3.5f1
</pre>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="737" height="236" src="https://lycos7560.com/wp-content/uploads/image-983.png" alt="" class="wp-image-4720" srcset="https://lycos7560.com/wp-content/uploads/image-983.png 737w, https://lycos7560.com/wp-content/uploads/image-983-300x96.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></figure>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="739" height="152" src="https://lycos7560.com/wp-content/uploads/image-984.png" alt="" class="wp-image-4721" srcset="https://lycos7560.com/wp-content/uploads/image-984.png 739w, https://lycos7560.com/wp-content/uploads/image-984-300x62.png 300w" sizes="(max-width: 739px) 100vw, 739px" /></figure>



<div style="height:23px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">준비물 </p>



<p class="has-medium-font-size">데스크탑 or 노트북 / Occulus Quest / Link 케이블이나 동급의 고품질 USB 3 케이블</p>



<p><a href="https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/installation.html" target="_blank" rel="noreferrer noopener">https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.3/manual/installation.html</a> &lt;- 참고</p>



<div style="height:53px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">유니티 셋팅 (데스크탑 or 노트북)</h2>



<p class="has-medium-font-size">VR template 으로 프로젝트 만들기</p>



<div style="height:37px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1149" height="912" src="https://lycos7560.com/wp-content/uploads/image-951.png" alt="" class="wp-image-4642" srcset="https://lycos7560.com/wp-content/uploads/image-951.png 1149w, https://lycos7560.com/wp-content/uploads/image-951-300x238.png 300w, https://lycos7560.com/wp-content/uploads/image-951-768x610.png 768w" sizes="(max-width: 1149px) 100vw, 1149px" /></figure>



<div style="height:73px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1615" height="941" src="https://lycos7560.com/wp-content/uploads/image-952.png" alt="" class="wp-image-4645" srcset="https://lycos7560.com/wp-content/uploads/image-952.png 1615w, https://lycos7560.com/wp-content/uploads/image-952-300x175.png 300w, https://lycos7560.com/wp-content/uploads/image-952-768x447.png 768w, https://lycos7560.com/wp-content/uploads/image-952-1536x895.png 1536w" sizes="(max-width: 1615px) 100vw, 1615px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1670" height="941" src="https://lycos7560.com/wp-content/uploads/image-953.png" alt="" class="wp-image-4646" srcset="https://lycos7560.com/wp-content/uploads/image-953.png 1670w, https://lycos7560.com/wp-content/uploads/image-953-300x169.png 300w, https://lycos7560.com/wp-content/uploads/image-953-768x433.png 768w, https://lycos7560.com/wp-content/uploads/image-953-1536x865.png 1536w" sizes="(max-width: 1670px) 100vw, 1670px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">xr interaction toolkit 다운 받기</p>



<pre class="EnlighterJSRAW" data-enlighter-language="raw" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">com.unity.xr.interaction.toolkit</pre>



<div style="height:37px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1688" height="941" src="https://lycos7560.com/wp-content/uploads/image-954.png" alt="" class="wp-image-4647" srcset="https://lycos7560.com/wp-content/uploads/image-954.png 1688w, https://lycos7560.com/wp-content/uploads/image-954-300x167.png 300w, https://lycos7560.com/wp-content/uploads/image-954-768x428.png 768w, https://lycos7560.com/wp-content/uploads/image-954-1536x856.png 1536w" sizes="(max-width: 1688px) 100vw, 1688px" /></figure>



<div style="height:64px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">경고 문구가 나오면 NO Thanks (처음 설치) </p>



<p class="has-medium-font-size">이유는 하단부의 글 참고</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-958.png" alt="" class="wp-image-4652" width="618" height="491" srcset="https://lycos7560.com/wp-content/uploads/image-958.png 390w, https://lycos7560.com/wp-content/uploads/image-958-300x238.png 300w" sizes="(max-width: 618px) 100vw, 618px" /></figure>



<div style="height:47px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-embed is-type-wp-embed is-provider-어제와-내일의-나-그-사이의-이야기 wp-block-embed-어제와-내일의-나-그-사이의-이야기"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="C8wVfrhdTs"><a href="https://lycos7560.com/?p=4648">XR InteractionLayerMask Update Required</a></blockquote><iframe loading="lazy" class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;XR InteractionLayerMask Update Required&#8221; &#8212; 어제와 내일의 나 그 사이의 이야기" src="https://lycos7560.com/?p=4648&#038;embed=true#?secret=VNQBRBPAGa#?secret=C8wVfrhdTs" data-secret="C8wVfrhdTs" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<div style="height:88px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">XR Interaction Toolkit 설치 확인</p>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1674" height="686" src="https://lycos7560.com/wp-content/uploads/image-961.png" alt="" class="wp-image-4666" srcset="https://lycos7560.com/wp-content/uploads/image-961.png 1674w, https://lycos7560.com/wp-content/uploads/image-961-300x123.png 300w, https://lycos7560.com/wp-content/uploads/image-961-768x315.png 768w, https://lycos7560.com/wp-content/uploads/image-961-1536x629.png 1536w" sizes="(max-width: 1674px) 100vw, 1674px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">XR Plugin Management 업데이트</p>



<div style="height:38px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1702" height="1110" src="https://lycos7560.com/wp-content/uploads/image-962.png" alt="" class="wp-image-4676" srcset="https://lycos7560.com/wp-content/uploads/image-962.png 1702w, https://lycos7560.com/wp-content/uploads/image-962-300x196.png 300w, https://lycos7560.com/wp-content/uploads/image-962-768x501.png 768w, https://lycos7560.com/wp-content/uploads/image-962-1536x1002.png 1536w" sizes="(max-width: 1702px) 100vw, 1702px" /></figure>



<div style="height:28px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1615" height="614" src="https://lycos7560.com/wp-content/uploads/image-963.png" alt="" class="wp-image-4678" srcset="https://lycos7560.com/wp-content/uploads/image-963.png 1615w, https://lycos7560.com/wp-content/uploads/image-963-300x114.png 300w, https://lycos7560.com/wp-content/uploads/image-963-768x292.png 768w, https://lycos7560.com/wp-content/uploads/image-963-1536x584.png 1536w" sizes="(max-width: 1615px) 100vw, 1615px" /></figure>



<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="677" height="788" src="https://lycos7560.com/wp-content/uploads/image-964.png" alt="" class="wp-image-4680" srcset="https://lycos7560.com/wp-content/uploads/image-964.png 677w, https://lycos7560.com/wp-content/uploads/image-964-258x300.png 258w" sizes="(max-width: 677px) 100vw, 677px" /></figure>



<div style="height:82px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1187" height="799" src="https://lycos7560.com/wp-content/uploads/image-965.png" alt="" class="wp-image-4681" srcset="https://lycos7560.com/wp-content/uploads/image-965.png 1187w, https://lycos7560.com/wp-content/uploads/image-965-300x202.png 300w, https://lycos7560.com/wp-content/uploads/image-965-768x517.png 768w" sizes="(max-width: 1187px) 100vw, 1187px" /></figure>



<div style="height:41px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="960" height="557" src="https://lycos7560.com/wp-content/uploads/image-966.png" alt="" class="wp-image-4682" srcset="https://lycos7560.com/wp-content/uploads/image-966.png 960w, https://lycos7560.com/wp-content/uploads/image-966-300x174.png 300w, https://lycos7560.com/wp-content/uploads/image-966-768x446.png 768w" sizes="(max-width: 960px) 100vw, 960px" /></figure>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="957" height="558" src="https://lycos7560.com/wp-content/uploads/image-967.png" alt="" class="wp-image-4683" srcset="https://lycos7560.com/wp-content/uploads/image-967.png 957w, https://lycos7560.com/wp-content/uploads/image-967-300x175.png 300w, https://lycos7560.com/wp-content/uploads/image-967-768x448.png 768w" sizes="(max-width: 957px) 100vw, 957px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">새로운 Scene (테스트용) 만들기</p>



<figure class="wp-block-image size-full"><img decoding="async" width="1616" height="957" src="https://lycos7560.com/wp-content/uploads/image-968.png" alt="" class="wp-image-4686" srcset="https://lycos7560.com/wp-content/uploads/image-968.png 1616w, https://lycos7560.com/wp-content/uploads/image-968-300x178.png 300w, https://lycos7560.com/wp-content/uploads/image-968-768x455.png 768w, https://lycos7560.com/wp-content/uploads/image-968-1536x910.png 1536w" sizes="(max-width: 1616px) 100vw, 1616px" /></figure>



<div style="height:38px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-embed is-type-wp-embed is-provider-어제와-내일의-나-그-사이의-이야기 wp-block-embed-어제와-내일의-나-그-사이의-이야기"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="7bgyDRzeoj"><a href="https://lycos7560.com/?p=4745">Action-based vs Device-based 정리 (XR Interaction Toolkit)</a></blockquote><iframe loading="lazy" class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;Action-based vs Device-based 정리 (XR Interaction Toolkit)&#8221; &#8212; 어제와 내일의 나 그 사이의 이야기" src="https://lycos7560.com/?p=4745&#038;embed=true#?secret=qFPxw37heO#?secret=7bgyDRzeoj" data-secret="7bgyDRzeoj" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1356" height="907" src="https://lycos7560.com/wp-content/uploads/image-969.png" alt="" class="wp-image-4688" srcset="https://lycos7560.com/wp-content/uploads/image-969.png 1356w, https://lycos7560.com/wp-content/uploads/image-969-300x201.png 300w, https://lycos7560.com/wp-content/uploads/image-969-768x514.png 768w" sizes="(max-width: 1356px) 100vw, 1356px" /></figure>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1359" height="883" src="https://lycos7560.com/wp-content/uploads/image-970.png" alt="" class="wp-image-4689" srcset="https://lycos7560.com/wp-content/uploads/image-970.png 1359w, https://lycos7560.com/wp-content/uploads/image-970-300x195.png 300w, https://lycos7560.com/wp-content/uploads/image-970-768x499.png 768w" sizes="(max-width: 1359px) 100vw, 1359px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">위치 0 0 0 으로 리셋</p>



<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1123" height="623" src="https://lycos7560.com/wp-content/uploads/image-971.png" alt="" class="wp-image-4690" srcset="https://lycos7560.com/wp-content/uploads/image-971.png 1123w, https://lycos7560.com/wp-content/uploads/image-971-300x166.png 300w, https://lycos7560.com/wp-content/uploads/image-971-768x426.png 768w" sizes="(max-width: 1123px) 100vw, 1123px" /></figure>



<div style="height:36px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">바닥 기반으로 변경 Floor</p>



<div style="height:18px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-972.png" alt="" class="wp-image-4692" width="1130" height="677" srcset="https://lycos7560.com/wp-content/uploads/image-972.png 813w, https://lycos7560.com/wp-content/uploads/image-972-300x180.png 300w, https://lycos7560.com/wp-content/uploads/image-972-768x460.png 768w" sizes="(max-width: 1130px) 100vw, 1130px" /></figure>



<div style="height:41px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">테스트 용으로 오브젝트 배치</p>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1916" height="906" src="https://lycos7560.com/wp-content/uploads/image-978.png" alt="" class="wp-image-4705" srcset="https://lycos7560.com/wp-content/uploads/image-978.png 1916w, https://lycos7560.com/wp-content/uploads/image-978-300x142.png 300w, https://lycos7560.com/wp-content/uploads/image-978-768x363.png 768w, https://lycos7560.com/wp-content/uploads/image-978-1536x726.png 1536w" sizes="(max-width: 1916px) 100vw, 1916px" /></figure>



<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Oculus 앱 설치 (데스크탑)</h2>



<p><a href="https://www.meta.com/kr/quest/setup/?utm_source=www.meta.com&amp;utm_medium=dollyredirect" target="_blank" rel="noreferrer noopener">https://www.meta.com/kr/quest/setup/?utm_source=www.meta.com&amp;utm_medium=do</a><a href="https://www.meta.com/kr/quest/setup/?utm_source=www.meta.com&amp;utm_medium=dollyredirect">llyredirect</a> &lt;- 다운로드 주소</p>



<div style="height:31px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1369" height="975" src="https://lycos7560.com/wp-content/uploads/image-974.png" alt="" class="wp-image-4696" srcset="https://lycos7560.com/wp-content/uploads/image-974.png 1369w, https://lycos7560.com/wp-content/uploads/image-974-300x214.png 300w, https://lycos7560.com/wp-content/uploads/image-974-768x547.png 768w" sizes="(max-width: 1369px) 100vw, 1369px" /></figure>



<div style="height:47px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1425" height="921" src="https://lycos7560.com/wp-content/uploads/image-976.png" alt="" class="wp-image-4698" srcset="https://lycos7560.com/wp-content/uploads/image-976.png 1425w, https://lycos7560.com/wp-content/uploads/image-976-300x194.png 300w, https://lycos7560.com/wp-content/uploads/image-976-768x496.png 768w" sizes="(max-width: 1425px) 100vw, 1425px" /></figure>



<div style="height:44px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">아이디 및 기기 등록하고 연결 활성화 </p>



<p class="has-medium-font-size">USB 3 연결 권장됨 표시는 무시해도 상관없다. (정품 케이블인데&#8230;)</p>



<div style="height:34px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1434" height="935" src="https://lycos7560.com/wp-content/uploads/image-977.png" alt="" class="wp-image-4699" srcset="https://lycos7560.com/wp-content/uploads/image-977.png 1434w, https://lycos7560.com/wp-content/uploads/image-977-300x196.png 300w, https://lycos7560.com/wp-content/uploads/image-977-768x501.png 768w" sizes="(max-width: 1434px) 100vw, 1434px" /></figure>



<div style="height:58px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1424" height="1020" src="https://lycos7560.com/wp-content/uploads/image-979.png" alt="" class="wp-image-4710" srcset="https://lycos7560.com/wp-content/uploads/image-979.png 1424w, https://lycos7560.com/wp-content/uploads/image-979-300x215.png 300w, https://lycos7560.com/wp-content/uploads/image-979-768x550.png 768w" sizes="(max-width: 1424px) 100vw, 1424px" /></figure>



<div style="height:57px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1430" height="774" src="https://lycos7560.com/wp-content/uploads/image-980.png" alt="" class="wp-image-4711" srcset="https://lycos7560.com/wp-content/uploads/image-980.png 1430w, https://lycos7560.com/wp-content/uploads/image-980-300x162.png 300w, https://lycos7560.com/wp-content/uploads/image-980-768x416.png 768w" sizes="(max-width: 1430px) 100vw, 1430px" /></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">테스트!!! (순서 중요)</h2>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">1. Oculus PC 앱 열기</p>



<p class="has-medium-font-size">2. 헤드셋 연결</p>



<p class="has-medium-font-size">3. Unity 프로젝트 열기</p>



<p class="has-medium-font-size">(순서대로 안하면 XR plugin이 오류를 뿜뿜한다. 이유는 모름 ㅋㅁㅋ)</p>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" style="margin-top:var(--wp--preset--spacing--80);margin-bottom:var(--wp--preset--spacing--80)"/>



<h2 class="wp-block-heading">Oculus Link 연결 (Oculus Quest 화면)</h2>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/OculusScreenshot1673899237.jpeg" alt="" class="wp-image-4713" width="1000" height="1000" srcset="https://lycos7560.com/wp-content/uploads/OculusScreenshot1673899237.jpeg 1536w, https://lycos7560.com/wp-content/uploads/OculusScreenshot1673899237-300x300.jpeg 300w, https://lycos7560.com/wp-content/uploads/OculusScreenshot1673899237-150x150.jpeg 150w, https://lycos7560.com/wp-content/uploads/OculusScreenshot1673899237-768x768.jpeg 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></figure>



<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Unity 화면 (데스크탑 화면)</h2>



<p class="has-medium-font-size">플레이!!!</p>



<div style="height:33px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="1904" height="1049" src="https://lycos7560.com/wp-content/uploads/image-982.png" alt="" class="wp-image-4715" srcset="https://lycos7560.com/wp-content/uploads/image-982.png 1904w, https://lycos7560.com/wp-content/uploads/image-982-300x165.png 300w, https://lycos7560.com/wp-content/uploads/image-982-768x423.png 768w, https://lycos7560.com/wp-content/uploads/image-982-1536x846.png 1536w" sizes="(max-width: 1904px) 100vw, 1904px" /></figure>



<div style="height:47px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-video"><video height="1104" style="aspect-ratio: 1912 / 1104;" width="1912" controls poster="https://lycos7560.com/wp-content/uploads/image-982.png" src="https://lycos7560.com/wp-content/uploads/녹화_2023_01_17_05_07_48_958.mp4"></video></figure>



<div style="height:48px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/unity-oculus-quest-connect-xr-plugin-management/4639/">Unity / Oculus Quest 연결 (XR Plugin Management, XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/unity-oculus-quest-connect-xr-plugin-management/4639/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://lycos7560.com/wp-content/uploads/녹화_2023_01_17_05_07_48_958.mp4" length="5071712" type="video/mp4" />

			</item>
		<item>
		<title>XR InteractionLayerMask Update Required (XR Interaction Toolkit)</title>
		<link>https://lycos7560.com/unity/xr-interactionlayermask-update-required/4648/</link>
					<comments>https://lycos7560.com/unity/xr-interactionlayermask-update-required/4648/#comments</comments>
		
		<dc:creator><![CDATA[lycos7560]]></dc:creator>
		<pubDate>Mon, 16 Jan 2023 18:13:45 +0000</pubDate>
				<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity-VR]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Meta Quest VR]]></category>
		<category><![CDATA[Oculus]]></category>
		<category><![CDATA[Oculus Quest]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Quest]]></category>
		<category><![CDATA[Quest2]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[Unity VR]]></category>
		<category><![CDATA[Virtual Reality]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[XR]]></category>
		<category><![CDATA[XR interaction toolkit]]></category>
		<category><![CDATA[XR InteractionLayerMask Update Required]]></category>
		<category><![CDATA[XR plugin]]></category>
		<category><![CDATA[XR Plugin Management]]></category>
		<category><![CDATA[가상현실]]></category>
		<category><![CDATA[경고]]></category>
		<category><![CDATA[유니티]]></category>
		<category><![CDATA[패키지 매니저]]></category>
		<guid isPermaLink="false">https://lycos7560.com/?p=4648</guid>

					<description><![CDATA[<p>유니티(unity) XR interaction toolkit 설치중 나온 경고인 XR InteractionLayerMask Update Required 에 대한 글입니다.</p>
<p>The post <a href="https://lycos7560.com/unity/xr-interactionlayermask-update-required/4648/">XR InteractionLayerMask Update Required (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<!-- HorizontalAD -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5698326622209671" data-ad-slot="6908948342" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:76px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Unity Version</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="csharp" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">Unity Version : 2021.3.5f1
</pre>



<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="737" height="236" src="https://lycos7560.com/wp-content/uploads/image-983.png" alt="" class="wp-image-4720" srcset="https://lycos7560.com/wp-content/uploads/image-983.png 737w, https://lycos7560.com/wp-content/uploads/image-983-300x96.png 300w" sizes="(max-width: 737px) 100vw, 737px" /></figure>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full"><img decoding="async" width="739" height="152" src="https://lycos7560.com/wp-content/uploads/image-984.png" alt="" class="wp-image-4721" srcset="https://lycos7560.com/wp-content/uploads/image-984.png 739w, https://lycos7560.com/wp-content/uploads/image-984-300x62.png 300w" sizes="(max-width: 739px) 100vw, 739px" /></figure>



<div style="height:67px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">프로젝트 자산의 상호 작용 계층을 업그레이드하라는 메시지가 표시됩니다. </p>



<p class="has-medium-font-size"><strong>프로젝트에서 XR Interaction Toolkit을 처음 설치하는 경우 <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">아니오</mark>를 클릭하여 건너뜁니다. </strong></p>



<p class="has-medium-font-size">2.0.0 이전 패키지 버전에서 업그레이드하는 경우에는 백업을 수행하여 상호 작용 계층 마스크를 업데이트하는 것이 좋습니다. </p>



<p class="has-medium-font-size">자세한 내용은 상호 작용 계층 마스크 업데이트 프로그램을 참조하십시오. (하단 링크)</p>



<p><a href="https://docs.unity.cn/Packages/com.unity.xr.interaction.toolkit@2.0/manual/interaction-layers#interaction-layer-mask-updater" target="_blank" rel="noreferrer noopener">https://docs.unity.cn/Packages/com.unity.xr.interaction.toolkit@2.0/manual/interaction-layers#interaction-layer-mask-updater</a></p>



<div style="height:45px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:43px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://lycos7560.com/wp-content/uploads/image-958.png" alt="" class="wp-image-4652" width="700" height="600"/></figure>



<div style="height:39px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">XR InteractionLayerMask Update Required </h2>



<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">This project may contain an obsolete method to validate interactions between XR Interactors and Interactables. </p>



<p class="has-medium-font-size">This Update is only required for older projects updating the XR Interaction Toolkit package, </p>



<p class="has-medium-font-size">if this package was newly installed please cancel this operation. </p>



<p class="has-medium-font-size">If you choose &#8216;Go Ahead&#8217;, Unity will update all Interactors and Interactables in Prefabs </p>



<p class="has-medium-font-size">and scenes to use the new Interaction Layer instead of the Unity physics Layer. </p>



<p class="has-medium-font-size">You can always manually run the XR InteractionLayerMask Updater from the XR Interaction Toolkit Settings </p>



<p class="has-medium-font-size">(menu: Edit &gt; Project Settings &gt; XR Interaction Toolkit). </p>



<ul class="wp-block-list">
<li><strong>I Made a Backup, Go Ahead!</strong></li>
</ul>



<ul class="wp-block-list">
<li>No Thanks X</li>
</ul>



<div style="height:76px" aria-hidden="true" class="wp-block-spacer"></div>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" style="margin-top:var(--wp--preset--spacing--80);margin-bottom:var(--wp--preset--spacing--80)"/>



<h2 class="has-medium-font-size wp-block-heading">XR 상호 작용 계층 마스크 업데이트 필요</h2>



<div style="height:32px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size">이 프로젝트에는 XR Interactors와 Interactables 간의 상호 작용을 검증하는 오래된 방법이 포함되어 있을 수 있습니다.</p>



<p class="has-medium-font-size">이 업데이트는 XR Interaction Toolkit 패키지를 업데이트하는 이전 프로젝트에만 필요합니다. </p>



<p class="has-medium-font-size">이 패키지가 새로 설치된 경우 이 작업을 취소하십시오.</p>



<p class="has-medium-font-size">&#8216;진행&#8217;을 선택하면 Unity가 사전 편집 및 장면의 모든 상호 작용 및 상호 작용 가능을 업데이트하여 </p>



<p class="has-medium-font-size">Unity 물리 계층 대신 새 상호 작용 계층을 사용합니다.</p>



<p class="has-medium-font-size">항상 XR Interaction Toolkit Settings</p>



<p class="has-medium-font-size">(메뉴: Edit(편집) &gt; Project Settings(프로젝트 설정) &gt; XR Interaction Toolkit(XR 상호 작용 도구)에서 </p>



<p class="has-medium-font-size">XR Interaction Layer Mask Updater를 수동으로 실행할 수 있습니다.</p>



<div style="height:41px" aria-hidden="true" class="wp-block-spacer"></div>



<p><a href="https://docs.unity.cn/Packages/com.unity.xr.interaction.toolkit@2.0/manual/installation.html" target="_blank" rel="noreferrer noopener">https://docs.unity.cn/Packages/com.unity.xr.interaction.toolkit@2.0/manual/installation.html</a> &lt;- 참고</p>



<div style="height:45px" aria-hidden="true" class="wp-block-spacer"></div>



<div style="height:57px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5698326622209671" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5698326622209671" data-ad-slot="4245812909"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
<p>The post <a href="https://lycos7560.com/unity/xr-interactionlayermask-update-required/4648/">XR InteractionLayerMask Update Required (XR Interaction Toolkit)</a> appeared first on <a href="https://lycos7560.com">어제와 내일의 나 그 사이의 이야기</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lycos7560.com/unity/xr-interactionlayermask-update-required/4648/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
