This document is about: FUSION 2
SWITCH TO

Ready Player Me Avatar 통합


Available in the Industries Circle
Circle
Fusion Industries 프로토타이핑 애드온

원칙

이 애드온을 사용하면 Ready Player Me 반신 아바타를 통합할 수 있습니다.

전신 아바타 적응은 아직 추가되지 않았지만 필요한 경우 코드를 쉽게 조정하여 지원할 수 있습니다.

Fusion Industries 애드온 ReadyPlayerMe 아바타

특징

아바타 애드온 호환성

이 애드온은 아바타 애드온과 호환됩니다.

AvatarRepresentation 컴포넌트가 RPMAvatarLoader의 상위 계층에 존재하는 한, 이 호환성은 무엇보다도 다음을 가능하게 합니다:

  • 아바타가 로드되었다는 경고를 듣기 위해 리스너
  • 로드된 ReadyPlayerMe 아바타를 LOD 그룹에 추가

RPMAvatarLoader는 단독으로 사용할 수 있어 UI, 아바타 선택 등에 유용합니다.

아바타 편집

또한 이 애드온은 로드된 ReadyPlayerMe 아바타에 몇 가지 수정 사항을 적용합니다. 모든 수정 사항은 선택 사항이며, RPMAvatarLoader 클래스의 avatarOptionalFeatures 마스크를 사용하여 적용할 수 있습니다:

  • HideRPMHands: 선택하면 ReadyPlayerMe 핸드가 숨겨집니다. VRShared 기반 샘플에 사용된 손과 같이 다른 손 표현 솔루션이 제공되는 경우 관련이 있습니다.
  • OptimizeAvatarRenderers: ReadyPlayerMe 아바타가 URP 컨텍스트에서 잘 표시되고 성능 측면에서 비용이 적게 들도록 합니다(그림자 없음, ...)
  • DetectColorForAvatarDescription: 아바타 텍스처를 분석하여 RPMAvatarInfo.AvatarDescription에 색상이 포함되어 있는지 확인합니다. 피부에 맞게 손 색상을 변경하거나 머리카락 및 옷 색상을 사용하여 아바타의 단순화된 LOD 표현을 사용자 지정하는 데 유용합니다
  • EyeMovementSimulation: ReadyPlayerMe 아바타 눈을 눈 시뮬레이션 시스템에 연결하여 아바타 근처에 있는 GazeTarget 컴포넌트로 물체를 따라갑니다
  • LipSynchronisation: 페이스 메시 블렌드 셰이프를 오큘러스 링 싱크에 연결합니다. MacOS와 webGL에서는 불가능하며 간단한 음성 레벨 감지 시스템으로 대체됩니다
  • LipSyncWeightPonderation: 오큘러스 립싱크 블렌드 셰이프 가중치는 ReadyPlayerMe 아바타 메시에 비해 너무 높은 값을 생성합니다. 따라서 OVRLipSyncContextMorphTarget 코드(여기 참조)를 변경하거나 LateUpdate에서 값을 수정하는 옵션을 사용하여 조정해야 합니다
  • EyeBlinking: ready Player Me가 제공한 눈 깜빡임 스크립트를 아바타에 적용하여 자연스럽게 눈을 깜빡이게 합니다
  • OnLoadedSoundEffect: SoundManager를 사용하여 아바타 다운로드 완료 시 사운드를 재생합니다
  • DownloadThrottling: PerformanceManager를 사용하여 여러 ReadyPlayerMe 아바타 다운로드가 동시에 발생하지 않도록 합니다(대역폭을 포화시켜 네트워크 통신이 제대로 되지 않도록 할 수 있습니다)

기본적으로 모든 옵션이 선택되지만(AllOptions 값), 예를 들어 아바타를 간단한 선택 UI로 보여주기 위해서는 HideRPMHandsOptimizeAvatarRenderers 옵션만 선택하면 됩니다.

캐시 시스템

한 씬에서 동일한 아바타를 여러 번 사용하는 경우 이 애드온은 동일한 아바타의 재다운로드를 방지하는 캐시 시스템을 제공합니다.

동일한 아바타가 두 번째로 다운로드되는 경우, 이미 사용 가능한 경우 첫 번째 아바타의 복사본이 인스턴스화됩니다.

첫 번째 것이 아직 다운로드 중인 경우 두 번째 것은 약간 대기합니다(최대 maxSameDownloadWaitTime, 기본값은 10초).

