(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024146049
(43)【公開日】2024-10-15
(54)【発明の名称】プログラム
(51)【国際特許分類】
G06F 3/04815 20220101AFI20241004BHJP
G06F 3/0488 20220101ALI20241004BHJP
A63F 13/5255 20140101ALI20241004BHJP
A63F 13/2145 20140101ALI20241004BHJP
A63F 13/426 20140101ALI20241004BHJP
A63F 13/55 20140101ALI20241004BHJP
【FI】
G06F3/04815
G06F3/0488
A63F13/5255
A63F13/2145
A63F13/426
A63F13/55
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023058732
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】110000442
【氏名又は名称】弁理士法人武和国際特許事務所
(72)【発明者】
【氏名】松原 夏葉
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA27
5E555BA20
5E555BB20
5E555BC08
5E555CA12
5E555CB12
5E555CB16
5E555DC05
5E555DC24
5E555FA00
(57)【要約】
【課題】プレイヤの好みに合わせた3Dオブジェクトのカスタマイズを、直感的で且つシンプルに実現可能なプログラムを提供する。
【解決手段】プログラムは、タッチパネル式の表示部を備えるコンピュータを、3Dオブジェクトを仮想カメラで撮像して生成した2D画像を、表示部の編集領域に表示させる表示手段と、3Dオブジェクト及び仮想カメラの位置関係を変更する変更手段として機能させる。変更手段は、編集領域に対して実行されたタッチ操作に従って、3Dオブジェクト及び仮想カメラの位置関係を、第1方法で変更し、編集領域と異なる領域に対して実行されたタッチ操作に従って、3Dオブジェクト及び仮想カメラの位置関係を、第1方法と異なる第2方法で変更する。表示手段は、3Dオブジェクト及び仮想カメラの位置関係が変更される度に、新たな2D画像を表示部に表示させる。
【選択図】
図12
【特許請求の範囲】
【請求項1】
タッチパネル式の表示部を備えるコンピュータを、
3Dオブジェクトを仮想カメラで撮像して生成した2D画像を、前記表示部の編集領域に表示させる表示手段と、
前記3Dオブジェクト及び前記仮想カメラの位置関係を変更する変更手段として機能させ、
前記変更手段は、
前記編集領域に対して実行されたタッチ操作に従って、前記3Dオブジェクト及び前記仮想カメラの位置関係を、第1方法で変更し、
前記編集領域と異なる領域に対して実行されたタッチ操作に従って、前記3Dオブジェクト及び前記仮想カメラの位置関係を、前記第1方法と異なる第2方法で変更し、
前記表示手段は、前記3Dオブジェクト及び前記仮想カメラの位置関係が変更される度に、新たな前記2D画像を前記表示部に表示させる、プログラム。
【請求項2】
請求項1に記載のプログラムにおいて、
前記変更手段は、
前記第1方法として、前記3Dオブジェクト及び前記仮想カメラの一方を、第1軸周りに回転させ、
前記第2方法として、前記3Dオブジェクト及び前記仮想カメラの一方を、前記第1軸と交差する第2軸周りに回転させる、プログラム。
【請求項3】
請求項2に記載のプログラムにおいて、
前記変更手段は、
前記編集領域に対するスワイプ操作に応じて、前記3Dオブジェクト及び前記仮想カメラの一方を、スワイプ距離に対応する角度回転させ、
前記編集領域と異なる領域に表示されたアイコンに対するタップ操作に応じて、前記3Dオブジェクト及び前記仮想カメラの一方を、予め定められた角度回転させる、プログラム。
【請求項4】
請求項3に記載のプログラムにおいて、
前記第1軸は、前記仮想カメラの光軸に直交し、
前記第2軸は、前記仮想カメラの光軸と平行である、プログラム。
【請求項5】
請求項1に記載のプログラムにおいて、
前記表示手段は、
前記3Dオブジェクト及び前記仮想カメラの位置関係を変更する変更アイコンを、前記2D画像に関連付けて前記編集領域に表示し、
前記編集領域内を移動する前記2D画像に追従して前記変更アイコンを移動させ、
前記変更アイコンが前記編集領域から外れたことに応じて、当該変更アイコンを前記編集領域と異なる領域に表示させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラムに関する。
【背景技術】
【0002】
従来より、プレイヤ同士がパーティーを結成して、協力してプレイするオンラインゲームが知られている。このようなオンラインゲームにおいては、プロフィールの一覧から目的、趣向、レベル(習熟度)が近いプレイヤを選んでパーティーを結成する方法が提供されている。
【0003】
プレイヤの目的や趣向を端的に表現する手段として、プロフィールの一覧に表示されるプロフィール画像の重要性が高まっている。そこで、特許文献1には、プレイヤの操作に従って3Dアバターの見た目をカスタマイズする技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
タッチパネル式のモニタ上でアバターの見た目をカスタマイズする手法として、アバターの表示領域に対する種々のタッチ操作(例えば、1本指スワイプ、2本指スワイプ、ピンチアウト、ピンチイン等)に対応する方法で、モニタ上のアバターをカスタマイズ(例えば、スライド、回転、拡大、縮小等)することが考えられる。これにより、アバターの直感的なカスタマイズが可能になる。
【0006】
但し、3Dアバターは、2D画像と比較して、カスタマイズの方法が多岐にわたるので、表示領域に対するタッチ操作のみで全てを実現しようとすると、操作が複雑になるという課題がある。なお、この課題は、アバターの見た目をカスタマイズすることに限定されない。また、この課題は、プロフィール画像のみならず、配信動画のサムネイル画像などにも同様に当てはまる。
【0007】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、プレイヤの好みに合わせた3Dオブジェクトのカスタマイズを、直感的で且つシンプルに実現可能なプログラムを提供することにある。
【課題を解決するための手段】
【0008】
前記課題を解決するため、本発明に係るプログラムは、タッチパネル式の表示部を備えるコンピュータを、3Dオブジェクトを仮想カメラで撮像して生成した2D画像を、前記表示装置の編集領域に表示させる表示手段と、前記3Dオブジェクト及び前記仮想カメラの位置関係を変更する変更手段として機能させ、前記変更手段は、前記編集領域に対して実行されたタッチ操作に従って、前記3Dオブジェクト及び前記仮想カメラの位置関係を、第1方法で変更し、前記編集領域と異なる領域に対して実行されたタッチ操作に従って、前記3Dオブジェクト及び前記仮想カメラの位置関係を、前記第1方法と異なる第2方法で変更し、前記表示手段は、前記3Dオブジェクト及び前記仮想カメラの位置関係が変更される度に、新たな前記2D画像を前記表示部に表示させる。
【発明の効果】
【0009】
本発明によれば、プレイヤの好みに合わせた3Dオブジェクトのカスタマイズを、直感的で且つシンプルに実現することができる。
【図面の簡単な説明】
【0010】
【
図1】本実施形態に係るシステムの概要を示す図である。
【
図5】3Dキャラから2D画像を生成する概念図である。
【
図6】プロフィール選択画面(A)及びプロフィール編集画面(B)の画面例である。
【
図7】プロフィール画像を新規に作成する編集画面の画面例である。
【
図8】2Dキャラを編集する編集画面の例を示す図である。
【
図9】3Dキャラ(A)及び照明(B)を選択する画面例である。
【
図10】3Dキャラのスキン(A)及び表情(B)を選択する画面例である。
【
図11】3Dキャラのポーズ(A)及びアウトライン(B)を選択する画面例である。
【
図12】変更操作と変更方法との対応関係を示す表である。
【
図13】3Dキャラを拡大及び平行移動した例を示す図である。
【
図14】3DキャラをY軸周りに回転させると共に、仮想カメラに視線を向けた例を示す図である。
【
図15】3DキャラをX軸周りに回転させると共に、仮想カメラに視線を向けた例を示す図である。
【
図16】3DキャラをZ軸周りに回転させた例を示す図である。
【
図18】3Dキャラ及び仮想カメラの位置関係を変更するインタフェースの他の例である。
【
図19】編集領域に複数の3Dキャラを配置するインタフェースの例である。
【
図20】プロフィール画像を構成する素材のレイヤーを操作する画面例である。
【発明を実施するための形態】
【0011】
以下、実施形態に係るシステム1を図面に基づいて説明する。なお、以下に記載する本発明の実施形態は、本発明を具体化する際の一例を示すものであって、本発明の範囲を実施形態の記載の範囲に限定するものではない。従って、本発明は、実施形態に種々の変更を加えて実施することができる。
【0012】
[システム1の概要]
図1は、本実施形態に係るシステム1の概要を示す図である。
図1に示すように、システム1は、サーバ10と、複数のユーザ端末20とを主に備える。なお、
図1には3つのユーザ端末20が図示されているが、システム1に含まれるユーザ端末20の数はこれに限定されない。サーバ10及びユーザ端末20は、通信ネットワーク2を介して相互通信可能に接続されている。通信ネットワーク2の具体例は特に限定されないが、例えば、インターネット、移動体通信システム(例えば、4G、5Gなど)、Wi-Fi(登録商標)などの無線ネットワーク、またはこれらの組み合わせで構成される。
【0013】
一例として、システム1は、複数のユーザ端末20A、20B、20Cのユーザ(プレイヤ)がパーティーを結成して、協力してプレイするオンラインゲームを実現する。他の例として、複数のユーザ端末20A、20B、20Cのユーザがアバターを介してコミュニケーションする仮想空間を実現する。さらに他の例として、システム1は、ユーザ端末20Aのユーザがアップロードした動画データを、他のユーザ端末20B、20Cのユーザに視聴させる動画配信サービスを実現する。これらのシステム1は既に周知なので、詳細な説明は省略する。
【0014】
[サーバ10の構成]
サーバ10は、例えば、ワークステーション、またはパーソナルコンピュータなどの汎用コンピュータで実現される。一例として、オンラインゲームを提供するサーバ10は、複数のユーザ端末20それぞれのゲームデータを同期させる。他の例として、仮想空間を提供するサーバ10は、複数のユーザ端末20それぞれの仮想空間データを同期させる。さらに他の例として、動画配信サービスを提供するサーバ10は、ユーザ端末20Aからアップロードされた動画データを、ユーザ端末20B、20Cにダウンロードさせる。
【0015】
[ユーザ端末20の構成]
ユーザ端末20は、例えば、HMDセット、タブレット端末、スマートフォン、フィーチャーフォン、ラップトップ型コンピュータ、デスクトップコンピュータなどとして実現される。本実施形態では、
図1に示すように、タブレット端末としてのユーザ端末20の例を説明する。
【0016】
図2は、ユーザ端末20のハードウェア構成図である。
図2に示すように、ユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信インタフェース25と、モニタ31と、カメラ33、34と、マイク35と、スピーカ36と、動きセンサ41と、操作装置42(操作部)とを主に備える。ユーザ端末20の各構成要素は、通信バス29に接続されている。
【0017】
プロセッサ21は、メモリ22またはストレージ23に格納されている端末プログラム23Pに含まれる一連の命令を実行することによって、後述する処理を実現する。プロセッサ21は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)、その他のデバイスとして実現される。
【0018】
メモリ22は、端末プログラム23P及びデータを一時的に保持する。端末プログラム23Pは、例えば、ストレージ23からロードされる。データは、ユーザ端末20に入力されたデータと、プロセッサ21によって生成されたデータとを含む。例えば、メモリ22は、RAM(Random Access Memory)、その他の揮発メモリとして実現される。
【0019】
ストレージ23は、端末プログラム23P及びデータを永続的に保持する。ストレージ23は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。また、ストレージ23は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに他の例として、ストレージ23は、ユーザ端末20に内蔵されることに代えて、外部記憶装置としてユーザ端末20に接続されていてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のユーザ端末20が使用される場面において、端末プログラム23Pやデータの更新を一括して行うことが可能になる。
【0020】
通信インタフェース25は、通信ネットワーク2に接続されている他の装置(例えば、サーバ10)と通信する。通信インタフェース25は、例えば、LAN(Local Area Network)など有線通信インタフェース、Wi-Fi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)などの無線通信インタフェースとして実現される。
【0021】
モニタ31は、例えば
図1に示すように、平板状の筐体の表面に設けられている。モニタ31は、画像または映像を表示する表示装置(表示部)である。カメラ33は、平板状の筐体の表面に取り付けられて、モニタ31を視認するユーザの顔を撮像する、所謂インカメラである。カメラ34は、平板状の筐体の裏面(モニタ31と反対側の面)に取り付けられて、周囲を撮像する、所謂アウトカメラである。
【0022】
マイク35は、ユーザの発話を音声信号(電気信号)に変換してコンピュータ26に出力する。スピーカ36は、コンピュータ26から出力された音声信号を音声に変換してユーザに出力する。なお、ユーザ端末20は、スピーカ36に替えてイヤホンを含み得る。
【0023】
動きセンサ41は、筐体の動き(例えば、互いに直交する3軸周りの回転)を検知する。動きセンサ41は、例えば、角速度センサ、地磁気センサ、あるいは加速度センサで実現されてもよい。
【0024】
操作装置42は、ユーザによるユーザ端末20に対する命令の入力(操作)を受け付ける。操作装置42は、例えば、モニタ31に重畳されて、ユーザによる各種タッチ操作を受け付けるタッチパネルである。すなわち、本実施形態に係るモニタ31は、タッチパネル式の表示部である。
【0025】
タッチ操作とは、モニタ31に重畳されたタッチパネルにタッチ部材で触れる種々の操作(例えば、タップ操作、スワイプ操作、フリック操作、ピンチイン操作、ピンチアウト操作)の総称である。以下、ユーザの指をタッチ部材の具体例として説明するが、タッチペン等を用いてもよい。タッチパネルに対するタッチ操作は既に周知なので詳細な説明は省略するが、例えば以下のような操作を指す。
【0026】
タップ操作は、タッチパネル(すなわち、モニタ31)に触れた指を所定の時間内に離間させる操作である。このときの操作装置42は、例えば、タッチパネル上の指が触れた位置(以下、「タッチ位置」と表記する。)の座標をプロセッサ21に出力する。以下、モニタ31上のアイコンの位置に対するタップ操作を、「アイコンをタップする」、「アイコンを選択する」と表記することがある。
【0027】
スワイプ操作は、タッチパネルに触れた指をタッチパネルの表面に沿ってスライドさせる操作である。なお、スワイプ操作は、一本の指をスライドさせる一本指スワイプと、二本の指を同じ方向にスライドさせる二本指スワイプとを含む。このときの操作装置42は、最初のタッチ位置と、タッチパネル上で指がスライドする方向(以下、「スワイプ方向」と表記する。)と、タッチパネル上で指がスライドした距離(以下、「スワイプ距離」と表記する。)とをプロセッサ21に出力する。
【0028】
ピンチイン操作とは、タッチパネルに触れた二本の指を近づける操作である。ピンチアウト操作とは、タッチパネルに触れた二本の指を遠ざける操作である。このときの操作装置42は、最初のタッチ位置と、二本の指それぞれのスワイプ方向及びスワイプ距離をプロセッサ21に出力する。
【0029】
[プロフィール画像の概略]
プロフィール画像とは、システム1によって実現されるオンラインゲームにおいて、ユーザ端末20のユーザを、他のユーザに対して紹介するための画像である。また、プロフィール画像は、オンラインゲームのパーティー募集画面に一覧表示される画像である。但し、ユーザ端末20によって生成される画像の用途は、プロフィール画像に限定されない。他の例として、システム1によって実現される仮想空間において、ユーザ端末20のアバターを紹介するためのプロフィール画像でもよい。さらに他の例として、システム1によって実現される動画配信サービスにおいて、ユーザ端末20がアップロードした画像を紹介するサムネイル画像でもよい。
【0030】
図3は、プロフィール画像を示す図である。
図3(A)に示すように、プロフィール画像は、例えば、背景M1、2Dキャラ(図示省略)、3DキャラM2、テキストM3、シール(図示省略)、フレーム(図示省略)等(以下、これらを総称して、「素材」と表記する。)を組み合わせて構成される画像である。素材M1~M3は、いずれも二次元の画像である。そして、ユーザによって選択及び編集された素材M1、M2、M3を所定の順序で重ね合わせることによって、
図3(B)に示すプロフィール画像が生成される。
【0031】
[ユーザ端末20の機能ブロック図]
図4は、ユーザ端末20の機能ブロック図である。
図4に示すように、メモリ22にロードされた端末プログラム23Pは、ユーザ端末20(コンピュータ)を、表示手段210、編集手段220、出力手段230として機能させる。なお、
図4にはプロフィール画像をするための機能ブロックを中心に図示しているが、ユーザ端末20は、オンラインゲーム、仮想空間、または映像の編集やアップロードをする機能をさらに有する。
【0032】
表示手段210は、モニタ31に画像を表示させる。より詳細には、表示手段210は、
図6~
図11、
図13~
図16、
図18~
図20に示す種々の画面をモニタ31に表示させる。また、表示手段210は、操作装置42に対するユーザの操作に従って、モニタ31に表示させる画面を切り替える。さらに、表示手段210は、編集手段220によってプロフィール画像が編集される度に、編集後のプロフィール画像を編集領域A3(
図7参照)に表示させる。
【0033】
編集手段220は、操作装置42に対するユーザの操作に従って、編集領域A3に表示されたプロフィール画像を編集する。一例として、編集手段220は、プロフィール画像に対して、素材を追加及び削除する。他の例として、編集手段220は、プロフィール画像に含まれる素材の位置、大きさ、角度等を変更する。さらに他の例として、編集手段220は、プロフィール画像に含まれる素材に対して特殊効果(例えば、照明、スキン、エモート)を付与する。本実施形態に係る編集手段220は、変更手段221と、正対手段222とを含む。
【0034】
出力手段230は、編集手段220によって編集されたプロフィール画像を出力する。一例として、出力手段230は、プロフィール画像を示すプロフィール画像データを、ストレージ23に保存(出力の一例)する。他の例として、出力手段230は、プロフィール画像を示すプロフィール画像データを、通信IF25を通じてサーバ10にアップロード(出力の他の例)する。
【0035】
本実施形態に係るユーザ端末20は、特に、プロフィール画像に含まれる3Dオブジェクトを編集する種々の機能を有する。3Dオブジェクトとは、3次元的に描かれた形状のデータを指す。すなわち、3Dオブジェクトとは、3次元の座標を持つ立体的な形状を指す。一例として、3Dオブジェクトとは、人、動物、モンスター、ロボット等のキャラクタ(以下、「3Dキャラ」と表記する。)に限定されず、装備(例えば、武器、防具、アクセサリ)、乗り物(例えば、自動車、船、航空機、宇宙船)等でもよい。3Dオブジェクトは、複数のパーツを含む。また、複数のパーツは、互いに独立して動作してもよいし、互いに連動して動作してもよい。
【0036】
以下、ユーザ端末20のユーザの分身となる「アバター」を、3Dオブジェクトの具体例として説明する。アバターを構成する複数のパーツとは、例えば、顔(頭)、動体、腕、脚等を指す。また、顔を構成するパーツとして、眼、鼻、口、耳等がある。さらに、眼を構成するパーツとして、眼球、瞳等がある。そして、顔は、動体、腕、脚とは独立して動作(回転)することができる。また、眼は、顔と連動して動作する。さらに、瞳は、眼球と連動して動作する。すなわち、瞳を動かす場合には、顔を固定した状態で眼球を回転させてもよいし、瞳を目の正面に保持した(すなわち、眼球を固定した)状態で顔を回転させてもよい。
【0037】
図5は、3Dオブジェクトの一例である3Dキャラ50から2D画像を生成する概念図である。3Dキャラ50は、例えば
図5に示すように、半球状の仮想空間51内に配置される。また、3Dキャラ50は、仮想空間51内で移動可能である。また、仮想空間51の表面には、3Dキャラ50を撮像する仮想カメラ52が配置(固定)される。さらに、仮想空間51には、互いに直交するX軸、Y軸、Z軸が定義される。X軸、Y軸、Z軸は、3Dキャラ50の中心で交わる。また、X軸、Y軸、Z軸は、3Dキャラ50の移動に追従して移動する。Z軸は、3Dキャラ50の中心を通り、仮想カメラ52の光軸と平行な軸である。X軸は、3Dキャラ50の中心を通り、Z軸(すなわち、仮想カメラ52の光軸)に直交する水平軸である。Y軸は、3Dキャラ50の中心を通り、Z軸に直交する鉛直軸である。
【0038】
表示手段210は、仮想空間51内に配置された3Dキャラ50を仮想カメラ52で撮像して2D画像を生成する。2D画像とは、3Dキャラ50をX-Y平面上に投影した画像である。また、2D画像とは、3Dキャラ50のうちの仮想カメラ52の撮像範囲53(画角)に含まれる部分の画像である。そして、表示手段210は、生成した2D画像を編集領域A3に表示させる。さらに、表示手段210は、編集手段220によって2D画像が編集される度に、編集された2D画像を編集領域A3に表示(すなわち、編集領域A3内の2D画像を更新)させる。
【0039】
変更手段221は、操作装置42に対して実行された変更操作に従って、3Dキャラ50及び仮想カメラ52の位置関係を変更する。一例として、3Dキャラ50及び仮想カメラ52の位置関係とは、撮像範囲53内における3Dキャラ50位置(相対位置)を指す。他の例として、3Dキャラ50及び仮想カメラ52の位置関係とは、仮想カメラ52から3Dキャラ50までの距離(相対距離)を指す。さらに他の例として、3Dキャラ50及び仮想カメラ52の位置関係とは、仮想カメラ52に対する3Dオブジェクトの角度(相対角度)を指す。
【0040】
一例として、変更手段221は、3Dキャラ50をX-Y平面に沿って平行移動させる。他の例として、変更手段221は、3Dキャラ50をZ軸に沿って仮想カメラ52に近づけたり(拡大)、仮想カメラ52から遠ざけたりする(縮小)。さらに他の例として、変更手段221は、X軸(第1軸の一例)、Y軸(第1軸の他の例)、Z軸(第2軸の一例)周りに、3Dキャラ50を回転させる。なお、3Dキャラ50及び仮想カメラ52の位置関係を変更する方法は、仮想カメラ52の位置を固定して、仮想空間51内で3Dキャラ50を移動させることに限定されない。他の例として、仮想空間51の中心に3Dキャラ50を固定して、仮想空間51の表面に沿って仮想カメラ52を移動または回転させてもよい。
【0041】
正対手段222は、所定の条件を満たしたことに応じて、3Dキャラ50を構成する複数のパーツのうちの特定パーツを、仮想カメラ52に正対させる。特定パーツは、例えば、3Dキャラ50の瞳である。すなわち、瞳を仮想カメラ52に正対させるとは、3Dキャラ50の視線を仮想カメラ52に向けることを指す。換言すれば、瞳を仮想カメラ52に正対させるとは、3Dキャラ50をカメラ目線にすることを指す。但し、特定パーツの具体例は瞳に限定されず、3Dキャラ50が身に着ける帽子の正面に付加されたマーク、3Dキャラ50が着ている服の腕に付加された腕章、3Dキャラ50が手に持っている武器等でもよい。
【0042】
[プロフィール画像の編集処理]
図6は、プロフィール選択画面(A)及びプロフィール編集画面(B)の画面例である。まず、ユーザ端末20(表示手段210)は、
図6に示すプロフカード選択画面をモニタ31に表示させる。プロフカード選択画面は、既に生成されたプロフィール画像の1つをユーザに選択させるための画面である。プロフカード選択画面は、カードアイコン61a、61bと、メモボックス62a、62bと、プロフィール画像数63と、[プロフカードを編集する]アイコン64と、戻るアイコン65とを含む。
【0043】
カードアイコン61a、61bは、既に生成したプロフィール画像に対応する。カードアイコン61a、61bは、例えば、プロフィール画像を縮小した画像で構成される。カードアイコン61a、61bに対応するプロフィール画像は、サーバ10またはストレージ23に保存されている。さらに、[プロフィール選択中]のテキストが付加されたカードアイコン61bに対応するプロフィール画像は、プロフィールの一覧に表示される。メモボックス62a、62bには、対応するカードアイコン61a、61bに付加するメモ(例えば、プロフィール画像の名称や用途等)が入力される。プロフィール画像数63は、保存可能なプロフィール画像の数と、現時点で保存されているプロフィール画像の数とを示す数字[2/10]である。
【0044】
そして、ユーザ端末20は、カードアイコン61a、61bがタップされたことに応じて、プロフィールの一覧に表示するプロフィール画像を切り替える。また、ユーザ端末20は、[プロフカードを編集する]アイコン64がタップされたことに応じて、
図6(B)に示すプロフカード編集画面をモニタ31に表示させる。さらに、ユーザ端末20は、戻るアイコン65がタップされたことに応じて、プロフィール選択画面が表示される前の画面(すなわち、親画面)をモニタ31に表示させる。
【0045】
プロフカード編集画面は、カードアイコン61a、61b、メモボックス62a、62b、プロフィール画像数63、及び戻るアイコン65に加えて、新規アイコン61c、メモボックス62c、[編集]アイコン66、[削除]アイコン67を含む。新規アイコン61cは、プロフィール画像を新規に作成するためのアイコンである。メモボックス62cには、新規アイコン61cのメモが入力される。[編集]アイコン66は、既に生成されたプロフィール画像の編集、またはプロフィール画像を新規に作成するためのアイコンである。[削除]アイコン67は、既に生成されたプロフィール画像を削除するためのアイコンである。
【0046】
そして、ユーザ端末20は、カードアイコン61a、61bがタップされたことに応じて、当該アイコンをハイライト表示する。また、ユーザ端末20は、この状態で[編集]アイコン66がタップされたことに応じて、ハイライト表示されたカードアイコン61a、61bに対応するプロフィール画像を編集するための編集画面をモニタ31に表示させる。また、ユーザ端末20は、この状態で[削除]アイコン67がタップされたことに応じて、ハイライト表示されたカードアイコン61a、61bに対応するプロフィール画像を削除する。
【0047】
さらに、ユーザ端末20は、新規アイコン61cがタップされたことに応じて、当該アイコンをハイライト表示する。また、ユーザ端末20は、この状態で[編集]アイコン66がタップされたことに応じて、
図7に示すように、プロフィール画像を新規に作成するための編集画面をモニタ31に表示させる。一方、新規アイコン61cがハイライト表示された場合、[削除]アイコン67は選択不能(グレーアウト)される。
【0048】
図7は、プロフィール画像を新規に作成する編集画面の画面例である。
図7に示すように、編集画面は、ヘッダ領域A1と、フッタ領域A2と、編集領域A3と、外枠領域A4と、選択領域A5とを含む。なお、既存のプロフィール画像を編集する編集画面は、編集対象のプロフィール画像が編集領域A3に表示されている点で、
図7と相違する。
【0049】
ヘッダ領域A1は、編集画面の最上段の領域である。ヘッダ領域A1は、UnDoアイコン68と、ReDoアイコン69と、メモボックス62cと、[保存]アイコン70とを含む。UnDoアイコン68は、編集領域A3に表示されたプロフィール画像の編集を1ステップ戻すためのアイコンである。ReDoアイコン69は、UnDoアイコン68で戻したステップを取り消すためのアイコンである。[保存]アイコン70は、編集領域A3に表示されたプロフィール画像を示すプロフィール画像データを、サーバ10またはストレージ23に保存するためのアイコンである。
【0050】
フッタ領域A2は、編集画面の最下段の領域である。フッタ領域A2は、戻るアイコン65と、[レイヤー操作]アイコン71とを含む。[レイヤー操作]アイコン71は、プロフィール画像を構成する複数の素材を重ねる順序(レイヤー)を操作するためのアイコンである。
【0051】
編集領域A3は、ヘッダ領域A1及び選択領域A5の間の領域である。また、編集領域A3は、プロフィール画像が表示される領域である。さらに、編集領域A3は、プロフィール画像を編集するためのタッチ操作を受け付ける領域である。編集領域A3は、プロフィール画像及び撮像範囲53のサイズ(縦横比)と同一である。外枠領域A4は、編集領域A3を囲む枠型の領域である。外枠領域A4には、プロフィール画像は表示されないが、プロフィール画像を編集するためのアイコンは表示可能である。そして、外枠領域A4は、編集領域A3と同様に、プロフィール画像を編集するためのタッチ操作を受け付ける領域である。
【0052】
選択領域A5は、編集領域A3及びフッタ領域A2の間の領域である。また、選択領域A5は、編集領域A3に表示されたプロフィール画像を編集するための選択肢を表示すると共に、選択肢を選択するためのタッチ操作を受け付ける領域である。さらに、選択領域A5は、カテゴリ領域A6と、サブカテゴリ領域A7と、素材領域A8とを含む。
【0053】
カテゴリ領域A6は、複数のカテゴリアイコン72a、72b、72c、72dを含む。カテゴリアイコン72a~72dは、プロフィール画像の素材のカテゴリ(例えば、背景、2Dキャラ、3Dキャラ、文字、シール、フレーム)に対応する。サブカテゴリ領域A7は、選択されたカテゴリアイコン72a~72dに対応するサブカテゴリアイコン73a、73bを含む。素材領域A8は、選択されたサブカテゴリアイコン73a、73bに対応する素材アイコン74a、74b、74c、74d、74e、74f、74g、74hを含む。素材アイコン74a~74hは、プロフィール画像に含めることが可能な素材に対応する。
【0054】
なお、各領域A6、A7、A8に一度に表示きれないアイコンは、各領域に対するスクロール操作によって表示してもよい。例えば、カテゴリ領域A6及びサブカテゴリ領域A7は横スクロールとし、素材領域A8は縦スクロールとしてもよい。
【0055】
以上のように、プロフィール画像を構成する素材は、カテゴリ及びサブカテゴリにカテゴライズされて管理されている。素材を示す素材データは、ストレージ23に保存されていてもよいし、サーバ10からダウンロードしてもよい。また、素材領域A8は、開放状態の素材アイコン74a~74dと、未開放状態の素材アイコン74e~74hとを含んでもよい。
【0056】
開放状態とは、対応する素材をプロフィール画像に含めることができる状態を指す。換言すれば、開放状態とは、素材アイコン74a~74dに対応する素材データを、ユーザ端末20のユーザが既に取得した状態を指す。未開放状態とは、対応する素材をプロフィール画像に含めることができない状態を指す。換言すれば、未開放状態とは、素材アイコン74a~74dに対応する素材データを、ユーザ端末20のユーザが未だ取得していない状態を指す。
【0057】
一部の素材アイコン74a、74bは、例えば、最初から開放状態となっていてもよい。他の一部の素材アイコン74c、74bは、オンラインゲーム上のミッションの達成、または課金することによって開放状態にされてもよい。一方、未開放状態の素材アイコン74e~74hは、未だミッションを達成していないか、課金されていないことによって、選択できない状態(グレーアウト)にされている。他の例として、未開放状態の素材アイコン74e~74hは、非表示にされてもよい。
図9~
図11の素材アイコン79b~79e、82a~82c、88a~88c、90a~90d、91a~91dについても同様である。
【0058】
図8は、2Dキャラを編集する編集画面の例を示す図である。ユーザ端末20(表示手段210)は、
図7のカテゴリアイコン72b、サブカテゴリアイコン73b、及び素材アイコン74dが選択されたことに応じて、
図8(A)に示すように、キャラ画像75と、変更アイコン76a、76b、76c、76dと、レイヤーアイコン77a、77b、77c、77dとを、モニタ31の編集領域A3に表示させる。
【0059】
キャラ画像75は、選択された素材アイコン74dに対応する2Dキャラを示す二次元画像である。変更アイコン76a~76dは、プロフィール画像上でキャラ画像75を変更するためのアイコンである。レイヤーアイコン77a~77dは、プロフィール画像上において、キャラ画像75のレイヤーを変更するためのアイコンである。
【0060】
より詳細には、変更アイコン76aは、キャラ画像75を複製するためのアイコンである。変更アイコン76bは、キャラ画像75を削除するためのアイコンである。変更アイコン76cは、キャラ画像75を拡大または縮小するためのアイコンである。変更アイコン76dは、キャラ画像75を表示面に直交する軸周りに回転させるためのアイコンである。
【0061】
レイヤーアイコン77aは、キャラ画像75を最前面のレイヤーに移動させるためのアイコンである。レイヤーアイコン77bは、キャラ画像75を1つ前のレイヤーに移動させるためのアイコンである。レイヤーアイコン77cは、キャラ画像75を1つ後ろのレイヤーに移動させるためのアイコンである。レイヤーアイコン77dは、キャラ画像75を最背面のレイヤーに移動させるためのアイコンである。
【0062】
変更アイコン76a~76dは、キャラ画像75を囲む矩形の破線枠の頂点に配置される。レイヤーアイコン77a~77dは、キャラ画像75に隣接する位置に配置される。より詳細には、レイヤーアイコン77a~77dは、キャラ画像75が編集領域A3の中央より左方に位置しているとき、キャラ画像75の右方に配置されてもよい。レイヤーアイコン77a~77dは、キャラ画像75が編集領域A3の中央より右方に位置しているとき、キャラ画像75の左方に配置されてもよい。
【0063】
ユーザ端末20(編集手段220)は、変更アイコン76a~76dがタップされたことに応じて、タップされた変更アイコン76a~76dに対応付けられた方法で、キャラ画像75を変更する。また、ユーザ端末20(編集手段220)は、レイヤーアイコン77a~77dがタップされたことに応じて、キャラ画像75のレイヤーを変更する。さらに、ユーザ端末20(編集手段220)は、破線枠の内側に対するスワイプ操作に従って、編集領域A3(すなわち、プロフィール画像)内において、キャラ画像75をスワイプ方向にスワイプ距離だけ平行移動させる。さらに、ユーザ端末20(表示手段210)は、編集手段220によって編集されたキャラ画像75を編集領域A3に表示させる(すなわち、キャラ画像75を更新する)。
【0064】
図8(B)に示すように、編集領域A3内でキャラ画像75が平行移動された場合において、キャラ画像75の編集領域A3から外れた部分は非表示となる。換言すれば、キャラ画像75の全てを編集領域A3の外に移動させることはできない。また、変更アイコン76a~76d及びレイヤーアイコン77a~77dは、キャラ画像75の平行移動に追従して移動する。そして、編集領域A3から外れた変更アイコン76c、76d及びレイヤーアイコン77dは、外枠領域A4に表示される。他の例として、編集領域A3外にキャラ画像75を完全に移動させることができてもよい。また、編集領域A3外のキャラ画像75に対するタッチ操作によって、キャラ画像75を編集可能にしてもよい。但し、編集領域A3外のキャラ画像75は、プロフィール画像には反映されない。
【0065】
さらに、ユーザ端末20(編集手段220)は、編集領域A3内のキャラ画像75がユーザによって移動または回転されたことによって、所定の位置または所定の角度に自動的にフィットさせるフィット機能を有していてもよい。一例として、ユーザ端末20(編集手段220)は、ユーザによるスワイプ操作によってキャラ画像75が編集領域A3の上下方向(または左右方向)の中央に近づいた場合に、キャラ画像75を編集領域A3の上下方向(または左右方向)の中央にフィットさせる。他の例として、ユーザ端末20(編集手段220)は、ユーザによるスワイプ操作によってキャラ画像75が編集領域A3の隅に近づいた場合に、キャラ画像75を編集領域A3の隅にフィットさせる。但し、これらのフィット機能は、キャラ画像75の回転角度が0°、90°、180°、270°の場合にのみ有効にされてもよい。さらに他の例として、ユーザ端末20(編集手段220)は、ユーザによる変更アイコン76dの操作によってキャラ画像75の回転角度が0°、90°、180°、270°に近づいた場合に、キャラ画像75の回転角度を0°、90°、180°、270°にフィットさせる。
【0066】
図7に戻って、ユーザ端末20(出力手段230)は、[保存]アイコン70がタップされたことに応じて、編集領域A3に表示されたプロフィール画像をサーバ10またはストレージ23に保存する。また、ユーザ端末20(出力手段230)は、[保存]アイコン70がタップされずに戻るアイコン65がタップされたことに応じて、編集領域A3に表示されたプロフィール画像を保存するか否かを確認するためのダイアログを表示する。そして、ユーザ端末20は、保存することをユーザが選択した場合に、プロフィール画像を保存してから親画面に遷移する。一方、ユーザ端末20は、保存しないことをユーザが選択した場合に、プロフィール画像を保存してから親画面に遷移する。
【0067】
また、図示は省略するが、ユーザ端末20は、カテゴリアイコン72aがタップされたことに応じて、背景に対応する素材アイコンを素材領域A8に表示させる。そして、ユーザ端末20は、タップされた素材アイコンに対応する背景M1を編集領域A3に表示(すなわち、プロフィール画像に追加)させる。また、ユーザ端末20は、カテゴリアイコン72dがタップされたことに応じて、フォントタイプ、フォントサイズ、フォントカラーなどを指定するアイコンと、ソフトウェアキーボードとを素材領域A8に表示させる。そして、ユーザ端末20は、素材領域A8に対するタップ操作に従って、テキストM3を編集領域A3に表示(すなわち、プロフィール画像に追加)させる。
【0068】
[3Dキャラ50の編集処理]
図9~
図11を参照して、3Dキャラ50の見た目を編集する処理を説明する。
図9は、3Dキャラ50(A)及び照明(B)を選択する画面例である。
図10は、3Dキャラ50のスキン(A)及び表情(B)を選択する画面例である。
図11は、3Dキャラ50のポーズ(A)及びアウトライン(B)を選択する画面例である。
【0069】
ユーザ端末20(表示手段210)は、カテゴリ領域A6のカテゴリアイコン72cが選択されたことに応じて、
図9に示すように、サブカテゴリアイコン78a、78bをサブカテゴリ領域A7に表示させる。また、ユーザ端末20(表示手段210)は、サブカテゴリアイコン78aが選択されたことに応じて、
図9(A)に示すように、素材アイコン79a、79b、79c、79d、79eを素材領域A8に表示させる。素材アイコン79a~79eは、3Dキャラ50に対応するアイコンである。
【0070】
ユーザ端末20(表示手段210)は、素材アイコン79eが選択されたことに応じて、選択された素材アイコン79eに対応付けて、[カスタム]アイコン80を素材領域A8に表示させる。また、ユーザ端末20(表示手段210)は、素材アイコン79eに対応する3Dキャラ50を仮想カメラ52で撮像して2D画像81を生成する。さらに、ユーザ端末20(表示手段210)は、生成した2D画像81を編集領域A3に表示させる。最初(素材アイコン79eが選択された直後)の2D画像81は、例えば、3Dキャラ50の全身を正面から撮像したものである。
【0071】
このときの3Dキャラ50及び仮想カメラ52の位置関係を「初期状態」と表記する。初期状態の3Dキャラ50の体は、仮想カメラ52に正対している。また、初期状態の3Dキャラ50の顔は、体の正面を向いている。さらに、初期状態の3Dキャラ50の瞳は、眼の中央に位置している。その結果、初期状態の3Dキャラ50の瞳は、仮想カメラ52に正対している(所謂、カメラ目線)。
【0072】
ユーザ端末20(表示手段210)は、サブカテゴリアイコン78bが選択されたことに応じて、
図9(B)に示すように、素材アイコン82a、82b、82cを素材領域A8に表示させる。素材アイコン82a~82cは、3Dキャラ50に照射する照明のイメージ(例えば、昼、夕焼け、夜)に対応する。そして、ユーザ端末20(編集手段220)は、素材アイコン82a~82cの1つが選択されたことに応じて、対応する照明を3Dキャラ50に照射する。また、ユーザ端末20(表示手段210)は、照明が照射された3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0073】
ユーザ端末20(表示手段210)は、[カスタム]アイコン80が選択されたことに応じて、
図10及び
図11に示すように、回転アイコン83a、83b、[目線]アイコン84、及び[初期]アイコン85を外枠領域A4に表示させる。回転アイコン83a、83bは、3Dキャラ50をZ軸周りに回転させるためのアイコンである。[目線]アイコン84は、3Dキャラ50の瞳を仮想カメラ52に正対(すなわち、3Dキャラ50をカメラ目線)させるためのアイコンである。[初期]アイコン85は、3Dキャラ50及び仮想カメラ52の位置関係を初期状態に戻すためのアイコンである。3Dキャラ50及び仮想カメラ52の位置関係を変更する処理は、
図12~
図18を参照して後述する。また、ユーザ端末20(表示手段210)は、
図10及び
図11に示すように、カテゴリアイコン86a、86bをカテゴリ領域A6に表示させる。
【0074】
ユーザ端末20(表示手段210)は、カテゴリアイコン86aが選択されたことに応じて、
図10(A)に示すように、サブカテゴリアイコン87a、87b、87c、87dをサブカテゴリ領域A7に表示させる。サブカテゴリアイコン87a~87dは、3Dキャラ50が身に着けるアイテムの場所(例えば、頭、トップス、ボトムス、その他)に対応する。また、ユーザ端末20(表示手段210)は、サブカテゴリアイコン87aが選択されたことに応じて、素材アイコン88a、88b、88cを素材領域A8に表示させる。素材アイコン88a~88cは、3Dキャラ50の頭に装着するアイテムに対応する。そして、ユーザ端末20(編集手段220)は、素材アイコン88a~88cの1つが選択されたことに応じて、対応するアイテムを3Dキャラ50に装着させる。また、ユーザ端末20(表示手段210)は、アイテムを装着した3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0075】
ユーザ端末20(表示手段210)は、カテゴリアイコン86bが選択されたことに応じて、
図10(B)~
図11(B)に示すように、サブカテゴリアイコン89a、89b、89cをサブカテゴリ領域A7に表示させる。サブカテゴリアイコン89a~89cは、3Dキャラ50の表情、ポーズ、アウトライン(OL)に対応する。
【0076】
ユーザ端末20(表示手段210)は、サブカテゴリアイコン89aが選択されたことに応じて、
図10(B)に示すように、素材アイコン90a、90b、90c、90dを素材領域A8に表示させる。素材アイコン90a~90dは、3Dキャラ50の表情に対応する。そして、ユーザ端末20(編集手段220)は、選択された素材アイコン90a~90dに合わせて、3Dキャラ50の表情を変更する。また、ユーザ端末20(表示手段210)は、表情が変更された3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0077】
ユーザ端末20(表示手段210)は、サブカテゴリアイコン89bが選択されたことに応じて、
図11(A)に示すように、素材アイコン91a、91b、91c、91dを素材領域A8に表示させる。素材アイコン91a~91dは、3Dオブジェクトのポーズに対応する。そして、ユーザ端末20(編集手段220)は、選択された素材アイコン91a~91dに合わせて、3Dキャラ50のポーズを変更する。また、ユーザ端末20(表示手段210)は、ポーズが変更された3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0078】
ユーザ端末20(表示手段210)は、サブカテゴリアイコン89cが選択されたことに応じて、
図11(B)に示すように、3Dキャラ50のアウトライン(輪郭線)の太さや色を選択するためのアイコンを素材領域A8に表示させる。そして、ユーザ端末20(編集手段220)は、素材領域A8に表示されたアイコンの操作に合わせて、3Dキャラ50のアウトラインを変更する。また、ユーザ端末20(表示手段210)は、アウトラインが変更された3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0079】
図12~
図16を参照して、3Dキャラ50と仮想カメラ52との位置関係(相対位置、相対距離、相対角度)を変更する具体的な方法を説明する。
図12は、変更操作と変更方法との対応関係を示す表である。
図13は、3Dキャラ50を拡大及び平行移動した例を示す図である。
図14は、3Dキャラ50をY軸周りに回転させると共に、仮想カメラ52に視線を向けた例を示す図である。
図15は、3Dキャラ50をX軸周りに回転させると共に、仮想カメラ52に視線を向けた例を示す図である。
図16は、3Dキャラ50をZ軸周りに回転させた例を示す図である。
【0080】
ユーザ端末20(変更手段221)は、編集領域A3に対するタッチ操作に応じて、3Dキャラ50と仮想カメラ52との位置関係を第1方法で変更する。また、ユーザ端末20(変更手段221)は、外枠領域A4(編集領域A3と異なる領域の一例)に表示されたアイコン83a、83b、84、85に対するタップ操作に応じて、3Dキャラ50と仮想カメラ52との位置関係を第2方法で変更する。そして、ユーザ端末20(表示手段210)は、3Dキャラ50と仮想カメラ52との位置関係が変更される度に、変更後の3Dキャラ50を仮想カメラ52で撮像して、新たな2D画像81を編集領域A3に表示させる。
【0081】
まず、ユーザ端末20(変更手段221)は、編集領域A3に表示された2D画像81に対する二本指スワイプに応じて、
図13(B)及び
図13(C)に示すように、X-Y平面上で3Dキャラ50を平行移動(第1方法の変更の一例)させる。より詳細には、ユーザ端末20(変更手段221)は、スワイプ方向に対応する方向に3Dキャラ50を平行移動させる。すなわち、スワイプ方向が上下方向の場合は3Dキャラ50がY軸に沿って平行移動し、スワイプ方向が左右方向の場合は3Dキャラ50がX軸に沿って平行移動する。また、3Dキャラ50の移動距離は、スワイプ距離に対応する。
【0082】
また、ユーザ端末20(変更手段221)は、編集領域A3に表示された2D画像81に対する一本指スワイプに応じて、3Dキャラ50を第1軸周りに回転(第1方法の変更の他の例)させる。より詳細には、ユーザ端末20(変更手段221)は、スワイプ方向に対応する方向に3Dキャラ50を回転させる。すなわち、スワイプ方向が上下方向の場合は3Dキャラ50がX軸周りに回転し(
図13(C)及び
図15(A))、スワイプ方向が左右方向の場合は3Dキャラ50がY軸周りに回転する(
図13(C)及び
図14(A))。また、3Dキャラ50の回転角度は、スワイプ距離に対応する。
【0083】
また、ユーザ端末20(変更手段221)は、編集領域A3に表示された2D画像81に対するピンチアウト操作に応じて、
図13(A)及び
図13(B)に示すように、3Dキャラ50を拡大(第1方法の変更の他の例)する。また、ユーザ端末20(変更手段221)は、編集領域A3に表示された2D画像81に対するピンチイン操作に応じて、3Dキャラ50を縮小(第1方法の変更の他の例)する。なお、3Dキャラ50の拡大率(縮小率)は、二本指のスワイプ距離に対応する。
【0084】
また、ユーザ端末20(変更手段221)は、回転アイコン83a、83bのタップ操作に応じて、3Dキャラ50をZ軸周りに回転(第2方法の変更の一例)させる。より詳細には、回転アイコン83aは反時計周りの回転に対応し(
図16(A)及び
図16(B))、回転アイコン83bは時計周りの回転に対応する(
図16(A)及び
図16(C))。また、ユーザ端末20(変更手段221)は、回転アイコン83a、83bが1回タップされる度に、予め定められた回転角度(例えば、15°)だけ回転させる。一方、ユーザ端末20(変更手段221)は、回転アイコン83a、83bが継続してタップされている間、3Dキャラ50を連続的に回転させてもよい。
【0085】
また、ユーザ端末20(正対手段222)は、[目線]84のタップ操作に応じて、3Dキャラ50をカメラ目線にする(第2方法の変更の他の例)。この処理は、
図14、
図15、及び
図17を参照して後述する。さらに、ユーザ端末20(変更手段221)は、[初期]アイコン85のタップ操作に応じて、3Dキャラ50及び仮想カメラ52の位置関係を初期状態に戻す(第2方法の変更の他の例)。
【0086】
なお、
図12に示す3Dキャラ50の移動は、3Dキャラ50を構成する複数のパーツの位置関係を維持したまま行われる。例えば、
図13(C)に示すカメラ目線の3Dキャラ50を回転させると、
図14(A)または
図15(A)に示すように、3Dキャラ50の視線が仮想カメラ52から外れる(すなわち、3Dキャラ50の体、頭、及び眼球が連動して回転する)。
【0087】
このとき、ユーザ端末20(正対手段222)は、[目線]アイコン84が選択されたことに応じて、3Dキャラ50の瞳を仮想カメラ52に正対させる(すなわち、カメラ目線にする)。そして、ユーザ端末20(表示手段210)は、カメラ目線の3Dキャラ50を仮想カメラ52で撮像して2D画像81を生成し、生成した2D画像81を編集領域A3に表示させる。[目線]アイコン84をタップすることは、所定条件を満たしたことの一例である。但し、3Dキャラ50をカメラ目線にする所定条件は、前述の例に限定されず、編集領域A3をダブルタップすること等でもよい。
【0088】
なお、ユーザ端末20(正対手段222)は、3Dキャラ50の体の向きを固定した状態で、瞳を仮想カメラ52に正対させる。すなわち、ユーザ端末20(正対手段222)は、3Dキャラ50をカメラ目線にするために、3Dキャラ50を構成する複数のパーツのうちの一部(例えば、眼球、顔)のみを回転させる。そこで、
図17を参照して、3Dキャラ50を自然な姿勢でカメラ目線にするために、眼球及び顔のどちらを回転させるかを切り替える処理を説明する。
図17は、カメラ目線処理のフローチャートである。
【0089】
一例として、ユーザ端末20(正対手段222)は、
図17(A)に示すように、瞳を仮想カメラ52に正対させるのに必要な3Dキャラ50の回転角度と、予め定められた閾値(例えば、30°)とを比較する(S11)。そして、ユーザ端末20(正対手段222)は、回転角度が閾値未満のときに(S11:Yes)、
図14(B)及び
図15(B)に示すように、顔及び体の位置関係を変更せずに、眼球だけを回転させて、3Dキャラ50をカメラ目線にする(S12)。一方、ユーザ端末20(正対手段222)は、回転角度が閾値以上のときに(S11:No)、
図14(C)及び
図15(C)に示すように、瞳を眼の中央に固定した(すなわち、視線を顔の正面に向けた)まま、体に対して顔を回転させて、3Dキャラ50をカメラ目線にする(S13)。なお、
図15(C)では、顔が上を向いたことに連動して、髪の毛が後ろに下がって耳が露出している。
【0090】
他の例として、ユーザ端末20(正対手段222)は、
図17(B)に示すように、瞳を仮想カメラ52に正対させるのに必要な3Dキャラ50の回転方向を判定する(S21)。そして、ユーザ端末20(正対手段222)は、回転方向が上下方向のときに(S21:上下)、
図15(B)に示すように、顔及び体の位置関係を変更せずに、眼球だけを回転させて、3Dキャラ50をカメラ目線にする(S22)。一方、ユーザ端末20(正対手段222)は、回転方向が左右方向のときに(S21:左右No)、
図14(C)に示すように、瞳を眼の中央に固定した(すなわち、視線を顔の正面に向けた)まま、体に対して顔を回転させて、3Dキャラ50をカメラ目線にする(S23)。
【0091】
なお、本実施形態に係る[目線]アイコン84は、所謂「オルタネートタイプ」のアイコンである。より詳細には、[目線]アイコン84をタップすると、
図14(B)、
図14(C)、
図15(B)、
図15(C)に示すように、選択状態(すなわち、所定条件を満たした状態)が維持される。また、選択状態の[目線]アイコン85を再びタップすると、
図14(A)、
図15(A)に示すように、選択状態が解除される。そして、ユーザ端末20(変更手段221)は、[目線]アイコン84が選択状態のままで実行された一本指スワイプに従って、以下のように3Dキャラ50を回転させることができる。
【0092】
一例として、ユーザ端末20(変更手段221)は、[目線]アイコン84が選択状態のままで実行された一本指スワイプに従って、瞳を含む全てのパーツの位置関係を変更せずに3Dキャラ50を回転させる。すなわち、3Dキャラ50の視線が仮想カメラ52から外れる。他の例として、ユーザ端末20(変更手段221)は、[目線]アイコン84が選択状態のままで実行された一本指スワイプに従って、瞳を仮想カメラ52に正対させたまま(すなわち、カメラ目線を維持したまま)、3Dキャラ50を回転させる。すなわち、ユーザ端末20(変更手段221)は、顔を固定したまま体だけを回転させる。
【0093】
なお、素材アイコン79eに対応する2D画像81を編集した後に、
図9(A)の素材アイコン79bを選択した場合、素材アイコン79eに対応する2D画像81に対する編集の内容が、素材アイコン79bに対応する2D画像に引き継がれる。また、この状態で[保存]アイコン70が選択されると、素材アイコン79bに対応する2D画像のみが保存され、素材アイコン79eに対応する2D画像81は破棄される。
【0094】
[変更操作の他の例]
図18は、3Dキャラ50及び仮想カメラ52の位置関係を変更するインタフェースの他の例である。
図18(A)に示すように、ユーザ端末20(表示手段210)は、2D画像81を囲む矩形の破線枠の頂点に、変更アイコン92a、92b、92c、92dを表示させてもよい。すなわち、変更アイコン92a~92dは、2D画像81に関連付けて編集領域A3に表示される。
【0095】
変更アイコン92aは、3Dキャラ50をX軸周りに回転させるためのアイコンである。変更アイコン92bは、プロフィール画像から3Dキャラ50(2D画像81)を削除するためのアイコンである。変更アイコン92cは、3Dキャラ50を拡大または縮小するためのアイコンである。変更アイコン92dは、3Dキャラ50をY軸周りに回転させるためのアイコンである。また、3Dキャラ50をX-Y平面上で移動させる変更操作は、編集領域A3に対する二本指スワイプである。さらに、3Dキャラ50をZ軸周りに回転させるための回転アイコン83a、83bは、外枠領域A4に配置される。
【0096】
また、ユーザ端末20(表示手段210)は、二本指スワイプによって編集領域A3内を移動する2D画像81に追従して、変更アイコン92a~92dを移動させる。そして、
図18(B)に示すように、ユーザ端末20(表示手段210)は、変更アイコン92c、92dが編集領域A3から外れたことに応じて、当該変更アイコン92c、92dを外枠領域A4に移動させる。すなわち、
図18(B)の変更アイコン93a、93bは、
図18(A)の変更アイコン92cに対応する。また、
図18(B)の変更アイコン93c、93dは、
図18(A)の変更アイコン92dに対応する。
【0097】
なお、2D画像81に関連付けて編集領域A3に表示されるのは、変更アイコン92a~92dに限定されない。他の例として、
図8に示すレイヤーアイコン77a~77dが2D画像81に関連付けて表示されてもよい。また、2D画像81に関連付けて変更アイコン92a~92dを表示する具体的な方法は、
図18の例に限定されず、
図8のように2D画像81に隣接して表示してもよい。
【0098】
[複数の3Dキャラを配置する例]
図19は、編集領域A3に複数の3Dキャラを配置するインタフェースの例である。
図19(A)に示すように、ユーザ端末20(表示手段210)は、レイアウトアイコン94a、94b、94c、94d、94eを素材領域A8に表示させてもよい。レイアウトアイコン94a~94eは、編集領域A3に配置する3Dキャラの数及びレイアウトに対応する。
【0099】
そして、ユーザ端末20(表示手段210)は、レイアウトアイコン94cが選択されたことに応じて、選択されたレイアウトアイコン94cに対応する数(2つ)の配置枠95a、95bを編集領域A3に表示する。配置枠95a、95bは、3Dキャラを仮想カメラ52で撮像した2D画像81a、81bが配置される枠である。配置枠95a、95bは、互いに重なり合わないように配置される。また、ユーザ端末20(表示手段210)は、選択されたレイアウトアイコン94cに対応付けて、[キャラ選択]アイコン96を表示させる。
【0100】
ユーザ端末20(表示手段210)は、[キャラ選択]アイコン96が選択されたことに応じて、
図19(B)に示すように、3Dキャラに対応する素材アイコン79a~79eを素材領域8Aに表示させる。そして、ユーザ端末20(表示手段210)は、素材アイコン79d、79eが選択されたことに応じて、選択された素材アイコン79d、79eに対応する3Dキャラを仮想カメラ52で撮像して2D画像81a、81bを生成し、生成した2D画像81a、81bを配置枠95a、95bに表示させる。また、ユーザ端末20(表示手段210)は、選択された素材アイコン79d、79eに対応付けて、[カスタム]アイコン80a、80bを表示させる。
【0101】
配置枠95a、95b内の2D画像81a、81bに対する変更操作は、
図12または
図18の例と共通する。また、ユーザ端末20(編集手段220)は、配置枠95aに対して実行された二本指スワイプに従って、編集領域A3内で配置枠95aを移動させてもよい。このとき、配置枠95a内の2D画像81aは、配置枠95aと共に移動する。また、ユーザ端末20(編集手段220)は、移動した配置枠95aが隣の配置枠95bに重なった場合、配置枠95a、95bの位置を入れ替えてもよい。さらに、[カスタム]アイコン80a、80bが選択された場合の処理は、
図9(B)~
図11(B)の例と共通する。
【0102】
[素材のレイヤー操作]
図20は、プロフィール画像を構成する素材のレイヤーを操作する画面例である。ユーザ端末20(表示手段210)は、[レイヤー操作]アイコン71が選択されたことに応じて、
図20に示すように、複数のレイヤーアイコン97a、97b、97c、97dを選択領域A5に表示させる。レイヤーアイコン97a~97dは、既に編集した素材(例えば、背景、2Dキャラ、テキスト、3Dキャラ)に対応する。また、レイヤーアイコン97a~97dの表示順は、各素材の重なり順(上側ほど背面側)を示す。
【0103】
また、レイヤーアイコン97aには、操作アイコン98a、98b、98cが関連付けられる。操作アイコン98aは、レイヤーアイコン97aに対応する素材を削除するためのアイコンである。操作アイコン98bは、レイヤーアイコン97aに対応する素材の表示及び非表示を切り替えるためのアイコンである。操作アイコン98cは、レイヤーアイコン97aに対応する素材のレイヤーのロック及びロック解除を切り替えるためのアイコンである。他のレイヤーアイコン97b~97dに関連付けられた操作アイコンについても同様である。
【0104】
そして、ユーザ端末20(編集手段220)は、レイヤーアイコン97a~97dに対するスワイプ操作に従って、プロフィール画像内における各素材の重なり順を変更する。また、ユーザ端末20(編集手段220)は、操作アイコン98a~98に対するタップ操作に従って、対応する素材の削除、表示/非表示、ロック/ロック解除を切り替える。さらに、ユーザ端末20(表示手段210)は、選択領域A5に対する操作に従って、編集領域A3に表示したプロフィール画像を更新する。
【0105】
[作用効果]
上記の実施形態によれば、3Dキャラ50及び仮想カメラ52の位置関係の変更を、編集領域A3に対するタッチ操作と、外枠領域A4に対するタッチ操作とに分担して割り当てた。これにより、直感的で且つシンプルに3Dキャラ50のカスタマイズすることができる。
【0106】
また、上記の実施形態によれば、3Dキャラ50の平行移動、拡大及び縮小、X軸方向の回転、及びY軸方向の回転を、編集領域A3に対するタッチ操作で実現した。一方、3Dキャラ50のZ軸方向の回転を、外枠領域A4に配置された回転アイコン83a、83bによって実現した。このように、3Dキャラ50を回転させる操作を、編集領域A3に対するタッチ操作と、外枠領域A4に対するタッチ操作とに分担して割り当てることによって、3Dキャラ50の意図しない動き(誤動作)を防止することができる。
【0107】
また、
図18の実施形態によれば、2D画像81の位置に応じて、2D画像81に追従する変更アイコン92a~92dを編集領域A3に表示するか、外枠領域A4の固定位置に変更アイコン93a~93dを表示するかを切り替えることによって、3Dキャラ50をカスタマイズする操作性が向上する。
【0108】
また、上記の実施形態によれば、[目線]アイコン84をタップするだけで、3Dキャラ50をカメラ目線にすることができる。このように、3Dオブジェクトを構成する複数のパーツのうちの特定パーツを仮想カメラ52に正対させるアイコンを設けることによって、プレイヤの好みに合わせた3Dキャラ50のカスタマイズを、簡単な操作で実現することができる。その結果、プロフィール画像を通じて、プレイヤの目的や趣向を端的に表現することができる。
【0109】
また、上記の実施形態によれば、3Dキャラ50をカメラ目線にするのに必要な回転角度に応じて、眼球だけを回転させるか、顔を回転させるかを切り替える。これにより、自然な姿勢でカメラ目線を実現することができる。なお、
図17の例では、眼球及び顔のいずれか一方を回転させる例を説明したが、眼球及び顔の両方を回転させてもよい。
【0110】
また、上記の実施形態によれば、3Dキャラ50をカメラ目線にするのに必要な回転方向に応じて、眼球だけを回転させるか、顔を回転させるかを切り替える。これにより、例えば、上目遣いの表情や見下す表情を簡単な操作で実現することができる。
【0111】
但し、3Dキャラ50をカメラ目線にするために、眼球だけを回転させるか、顔を回転させるかを切り替える具体的な方法は、前述の例に限定されない。例えば、眼球を回転させるアイコンと、顔を回転させるアイコンとを、モニタ31に表示してもよい。
【0112】
なお、本発明に係るプログラムは、単一のプログラムに限定されず、複数のプログラムの集合体でもよい。また、本発明に係るプログラムは、単一の装置で実行されるものに限定されず、複数の装置で分担して実行されてもよい。さらに、サーバ10及びユーザ端末20の役割分担は、前述の例に限定されない。すなわち、サーバ10の処理の一部がユーザ端末20によって実行されてもよいし、ユーザ端末20の処理の一部がサーバ10によって実行されてもよい。
【0113】
また、プログラムによって実現される各手段の一部または全部は、集積回路などのハードウェアで実現することもできる。さらに、プログラムは、コンピュータによって読み出し可能な非一過性の記録媒体に記録されて提供されてもよい。記録媒体とは、例えば、ハードディスク、SDカード、DVDの他、インターネット上のサーバ等を指す。
【符号の説明】
【0114】
1…システム、2…通信ネットワーク、10…サーバ、20…ユーザ端末、21…プロセッサ、22…メモリ、23…ストレージ、23P…端末プログラム、25…通信インタフェース、26…コンピュータ、29…通信バス、31…モニタ、33,34…カメラ、35…マイク、36…スピーカ、41…動きセンサ、42…操作装置、50…3Dキャラ、51…仮想空間、52…仮想カメラ、53…撮像範囲