アバターシステム

From Neos Wiki
Revision as of 22:13, 18 December 2019 by Toyakun (talk | contribs) (Created page with "NeosのワールドはOnUserJoined(参加)イベントとOnUserLeft(退出)イベントを規定します。これらのイベントは、ローカルユーザー(...")
Jump to navigation Jump to search
Other languages:
English • ‎čeština • ‎日本語 • ‎한국어

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

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

基礎構想

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

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

To provide such behaviors, you need to add a component to the world that listens to these events, such as the SimpleUserSpawner paired with CommonAvatarBuilder. These components will create new objects in the world hierarchy for newly joined users, attach appropriate components that will read the user's inputs and microphone samples and apply it to the objects in the scene and attach components that provide visuals, such as 3D models or particle systems.

All parts of this process are completely up to you and your needs. Whatever you construct, Neos will automatically replicate to all joined clients (and clients who will join in the future). It's also up to you whether you do the construction on the host or the client who joined (or some other client in the world, if you really want to) - for example clients can construct their own avatars locally, using their locally accessible data.

Common Avatar System

Because avatars are crucial for most applications, Neos comes with a powerful avatar subsystem that you can use (and that's automatically utilized in its own official worlds), called the "Common Avatar System" or just "Common Avatar". This system automatically constructs typical avatars with tools and allows to load user's currently active avatar object from the cloud.

It also comes with a set of components to easily construct new avatars from arbitrary objects right within the system, allowing users to make new avatars from imported models, drawings and shapes made using tools found in Neos and add behaviors using LogiX.