IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特開2024-129101情報処理方法、情報処理システム及びプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024129101
(43)【公開日】2024-09-26
(54)【発明の名称】情報処理方法、情報処理システム及びプログラム
(51)【国際特許分類】
   G06T 19/00 20110101AFI20240918BHJP
   G06F 3/04845 20220101ALI20240918BHJP
   G06Q 50/10 20120101ALI20240918BHJP
   G06F 3/01 20060101ALN20240918BHJP
【FI】
G06T19/00 300B
G06F3/04845
G06Q50/10
G06F3/01 570
【審査請求】未請求
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2024105954
(22)【出願日】2024-07-01
(62)【分割の表示】P 2022203988の分割
【原出願日】2022-12-21
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110001254
【氏名又は名称】弁理士法人光陽国際特許事務所
(72)【発明者】
【氏名】足利 昂治
(57)【要約】
【課題】仮想空間において商品オブジェクトのカスタマイズを可能とする。
【解決手段】コンピュータが実行する情報処理方法は、ユーザの操作に応じて、ユーザに対応するアバターの仮想空間における動作を制御し、仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うためにアバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させ、アバターによりインターフェースが操作された場合に、当該操作の内容に応じて商品オブジェクトのカスタマイズがなされるように商品オブジェクトに係る設定を変更する。
【選択図】図9
【特許請求の範囲】
【請求項1】
コンピュータが実行する情報処理方法であって、
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御し、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させ、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する、
情報処理方法。
【請求項2】
前記アバターの所定の動作に応じて、前記カスタマイズがなされた前記商品オブジェクトを前記仮想空間において生成する、
請求項1に記載の情報処理方法。
【請求項3】
前記アバターの所定の動作に応じて、生成された前記商品オブジェクトを前記アバターの部位に装着させ、
前記商品オブジェクトを装着した前記アバターが動作した場合には、前記仮想空間における前記商品オブジェクトの位置及び向きを、前記アバターの前記部位の位置及び向きに追従させる、
請求項2に記載の情報処理方法。
【請求項4】
前記商品オブジェクトの見本オブジェクトを前記仮想店舗内に生成し、
前記アバターの動作により前記インターフェースが操作された場合に、当該操作の内容に応じた前記商品オブジェクトの前記カスタマイズの内容が反映されるように前記見本オブジェクトの内容を変更する、
請求項1に記載の情報処理方法。
【請求項5】
前記インターフェースは、前記商品オブジェクトを構成する複数の部分のうち前記カスタマイズの対象となる部分を選択するための対象選択インターフェースを有し、
前記対象選択インターフェースにより前記複数の部分のうち或る部分が選択された場合には、前記見本オブジェクトにおける前記或る部分が前記仮想空間における基準方向を向くように前記見本オブジェクトの向きを変更する、
請求項4に記載の情報処理方法。
【請求項6】
前記基準方向は、前記仮想店舗における所定の正面方向である、
請求項5に記載の情報処理方法。
【請求項7】
前記基準方向は、前記仮想空間における前記見本オブジェクトの位置から前記アバターの位置に向かう方向である、
請求項5に記載の情報処理方法。
【請求項8】
複数のユーザの操作に応じて、前記複数のユーザに対応する複数のアバターの前記仮想空間における動作を制御し、
前記複数のアバターのうち互いに異なる2以上のアバターの動作によりそれぞれ前記インターフェースが操作された場合に、各操作の内容に応じた前記カスタマイズが1つの前記商品オブジェクトに対してなされるように前記商品オブジェクトに係る前記設定を変更する、
請求項1に記載の情報処理方法。
【請求項9】
前記アバターの所定の動作に応じて、前記カスタマイズがなされた前記商品オブジェクトに相当する内容の商品を現実世界において注文するための処理を実行する、
請求項1に記載の情報処理方法。
【請求項10】
注文された前記商品の生産が現実世界において開始されたことに応じて、前記仮想空間における前記商品オブジェクトの生成を開始させる、
請求項9に記載の情報処理方法。
【請求項11】
注文された前記商品が現実世界において前記ユーザに発送されたことに応じて、前記仮想空間において生成された前記商品オブジェクトを前記アバターに付与する、
請求項9に記載の情報処理方法。
【請求項12】
前記ユーザの所定の操作に応じて、デザインに係る前記カスタマイズがなされた前記商品オブジェクトのデザインの一部又は全部に関連付けられた非代替性トークンを、前記ユーザに対応付けて登録させるための処理を実行する、
請求項1に記載の情報処理方法。
【請求項13】
複数のユーザの操作に応じて、前記複数のユーザに対応する複数のアバターの前記仮想空間における動作を制御し、
前記複数のアバターのうち前記仮想店舗内に位置するアバターが装着している商品オブジェクトと同一の商品オブジェクト、又は、前記複数のアバターのうち過去に前記仮想店舗内に位置していたアバターが前記仮想店舗において装着していた商品オブジェクトと同一の商品オブジェクトを前記カスタマイズの対象とする、
請求項1に記載の情報処理方法。
【請求項14】
前記カスタマイズの対象とする商品オブジェクトのデザインの一部又は全部に関連付けられた非代替性トークンが登録されている場合には、前記商品オブジェクトのデザインの前記一部又は全部を変更する前記カスタマイズを許容しない、
請求項13に記載の情報処理方法。
【請求項15】
複数のユーザの操作に応じて、前記複数のユーザに対応する複数のアバターの前記仮想空間における動作を制御し、
前記複数のアバターのうち前記仮想店舗内に位置するアバターが装着している商品オブジェクト、及び、前記複数のアバターのうち過去に前記仮想店舗内に位置していたアバターが前記仮想店舗において装着していた商品オブジェクト、のうちの少なくとも一方を複製した複製オブジェクトを生成して前記仮想店舗内に設置し、
いずれかの前記複製オブジェクトと同一の商品オブジェクトを前記カスタマイズの対象とする、
請求項1に記載の情報処理方法。
【請求項16】
前記仮想店舗において直近で生成された所定数の前記商品オブジェクトを複製した複製オブジェクトを生成して前記仮想店舗内に設置し、
いずれかの前記複製オブジェクトと同一の商品オブジェクトを前記カスタマイズの対象とする、
請求項2に記載の情報処理方法。
【請求項17】
デザインの一部又は全部に関連付けられた非代替性トークンが登録されている商品オブジェクトの複製オブジェクトと、前記非代替性トークンが登録されていない商品オブジェクトの複製オブジェクトとを、前記仮想店舗内の互いに異なる領域に配置する、
請求項15又は16に記載の情報処理方法。
【請求項18】
前記表示部は、ユーザの頭部に装着される頭部装着型装置に設けられており、
前記仮想空間における前記アバターの視点から見た前記仮想店舗及び前記インターフェースを前記表示部に表示させる、
請求項1に記載の情報処理方法。
【請求項19】
前記仮想店舗内に位置する前記アバターを前記仮想店舗とともに前記表示部に表示させる、
請求項1に記載の情報処理方法。
【請求項20】
前記商品オブジェクトは腕時計のオブジェクトである、
請求項1に記載の情報処理方法。
【請求項21】
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御し、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させ、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する、
処理部を備える情報処理システム。
【請求項22】
コンピュータに、
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御する処理、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させる処理、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する処理、
を実行させるプログラム。
【請求項23】
表示部と入力部を備える端末装置のコンピュータが実行する情報処理方法であって、
仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うためにアバターにより操作されるインターフェースを有する仮想店舗を前記表示部に表示し、
前記仮想空間における前記アバターの前記インターフェースへの操作に対応するユーザ操作を前記入力部を介して受け付け、
前記入力部を介して受け付けた前記ユーザ操作に基づく、前記アバターによる前記インターフェースへの操作内容に応じたカスタマイズがなされた前記商品オブジェクトを前記表示部に表示する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、情報処理システム及びプログラムに関する。
【背景技術】
【0002】
従来、コンピュータにより構築された仮想空間において、ユーザの操作に応じてアバターを動作させることで、他のアバターを動作させている他のユーザとコミュニケーションを取ったり、仮想空間において開催されるイベントやゲームに参加したりすることのできるサービスが実現されている。このようなサービスの中には、服や装身具といった商品オブジェクトをアバターに装着させることができるものがある(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008-217142号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、仮想空間における商品オブジェクトは、大きさ、形状及び色といった種々の特徴が予め設定されているため、ユーザの好みやアバターの特徴等に応じて商品オブジェクトのカスタマイズを行うことができないという課題がある。
【0005】
本発明は、仮想空間において商品オブジェクトのカスタマイズを可能とすることを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明に係る情報処理方法は、
コンピュータが実行する情報処理方法であって、
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御し、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させ、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する。
【0007】
上記課題を解決するため、本発明に係る情報処理システムは、
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御し、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させ、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する、
処理部を備える。
【0008】
上記課題を解決するため、本発明に係るプログラムは、
コンピュータに、
ユーザの操作に応じて、前記ユーザに対応するアバターの仮想空間における動作を制御する処理、
前記仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うために前記アバターにより操作されるインターフェースが内部に設けられた仮想店舗を表示部に表示させる処理、
前記アバターにより前記インターフェースが操作された場合に、当該操作の内容に応じて前記商品オブジェクトのカスタマイズがなされるように前記商品オブジェクトに係る設定を変更する処理、
を実行させる。
【0009】
上記課題を解決するため、本発明に係る情報処理方法は、
表示部と入力部を備える端末装置のコンピュータが実行する情報処理方法であって、
仮想空間における仮想店舗であって、商品オブジェクトのカスタマイズを行うためにアバターにより操作されるインターフェースを有する仮想店舗を前記表示部に表示し、
前記仮想空間における前記アバターの前記インターフェースへの操作に対応するユーザ操作を前記入力部を介して受け付け、
前記入力部を介して受け付けた前記ユーザ操作に基づく、前記アバターによる前記インターフェースへの操作内容に応じたカスタマイズがなされた前記商品オブジェクトを前記表示部に表示する。
【発明の効果】
【0010】
本発明によれば、仮想空間において商品オブジェクトのカスタマイズを行うことができる。
【図面の簡単な説明】
【0011】
図1】情報処理システムの構成を示す図である。
図2】サーバの機能構成を示すブロック図である。
図3】ユーザ管理データの内容例を示す図である。
図4】情報処理装置の機能構成を示すブロック図である。
図5】オブジェクトデータの内容例を示す図である。
図6】VR機器の機能構成を示すブロック図である。
図7】VR画面を示す図である。
図8】カスタマイズIFを示す図である。
図9】ベゼルアイコンを選択した状態を示す図である。
図10】ショートバンドアイコンを選択した状態を示す図である。
図11】尾錠アイコンを選択した状態を示す図である。
図12】エクスポートボタンの選択に応じて時計オブジェクトが生成された状態を示す図である。
図13】通常の人型のアバターに時計オブジェクトを装着した状態を示す図である。
図14】二頭身キャラクターのアバターに時計オブジェクトを装着した状態を示す図である。
図15】動物のアバターに時計オブジェクトを装着した状態を示す図である。
図16】複製オブジェクトが陳列されている仮想店舗を示す図である。
図17】仮想店舗運営処理の制御手順を示すフローチャートである。
図18】カスタマイズ処理の制御手順を示すフローチャートである。
図19】オブジェクト調整処理の制御手順を示すフローチャートである。
図20】時計生産処理の制御手順を示すフローチャートである。
図21】変形例に係る情報処理システムの構成を示す図である。
図22】変形例に係るユーザ管理データの内容例を示す図である。
図23】変形例に係るカスタマイズ処理の制御手順を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面に基づいて説明する。
【0013】
(情報処理システムの概要)
図1は、情報処理システム1の構成を示す図である。
情報処理システム1は、サーバ10と、複数の情報処理装置20と、複数のVR機器30(端末装置)とを備える。情報処理システム1は、当該情報処理システム1を利用する複数のユーザに対し、コンピュータにより構築された3次元の仮想空間(メタバース)における種々のサービスを提供する。また、情報処理システム1は、メタバースにおいてVR(仮想現実)を適用したサービスをユーザに提供することができる。VRは、仮想空間に構築された仮想世界をあたかも現実であるかのようにユーザに体験させる技術である。
【0014】
情報処理システム1の各ユーザは、1つの情報処理装置20と、1つのVR機器30とを使用する。情報処理装置20とVR機器30とは、無線通信によるデータの送受信が可能に接続されている。VR機器30は、ユーザにより装着されて用いられるVRヘッドセット31(頭部装着型装置)及びコントローラ32を備える。VR機器30は、VRヘッドセット31及びコントローラ32によりユーザの動作や入力操作を検出し、検出結果を情報処理装置20に送信する。情報処理装置20は、VR機器30が検出したユーザの動作や入力操作に応じて、仮想空間の画像及び音声等のデータをVRヘッドセット31に送信し、画像の表示及び音声の出力を行わせる。このように、ユーザの動作や入力操作に応じて仮想空間の画像をリアルタイムでVRヘッドセット31に表示させたり、音声を出力させたりすることで、VRが実現される。仮想空間においては、ユーザに代わって、アバター40(図13~15参照)と呼ばれるキャラクターが動作する。言い換えると、VRヘッドセット31には、アバター40の視点から見た仮想空間の画像がリアルタイムに映し出される。
【0015】
本実施形態の情報処理システム1は、仮想空間2に構築された仮想店舗200(図7参照)において、商品としての時計(腕時計)に係る各種サービス(以下、「仮想店舗サービス」と記す)を提供する。仮想店舗200において提供される仮想店舗サービスとしては、アバター40が装着可能な時計オブジェクト(商品オブジェクト)のデザインをユーザが自由にカスタマイズするサービス、カスタマイズされた時計オブジェクトを生成してアバター40に装着(試着)させるサービス、カスタマイズされた時計オブジェクトと同一デザインの時計を現実世界において注文するサービスなどがある。これらの詳細については後述する。
【0016】
複数の情報処理装置20は、ネットワークNを介してサーバ10に接続されており、サーバ10との間でデータの送受信が可能である。ネットワークNは、例えばインターネットであるが、これに限定されない。サーバ10は、例えば、仮想店舗200におけるサービスの提供者により管理される。サーバ10は、仮想店舗200におけるサービスの提供に必要な種々のデータを複数の情報処理装置20に送信する。また、サーバ10は、複数の情報処理装置20から、ユーザに係るデータ、及び、時計のカスタマイズや販売に係るデータ等を受信して管理する。
以下、情報処理システム1の各構成要素について詳細に説明する。
【0017】
(サーバの構成)
図2は、サーバ10の機能構成を示すブロック図である。
サーバ10は、CPU11(Central Processing Unit)と、RAM12(Random Access Memory)と、記憶部13と、通信部14と、バス15などを備える。サーバ10の各部は、バス15を介して接続されている。なお、サーバ10は、サーバ10の管理者により使用される操作部や表示部などをさらに備えていてもよい。
【0018】
CPU11は、記憶部13に記憶されているプログラム131を読み出して実行し、各種演算処理を行うことで、サーバ10の各部の動作を制御するプロセッサである。なお、サーバ10は、複数のプロセッサ(例えば複数のCPU)を有していてもよく、本実施形態のCPU11が実行する複数の処理を、当該複数のプロセッサが実行してもよい。この場合において、複数のプロセッサが共通の処理に関与してもよいし、あるいは、複数のプロセッサが独立に異なる処理を並列に実行してもよい。
【0019】
RAM12は、CPU11に作業用のメモリ空間を提供し、一時データを記憶する。
【0020】
記憶部13は、コンピュータとしてのCPU11により読み取り可能な非一時的な記録媒体であり、プログラム131及び各種データを記憶する。記憶部13は、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)等の不揮発性メモリを含む。プログラム131は、コンピュータが読み取り可能なプログラムコードの形態で記憶部13に格納されている。記憶部13に記憶されるデータとしては、情報処理システム1の複数のユーザに係る情報が記録されたユーザ管理データ132などがある。
【0021】
図3は、ユーザ管理データ132の内容例を示す図である。
ユーザ管理データ132における1つの行データは、1人のユーザに対応する。各行データは、「ユーザID」、「アバターID」、「アバター情報」等の項目のデータを含む。
【0022】
「ユーザID」は、各ユーザに割り当てられた固有の符号である。
「アバターID」は、そのユーザに対応するアバター40に割り当てられた固有の符号である。
「アバター情報」は、アバター40の特徴に係る複数の副項目を含む。ここでは、副項目として「全長」、「手首最大径」及び「手首形状」が例示されている。
「全長」は、仮想空間2におけるアバター40の全長(人型のアバター40の場合には、身長)である。
「手首最大径」は、アバター40の手首の最大径である。
「手首形状」は、アバター40の手首の形状である。「手首形状」は、最大径と最小径との比率等の数値により表されていてもよい。
「全長」及び「手首最大径」の単位は、仮想空間2における長さに係る任意の単位長さとすることができる。「全長」、「手首最大径」及び「手首形状」は、後述する時計オブジェクトの大きさ及び/又は形状の自動調整を行う場合に参照される。
ユーザ管理データ132には、図3に示されていない項目のデータがさらに含まれていてもよい。例えば、ユーザの属性、特性、ログイン履歴、及び商品の購買履歴といった項目のデータがさらに含まれていてもよい。
【0023】
図2に戻り、通信部14は、予め定められた通信規格に従った通信動作を行う。通信部14は、この通信動作により、ネットワークNを介して情報処理装置20との間でデータの送受信を行う。
【0024】
(情報処理装置の構成)
図4は、情報処理装置20の機能構成を示すブロック図である。
情報処理装置20は、CPU21(処理部、コンピュータ)と、RAM22と、記憶部23と、操作入力部24と、出力部25と、通信部26と、バス27などを備える。情報処理装置20の各部は、バス27を介して接続されている。情報処理装置20は、例えば、ノートPC又は据置型PCであるが、これらに限られず、タブレット端末又はスマートフォン等であってもよい。
【0025】
CPU21は、記憶部23に記憶されているプログラム231を読み出して実行し、各種演算処理を行うことで、情報処理装置20の各部の動作を制御するプロセッサである。なお、情報処理装置20は、複数のプロセッサ(例えば複数のCPU)を有していてもよく、本実施形態のCPU21が実行する複数の処理を、当該複数のプロセッサが実行してもよい。この場合には、複数のプロセッサにより「処理部」が構成される。この場合において、複数のプロセッサが共通の処理に関与してもよいし、あるいは、複数のプロセッサが独立に異なる処理を並列に実行してもよい。
【0026】
RAM22は、CPU21に作業用のメモリ空間を提供し、一時データを記憶する。
【0027】
記憶部23は、コンピュータとしてのCPU21により読み取り可能な非一時的な記録媒体であり、プログラム231等のプログラム及び各種データを記憶する。記憶部23は、例えばHDD、SSD等の不揮発性メモリを含む。プログラムは、コンピュータ読み取り可能なプログラムコードの形態で記憶部23に格納されている。記憶部23に記憶されるデータとしては、仮想空間2におけるオブジェクトに係る情報が記録されたオブジェクトデータ232などがある。なお、オブジェクトデータ232はサーバ10の記憶部13に記憶されていてもよく、情報処理装置20のCPU21が通信部26を介して、必要に応じてオブジェクトデータ232の情報をサーバ10から取得する態様としてもよい。
【0028】
図5は、オブジェクトデータ232の内容例を示す図である。
オブジェクトデータ232における1つの行データは、1つのオブジェクトに対応する。図5では、仮想空間2上のオブジェクトのうち、仮想店舗200において取り扱われる時計オブジェクトに係るデータが例示されている。各行データは、「オブジェクトID」、「名称」、「表示倍率補正」、「形状補正」、「装着対象アバター」、「カスタマイズ情報」等の項目のデータを含む。
【0029】
「オブジェクトID」は、各オブジェクトに割り当てられた固有の符号である。
「名称」は、各オブジェクトの名称であり、ここでは「時計」である。
【0030】
「表示倍率補正」は、オブジェクトを表示する際の大きさに係る設定である。ここでは、デフォルトの大きさを1とした倍率でオブジェクトの大きさが表されている。値が1より大きい場合には、デフォルトの大きさよりも拡大して表示することを表し、値が1未満である場合には、デフォルトの大きさよりも縮小して表示することを表す。装着対象のアバター40の全長や手首最大径等に応じて「表示倍率補正」の設定が調整されることで、アバター40に合った大きさで時計オブジェクトが表示されるようになる。「表示倍率補正」の設定は、「商品オブジェクトの大きさに係る設定」の一態様である。
なお、オブジェクトの大きさに係る設定は、必ずしも表示倍率によって表されなくてもよく、例えばオブジェクトの大きさ(オブジェクトの全体又は所定部位の幅又は長さ等)を直接指定するものであってもよい。
【0031】
「形状補正」は、オブジェクトを表示する際の形状の補正に係る設定である。ここでは、アバター40に装着したときの時計のバンドの形状が指定されている。例えば「円筒」であれば、バンドが円筒状となるように時計オブジェクトの形状が補正され、「楕円筒」であれば、バンドが楕円筒状となるように時計オブジェクトの形状が補正される。「楕円筒」の場合には、楕円の偏平率がさらに指定されていてもよい。装着対象のアバター40の手首形状に応じて「形状補正」の設定が調整されることで、アバター40に合った形状で時計オブジェクトが表示されるようになる。「形状補正」の設定は、「商品オブジェクトの形状に係る設定」の一態様である。
【0032】
「装着対象アバター」は、オブジェクト(ここでは、時計オブジェクト)がアバター40に装着されている場合における当該アバター40の情報である。ここでは、「装着対象アバター」は、「アバターID」及び「部位」の副項目を含む。「アバターID」は、オブジェクトを装着しているアバター40に対応するアバターIDである。「部位」は、アバター40の複数の部位のうちオブジェクトが装着されている部位を表す。オブジェクトがいずれのアバター40にも装着されていない場合には、「装着対象アバター」は空白データ(空文字)となる。「装着対象アバター」に設定値が入力されている場合には、オブジェクトは、設定されたアバター40の設定された部位の動きに追従するように位置及び向きが随時更新される。これにより、アバター40の部位にオブジェクトが装着されているような表示効果が得られる。
【0033】
「カスタマイズ情報」は、後述する時計オブジェクトのデザインのカスタマイズがなされた場合におけるカスタマイズの内容を表す。具体的には、「カスタマイズ情報」は、「カスタマイズデザインID」、「ベースデザイン」、及び時計の各コンポーネント(部品)の色を表す「ベゼル色」、「フェイス色」等の副項目を含む。
「カスタマイズデザインID」は、その時計オブジェクトに設定されているカスタマイズデザインを表す固有の符号である。
「ベースデザイン」は、カスタマイズのベースとして用いられたデザインを表す固有の符号である。カスタマイズ済のデザインがベースとして用いられた場合には、「ベースデザイン」は、上記のカスタマイズデザインIDとされる。
本実施形態の時計オブジェクトは、コンポーネントとして、ベゼル61、フェイス62(ウォッチフェイス)、ショートバンド63、ロングバンド64、遊環65、及び尾錠66を有する(図9参照)。各コンポーネントは、1つ以上の部品で構成されている。例えば、フェイス62のコンポーネントは、印刷ガラス、液晶ディスプレイ、制御回路、ケース等で構成されている。「カスタマイズ情報」の副項目は、例えば、ベゼル61の色を表す「ベゼル色」、フェイス62の色を表す「フェイス色」、ショートバンド63の色を表す「ショートバンド色」、ロングバンド64の色を表す「ロングバンド色」、遊環65の色を表す「遊環色」、及び尾錠66の色を表す「尾錠色」の各副項目を含む(図5では、このうち「ベゼル色」及び「フェイス色」以外の副項目は省略されている)。時計オブジェクトのデザインのカスタマイズがなされていない場合には、「カスタマイズ情報」における「ベースデザイン」以外の項目が空白データ(空文字)となる。この場合には、時計オブジェクトのデザインは「ベースデザイン」と同一のデザインとなる。
【0034】
図5は、オブジェクトデータ232においてオブジェクトの大きさ、形状、装着対象アバター、及びカスタマイズデザインを特定するためのデータ構成の一例であって、これに限られない。また、オブジェクトデータ232には、図5に示されていないデータ項目がさらに含まれていてもよい。例えば、仮想空間2におけるオブジェクトの位置及び向きや、オブジェクトの外形を特定可能な情報(オブジェクトの3Dモデルデータのファイルパス等)が含まれていてもよい。
また、図5では、時計オブジェクトに係る行データを例示したが、オブジェクトデータ232には、この他にも仮想空間2の構成要素となり得る種々のオブジェクトに係る行データが含まれている。例えば、オブジェクトデータ232には、仮想店舗200の内装や備品、各ユーザのアバター40等のオブジェクトに係るデータが含まれている。アバター40に係るデータの少なくとも一部は、サーバ10のユーザ管理データ132から抽出されてもよい。
また、図5におけるカスタマイズ情報の副項目では、ベゼル色、フェイス色等の各コンポーネントの色の情報が格納されているが、各コンポーネントのデザインパターンを加えるようにしてもよい。例えば、「ベゼルデザイン」という副項目に対して、デザインの種類を表す「ドット柄」を格納する。
【0035】
図4に戻り、操作入力部24は、ユーザの入力操作を受け付けて、入力操作に応じた入力信号をCPU21に出力する。操作入力部24は、例えば、キーボード、マウス、及びタッチパネルといった入力装置を備える。
【0036】
出力部25は、ユーザに対して、情報処理装置20における処理内容や各種ステータス等に係る情報の出力を行う。出力部25は、例えば、液晶ディスプレイ等の表示装置、スピーカー等の音出力装置、LED等の発光装置などを備える。
【0037】
通信部26は、予め定められた通信規格に従った通信動作を行う。通信部26は、この通信動作により、ネットワークNを介してサーバ10との間でデータの送受信を行う。また、通信部26は、VR機器30との間で無線通信によるデータの送受信を行う。
【0038】
(VR機器の構成)
図6は、VR機器30の機能構成を示すブロック図である。
VR機器30は、VRヘッドセット31と、右手用のコントローラ32と、左手用のコントローラ32と、を備える。2つのコントローラ32は、無線又は有線によりVRヘッドセット31とデータ通信可能に接続されている。VRヘッドセット31は、ユーザの頭部に装着されて用いられる。コントローラ32は、ユーザの手に装着又は保持されて用いられる。コントローラ32は、「入力部」に相当する。
【0039】
VRヘッドセット31は、CPU311と、RAM312と、記憶部313と、操作入力部314と、表示部315と、音出力部316と、センサ部317と、通信部318と、バス319などを備える。VRヘッドセット31の各部は、バス319を介して接続されている。
【0040】
CPU311は、記憶部313に記憶されているプログラム3131を読み出して実行し、各種演算処理を行うことで、VRヘッドセット31の各部の動作を制御するプロセッサである。なお、VRヘッドセット31は、複数のプロセッサ(例えば複数のCPU)を有していてもよく、本実施形態のCPU311が実行する複数の処理を、当該複数のプロセッサが実行してもよい。この場合において、複数のプロセッサが共通の処理に関与してもよいし、あるいは、複数のプロセッサが独立に異なる処理を並列に実行してもよい。
【0041】
RAM312は、CPU311に作業用のメモリ空間を提供し、一時データを記憶する。
【0042】
記憶部313は、コンピュータとしてのCPU311により読み取り可能な非一時的な記録媒体であり、プログラム3131及び各種データを記憶する。記憶部313は、例えばフラッシュメモリ等の不揮発性メモリを含む。プログラム3131は、コンピュータ読み取り可能なプログラムコードの形態で記憶部313に格納されている。
【0043】
操作入力部314は、各種スイッチやボタン等を備え、ユーザの入力操作を受け付けて、入力操作に応じた入力信号をCPU311に出力する。また、操作入力部314は、マイクを備えていてもよく、当該マイクによりユーザの音声による入力操作を受け付け可能であってもよい。操作入力部314は、「入力部」に相当する。
【0044】
表示部315は、VRヘッドセット31を装着したユーザにより視認される画像の表示を行う。表示部315は、VRヘッドセット31を装着したユーザが視認可能な位置に設けられた液晶ディスプレイ又は有機ELディスプレイ等を備える。表示部315により表示される画像の画像データは、情報処理装置20からVRヘッドセット31に送信される。表示部315は、CPU311による制御に従って、上記の受信した画像データに基づいて画像を表示する。
【0045】
音出力部316は、VRヘッドセット31を装着したユーザの聴覚により認識される種々の音の出力を行う。音出力部316は、音を出力するスピーカーを備える。音出力部316により出力される音の音データは、情報処理装置20からVRヘッドセット31に送信される。音出力部316は、CPU311による制御に従って、上記の受信した音データに基づいて音を出力する。
【0046】
センサ部317は、VRヘッドセット31を装着したユーザの頭部の動きや向きを検出する。センサ部317は、例えば、3軸加速度センサ、3軸ジャイロセンサ、及び3軸地磁気センサを備える。3軸加速度センサは、ユーザの動きに応じてVRヘッドセット31に加わる各軸方向の加速度を所定のサンプリング周波数で検出し、検出結果として加速度データをCPU311に出力する。3軸ジャイロセンサは、ユーザの動きに応じてVRヘッドセット31に加わる各軸回りの角速度を所定のサンプリング周波数で検出し、検出結果として角速度データをCPU311に出力する。3軸地磁気センサは、VRヘッドセット31を通る地磁気の大きさを所定のサンプリング周波数で検出し、検出結果として地磁気データをCPU311に出力する。3軸加速度センサ、3軸ジャイロセンサ及び3軸地磁気センサから出力されるデータは、互いに直交する3軸についての各信号成分を含む。CPU311は、センサ部317から受信した加速度データ、角速度データ及び地磁気データに基づいて、ユーザの頭部の動きや向きを導出する。センサ部317は、ユーザの動きや向きをユーザ操作として受け付けることが可能であり、「入力部」に相当する。
【0047】
通信部318は、予め定められた通信規格に従った通信動作を行う。通信部318は、この通信動作により、コントローラ32及び情報処理装置20との間で無線通信によるデータの送受信を行う。
【0048】
コントローラ32は、コントローラ32の動作を統括制御するCPU321と、CPU321に作業用のメモリ空間を提供するRAM322と、プログラムや当該プログラムの実行に必要なデータ等が記憶された記憶部323と、操作入力部324と、センサ部325と、VRヘッドセット31とのデータ通信を行う通信部326などを備える。
【0049】
操作入力部324は、各種スイッチ、ボタン、及び操作キー等を備え、ユーザの入力操作を受け付けて、入力操作に応じた入力信号をCPU321に出力する。また、操作入力部324は、ユーザの各指の動きを別個に検出可能であってもよい。
【0050】
センサ部325は、3軸加速度センサ、3軸ジャイロセンサ、及び3軸地磁気センサを備え、コントローラ32を保持又は装着したユーザの手の動きや向きを検出する。センサ部325の構成及び動作は、例えばVRヘッドセット31のセンサ部317と同様であってもよい。
【0051】
なお、VR機器30の構成は上記に限られない。
例えば、VR機器30は、ユーザに保持又は装着されない補助的なセンサ装置をさらに備えていてもよい。このセンサ装置は、例えば、床等に設置されて、ユーザの動き、又はVRヘッドセット31及びコントローラ32の動きをレーザ走査等により光学的に検出する装置であってもよい。
また、両手の動きを別個に検出する必要がない場合等において、一方のコントローラ32を省略してもよい。また、VRヘッドセット31によって、必要なユーザの動作及び入力操作の検出が可能である場合には、コントローラ32を省略してもよい。
【0052】
(情報処理システムの動作)
次に、情報処理システム1の動作について説明する。
以下の動作の説明において、動作主体は、サーバ10のCPU11、情報処理装置20のCPU21、VRヘッドセット31のCPU311、又はコントローラ32のCPU321であるが、説明の便宜上、サーバ10、情報処理装置20、VRヘッドセット31、又はコントローラ32を動作主体として記す場合がある。
また、VR機器30により検出されるユーザの動き及び入力操作を、以下ではまとめて「ユーザの操作」と記す。すなわち、本実施形態の「ユーザの操作」は、VRヘッドセット31の操作入力部314及びコントローラ32の操作入力部324により検出される入力操作と、VRヘッドセット31のセンサ部317及びコントローラ32のセンサ部325により検出される動作とを含むものとする。
また、以下の説明では、VRヘッドセット31における画像の表示動作を中心に説明し、音の出力等の他の動作については説明を省略する。
【0053】
<仮想店舗サービスの開始、及びVRに係る動作>
ユーザは、情報処理システム1により提供される上述の仮想店舗サービスの利用を開始する場合には、VR機器30のVRヘッドセット31及びコントローラ32を装着し、サービスを開始するための所定の操作を行う。当該操作に応じて、情報処理装置20からサーバ10へユーザの認証情報が送信され、サーバ10によるユーザ認証がなされると、認証結果がサーバ10から情報処理装置20に返されて、認証されたユーザに対する仮想店舗サービスが開始される。
【0054】
仮想店舗サービスが開始されると、情報処理装置20からVR機器30のVRヘッドセット31への、仮想店舗200の画像データの送信が開始される。ここでは、仮想店舗200におけるユーザのアバター40の位置が所定の初期位置に設定され、初期位置にいるアバター40の視点から見た仮想店舗200の画像データがVRヘッドセット31に送信される。これに応じて、VRヘッドセット31の表示部315において、受信した画像データに基づいて仮想店舗200のVR画面3151の表示が開始される。
【0055】
図7は、VR画面3151を示す図である。
VR画面3151は、仮想店舗200の内部を3次元で表現した画像を含む。仮想店舗200の内部には、カスタマイズIF(インターフェース)50と、見本オブジェクト60とが設置されている。
【0056】
カスタマイズIF50は、時計オブジェクトのデザインのカスタマイズを行うためにアバター40により操作されるインターフェースである。
【0057】
見本オブジェクト60は、時計オブジェクトを拡大した模型のオブジェクトである。見本オブジェクト60には、カスタマイズIF50により行われているカスタマイズの内容が反映されるようになっている。見本オブジェクト60は、台座201上の空間に配置されている。
見本オブジェクト60において表示されている時刻は、現実世界の時刻が反映されるようになっている。例えば、サーバ10、情報処理装置20及びVR機器30のいずれかにおける設定時刻が見本オブジェクト60における表示時刻に反映される。見本オブジェクト60における表示時刻は、12時間制表示として、午後であれば「PM」マークを点灯させるようにしてもよい。また、24時間制表示としてもよい。
【0058】
仮想店舗200内の各オブジェクト(仮想店舗200の内装、カスタマイズIF50、及び見本オブジェクト60等)の位置、向き、及び形状等は、情報処理装置20のオブジェクトデータ232の情報に基づいて生成される。オブジェクトデータ232における各オブジェクトの情報は、予め情報処理装置20の記憶部23に記憶されていてもよいし、仮想店舗サービスが開始される場合にサーバ10から情報処理装置20に送信されるようになっていてもよい。
【0059】
また、仮想店舗サービスが開始されると、VR機器30によるユーザの操作の検出が開始され、検出結果が継続的に情報処理装置20に送信される。情報処理装置20は、受信したユーザの操作に応じて、仮想店舗200(仮想空間2)におけるアバター40の動作を制御する。すなわち、情報処理装置20は、受信したユーザの操作を、仮想店舗200におけるアバター40の動作に変換し、仮想店舗200におけるアバター40の位置、向き、及び姿勢等をリアルタイムに特定して更新する。そして、情報処理装置20は、更新後の位置及び向きのアバター40の視点から見た仮想店舗200の画像データを生成してVRヘッドセット31に送信する。この画像データの生成及び送信は、所定のフレームレートで繰り返し行われる。VRヘッドセット31の表示部315は、受信した仮想店舗200の画像データに基づいて、上記のフレームレートでVR画面3151を表示する。これにより、VRヘッドセット31を装着しているユーザは、自身の操作に応じて仮想店舗200内を移動及び動作するアバター40の視点で、リアルタイムに仮想店舗200内を視認することができる。
【0060】
VR画面3151はアバター40による一人称視点であるため、基本的にVR画面3151にはアバター40は映らない。ただし、アバター40の視野に入る位置に腕を動かしたり、アバター40の視線を自身の体に向けたりした場合には、アバター40の視界と腕や体との位置関係に応じて、VR画面3151にアバター40の一部が映る。図7では、ユーザが右腕を前方に伸ばす動作をしており、これに応じてアバター40の右手40RがVR画面3151内に映っている。
【0061】
<時計オブジェクトのカスタマイズに係る動作>
図7に示すように、仮想店舗200内では、アバター40の指先から仮想線Lが延び、仮想線Lとオブジェクトとの交点にポインタPが生成されるようになっている。このポインタPを所望の対象の位置に合わせた状態で所定の操作を行うことで、仮想店舗200内の対象を選択することができる。仮想線Lの位置及び向きは、ユーザの操作に応じて特定されるアバター40の手指の位置及び向きに応じて導出される。ポインタPの位置は、導出された仮想線Lと、オブジェクトデータ232から特定される仮想空間2内の各オブジェクトの表面との交点として導出される。なお、仮想線L及びポインタPは、指先とオブジェクトとの距離が所定距離以下である場合に限って表示されるようになっていてもよい。ユーザは、時計オブジェクトのデザインのカスタマイズを行いたい場合には、上記のポインタPを用いて、アバター40の動作によりカスタマイズIF50を操作する。
【0062】
図8は、カスタマイズIF50を示す図である。
カスタマイズIF50は、立て看板状の板状のオブジェクトである。カスタマイズIF50には、対象選択IF51と、色選択IF52と、エクスポートボタン53とが設けられている。
【0063】
対象選択IF51は、時計オブジェクトを構成する複数のコンポーネント(複数の部分)のうちカスタマイズの対象となるコンポーネントを選択するためのインターフェースである。本実施形態の対象選択IF51は、カスタマイズの対象として時計のベゼル61を選択するためのベゼルアイコン511と、フェイス62を選択するためのフェイスアイコン512と、ショートバンド63を選択するためのショートバンドアイコン513と、ロングバンド64を選択するためのロングバンドアイコン514と、遊環65を選択するための遊環アイコン515と、尾錠66を選択するための尾錠アイコン516とを含む。各アイコン511~516は、上述したポインタPを用いて選択することができる。図8に示す例では、選択された1つのアイコン(ここでは、ベゼルアイコン511)が枠で囲まれている。ただし、これに限られず、例えば、選択されたアイコンのみが点灯し、残りのアイコンが消灯するような表示としてもよい。
【0064】
なお、カスタマイズ対象のコンポーネントは例示であり、上記以外のコンポーネントをカスタマイズの対象とすることが可能であってもよい。例えば、シングルの遊環に対応する遊環アイコン515に加えて、トリプル(三連)の遊環に対応する遊環アイコンを表示し、いずれかの遊環アイコンを選択することで、遊嵌の形状をシングル又はトリプルから選択できるようにしてもよい。
【0065】
色選択IF52は、対象選択IF51で選択されたコンポーネントの色を指定するためのインターフェースである。色選択IF52は、互いに異なる複数の色のいずれかに対応する複数のカラーパレット521を含む。各カラーパレット521は、上述したポインタPを用いて選択することができる。色選択IF52に含まれるカラーパレット521の種類は、対象選択IF51のアイコン511~516のうち選択されているアイコンに対応して切り替えられる。すなわち、選択されているアイコンに対応するコンポーネントに対して予め設定されている色のカラーパレット521が、色選択IF52において表示される。
【0066】
対象選択IF51においてアイコン511~516のいずれかを選択した状態で、色選択IF52のいずれかのカラーパレット521を選択することで、アイコン511~516に対応するコンポーネントの色を変更することができる。当該コンポーネントの色の変更は、見本オブジェクト60に反映される。すなわち、情報処理装置20は、アバター40の動作によりカスタマイズIF50が操作された場合に、当該操作の内容に応じた時計オブジェクトのカスタマイズの内容が反映されるように見本オブジェクト60の内容を変更し、変更後の画像データをVRヘッドセット31に送信する。
【0067】
見本オブジェクト60は、カスタマイズ開始時点のデフォルト状態では、各コンポーネントの色が白色となっており、カスタマイズIF50の操作に応じて各コンポーネントの色が随時変更される。デフォルト状態の見本オブジェクト60のデザインは、例えば、図5に示すオブジェクトデータ232における「TYPE01」のベースデザインに相当する。また、見本オブジェクト60は、デフォルト状態において、時刻が表示されたフェイス62が仮想店舗200の正面方向を向くように配置されている。本実施形態では、仮想店舗200の正面方向は、カスタマイズIF50のうち対象選択IF51等が設けられている面が向いている方向である。図7には、デフォルト状態の見本オブジェクト60が示されている。
【0068】
図9は、ベゼルアイコン511を選択した状態を示す図である。
図9では、説明の便宜上、第三者視点で仮想店舗200内を表示する第三者視点画面3152が示されている。第三者視点画面3152は、アバター40の視点とは異なる、仮想空間2上の所定の点から仮想店舗200を見た画像である。言い換えると、第三者視点画面3152は、仮想店舗200内に位置するアバター40を仮想店舗200とともに表示させた画像である。ユーザは、所定の操作を行うことで、VR画面3151と第三者視点画面3152とを切り替えることが可能である。VR画面3151のままカスタマイズを行うことももちろん可能である。VR画面3151を用いてカスタマイズを行う場合、ユーザは、アバター40を仮想店舗200内で移動させることで、見本オブジェクト60を任意の方向から観察することができる。
【0069】
図9では、ベゼルアイコン511が選択され、ベゼル61の色が赤に指定されている。これに応じて、見本オブジェクト60のベゼル61の色が赤に着色されている。
【0070】
図10は、ショートバンドアイコン513を選択した状態を示す図である。
対象選択IF51のアイコン511~516のいずれかが選択されると、選択されたアイコンに対応するコンポーネントがユーザから見やすくなるように、見本オブジェクト60の向きが変更される。詳しくは、情報処理装置20は、対象選択IF51により時計オブジェクトの或るコンポーネントが選択されると、見本オブジェクト60における当該コンポーネントが仮想店舗200(仮想空間2)における基準方向を向くように見本オブジェクト60の向きを変更し、変更後の画像データをVRヘッドセット31に送信する。ここで、基準方向は、例えば仮想店舗200における正面方向である。図10に示す例では、ショートバンドアイコン513が選択されたことに応じて、見本オブジェクト60のショートバンド63が正面方向を向くように見本オブジェクト60が回転している。
なお、基準方向は、仮想店舗200における見本オブジェクト60の位置(例えば、見本オブジェクト60の代表点の位置)からアバター40の位置(例えば、アバター40の代表点の位置)に向かう方向としてもよい。例えば、基準方向をアバター40の顔(顔のいずれかの目)等が向いている面に向かう方向に設定する。これにより、アバター40により対象選択IF51のうち任意のコンポーネントが選択されると、見本オブジェクト60における選択されたコンポーネントがアバター40の顔の方向に向けて表示されるため、アバター40(ユーザ)は選択したコンポーネントが容易に視認可能な状態で時計オブジェクトのカスタマイズを行うことができる。なお、基準方向のこれらの切替えは、操作入力部314を操作することで変更できる。
【0071】
図10では、ショートバンドアイコン513が選択された状態で、ショートバンド63の色が黄色に指定されている。これに応じて、見本オブジェクト60のショートバンド63の色が黄色に着色されている。
【0072】
図11は、尾錠アイコン516を選択した状態を示す図である。
図11では、尾錠アイコン516が選択されたことに応じて、見本オブジェクト60の尾錠66が正面方向を向くように見本オブジェクト60が回転している。この状態で色選択IF52からカラーパレット521を選択することで、尾錠66の色を変更することができる。
【0073】
このように、対象選択IF51のアイコン511~516を選択することで、対応するコンポーネントが正面を向くように見本オブジェクト60が回転し、さらに色選択IF52のカラーパレット521を選択することで、見本オブジェクト60のコンポーネントの色を変更することができる。この操作を繰り返すことで、見本オブジェクト60の各コンポーネントの色を変更してデザインをカスタマイズすることができる。
言い換えると、アバター40によりカスタマイズIF50が操作された場合に、当該操作の内容に応じて時計オブジェクトのカスタマイズがなされるように時計オブジェクトに係る設定が変更される。例えば、カスタマイズの開始時に、オブジェクトデータ232において、カスタマイズ対象の時計オブジェクトに係る新たな行データ(図5に示すカスタマイズ対象データ2321)が生成され、当該カスタマイズ対象データ2321において、「ベゼル色」等のコンポーネントの色の設定が変更されてもよい。また、既存の時計オブジェクトのデザインを上記操作により変更することも可能であり、この場合には、オブジェクトデータ232における当該既存の時計オブジェクトのデザインに係る行データの設定が変更されてもよい。あるいは、この段階では、オブジェクトデータ232における見本オブジェクト60の設定値が、カスタマイズの内容に応じて変更されるようにし、時計オブジェクトを新たに生成するときに、見本オブジェクト60の設定値が新たな時計オブジェクトの行データに反映されるようにしてもよい。
【0074】
デザインのカスタマイズは、複数のユーザにより共同で行うことも可能である。この場合には、複数のユーザがログインし、当該複数のユーザに対応する複数のアバター40が仮想店舗200に入場する。各ユーザの操作に応じた各アバター40の動作に係る情報は、各情報処理装置20からサーバ10を経由して、又は直接、他のユーザの情報処理装置20に送信される。これにより、各ユーザの情報処理装置20において、複数のユーザに対応する複数のアバター40の動作が共有される。各ユーザは、VR画面3151(又は第三者視点画面3152)において他のユーザのアバター40を視認することができる。
【0075】
複数のユーザにより共同でカスタマイズを行う場合には、複数のアバター40のうち互いに異なる2以上のアバター40の動作によりそれぞれカスタマイズIF50が操作されると、各操作の内容に応じたカスタマイズが逐次見本オブジェクト60に反映される。すなわち、複数のアバター40による各操作の内容に応じたカスタマイズが1つの時計オブジェクトに対してなされるように時計オブジェクトに係る設定が変更される。これにより、他のユーザによるコンポーネントのカスタマイズ状況を確認しながら、複数のユーザによって1つの時計オブジェクトのデザインを作り上げることができる。
【0076】
この場合において、アイコン511~516の選択に応じて見本オブジェクト60の対応するコンポーネントが向く基準方向は、或る1人のユーザに対応する1つのアバター40に向かう方向としてもよい。当該1つのアバター40は、例えば、最初に仮想店舗200に入場したアバター40、又は、最後に仮想店舗200に入場したアバター40としてもよい。あるいは、アイコン511~516が選択されるたびに、見本オブジェクト60の対応するコンポーネントが、アイコン511~516を選択したアバター40の方に向くようにしてもよい。また、上記の基準方向は、複数のアバター40のうち見本オブジェクト60との距離が一番近いアバター40に向かう方向としてもよい。これにより、複数のアバター40が仮想店舗200内に位置する場合においても、見本オブジェクト60に一番近いアバター40に向けて選択されたコンポーネントの方向が変わるため、他のアバター40に隠れて見本オブジェクト60が見えにくくなることを抑制することができる。また上記のようにすることで、あるアバター40がカスタマイズIF50を操作する役割を持ち、他のアバター40が見本オブジェクト60のカスタマイズの確認する役割を持つような場合においても、複数のアバター40(ユーザ)で効率的に1つの時計オブジェクトのデザインを作り上げることができる。
【0077】
なお、複数のユーザに対応する複数のアバター40が仮想店舗200に入場している場合において、各ユーザが互いに別個のカスタマイズを行うことも可能である。この場合には、自身によるカスタマイズの内容が見本オブジェクト60に反映され、他のユーザによるカスタマイズの内容は見本オブジェクト60に反映されない。仮想店舗200に異なるアバター40が入場する毎に、それぞれのアバター40に対応する見本オブジェクト60が追加で表示されるようにしてもよい。これにより、仮想店舗200内に位置する複数のアバター40それぞれがカスタマイズする時計オブジェクトの状況を、複数のアバター40(ユーザ)で共有することができる。
【0078】
上述のようにデザインのカスタマイズを行った後で、エクスポートボタン53を選択することで(アバター40が所定の動作を行うことで)、カスタマイズ後のデザインの時計オブジェクト70(商品オブジェクト)が、仮想空間2において生成される。
【0079】
図12は、エクスポートボタン53の選択に応じて時計オブジェクト70が生成された状態を示す図である。
エクスポートボタン53が選択されると、その時点における見本オブジェクト60と同一のデザインの時計オブジェクト70が、エクスポートボタン53の近傍に生成され、表示(出力)される。また、時計オブジェクト70の生成に応じて、見本オブジェクト60は、図7に示すデフォルト状態の配色に戻る。
【0080】
生成された時計オブジェクト70は、アバター40が所定の動作を行うことで、アバター40の複数の部位のうちいずれかの部位に保持又は装着される。時計オブジェクト70を保持又は装着したアバター40が仮想空間2において動作すると、仮想空間2における時計オブジェクト70の位置及び向きが、アバター40の装着部位の位置及び向きに追従する。例えば、アバター40が手首に時計オブジェクト70を装着した状態で手首をひねる動作を行うと、当該動作に応じて時計オブジェクト70も回転する。
【0081】
<時計オブジェクトの調整に係る動作>
本実施形態では、アバター40が時計オブジェクト70を保持又は装着する動作を行った場合(すなわち、時計オブジェクト70を保持又は装着する動作をアバター40に行わせるための操作がユーザにより行われた場合)、仮想空間2における時計オブジェクト70の大きさ及び形状の少なくとも一方に係る設定がアバター40の特徴に応じて自動的に調整される。なお、アバター40が時計オブジェクト70を保持したときには時計オブジェクト70の大きさ及び形状に係る設定が変更されず、アバター40が時計オブジェクト70を装着したときに時計オブジェクト70の大きさ及び形状の少なくとも一方に係る設定が変更されるようにしてもよい。
時計オブジェクト70を保持する動作をアバター40に行わせるためのユーザの操作は、特には限られないが、例えば、アバター40の手が時計オブジェクト70から所定距離以内となる状態で、コントローラ32により、対象を掴むための所定のグラブ操作を行うものであってもよい。時計オブジェクト70を装着する動作をアバター40に行わせるためのユーザの操作は、特には限られないが、例えば、アバター40が時計オブジェクト70を保持した状態で、コントローラ32により、対象を装着するための所定の装着操作を行うものであってもよい。
【0082】
例えば、仮想空間2におけるアバター40の大きさに応じて、仮想空間2における時計オブジェクトの大きさに係る設定が調整される。
具体的には、図3に示すユーザ管理データ132の「アバター情報」のうち「全長」又は「手首最大径」の設定値に応じて、図5に示すオブジェクトデータ232の「表示倍率補正」の設定値が調整される。
一例を挙げると、仮想空間2における時計オブジェクト70の最大幅が、仮想空間2におけるアバター40の「全長」に応じた長さとなるように、時計オブジェクト70が拡大又は縮小される(「表示倍率補正」の設定値が調整される)。
あるいは、アバター40の複数の部位のうち時計オブジェクト70を保持又は装着させる部位の大きさ(本実施形態では、「手首最大径」)に応じて、仮想空間2における時計オブジェクト70の大きさに係る設定(「表示倍率補正」)が調整される。例えば、時計オブジェクト70のバンドが円筒形である場合、バンドの内径がアバター40の「手首最大径」に一致するように「表示倍率補正」が調整される。
【0083】
また、アバター40の複数の部位のうち時計オブジェクト70を装着させる部位の形状に合うように、時計オブジェクト70の形状に係る設定が調整されてもよい。
具体的には、ユーザ管理データ132の「アバター情報」のうち「手首形状」の設定値に応じて、オブジェクトデータ232の「形状補正」の設定値が変更される。例えば、アバター40の「手首形状」が「円筒」であれば、これに合わせて時計オブジェクト70の「形状補正」が「円筒」に設定され、アバター40の「手首形状」が「楕円筒」であれば、これに合わせて時計オブジェクト70の「形状補正」が「楕円筒」に設定される。
【0084】
図13は、通常の人型のアバター40に時計オブジェクト70を装着した状態を示す図である。
図14は、二頭身キャラクターのアバター40に時計オブジェクト70を装着した状態を示す図である。
図15は、動物のアバター40に時計オブジェクト70を装着した状態を示す図である。
図14及び図15に示すように、アバター40は、必ずしも通常の人型のキャラクターであるとは限らない。このため、時計オブジェクト70を装着する部位(手首)の大きさや形状も様々である。本実施形態では、このようなアバター40の多様な特徴に応じて、時計オブジェクト70の大きさ及び形状の少なくとも一方が自動的に調整される。
【0085】
図13図15の右側には、エクスポートボタン53の選択に応じて生成されたときのデフォルト状態の(「表示倍率補正」が「1」の)時計オブジェクト70が示されている。図13~15の各アバター40の手首の最大径は、デフォルト状態の時計オブジェクト70のバンドの内径より小さい。このため、いずれのアバター40の手首に時計オブジェクト70を装着させる場合にも、時計オブジェクト70は、デフォルト状態よりも縮小される。このときの縮小率は、アバター40の手首の大きさ(最大径)に応じて調整される。手首の大きさは、図13の人型のアバター40が最も小さく、図14の二頭身キャラクターのアバター40、図15の動物のアバター40の順に大きくなる。よって、調整後の「表示倍率補正」の値は、図13のアバター40に装着する場合が最も小さく、図15のアバター40に装着する場合が最も大きくなる。
【0086】
アバター40の手首(又は手首に相当する部位)が円筒ではなく楕円筒又は偏平である場合(例えばペンギンのように、偏平な翼が手首に相当するようなアバター40の場合)には、アバター40の手首の形状に応じて「形状補正」の設定が調整される。
【0087】
なお、手首が概念できない種類の動物のアバター40の場合等において、手首以外の部位(例えば、頭部や胴体等)に時計オブジェクト70を装着させてもよい。この場合には、装着させる部位の大きさや形状に応じて時計オブジェクト70の大きさや形状が調整される。また、手首が概念できる種類の人型等のアバター40の場合であっても、手首以外の部位(頭部、胴体、足首等)に時計オブジェクト70を装着させてもよい。
【0088】
また、アバター40に時計オブジェクト70を保持又は装着させるための操作をユーザが行った際に、アバター40のうち時計オブジェクト70に最も近い部位の特徴(大きさ及び/又は形状)に合わせて時計オブジェクト70の大きさ及び/又は形状が調整されてもよい。一例を挙げると、時計オブジェクト70に最も近いアバター40の部位が手首である場合には、手首に合わせて時計オブジェクト70の大きさ及び/又は形状が調整され、時計オブジェクト70に最も近いアバター40の部位が頭部である場合には、頭部に合わせて時計オブジェクト70の大きさ及び/又は形状が調整されてもよい。
また、時計オブジェクト70の大きさ及び/又は形状の調整が行われるのは、アバター40による時計オブジェクト70を保持又は装着させるための操作が行われた場合に限定されない。例えば、時計オブジェクト70を生成する動作(すなわち、エクスポートボタン53を選択する動作)をアバター40に行わせるための操作が行われた場合に、時計オブジェクト70の大きさ及び/又は形状が調整されてもよい。具体的には、図13の人型のアバター40によってエクスポートボタン53が選択された場合、図12のエクスポートボタン53の近傍に生成されて表示される時計オブジェクト70は、人型のアバター40に保持又は装着される部位の大きさや形状に調整された状態で出力(表示)される。また、図15の動物のアバター40によってエクスポートボタン53が選択された場合、エクスポートボタン53の近傍に生成されて表示される時計オブジェクト70は、動物のアバター40に保持又は装着される部位の大きさや形状に調整された状態で出力(表示)される。つまり、エクスポートボタン53を選択したアバター40に応じて、生成される時計オブジェクト70の大きさや形状が調整される。なお、この場合、エクスポートボタン53を選択したアバター40の情報(アバターID等)をVR機器30から情報処理装置20に送信すればよい。これによれば、図12において、アバター40がエクスポートボタン53を選択した場合にカスタマイズIF50内に出力(表示)される時計オブジェクト70の大きさや形状を、アバター40の種類に応じて異ならせることができる。
【0089】
また、仮想店舗200の壁面の一部に鏡を設け(又は、ユーザの操作により壁面の一部を鏡に変更可能とし)、アバター40の視点でこの鏡を見ることで、鏡に映ったアバター40がVR画面3151に映るようにしてもよい。これにより、VR画面3151においても、ユーザがアバター40及び時計オブジェクト70を視認することができる。
【0090】
<複製オブジェクトの生成に係る動作>
上記では、図7に示すデフォルト状態の白色の見本オブジェクト60をカスタマイズのベースモデルとしたが、これに限られず、ベースモデルをユーザが選択できるようにしてもよい。
例えば、複数のユーザに対応する複数のアバター40のうち、仮想店舗200内に位置するアバター40が装着している時計オブジェクト70と同一の時計オブジェクト70、又は、複数のアバター40のうち過去に仮想店舗200内に位置していたアバター40が仮想店舗200において装着していた時計オブジェクト70と同一の時計オブジェクト70をカスタマイズの対象とすることが可能であってもよい。
この場合において、複数のアバター40のうち仮想店舗200内に位置するアバターが装着している時計オブジェクト70、及び、複数のアバター40のうち過去に仮想店舗200内に位置していたアバター40が仮想店舗200において装着していた時計オブジェクト70、のうちの少なくとも一方を複製した複製オブジェクト80を生成して仮想店舗200内に陳列(設置)し、いずれかの複製オブジェクト80と同一の時計オブジェクト70をカスタマイズの対象とすることが可能であってもよい。
【0091】
図16は、複製オブジェクト80が陳列されている仮想店舗200を示す図である。
図16に示す仮想店舗200には、他のユーザに対応する動物のアバター40が入場している。この動物のアバター40が装着している時計オブジェクト70aを複製した複製オブジェクト80aが、仮想店舗200内の左方に位置する棚202に陳列されている。また、棚202には、過去に仮想店舗200に入場した他のアバター40が仮想店舗200において装着していた時計オブジェクト70b、70c、70d(図示略)の複製オブジェクト80b、80c、80dも陳列されている。
【0092】
ユーザが、ポインタPを用いて複製オブジェクト80a~80dのいずれかを選択すると、選択された複製オブジェクト80がカスタマイズのベースモデルとなる。このベースモデルの選択に応じて、図5に示すカスタマイズ対象データ2321の「ベースデザイン」に、選択した複製オブジェクト80aに対応する符号が入力される。ここでは、複製オブジェクト80aがベースモデルとして選択されたものとする。ベースモデルが選択されると、図16に示すように、当該ベースモデル(複製オブジェクト80a)のデザインが見本オブジェクト60に反映される。この状態でカスタマイズIF50を操作することで、複製オブジェクト80aをベースにしたカスタマイズを行うことができる。
【0093】
なお、複製オブジェクト80は、現在又は過去に他のユーザのアバター40が装着している(装着していた)時計オブジェクト70の複製に限られない。例えば、ユーザ自身のアバター40が現在装着している時計オブジェクト70の複製を複製オブジェクト80としてもよい。あるいは、仮想店舗200において直近で(最後に)生成された所定数の時計オブジェクト70の複製を複製オブジェクト80としてもよい。あるいは、仮想店舗200の運営を管理するユーザ(個人や企業等の団体)によって予め準備(カスタマイズ)された時計オブジェクト70に対する複数オブジェクト80であってもよい。これらの複製オブジェクト80も、カスタマイズのベースモデルとすることができる。
仮想店舗200内の棚202に陳列される複製オブジェクト80は、アバター40が装着している(装着していた)時計オブジェクト70の複製と、仮想店舗200の運営を管理するユーザによって準備された時計70の複製とが、それぞれ棚202に並べるようにしてもよい。これら2種類の複製を棚202に陳列する際には、それぞれの種類の複製を別々の棚202に置くようにしてもよい。
また、各ユーザが、自身のアバター40が装着している時計オブジェクト70の複製を許可するか否かを選択可能としてもよい。
【0094】
<現実世界における時計の注文及び生産に係る動作>
本実施形態の仮想店舗サービスでは、仮想店舗200においてカスタマイズがなされた時計オブジェクト70に相当する内容の(例えば、同一デザインの)時計を、現実世界において注文することができる。例えば、仮想店舗200内に設けられた図示しない注文カウンターにおいてアバター40が所定の動作(例えば、注文ボタンを押す動作)を行うことで、上記の注文を行うことができる。注文がなされると、情報処理装置20は、サーバ10に対して注文要求を送信する。注文要求は、例えば、注文された時計の機種、カスタマイズの内容、及び注文を行ったアバター40に対応するユーザの情報等を含む。サーバ10に対して注文要求を送信する処理は、「商品を現実世界において注文するための処理」に相当する。
サーバ10は、受信した注文要求に基づいて、現実世界において時計を生産し、ユーザへ発送するための処理を実行する。
【0095】
また、現実世界における時計の生産を、仮想空間2における時計オブジェクト70の生成に連動させてもよい。すなわち、注文された時計の生産が現実世界において開始されたことに応じて、仮想空間2における時計オブジェクト70の生成を開始させてもよい。また、注文された時計が現実世界においてユーザに発送されたことに応じて、仮想空間2において生成された時計オブジェクト70をアバター40に付与してもよい。
これらの場合には、現実世界の時計と連動して生成される時計オブジェクト(以下、「連動生産時計オブジェクト」と記す)は、仮想店舗200においてエクスポートボタン53により生成される時計オブジェクト70と区別されてもよい。例えば、エクスポートボタン53により生成される時計オブジェクト70は、仮想空間2のうち仮想店舗200の内部においてのみアバター40が保持及び装着可能な試着用オブジェクトとし、連動生産時計オブジェクトは、仮想店舗200の内外を問わず仮想空間2の任意の位置でアバター40が保持及び装着可能なオブジェクトとしてもよい。連動生産時計オブジェクトも、「商品オブジェクト」の一態様である。
なお、エクスポートボタン53により生成された時計オブジェクト70をアバター40が保持及び装着した状態で、アバター40が仮想店舗200から出た場合、当該時計オブジェクト70はアバター40から自動的に保持及び装着していない状態になるようにしてもよい。
また、エクスポートボタン53により生成された時計オブジェクト70と、連動生産時計オブジェクトとを区別するために、オブジェクトデータ232の行データに、これらを区別可能な情報(例えば時計オブジェクト70は0、連動生産時計オブジェクトは1)を副項目として設けるようにしてもよい。
【0096】
また、現実世界の時計と連動して連動生産時計オブジェクトを生成する場合には、仮想空間2において連動生産時計オブジェクトを生成する仮想工場を設け、仮想工場における連動生産時計オブジェクトの生成過程を、アバター40を通じて見ることができるようにしてもよい。
この場合、現実世界の生産工場において、注文された時計の生産指示書による生産指示が現実のシステム上で入力されると、仮想空間2の仮想工場においても同一の生産指示が入力されて連動生産時計オブジェクトの生成が開始されるようになっていてもよい。
また、現実世界の生産工場において、注文された時計の出荷指示書による出荷指示が現実のシステム上で入力されると、仮想空間2の仮想工場においても同一の出荷指示が入力されて、連動生産時計オブジェクトがアバター40に付与されるようになっていてもよい。
【0097】
<仮想店舗運営処理>
次に、上記の仮想店舗サービスに係る動作を実現するために情報処理システム1において実行される仮想店舗運営処理について説明する。以下では、仮想店舗運営処理のうち情報処理装置20のCPU21により実行される処理に着目して説明する。
【0098】
図17は、仮想店舗運営処理の制御手順を示すフローチャートである。
仮想店舗運営処理が開始されると、情報処理装置20のCPU21は、ユーザがログインし仮想店舗サービスが開始されたか否かを判別する(ステップS101)。仮想店舗サービスが開始されていないと判別された場合には(ステップS101で“NO”)、CPU21は、再度ステップS101を実行する。
【0099】
仮想店舗サービスが開始されたと判別された場合には(ステップS101で“YES”)、CPU21は、VR機器30からのユーザの操作に係る操作情報の受信、及び、受信した操作情報に基づく仮想空間2におけるアバター40の制御を開始する(ステップS102)。また、CPU21は、アバター40の位置及び向きに応じたVR画面3151又は第三者視点画面3152の画像データの生成、及びVRヘッドセット31への送信を開始する(ステップS103)。以降の各ステップにおいても、操作情報に基づくアバター40の制御、並びに、VR画面3151又は第三者視点画面3152の画像データの生成及びVRヘッドセット31への送信が継続して行われるが、便宜上、これらの処理については説明を省略する。
【0100】
CPU21は、アバター40によるカスタマイズIF50の操作が開始されたか否かを判別する(ステップS104)。カスタマイズIF50の操作が開始されていないと判別された場合には(ステップS104で“NO”)、CPU21は、処理をステップS109に移行させる。カスタマイズIF50の操作が開始されたと判別された場合には(ステップS104で“YES”)、CPU21は、カスタマイズ処理を開始する(ステップS105)。
【0101】
図18は、カスタマイズ処理の制御手順を示すフローチャートである。
カスタマイズ処理が呼び出されると、CPU21は、見本オブジェクト60の色及び向きを上述したデフォルト状態の色及び向きに変更する(ステップS201)。また、CPU21は、オブジェクトデータ232において、カスタマイズ対象の時計オブジェクト70に係るカスタマイズ対象データ2321(行データ)を生成する(ステップS202)。カスタマイズ対象データ2321は、後述するステップS211において生成される予定の時計オブジェクト70に係る行データに相当する。
【0102】
CPU21は、カスタマイズのベースモデルとしていずれかの複製オブジェクト80が選択されているか否かを判別する(ステップS203)。カスタマイズのベースモデルとしていずれかの複製オブジェクト80が選択されていると判別された場合には(ステップS203で“YES”)、CPU21は、選択されている複製オブジェクト80の内容(ここでは、各コンポーネントの色)を見本オブジェクト60に反映させる(ステップS204)。また、ステップS204において、CPU21は、選択されている複製オブジェクト80の内容を、ステップS202で生成したカスタマイズ対象データ2321に反映させる。すなわち、CPU21は、カスタマイズ対象データ2321における各コンポーネントの色の設定を、複製オブジェクト80の各コンポーネントの色に変更する。
【0103】
ステップS204が終了した場合、又は、ステップS203において、カスタマイズのベースモデルとして複製オブジェクト80が選択されていないと判別された場合には(ステップS203で“NO”)、CPU21は、対象選択IF51のアイコン511~516のいずれかを選択するアバター40の動作により、カスタマイズ対象のコンポーネントが選択されたか否かを判別する(ステップS205)。コンポーネントが選択されたと判別された場合には(ステップS205で“YES”)、CPU21は、選択されたコンポーネントが基準方向を向くように見本オブジェクト60を回転させる(ステップS206)。
【0104】
CPU21は、色選択IF52のいずれかのカラーパレット521を選択するアバター40の動作により、コンポーネントの色が指定されたか否かを判別する(ステップS207)。コンポーネントの色が指定されたと判別された場合には(ステップS207で“YES”)、CPU21は、見本オブジェクト60における選択中のコンポーネントの色を、指定された色に着色する(ステップS208)。また、CPU21は、ステップS202で生成したカスタマイズ対象データ2321において対応するコンポーネントの色の設定を変更する(ステップS209)。このステップS209は、「商品オブジェクトのカスタマイズがなされるように商品オブジェクトに係る設定を変更する処理」に相当する。
【0105】
ステップS209が終了した場合には、CPU21は、処理をステップS210に移行させる。また、ステップS205において、コンポーネントが選択されていないと判別された場合(ステップS205で“NO”)、及び、ステップS207において、コンポーネントの色が指定されていないと判別された場合(ステップS207で“NO”)にも、CPU21は、処理をステップS210に移行させる。ステップS210では、CPU21は、アバター40によりエクスポートボタン53が操作されたか否かを判別し、エクスポートボタン53が操作されていないと判別された場合には(ステップS210で“NO”)、処理をステップS205に戻す。
【0106】
エクスポートボタン53が操作されたと判別された場合には(ステップS210で“YES”)、CPU21は、その時点におけるカスタマイズ対象データ2321に基づいて、その時点における見本オブジェクト60と同一のデザインの時計オブジェクト70を生成し、所定位置に表示(出力)させる(ステップS211)。
なお、上記では、ステップS202においてカスタマイズ対象データ2321を生成し、カスタマイズIF50に対する操作に応じてその設定を逐次変更し、ステップS211においてカスタマイズ対象データ2321に基づいて時計オブジェクト70を生成したが、これに代えて、以下の処理としてもよい。すなわち、カスタマイズIF50の操作に応じて、オブジェクトデータ232における見本オブジェクト60の行データにおけるコンポーネントの色の設定を逐次変更し、ステップS211において、その時点における見本オブジェクト60の行データの設定を反映させた内容の時計オブジェクト70(及びカスタマイズ対象データ2321)を生成してもよい。
ステップS211が終了すると、CPU21は、カスタマイズ処理を終了させて、処理を図17の仮想店舗運営処理に戻す。
【0107】
図17においてカスタマイズ処理(ステップS105)が終了すると、CPU21は、オブジェクト調整処理を実行する(ステップS106)。
【0108】
図19は、オブジェクト調整処理の制御手順を示すフローチャートである。
オブジェクト調整処理が呼び出されると、CPU21は、時計オブジェクト70を保持又は装着する動作をアバター40に行わせるための操作が、ユーザによりなされたか否かを判別する(ステップS301)。当該操作が行われたと判別された場合には(ステップS301で“YES”)、CPU21は、アバター40の全長、並びに時計オブジェクト70を保持又は装着する部位の大きさ及び形状を特定する(ステップS302)。ここでは、CPU21は、サーバ10から、図3に示すユーザ管理データ132の「アバター情報」(「全長」、「手首最大径」、及び「手首形状」)を取得し、取得した情報に基づいて上記部位の大きさ及び形状を特定する。あるいは、ユーザ管理データ132の「アバター情報」が事前に取得されてオブジェクトデータ232に記録されている場合には、CPU21は、オブジェクトデータ232を参照して上記部位の大きさ及び形状を特定する。なお、「全長」及び「手首最大径」のうちの一方を取得して次のステップS303で用いてもよい。
【0109】
CPU21は、ステップS302で取得したアバター40の全長又は部位の大きさに応じて、時計オブジェクト70の大きさに係る設定(図5のオブジェクトデータ232における「表示倍率補正」)を調整する(ステップS303)。また、CPU21は、ステップS302で取得した部位の形状に応じて、時計オブジェクト70の形状に係る設定(オブジェクトデータ232における「形状補正」)を調整する(ステップS304)。なお、時計オブジェクト70のデフォルトの大きさで、アバター40の部位の大きさに適合する場合には、ステップS303が省略される。また、時計オブジェクト70のデフォルトの形状で、アバター40の部位の形状に適合する場合には、ステップS304が省略される。
【0110】
CPU21は、大きさ及び/又は形状に係る設定が調整された時計オブジェクト70を、アバター40に保持又は装着させる(ステップS305)。ここでは、CPU21は、図5のオブジェクトデータ232における「装着対象アバター」に、装着(保持)対象のアバター40のアバターID及び装着(保持)部位を記録する。ステップS305が終了すると、CPU21は、オブジェクト調整処理を終了させて、処理を図17の仮想店舗運営処理に戻す。
【0111】
図17においてオブジェクト調整処理(ステップS106)が終了すると、CPU21は、現実世界において時計を注文するための操作がなされたか否かを判別する(ステップS107)。当該操作がなされていないと判別された場合には(ステップS107で“NO”)、CPU21は、処理をステップS109に移行させる。当該操作がなされたと判別された場合には(ステップS107で“YES”)、CPU21は、後述する時計生産処理を開始する(ステップS108)。
【0112】
ステップS108が終了すると、CPU21は、アバター40が仮想店舗200から退場したか否かを判別する(ステップS109)。アバター40が仮想店舗200から退場していないと判別された場合には(ステップS109で“NO”)、CPU21は、処理をステップS104に戻す。アバター40が仮想店舗200から退場したと判別された場合には(ステップS109で“YES”)、CPU21は、仮想店舗運営処理を終了させる。
【0113】
図20は、時計生産処理の制御手順を示すフローチャートである。
時計生産処理が開始されると、CPU21は、注文された時計のカスタマイズの内容等に係る情報を含む上述の注文要求を、サーバ10に送信する(ステップS401)。サーバ10は、受信した情報に基づいて、現実世界において時計を生産し、ユーザへ発送するための処理を実行する。また、サーバ10は、現実世界における時計の生産工程の進捗状況に係る情報を適宜情報処理装置20に送信する。例えば、サーバ10は、現実世界において時計の生産が開始された場合に、生産開始情報を情報処理装置20に送信する。また、サーバ10は、現実世界において時計がユーザに発送された場合に、発送情報を情報処理装置20に送信する。
【0114】
CPU21は、上記の生産開始情報を受信したか否かに基づいて、現実世界において時計の生産が開始されたか否かを判別する(ステップS402)。現実世界において時計の生産が開始されていないと判別された場合には(ステップS402で“NO”)、CPU21は、再度ステップS402を実行する。現実世界において時計の生産が開始されたと判別された場合には(ステップS402で“YES”)、CPU21は、仮想空間2において(例えば、上述の仮想工場において)、連動生産時計オブジェクトの生成を開始させる(ステップS403)。
【0115】
CPU21は、上記の発送情報を受信したか否かに基づいて、現実世界において時計がユーザに発送されたか否かを判別する(ステップS404)。現実世界において時計がユーザに発送されていないと判別された場合には(ステップS404で“NO”)、CPU21は、再度ステップS404を実行する。現実世界において時計がユーザに発送されたと判別された場合には(ステップS404で“YES”)、CPU21は、仮想空間2において連動生産時計オブジェクトをアバター40に付与する(ステップS405)。ステップS405の処理は、アバター40の手首に連動生産時計オブジェクトを装着させる処理であってもよいし、アバター40に関連付けられた所持品のリストに連動生産時計オブジェクトを追加すること等によって、アバター40が連動生産時計オブジェクトを装着できる状態とする処理であってもよい。また、仮想世界においても現実世界と同様に、仮想工場からアバター40に対して連動生産時計オブジェクトが発送される場合には、連動生産時計オブジェクトを発送することが、連動生産時計オブジェクトをアバター40に付与することに相当する。
ステップS405が終了すると、CPU21は、時計生産処理を終了させる。
【0116】
(変形例)
続いて上記実施形態の変形例について説明する。以下では、上記実施形態との相違点について説明し、上記実施形態と共通する構成については共通する符号を付して説明を省略する。以下では、上記実施形態の方法でカスタマイズされた時計オブジェクト70のデザインを「カスタマイズデザイン」と記す。
【0117】
本変形例では、カスタマイズデザインの一部又は全部に関連付けられた非代替性トークン(Non-Fungible Token、以下「NFT」と記す)を、カスタマイズを行ったユーザに対応付けて登録することができる。NFTは、画像、動画、又は音声といったデジタルコンテンツについての唯一性や保有者をブロックチェーン技術により証明する、代替不可能なデジタルデータである。NFTは、NFTマーケットプレイスにおいて購入や販売を行うこともできる。
【0118】
図21は、変形例に係る情報処理システム1の構成を示す図である。
本変形例に係る情報処理システム1は、ネットワークNを介してサーバ10及び情報処理装置20に接続されたNFT管理システム90を備える。NFT管理システム90は、ブロックチェーン91を含む。NFT管理システム90は、NFTに係る情報をブロックチェーン91において記録すること等によりNFTを管理する。NFTに係る情報は、例えば、NFTの保有者、NFTの生成日時、及びNFTに関連付けられている対象物(NFTが保有者を証明する対象物であって、本実施形態では、時計オブジェクト70のカスタマイズデザイン)の情報を含む。なお、NFT管理システム90は、情報処理システム1の外部に設けられたブロックチェーンとの間で情報の送受信を行って上記のNFTに係る情報をブロックチェーンに記録させるものであってもよい。
【0119】
時計オブジェクト70のカスタマイズデザインに係るNFTの登録タイミングは、特には限定されない。一例を挙げると、上記実施形態の方法でデザインをカスタマイズした時計オブジェクト70を生成したタイミング、又は、当該時計オブジェクト70と同一デザインの現実世界の時計を注文したタイミング等において、ユーザによる追加の指示に応じてNFTが登録されるようにしてもよい。NFTを登録する場合には、情報処理装置20からサーバ10へ、NFTの登録要求が送信される。この登録要求は、例えば、生成された時計オブジェクト70に係るカスタマイズデザインの情報、当該カスタマイズデザインのうちNFTを関連付けて登録する部分(デザインの一部又は全部)を指定する情報、及びNFTの所有者となるユーザの情報等を含む。サーバ10に対してNFTの登録要求を送信する処理は、「NFTをユーザに対応付けて登録させるための処理」に相当する。
サーバ10は、受信した登録要求に基づいてNFT管理システム90にNFTを登録させるとともに、ユーザ管理データ132において、ユーザに対応付けてNFTに係る情報を記録する。
【0120】
図22は、変形例に係るユーザ管理データ132の内容例を示す図である。
本変形例におけるユーザ管理データ132は、「ユーザID」及び「アバターID」に加えて「保有NFT情報」の項目のデータを含む。
「保有NFT情報」は、その行データに対応するユーザが保有しているNFTに係る情報を含む。ここでは、「保有NFT情報」は、「NFTID」、「カスタマイズデザインID」及び「対象範囲」の副項目を含む。
「NFTID」は、その行データに対応するユーザが保有しているNFTを特定可能な符号である。
「カスタマイズデザインID」は、各カスタマイズデザインに付された固有の符号である。サーバ10の記憶部13には、「カスタマイズデザインID」の符号から、当該符号に対応するカスタマイズデザインの内容を特定することができるデータベースが含まれていてもよい。
「対象範囲」は、時計オブジェクト70のカスタマイズデザインのうち、NFTが関連付けられている対象の範囲を表す。例えば、図22において、NFTIDが「N033」であるNFTは、デザインIDが「D2921」であるカスタマイズデザインのうちベゼル及びフェイスからなる部分に関連付けられて登録されている。また、NFTIDが「N059」であるNFTは、デザインIDが「D3418」であるカスタマイズデザインの全部に関連付けられて登録されている。
【0121】
上記実施形態の方法による時計オブジェクト70のデザインのカスタマイズにおいて、NFTが登録されているカスタマイズデザインとの関係でカスタマイズに制約を加えてもよい。
例えば、ベースモデルのデザイン(カスタマイズの対象とする時計オブジェクトのデザイン)の一部(又は全部)に関連付けられたNFTが登録されている場合には、当該デザインのうちNFTが登録されている一部(又は全部)を変更するカスタマイズを許容しないこととしてもよい。
【0122】
この場合のカスタマイズ処理のフローチャートを図23に示す。図23は、図18のカスタマイズ処理のステップS205の後にステップS212を追加し、ステップS211の後にステップS213、S214を追加したものに相当する。図23に示すカスタマイズ処理のステップS205において、コンポーネントが選択されたと判別された場合には(ステップS205で“YES”)、CPU21は、NFTの登録により変更が許可されないコンポーネントであるか否かの判別を行う(ステップS212)。変更が許可されないコンポーネントではないと判別された場合には(ステップS212で“NO”)、CPU21は、処理をステップS206に移行させる。また、変更が許可されないコンポーネントであると判別された場合には(ステップS212で“YES”)、CPU21は、処理をステップS210に移行させる。
【0123】
また、ステップS211において時計オブジェクト70が生成されると、CPU21は、NFTの登録を指示するユーザ操作がなされているか否かを判別する(ステップS213)。当該ユーザ操作がなされていると判別された場合には(ステップS213で“YES”)、CPU21は、上述したNFTの登録要求をサーバ10に送信する(ステップS214)。ステップS214の処理が終了した場合、又は、ステップS213において、NFTの登録を指示するユーザ操作がなされていないと判別された場合には(ステップS213で“NO”)、CPU21は、カスタマイズ処理を終了させる。
【0124】
なお、ベースモデルのデザインの一部(又は全部)に関連付けられたNFTが登録されている場合に、当該のデザインのうちNFTが登録されている一部(又は全部)をそのまま含むようなカスタマイズを許容しないこととしてもよい。言い換えると、ベースモデルのデザインのうちNFTが登録されている一部(又は全部)については、当該一部(又は全部)とは異なるデザインとなるようにデザインの変更が強制されるようにしてもよい。
この場合には、例えば、図18に示すカスタマイズ処理のステップS210において、エクスポートボタン53の操作がなされたと判別された場合に(ステップS210で“YES”)、NFTが登録されているデザインを含むか否かの判別を行う判別ステップを実行すればよい。当該判別ステップにおいて、NFTが登録されているデザインを含まないと判別された場合には、処理はステップS211に移行される。また、当該判別ステップにおいて、NFTが登録されているデザインを含むと判別された場合には、処理はステップS205に移行される。
【0125】
また、図16に示したように仮想店舗200に複製オブジェクト80を陳列する場合において、デザインの一部(又は全部)に関連付けられたNFTが登録されている時計オブジェクト70の複製オブジェクト80と、NFTが登録されていない時計オブジェクト70の複製オブジェクト80とを、仮想店舗200内の互いに異なる領域に配置してもよい。例えば、図16に示す2段の棚202のうちの上段に、NFTが登録されている時計オブジェクト70を配置し、下段に、NFTが登録されていない時計オブジェクト70を配置してもよい。
【0126】
(効果)
以上のように、本実施形態に係る情報処理方法において、コンピュータとしてのCPU21は、ユーザの操作に応じて、ユーザに対応するアバター40の仮想空間2における動作を制御し、仮想空間2における仮想店舗200であって、時計オブジェクト70のカスタマイズを行うためにアバター40により操作されるカスタマイズIF50が内部に設けられた仮想店舗200を表示部315に表示させ、アバター40によりカスタマイズIF50が操作された場合に、当該操作の内容に応じて時計オブジェクト70のカスタマイズがなされるように時計オブジェクト70に係る設定を変更する。これにより、仮想空間2において、ユーザの好みやアバター40の特徴等に応じて時計オブジェクト70のカスタマイズを行うことができる。また、仮想店舗200内に設けられたカスタマイズIF50をアバター40が操作することに応じて時計オブジェクト70のカスタマイズが行われるようにすることで、仮想空間2の世界観への没入感を損なわずに自然にカスタマイズを行うことができる。
【0127】
また、CPU21は、アバター40の所定の動作に応じて、カスタマイズがなされた時計オブジェクト70を仮想空間2において生成する。これにより、カスタマイズがなされた時計オブジェクト70を仮想空間2において利用することができる。
【0128】
また、CPU21は、アバター40の所定の動作に応じて、生成された時計オブジェクト70をアバター40の部位に装着させ、時計オブジェクト70を装着したアバター40が動作した場合には、仮想空間2における時計オブジェクト70の位置及び向きを、アバター40の部位の位置及び向きに追従させる。これにより、カスタマイズがなされた時計オブジェクト70をアバター40が装着しているように見せることができる。
【0129】
また、CPU21は、時計オブジェクト70の見本オブジェクト60を仮想店舗200内に生成し、アバター40の動作によりカスタマイズIF50が操作された場合に、当該操作の内容に応じた時計オブジェクト70のカスタマイズの内容が反映されるように見本オブジェクト60の内容を変更する。これによれば、ユーザが行っているカスタマイズの状況を、見本オブジェクト60を用いて分かりやすく示すことができる。
【0130】
また、カスタマイズIF50は、時計オブジェクト70を構成する複数のコンポーネントのうちカスタマイズの対象となるコンポーネントを選択するための対象選択IF51を有し、CPU21は、対象選択IF51により複数のコンポーネントのうち或るコンポーネントが選択された場合には、見本オブジェクト60における上記或るコンポーネントが仮想空間2における基準方向を向くように見本オブジェクト60の向きを変更する。これにより、カスタマイズの対象となっているコンポーネントをユーザに分かりやすく示すことができる。
【0131】
また、基準方向は、仮想店舗200における所定の正面方向である。これにより、ユーザは、正面方向を向いているコンポーネントを確認することで、カスタマイズの対象となっているコンポーネントを容易に把握することができる。
【0132】
また、基準方向は、仮想空間2における見本オブジェクト60の位置からアバター40の位置に向かう方向としてもよい。これにより、アバター40の一人称視点(VR画面3151)において、カスタマイズ対象のコンポーネントを見やすくすることができる。
【0133】
また、CPU21は、複数のユーザの操作に応じて、複数のユーザに対応する複数のアバター40の仮想空間2における動作を制御し、複数のアバター40のうち互いに異なる2以上のアバター40の動作によりそれぞれカスタマイズIF50が操作された場合に、各操作の内容に応じたカスタマイズが1つの時計オブジェクト70に対してなされるように時計オブジェクト70に係る設定を変更する。これにより、他のユーザによるコンポーネントのカスタマイズ状況を確認しながら、複数のユーザによって1つの時計オブジェクト70のデザインを作り上げることができる。
【0134】
また、CPU21は、アバター40の所定の動作に応じて、カスタマイズがなされた時計オブジェクト70に相当する内容の商品を現実世界において注文するための処理を実行する。これにより、ユーザは、仮想店舗200におけるカスタマイズの内容が反映された時計を現実世界において購入することができる。
【0135】
また、CPU21は、注文された時計の生産が現実世界において開始されたことに応じて、仮想空間2における連動生産時計オブジェクトの生成を開始させる。これにより、現実世界における時計の生産と、仮想空間2における連動生産時計オブジェクトの生成とが連動しているような演出を行うことができる。
【0136】
また、CPU21は、注文された時計が現実世界においてユーザに発送されたことに応じて、仮想空間2において生成された連動生産時計オブジェクトをアバター40に付与する。これにより、現実世界における時計の発送と、仮想空間2における連動生産時計オブジェクトのアバター40への付与とが連動しているような演出を行うことができる。
【0137】
また、CPU21は、ユーザの所定の操作に応じて、デザインに係るカスタマイズがなされた時計オブジェクト70のデザインの一部又は全部に関連付けられたNFTを、ユーザに対応付けて登録させるための処理を実行する。これにより、時計オブジェクト70のカスタマイズデザインの一部又は全部を対象としたNFTをユーザに提供するサービスを実現することができる。また、これによって仮想店舗サービスの付加価値を高めることができる。
【0138】
また、CPU21は、複数のユーザの操作に応じて、複数のユーザに対応する複数のアバター40の仮想空間2における動作を制御し、複数のアバター40のうち仮想店舗200内に位置するアバター40が装着している時計オブジェクト70と同一の時計オブジェクト70、又は、複数のアバター40のうち過去に仮想店舗200内に位置していたアバター40が仮想店舗200において装着していた時計オブジェクト70と同一の時計オブジェクト70をカスタマイズの対象(ベースモデル)とする。これにより、他のユーザ(アバター40)が装着している時計オブジェクト70を参考にしてデザインのカスタマイズを行うことが可能となる。例えば、他のユーザ(アバター40)が装着している時計オブジェクト70のデザインが気に入った場合に、この気に入ったデザインを元に、容易に所望のデザインへのカスタマイズを行うことができる。
【0139】
また、CPU21は、カスタマイズの対象とする時計オブジェクト70のデザインの一部又は全部に関連付けられたNFTが登録されている場合には、時計オブジェクト70のデザインの一部又は全部を変更するカスタマイズを許容しない。これにより、NFTが登録されているデザインを保護することができる。
【0140】
また、CPU21は、複数のユーザの操作に応じて、複数のユーザに対応する複数のアバター40の仮想空間2における動作を制御し、複数のアバター40のうち仮想店舗200内に位置するアバター40が装着している時計オブジェクト70、及び、複数のアバター40のうち過去に仮想店舗200内に位置していたアバター40が仮想店舗200において装着していた時計オブジェクト70、のうちの少なくとも一方を複製した複製オブジェクトを生成して仮想店舗200内に設置し、いずれかの複製オブジェクトと同一の時計オブジェクト70をカスタマイズの対象とする。これにより、ユーザが所望するデザインに近い複製オブジェクト80をベースモデルとしてカスタマイズを行うことが可能となるため、より容易に所望のデザインへのカスタマイズを行うことができる。また、仮想店舗200内に複製オブジェクト80を設置することで、ユーザにカスタマイズのアイデアを提供することができる。また、ユーザは、複製オブジェクト80から、デザインのトレンドを把握することができる。
【0141】
また、CPU21は、仮想店舗200において直近で生成された所定数の時計オブジェクト70を複製した複製オブジェクト80を生成して仮想店舗200内に設置し、いずれかの複製オブジェクト80と同一の時計オブジェクト70をカスタマイズの対象とする。これにより、仮想店舗200におけるデザインのカスタマイズのトレンドを把握することができ、自身のカスタマイズの参考にすることができる。
【0142】
また、CPU21は、デザインの一部又は全部に関連付けられたNFTが登録されている時計オブジェクト70の複製オブジェクト80と、NFTが登録されていない時計オブジェクト70の複製オブジェクト80とを、仮想店舗200内の互いに異なる領域に配置する。これにより、複製オブジェクト80のデザインに関連付けてNFTが登録されているか否かを容易に把握することができる。
【0143】
また、表示部315は、ユーザの頭部に装着されるVRヘッドセット31に設けられており、CPU21は、仮想空間2におけるアバター40の視点から見た仮想店舗200及びカスタマイズIF50をディスプレイに表示させる。これにより、仮想店舗サービスにおいてVRを適用することができる。すなわち、仮想空間2に構築された仮想店舗200をあたかも現実であるかのようにユーザに体験させることができる。
【0144】
また、CPU21は、仮想店舗200内に位置するアバター40を仮想店舗200とともに表示部315に表示させる。これにより、第三者視点画面3152を用いて仮想店舗サービスを提供することができる。
【0145】
また、商品オブジェクトは、時計オブジェクト70であってもよい。これにより、時計のデザインのカスタマイズに係るサービス等を含む仮想店舗サービスを提供することができる。
【0146】
また、本実施形態に係る情報処理システム1は、処理部としてのCPU21を備え、CPU21は、ユーザの操作に応じて、ユーザに対応するアバター40の仮想空間2における動作を制御し、仮想空間2における仮想店舗200であって、時計オブジェクト70のカスタマイズを行うためにアバター40により操作されるカスタマイズIF50が内部に設けられた仮想店舗200を表示部315に表示させ、アバター40によりカスタマイズIF50が操作された場合に、当該操作の内容に応じて時計オブジェクト70のカスタマイズがなされるように時計オブジェクト70に係る設定を変更する。これにより、仮想空間2において、ユーザの好みやアバター40の特徴等に応じて時計オブジェクト70のカスタマイズを行うことができる。また、仮想店舗200内に設けられたカスタマイズIF50をアバター40が操作することに応じて時計オブジェクト70のカスタマイズが行われるようにすることで、仮想空間2の世界観への没入感を損なわずに自然にカスタマイズを行うことができる。
【0147】
また、本実施形態に係るプログラム231は、コンピュータとしてのCPU21に、ユーザの操作に応じて、ユーザに対応するアバター40の仮想空間2における動作を制御する処理、仮想空間2における仮想店舗200であって、時計オブジェクト70のカスタマイズを行うためにアバター40により操作されるカスタマイズIF50が内部に設けられた仮想店舗200を表示部315に表示させる処理、アバター40によりカスタマイズIF50が操作された場合に、当該操作の内容に応じて時計オブジェクト70のカスタマイズがなされるように時計オブジェクト70に係る設定を変更する処理、を実行させる。これにより、仮想空間2において、ユーザの好みやアバター40の特徴等に応じて時計オブジェクト70のカスタマイズを行うことができる。また、仮想店舗200内に設けられたカスタマイズIF50をアバター40が操作することに応じて時計オブジェクト70のカスタマイズが行われるようにすることで、仮想空間2の世界観への没入感を損なわずに自然にカスタマイズを行うことができる。
【0148】
また、本実施形態に係る情報処理方法において、端末装置のコンピュータとしてのVR機器30のCPU311は、仮想空間2における仮想店舗200であって、時計オブジェクト70のカスタマイズを行うためにアバター40により操作されるカスタマイズIF50を有する仮想店舗200を表示部315に表示し、仮想空間2におけるアバター40のカスタマイズIF50への操作に対応するユーザ操作を入力部としての操作入力部314、センサ部317及びコントローラ32を介して受け付け、入力部を介して受け付けたユーザ操作に基づく、アバター40によるカスタマイズIF50への操作内容に応じたカスタマイズがなされた時計オブジェクト70を表示部315に表示する。これにより、仮想空間2において、ユーザの好みやアバター40の特徴等に応じて時計オブジェクト70のカスタマイズを行うことができる。また、仮想店舗200内に設けられたカスタマイズIF50をアバター40が操作することに応じて時計オブジェクト70のカスタマイズが行われるようにすることで、仮想空間2の世界観への没入感を損なわずに自然にカスタマイズを行うことができる。
【0149】
(その他)
なお、上記実施形態における記述は、本発明に係る情報処理方法、情報処理システム及びプログラムの一例であり、これに限定されるものではない。
例えば、VR機器30(例えばVRヘッドセット31)に情報処理装置20の機能を統合し、情報処理装置20を省略してもよい。この場合には、VR機器30(VRヘッドセット31)が、本発明に係る「情報処理装置」に相当する。
【0150】
また、ユーザがVRヘッドセット31を装着せずにアバター40を操作する態様としてもよい。この場合には、VRヘッドセット31に代えて、ユーザが視認可能な位置に設けられた通常のディスプレイ(例えば、情報処理装置20の出力部25に含まれる液晶ディスプレイ等)に仮想空間2の画像が表示される。この場合に表示される画面は、VR機器30によりユーザの動きを検出できる場合にはVR画面3151としてもよい。また、VR画面3151に代えて第三者視点画面3152を表示させてもよい。例えば、ユーザがコントローラ32を操作することで、仮想空間2内でアバター40を第三者視点で動作させる態様としてもよい。
【0151】
また、上記実施形態では、仮想店舗サービスの開始後は、VR機器30と情報処理装置20の協働によって各種のサービスや動作を実行するようにしたが、これに限定されるものではない。例えば、情報処理装置20の機能を統合したサーバ10と、VR機器30とで仮想店舗サービスを実行するようにしてもよい。この場合、VR機器30の操作入力部324やセンサ部325から出力された信号は通信部326を介して、サーバ10の通信部14に送信する。サーバ10は、受信したユーザの操作に応じて、仮想店舗200(仮想空間2)におけるアバター40の動作を制御する。すなわち、サーバ10は上記で説明した情報処理装置20と同様の処理を行い、仮想店舗200の画像データを生成してVR機器30に送信する。
【0152】
また、上記実施形態では、時計オブジェクト70の各コンポーネントの色の組み合わせを変更するカスタマイズを例示したが、カスタマイズの内容はこれに限定されない。例えば、コンポーネントの外観に、ユーザによる手書きの(又は、予め用意された)模様を付すこと等が可能であってもよい。また、コンポーネントの形状を変更するカスタマイズが可能であってもよい。
【0153】
また、上記実施形態では、時計オブジェクト70のデザインのカスタマイズを行う場合を例示したが、カスタマイズの対象はデザインに限られない。例えば、時計オブジェクト70の機能のカスタマイズが可能であってもよい。
【0154】
また、商品オブジェクトのカスタマイズを行うためのインターフェースは、上記実施形態に例示したカスタマイズIF50に限られず、アバター40により操作することが可能であればどのようなインターフェースであってもよい。
【0155】
また、商品オブジェクトとして時計オブジェクト70を例示したが、これに限られず、仮想空間2において取り扱われる任意の商品オブジェクトに本発明を適用することができる。
【0156】
また、以上の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として記憶部23のHDD、SSDを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ、CD-ROM等の情報記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
【0157】
また、上記実施形態におけるサーバ10、情報処理装置20、及びVR機器30の各構成要素の細部構成及び細部動作に関しては、本発明の趣旨を逸脱することのない範囲で適宜変更可能であることは勿論である。
【0158】
本発明の実施の形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
【符号の説明】
【0159】
1 情報処理システム
2 仮想空間
200 仮想店舗
201 台座
202 棚
10 サーバ
11 CPU
12 RAM
13 記憶部
131 プログラム
132 ユーザ管理データ
14 通信部
15 バス
20 情報処理装置
21 CPU(処理部、コンピュータ)
22 RAM
23 記憶部
231 プログラム
232 オブジェクトデータ
2321 カスタマイズ対象データ
24 操作入力部
25 出力部
26 通信部
27 バス
30 VR機器(端末装置)
31 VRヘッドセット
311 CPU
312 RAM
313 記憶部
3131 プログラム
314 操作入力部(入力部)
315 表示部
3151 VR画面
3152 第三者視点画面
316 音出力部
317 センサ部(入力部)
318 通信部
319 バス
32 コントローラ(入力部)
40 アバター
40L 左手
40R 右手
50 カスタマイズIF(インターフェース)
51 対象選択IF
511 ベゼルアイコン
512 フェイスアイコン
513 ショートバンドアイコン
514 ロングバンドアイコン
515 遊環アイコン
516 尾錠アイコン
52 色選択IF
521 カラーパレット
53 エクスポートボタン
60 見本オブジェクト
61 ベゼル
62 フェイス
63 ショートバンド
64 ロングバンド
65 遊環
66 尾錠
70 時計オブジェクト(商品オブジェクト)
80、80a~80d 複製オブジェクト
90 NFT管理システム
91 ブロックチェーン
L 仮想線
P ポインタ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23