ワールド
ワールドとは
ワールドは景観や体験をひとまとまりにした空間的コンテンツです。
ワールドをもとにスペースやイベントなどの空間インスタンスが作られます。 それぞれの空間インスタンスには複数のプレイヤーが存在でき、プレイヤーは任意のタイミングで出入りすることが可能です。 誰も居なくなったスペースや終了したイベントなどでは、空間インスタンスが破棄されます。
空間をつくれば、それが自然にマルチプレイヤーで体験できるようにワールドの機能群は設計されています。
ワールドはUnityのSceneです。3Dモデリングを行ったり、他のクリエイターが作ったアセットを購入し配置することでオリジナルの景観が作成できます。 clusterで掴んで移動したり、座ったり、操作できるもの一般をアイテムと呼びます。 GameObjectをアイテムにすることで基本的なインタラクションが実現できます。
アイテムに加えて、条件に基づいて処理を変えたり、ゲームのような高度なインタラクションを作るために二種類の方法があります。
- トリガー・ギミック
- Unityのコンポーネントを複数組み合わせてインタラクションを記述する方法です。
- とっつきやすいですが、扱えるデータの種類に制限があり拡張性は低いです。
- ClusterScript
- JavaScriptによってインタラクションを記述します。
- 拡張性は高いですが、プログラミングが必要です。
どちらの方法でもネットワークプログラミングは不要です。 これら二つを組み合わせて使うこともできますが、基本的にはどちらか片方を選んで作ることが推奨されています。
Tips
Cluster Creators Guide - バーチャル空間(メタバース)のワールドのつくり方を学ぶなら↗
clusterのワールドを作るために必要な手順を色々紹介しています。 こういう風につくるんだ、こんなことできるんだな?というくらいで読んでみましょう!はじめての方でも取り掛かれるガイドも用意しています!
ワールド内の状態(トリガー・ギミックやアイテムの状態など)は基本的には空間インスタンスの終了とともに消滅しますが、データをより柔軟に扱うこともできます。
- セーブデータ
- ゲームのセーブデータのように、プレイヤーのデータを保存してふたたび利用することができます。
- プレイヤー毎、ワールド毎に別々のデータが保存されます。他のワールドのデータと混ざることはありません。
- 外部通信
- 空間インスタンス内からcluster外部のサーバーと通信できます。
- これにより、ワールドをまたがるデータの処理、外部のWeb APIの利用などが行えます。
ワールドの管理
CCKからワールドをアップロードすると最初は非公開の状態になります。 そこから公開を行うことでプレイヤーがワールドを見つけて入れるようになります。
- 非公開
- アップロード済みだが公開されていない状態で、動作のテストなどを行います。
- 公開済み
- ワールド一覧などに表示され、プレイヤーが入れる状態。
公開したワールドを後から非公開にすることもできます。 また、公開されたワールドはイベント会場として使えるように設定することもできます。
アップロードや公開の手順については、ワールドの作成とアップロードやワールドの公開をご覧ください。
ワールドクラフトでのワールド作成
ワールドはワールドクラフトを使うとUnityやCreator Kitを使わずに作成することもできます。
ワールドクラフトはクラフトアイテムをアプリ内で複数人で同時に配置できる機能です。 ワールドクラフトの空間インスタンスはプレイヤーが全員いなくなっても、インスタンスが持続するという特徴があります。
ワールドクラフトはワールドとして投稿することもできます。投稿されたワールドからスペースやイベントなどの空間インスタンスが生成されるとき、投稿時の空間インスタンスがコピーされた状態から開始されます。空間インスタンスの終了時には状態は破棄され、元のワールドクラフトには影響を与えません。