ReadyPlayerMe는 동일한 URL을 두 번째로 사용할 경우 일부 아바타 게임 객체를 삭제할 수 있습니다. 하지만 애드온의 캐시 시스템이 이를 방지하지만 동시에 두 번의 다운로드가 발생하고 첫 번째 다운로드가 완료되는 데 maxSameDownloadWaitTime 이상이 소요되면 두 번째 다운로드가 트리거 되어 완료 시 첫 번째 아바타가 지워집니다. 이 시나리오는 매우 특수한 경우(복원된 씬이 많은 경우)에서 발생해서는 안 되지만 문제가 되지 않도록 하려면 이 복사본을 만드는 데 시간을 들이는 대신 항상 아바타 복사본을 만드는 것이 가능합니다.
그러려면 RPMAvatarLoader 컴포넌트에서 copyRPMLoaderAvatar를 확인하기만 하면 됩니다(기본적으로 확인되지 않음).

RPMAvatarLibrary

프로젝트에서 프리팹으로 사용할 수 있는 미리 다운로드된 아바타 라이브러리를 씬에 추가할 수 있습니다. 이 라이브러리 컴포넌트인 RPMAvatarLibrary에는 이 프리팹 사이의 매핑이 포함되어 있으며, RPMAvatarLoader에 의해 로드될 때 이 프리팹을 사용할 가짜 URL이 포함되어 있습니다

최신 ReadyPlayerMe avatar의 스킨톤에 주로 유용한 메타데이터 필드를 채울 수 있지만, 라이브러리는 채워지지 않은 경우 메타데이터를 자동으로 감지하려고 시도하므로 메타데이터 항목을 반드시 입력해야 하는 것은 아닙니다.

RPMAvatarLibrary는 마치 한 번 다운로드 받은 것처럼 아바타 캐시에 참조된 프리탭을 미리 입력하기만 하면 됩니다.

설치

이 애드온을 사용하려면 ReadyPlayerMe UPM 패키지가 작동해야 합니다.
그렇게 하기 위해서, ReadyPlayerMe 문서에 설명되어 있듯이 아래 git 패키지를 설치합니다:
https://github.com/readyplayerme/rpm-unity-sdk-core.git

Ready Player Me 코어 패키지(com.readyplayerme.core)의 3.3 버전으로 테스트되었습니다.

의존성

  • Avatar 애드온
  • Feedbabck 애드온
  • Ready Player Me 3.3
  • Oculus.Lipsync (Avatar 애드온 내에 버전 포함)

데모

데모 씬은 Assets\Photon\FusionAddons\RPMAvatar\Demo\Scenes\폴더에서 확인할 수 있습니다.

RPMAvatarLoading 씬은 여러 ReadyPlayerMe 아바타들을 로드합니다:

  • ReadyPlayerMe 온라인 편집기에서 제공하는 URL로 지정된 아바타와 네트워크에 자신의 아바타 URL을 로드하고 동기화하기 위해 UserInfo 컴포넌트를 사용하는 사용자
  • 캐시 시스템을 시연하기 위한 동일한 아바타
  • Fusion의 네트워크화된 객체와 관련이 없는 오프라인 아바타(UI에서 사용될 수 있음, ...).
  • 사용자 정의 아바타 URL과 RPMAvatarLibrary 덕분에 아바타 프리팹이 로드

RPMAvatar 씬은 가장 필요한 기능을 통합한 RPMNetworkRig 프리팹을 사용합니다:

  • 간단한 아바타 url 및 RPM url과 호환
  • 단순 아바타 또는 RPM 아바타 피부, 옷 및 헤어 컬러로 채색되는 낮은 폴리 폴백 제공
  • 그것은 아바타 피부의 색상을 취할 손 모델 포함
  • 최신 LOD 수준의 광고판을 제공합니다
  • EyeMovementSimulation 기능을 보여줍니다. GazeTarget 컴포넌트 덕분에 아바타의 눈은 게임 대상을 따라갑니다. 시선 표적을 포함한 아바타의 머리와 눈은 서로를 바라보게 됩니다.

다운로드

이 애드온은 최신 버전의 애드온 프로젝트에 포함되어 있습니다.

지원하는 토폴로지

  • 공유 모드

변경 내역

  • 버전 2.0.2: 필요한 플랫폼에만 간단한 립싱크 옵션 표시 + 랜덤 아바타 기능 추가
  • 버전 2.0.1: 랜덤 아바타 로드 지원 + 기본 아바타 키 수정
  • 버전 2.0.0: Fusion 2.0 지원
  • 버전 1.0.1: 아바타 V3 머리 및 옷 색상 감지 수정
  • 버전 1.0.0: 최초 릴리즈
Back to top