アバターシステム

From NeosVR Wiki
Jump to navigation Jump to search
This page is a translated version of the page Avatar System and the translation is 100% complete.
Other languages:
English • ‎日本語

Neos自体には、ユーザーアバターとそれに関連する動作の概念はありませんが、ほとんどの状況をカバーする従来型の(ただし柔軟性の高い)アバターシステムを提供するコンポーネントセットが付属しています。ただし、Neosでも他と同じようにニーズに合わせた完全独自アバターシステムを構築することもできますし、アバターをまったく必要としない場合は全て省略することもできます。

このページでは、Neosのアバターシステムを構築する背景にあるアイデアとコンセプト、およびさまざまな動作(音声や動きなど)の処理方法について説明します。

基礎構想

Neosのすべてのワールドは、コンポーネントが付加されたオブジェクトのヒエラルキー(階層)から構成されています。あらゆるアバターシステムはこの同一ヒエラルキーの一部であり、ユーザーのアバターとシーン内の他のオブジェクトとの間に明確な区別はありません。これは、システムに大きな柔軟性を与えるものです。

NeosのワールドはOnUserJoined(参加)イベントとOnUserLeft(退出)イベントを規定します。これらのイベントは、ローカルユーザー(セッションの開始時に暗黙的に参加する)を含む新しいユーザーがセッションに参加・退出するたびに呼び出されます。ユーザーがセッションに参加しても、それ自体は何もしません。アバターはスポーン(出現)せず、声もなく、コントロールもありません。参加したユーザーは、ワールドと対話する方法がありません。

このような動作を実装するには、これらのイベントをリッスン(待機)するコンポーネント(CommonAvatarBuilderとペアになっているSimpleUserSpawnerなど)をワールドに追加する必要があります。 これらのコンポーネントは、新しく参加したユーザーのワールドヒエラルキーに新しいオブジェクトを作成し、ユーザーの入力とマイクサンプルを読み取る適切なコンポーネントをアタッチ(取り付け)してシーン内のオブジェクトに適用したり、3Dモデルやパーティクルシステムなどのビジュアルを提供するコンポーネントをアタッチします。

このプロセスのすべての部分は完全に、あなたと、あなたのニーズ次第です。 構築するものが何であれ、Neosは参加しているすべてのクライアント(および将来参加するクライアント)に自動的に複製されます。また、参加したホストまたはクライアント(必要に応じてワールドの他のクライアント)で構築を行うかどうかもまたあなた次第です。たとえばクライアントは、ローカル上でアクセス可能なデータを使用して、独自のアバターをローカルに構築できます。

Common Avatar System

アバターは多くのアプリケーションにとって非常に重要であるため、Neosには、「Common Avatar System」または単に「Common Avatar」と呼ばれる強力なアバターサブシステムが付属しています。 このシステムは、ツールを使用して典型的なアバターを自動的に構築し、ユーザーの現在アクティブなアバターオブジェクトをクラウドからロードできます。

また、システム内の任意のオブジェクトから新しいアバターを簡単に構築するための一連のコンポーネントが付属しています。ユーザーは、インポートしたモデルや、Neosのツールを使用して作成された図面・形状から、新しいアバターを作成し、LogiXを使用して動作を追加できます。