다음을 통해 공유


SpacePin 클래스

정의

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

public class SpacePin : UnityEngine.MonoBehaviour
type SpacePin = class
    inherit MonoBehaviour
Public Class SpacePin
Inherits MonoBehaviour
상속
UnityEngine.MonoBehaviour
SpacePin
파생

설명

이 구성 요소는 gameObject의 초기 포즈를 캡처한 다음 두 번째 포즈를 캡처합니다. 그런 다음 해당 쌍을 WorldLocking 맞춤 관리자에 추가합니다. 그런 다음 관리자는 현재 헤드 포즈에 따라 추가된 모든 핀 간에 협상하여 고정된 공간에 맞춰 프레임 간 매핑을 생성합니다( 즉, 핀이 가능한 한 일치하도록 Unity 전역 공간). 이를 설명하는 또 다른 방법은 임의 포즈("모델링 포즈")와 실제 세계에 어떻게든 정렬된 포즈("월드 잠긴 포즈")가 주어지면 모델링 포즈의 좌표가 있는 가상 개체가 잠긴 포즈에 설명된 위치 및 방향에서 실제 세계에 오버레이되도록 카메라에 수정을 적용합니다. 이 구성 요소의 경우 고정이 포함된 Frozen Space의 입력 포즈와 함께 다음 세 가지 API SetFrozenPose(Pose) 중 하나를 통해 잠긴 포즈가 들어와야 합니다. SetSpongyPose(Pose) 은 Spongy Space에서 입력 포즈를 사용합니다. 이 공간은 카메라의 부모 공간이며 카메라가 이동하는 공간과 동일하며 네이티브 API는 값을 반환합니다(예: XR). SetLockedPose(Pose) 고정을 제외한 Frozen World 엔진 DLL에 의해 안정화된 공간인 잠긴 공간에 입력 포즈가 있습니다. Frozen Space는 AlignmentManager에 의해 이동되므로 Pose p가 첫 번째 호출 후 다른 위치를 참조하므로 동일한 Pose p를 두 번 사용하여 SetFrozenPose(p)를 호출하는 것은 오류일 수 있습니다.

생성자

SpacePin()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

속성

AlignmentManager

스크립트에서 AlignmentManager를 재정의하기 위한 접근자입니다.

AnchorId

anchorId에 대한 이 래퍼는 anchorId가 AnchorId 열거형의 기본 클래스인 ulong으로 저장되어야 하기 때문입니다. Unity int 기반 열거형만 지원하므로 ulong 기반 AnchorId에 대해 serialization 등에 불만을 제기합니다.

AnchorName

고유한 앵커 이름을 제공합니다. 지속성에 사용됩니다.

FragmentId

이 핀이 속한 조각의 ID입니다.

LockedPose

파생 클래스에 대한 월드 잠금 포즈의 접근자입니다.

Manager

파생 클래스에서 관리자 종속성에 대한 액세스 권한만 읽습니다.

ModelingPoseGlobal

정렬을 위해 맞춤 관리자에게 제출된 포즈 쌍 중 첫 번째입니다.

ModelPositionSource

대상에서 모델 공간 위치를 찾을 수 있는 위치입니다. 변환이 바람직하지만 변환을 구울 경우 렌더러 또는 충돌기가 더 적합할 수 있습니다.

PinActive

이 공간 핀이 활성 상태인지 여부 고정 공간 사용

RestorePoseLocal

조작 후 복원할 포즈를 취합니다(있는 경우).

메서드

ExtractModelPose()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

ExtractModelPoseFromCollider()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

ExtractModelPoseFromRenderer()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

ExtractModelPoseFromTransform()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

ForceAttachment()

첨부 파일이 있고 최신 위치에 있는지 확인합니다.

GetModelPoseFromGlobalPosition(Vector3)

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

OnDestroy()

삭제 시 로드된 이벤트에 대한 등록을 취소합니다.

OnLocationUpdate(Pose)

다시 맞춤 작업에 대한 콜백입니다. 잠긴 포즈에 조정 변환을 적용합니다.

PushAlignmentData(IAlignmentManager)

이 시점부터 맞춤 관리자로 데이터를 전달합니다.

ReleaseAttachment()

이전에 만든 첨부 파일 지점을 삭제합니다.

Reset()

맞춤 관리자에서 자체 아티팩트 제거를 포함하여 초기 상태로 돌아가기.

ResetModelingPose()

모델링 포즈를 현재 변환으로 다시 설정합니다.

RestoreOnLoad()

이 사전 설정이 유지된 경우 검사 맞춤 관리자의 데이터베이스 알림에 콜백하고 있는 경우 작업으로 복원합니다.

SendAlignmentData(IAlignmentManager)

관리자에게 필요한 모든 업데이트가 제출되었으며 처리할 준비가 되었음을 알립니다.

SetFrozenPose(Pose)

포즈를 잠긴 공간으로 변환하고 통과합니다.

SetLockedPose(Pose)

잠긴 포즈를 기록하고 관리자에게 데이터를 푸시합니다.

SetSpongyPose(Pose)

포즈를 잠긴 공간으로 변환하고 통과합니다.

Start()

단일 참조 지점에서 월드 잠긴 공간을 고정하기 위한 구성 요소 도우미입니다.

적용 대상