[go: up one dir, main page]

JP7589268B2 - program - Google Patents

program Download PDF

Info

Publication number
JP7589268B2
JP7589268B2 JP2023012137A JP2023012137A JP7589268B2 JP 7589268 B2 JP7589268 B2 JP 7589268B2 JP 2023012137 A JP2023012137 A JP 2023012137A JP 2023012137 A JP2023012137 A JP 2023012137A JP 7589268 B2 JP7589268 B2 JP 7589268B2
Authority
JP
Japan
Prior art keywords
image
user
camera
viewpoint
virtual space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023012137A
Other languages
Japanese (ja)
Other versions
JP2024107935A (en
Inventor
万悠子 梶山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Colopl Inc filed Critical Colopl Inc
Priority to JP2023012137A priority Critical patent/JP7589268B2/en
Priority to PCT/JP2024/002461 priority patent/WO2024162216A1/en
Publication of JP2024107935A publication Critical patent/JP2024107935A/en
Application granted granted Critical
Publication of JP7589268B2 publication Critical patent/JP7589268B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Processing Or Creating Images (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、プログラムに関する。 The present invention relates to a program.

従来より、ユーザの動きをキャプチャしてVR空間内のキャラクタを動作させる技術が知られている。そして、この技術を利用して、VR空間内のキャラクタにパフォーマンス(例えば、歌唱、楽器演奏、ダンス等)をさせた様子が、映像コンテンツとして配信されている。 Technology has been known for some time that captures a user's movements and causes a character in a VR space to move. Using this technology, a character in a VR space performing (e.g., singing, playing an instrument, dancing, etc.) is distributed as video content.

このような映像コンテンツの魅力を高める方法の一つとして、様々な方向(例えば、正面、側面、上半身のアップなど)から撮影したキャラクタの映像を組み合わせることが考えられる。そこで、仮想空間内に配置された仮想カメラの位置を切り替える技術が、特許文献1に開示されている。 One way to enhance the appeal of such video content is to combine footage of the character taken from various angles (e.g., the front, the side, a close-up of the upper body, etc.). Patent Document 1 discloses a technology for switching the position of a virtual camera placed in a virtual space.

特開2021-099825号公報JP 2021-099825 A

しかしながら、キャラクタを操作しながら仮想カメラの位置を切り替えようとすると、作業が煩雑になるばかりでなく、キャラクタの動きの連続性が失われて、映像コンテンツとしての魅力が損なわれる。 However, if you try to change the position of the virtual camera while controlling a character, not only does the process become cumbersome, but the continuity of the character's movements is lost, reducing the appeal of the video content.

本発明は、上記の事情に鑑みてなされたものであり、その目的は、簡単な操作で、魅力ある映像コンテンツの素材を得ることができるプログラムを提供することにある。 The present invention was made in consideration of the above circumstances, and its purpose is to provide a program that allows users to obtain attractive video content materials with simple operations.

本発明は、前記課題を解決するため、本発明に係るプログラムは、操作装置を備えるコンピュータを、仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトを、前記設定視点映像に含めるか否かを含み、前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える In order to solve the above-mentioned problem, the present invention provides a program that causes a computer equipped with an operation device to function as a camera setting means for setting a plurality of virtual cameras that capture an image of a target object placed in a virtual space from different set viewpoints, and as an image generation means for generating a plurality of set viewpoint images captured by each of the plurality of virtual cameras, the camera setting means setting imaging conditions for each of the plurality of virtual cameras including at least one of a distance from the target object, an angle relative to the target object, and an imaging portion of the target object in accordance with a user's operation via the operation device, and the computer functions as a camera movement means for moving each of the plurality of virtual cameras in accordance with a movement of the target object in accordance with the user's operation via the operation device so as to satisfy the set imaging conditions , the imaging conditions including whether or not to include in the set viewpoint image for each of the plurality of virtual cameras a peripheral object that is different from the target object and that overlaps with the target object as viewed from the virtual camera, and the image generation means switching whether or not to include the peripheral object in the set viewpoint image for each of the plurality of virtual cameras in accordance with the imaging conditions .

本発明によれば、簡単な操作で、魅力ある映像コンテンツの素材を得ることができる。 According to the present invention, attractive video content materials can be obtained with simple operations.

本実施形態に係るシステムの概要を示す図である。FIG. 1 is a diagram showing an overview of a system according to an embodiment of the present invention. サーバのハードウェア構成図である。FIG. 2 is a hardware configuration diagram of a server. ユーザ端末の一例であるHMDセットのハードウェア構成図である。FIG. 2 is a hardware configuration diagram of an HMD set which is an example of a user terminal. ユーザ端末の他の例であるタブレット端末のハードウェア構成図である。FIG. 11 is a hardware configuration diagram of a tablet terminal, which is another example of a user terminal. 仮想空間の一態様を概念的に表す図である。FIG. 1 is a diagram conceptually illustrating one aspect of a virtual space. 仮想空間において視界領域をX方向から見たYZ断面を表す図である。1 is a diagram showing a YZ cross section of a field of view in a virtual space as viewed from an X direction. 仮想空間において視界領域をY方向から見たXZ断面を表す図である。13 is a diagram showing an XZ cross section of a field of view in a virtual space as viewed from a Y direction. サーバ及びユーザ端末の機能ブロック図である。FIG. 2 is a functional block diagram of a server and a user terminal. 撮像条件設定画面の画面例である。13 is a screen example of an imaging condition setting screen. ユーザ端末の処理を示すフローチャートである。13 is a flowchart showing a process of a user terminal. ステップS11、S12に対応する仮想空間の概念図である。FIG. 11 is a conceptual diagram of a virtual space corresponding to steps S11 and S12. 自己視点映像生成&表示処理のフローチャートである。13 is a flowchart of a self-viewpoint video generation and display process. 設定視点カメラの表示/非表示を切り替えた場合の自己視点映像の例を示す図である。13A and 13B are diagrams illustrating an example of a self-viewpoint image when display/non-display of a set viewpoint camera is switched. 設定視点映像生成&保存処理のフローチャートである。13 is a flowchart of a setting viewpoint video generation and storage process. 設定視点カメラで他人アバターの表示/非表示を切り替えた場合の設定視点映像の例を示す図である。13 is a diagram showing an example of a set viewpoint image when switching between displaying and hiding other people's avatars using the set viewpoint camera. FIG. 設定視点カメラで閾値距離を変更した場合の設定視点映像の例を示す図である。13A and 13B are diagrams illustrating an example of a set viewpoint image when a threshold distance is changed in the set viewpoint camera. 設定視点映像を編集する処理のフローチャートである。13 is a flowchart of a process for editing a set viewpoint video. 編集画面及び視聴映像の例である。13 is an example of an editing screen and a viewed image.

以下、実施形態に係るシステム1を図面に基づいて説明する。なお、以下に記載する本発明の実施形態は、本発明を具体化する際の一例を示すものであって、本発明の範囲を実施形態の記載の範囲に限定するものではない。従って、本発明は、実施形態に種々の変更を加えて実施することができる。 Below, the system 1 according to the embodiment will be described with reference to the drawings. Note that the embodiment of the present invention described below is an example of how the present invention can be realized, and does not limit the scope of the present invention to the scope of the described embodiment. Therefore, the present invention can be implemented by making various modifications to the embodiment.

[システム1の概要]
図1は、本実施形態に係るシステム1の概要を示す図である。図1に示すように、システム1は、サーバ10と、ユーザ端末20A、20B、20C(以下、これらを総称して、「ユーザ端末20」と表記することがある。)とを主に備える。なお、図1には3つのユーザ端末20が図示されているが、システム1に含まれるユーザ端末20の例はこれに限定されない。サーバ10及びユーザ端末20は、通信ネットワーク2を介して相互通信可能に接続されている。通信ネットワーク2の具体例は特に限定されないが、例えば、インターネット、移動体通信システム(例えば、4G、5Gなど)、Wi-Fi(登録商標)などの無線ネットワーク、またはこれらの組み合わせで構成される。
[Overview of System 1]
FIG. 1 is a diagram showing an overview of a system 1 according to this embodiment. As shown in FIG. 1, the system 1 mainly includes a server 10 and user terminals 20A, 20B, and 20C (hereinafter, these may be collectively referred to as "user terminals 20"). Although three user terminals 20 are illustrated in FIG. 1, examples of the user terminals 20 included in the system 1 are not limited to these. The server 10 and the user terminals 20 are connected to each other so as to be able to communicate with each other via a communication network 2. Specific examples of the communication network 2 are not particularly limited, but may be, for example, the Internet, a mobile communication system (e.g., 4G, 5G, etc.), a wireless network such as Wi-Fi (registered trademark), or a combination thereof.

本実施形態に係るシステム1は、サーバ10が提供する共通の仮想空間を、複数のユーザ端末20A~20Cそれぞれのユーザに体験させるためのシステムである。より詳細には、ユーザ端末20は、ユーザに関連付けられたユーザキャラクタ(以下、「アバター」と表記することがある。)を仮想空間に配置し、予め設定された視点から仮想空間を見た画像をユーザ端末20に表示させる。 The system 1 according to this embodiment is a system that allows each user of a plurality of user terminals 20A to 20C to experience a common virtual space provided by a server 10. More specifically, the user terminal 20 places a user character (hereinafter, sometimes referred to as an "avatar") associated with the user in the virtual space, and causes the user terminal 20 to display an image of the virtual space viewed from a preset viewpoint.

また、ユーザ端末20は、操作装置に対するユーザの操作に連動して、仮想空間内でアバターを動作させる。アバターの動作とは、例えば、仮想空間内で移動すること、身体の各部を動かすこと、姿勢を変えること、顔の表情を変化させること、発話すること、仮想空間内に配置されたオブジェクトを動かすことなどを含む。 The user terminal 20 also operates the avatar in the virtual space in conjunction with the user's operation of the operating device. The avatar's movements include, for example, moving within the virtual space, moving various parts of the body, changing posture, changing facial expressions, speaking, and moving objects placed in the virtual space.

また、ユーザ端末20は、アバターの動作やステータスの変化を示すアバターデータを、通信ネットワーク2を通じてサーバ10に送信する。サーバ10は、ユーザ端末20から受信したアバターデータを、通信ネットワーク2を通じて他のユーザ端末20に送信する。そして、ユーザ端末20は、サーバ10から受信したアバターデータに基づいて、仮想空間内の対応するアバターの動作やステータスを更新する。 The user terminal 20 also transmits avatar data indicating the avatar's movements and status changes to the server 10 via the communication network 2. The server 10 transmits the avatar data received from the user terminal 20 to other user terminals 20 via the communication network 2. The user terminal 20 then updates the movements and status of the corresponding avatar in the virtual space based on the avatar data received from the server 10.

また、ユーザ端末20は、仮想空間内のアバターを予め設定した設定視点から撮像して、設定視点映像を生成する。また、ユーザ端末20は、生成した設定視点映像を編集して視聴映像を生成し、生成した視聴映像をサーバ10にアップロードする。さらに、ユーザ端末20は、サーバ10から視聴映像をダウンロードしてユーザに視聴させる。 The user terminal 20 also captures an image of an avatar in the virtual space from a preset viewpoint to generate a set viewpoint video. The user terminal 20 also edits the generated set viewpoint video to generate a viewing video, and uploads the generated viewing video to the server 10. The user terminal 20 also downloads the viewing video from the server 10 and allows the user to view it.

以下、アバターを動作させるためのユーザ端末20を「プレイ端末」と表記し、設定視点映像を編集するためのユーザ端末20を「編集端末」と表記し、視聴映像を視聴するためのユーザ端末20を「視聴端末」と表記することがある。プレイ端末、編集端末、視聴端末は、同一の端末でもよいし、異なる端末でもよい。例えば、プレイ端末としてはHMDセットが好適であり、編集端末としてはラップトップ型コンピュータまたはデスクトップコンピュータが好適であり、視聴端末としてはタブレット端末またはスマートフォンが好適である。但し、各端末の具体的な形態は、前述の例に限定されない。 Hereinafter, the user terminal 20 for operating the avatar may be referred to as the "play terminal", the user terminal 20 for editing the set viewpoint video may be referred to as the "editing terminal", and the user terminal 20 for viewing the viewing video may be referred to as the "viewing terminal". The play terminal, editing terminal, and viewing terminal may be the same terminal or different terminals. For example, an HMD set is suitable as the play terminal, a laptop computer or desktop computer is suitable as the editing terminal, and a tablet terminal or smartphone is suitable as the viewing terminal. However, the specific form of each terminal is not limited to the above examples.

[サーバ10の構成]
図2は、サーバ10のハードウェア構成図である。サーバ10は、例えば、ワークステーション、またはパーソナルコンピュータなどの汎用コンピュータで実現される。図2に示すように、サーバ10は、プロセッサ11と、メモリ12と、ストレージ13と、入出力インタフェース14と、通信インタフェース15とを主に備える。サーバ10の各構成要素は、通信バス19に接続されている。
[Configuration of Server 10]
Fig. 2 is a hardware configuration diagram of the server 10. The server 10 is realized by, for example, a general-purpose computer such as a workstation or a personal computer. As shown in Fig. 2, the server 10 mainly includes a processor 11, a memory 12, a storage 13, an input/output interface 14, and a communication interface 15. Each component of the server 10 is connected to a communication bus 19.

プロセッサ11は、メモリ12またはストレージ13に格納されているサーバプログラム13Pに含まれる一連の命令を実行することによって、後述する処理を実現する。プロセッサ11は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)、その他のデバイスとして実現される。 The processor 11 performs the processes described below by executing a series of instructions contained in the server program 13P stored in the memory 12 or the storage 13. The processor 11 is realized, for example, as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an MPU (Micro Processor Unit), an FPGA (Field-Programmable Gate Array), or other device.

メモリ12は、サーバプログラム13P及びデータを一時的に保持する。サーバプログラム13Pは、例えば、ストレージ13からロードされる。データは、サーバ10に入力されたデータと、プロセッサ11によって生成されたデータとを含む。例えば、メモリ12は、RAM(Random Access Memory)、その他の揮発メモリとして実現される。 The memory 12 temporarily holds the server program 13P and data. The server program 13P is loaded, for example, from the storage 13. The data includes data input to the server 10 and data generated by the processor 11. For example, the memory 12 is realized as a RAM (Random Access Memory) or other volatile memory.

ストレージ13は、サーバプログラム13P及びデータを永続的に保持する。ストレージ13は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。また、ストレージ13は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに他の例として、ストレージ13は、サーバ10に内蔵されることに代えて、外部記憶装置としてサーバ10に接続されていてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のユーザ端末20が使用される場面において、サーバプログラム13Pやデータの更新を一括して行うことが可能になる。 The storage 13 permanently holds the server program 13P and data. The storage 13 is realized, for example, as a ROM (Read-Only Memory), a hard disk drive, a flash memory, or other non-volatile storage device. The storage 13 may also be realized as a removable storage device such as a memory card. As yet another example, instead of being built into the server 10, the storage 13 may be connected to the server 10 as an external storage device. With this configuration, for example, in a situation where multiple user terminals 20 are used, such as an amusement facility, it becomes possible to collectively update the server program 13P and data.

入出力インタフェース14は、モニタ、入力装置(例えば、キーボード、ポインティングデバイス)、外部記憶装置、スピーカ、カメラ、マイク、センサ等の外部装置をサーバ10に接続するためのインタフェースである。プロセッサ11は、入出力インタフェース14を通じて外部装置と通信する。入出力インタフェース14は、例えば、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(High-Definition Multimedia Interface、登録商標)、その他の端子で用いて実現される。 The input/output interface 14 is an interface for connecting external devices such as a monitor, an input device (e.g., a keyboard, a pointing device), an external storage device, a speaker, a camera, a microphone, and a sensor to the server 10. The processor 11 communicates with the external devices through the input/output interface 14. The input/output interface 14 is realized using, for example, a Universal Serial Bus (USB), a Digital Visual Interface (DVI), a High-Definition Multimedia Interface (HDMI, registered trademark), or other terminals.

通信インタフェース15は、通信ネットワーク2に接続されている他の装置(例えば、ユーザ端末20)と通信する。通信インタフェース15は、例えば、LAN(Local Area Network)など有線通信インタフェース、Wi-Fi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)などの無線通信インタフェースとして実現される。 The communication interface 15 communicates with other devices (e.g., user terminal 20) connected to the communication network 2. The communication interface 15 is realized, for example, as a wired communication interface such as a LAN (Local Area Network), or a wireless communication interface such as Wi-Fi (Wireless Fidelity), Bluetooth (registered trademark), or NFC (Near Field Communication).

[ユーザ端末20の構成]
図3は、ユーザ端末20の一例であるHMD(Head Mounted Display)セットのハードウェア構成図である。図4は、ユーザ端末20の他の例であるタブレット端末のハードウェア構成図である。ユーザ端末20は、例えば、図3に示すHMDセット、図4に示すタブレット端末の他、スマートフォン、フィーチャーフォン、ラップトップ型コンピュータ、デスクトップコンピュータなどとして実現される。
[Configuration of user terminal 20]
Fig. 3 is a hardware configuration diagram of an HMD (Head Mounted Display) set, which is an example of the user terminal 20. Fig. 4 is a hardware configuration diagram of a tablet terminal, which is another example of the user terminal 20. The user terminal 20 is realized as, for example, the HMD set shown in Fig. 3, the tablet terminal shown in Fig. 4, a smartphone, a feature phone, a laptop computer, a desktop computer, or the like.

図3に示すように、HMDセットとして実現されるユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、入出力インタフェース24と、通信インタフェース25とを有するコンピュータ26を備える。コンピュータ26の各構成要素は、通信バス29に接続されている。プロセッサ21、メモリ22、ストレージ23、入出力インタフェース24、通信インタフェース25、通信バス29の基本的な構成は、図2に示すプロセッサ11、メモリ12、ストレージ13、入出力インタフェース14、通信インタフェース15、通信バス19と共通する。また、ストレージ23は、端末プログラム23Pを保持する。 As shown in FIG. 3, the user terminal 20 realized as an HMD set includes a computer 26 having a processor 21, memory 22, storage 23, input/output interface 24, and communication interface 25. Each component of the computer 26 is connected to a communication bus 29. The basic configuration of the processor 21, memory 22, storage 23, input/output interface 24, communication interface 25, and communication bus 29 is the same as that of the processor 11, memory 12, storage 13, input/output interface 14, communication interface 15, and communication bus 19 shown in FIG. 2. In addition, the storage 23 holds a terminal program 23P.

また、HMDセットとして実現されるユーザ端末20は、コンピュータ26の外部装置として、HMD30と、動きセンサ41と、操作装置42とを備える。HMD30、動きセンサ41、及び操作装置42は、入出力インタフェース24を通じてプロセッサ21に接続されている。 The user terminal 20 realized as an HMD set also includes an HMD 30, a motion sensor 41, and an operation device 42 as external devices of the computer 26. The HMD 30, the motion sensor 41, and the operation device 42 are connected to the processor 21 via the input/output interface 24.

HMD30は、ユーザの頭部に装着されて、仮想空間をユーザに提供する。より詳細には、HMD30は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。HMD30は、モニタ31(表示装置)と、注視センサ32と、カメラ33、34と、マイク35と、スピーカ36とを主に備える。 The HMD 30 is worn on the user's head to provide the user with a virtual space. More specifically, the HMD 30 may include both a so-called head-mounted display equipped with a monitor and a head-mounted device to which a smartphone or other terminal equipped with a monitor can be attached. The HMD 30 mainly includes a monitor 31 (display device), a gaze sensor 32, cameras 33 and 34, a microphone 35, and a speaker 36.

一例として、モニタ31は、非透過型の表示装置として実現される。モニタ31は、例えば、ユーザの両目の前方に位置するようにHMD30の本体に配置されている。非透過型のモニタ31は、例えば、液晶モニタ、有機EL(Electro Luminescence)モニタとして実現される。 As an example, the monitor 31 is realized as a non-transmissive display device. The monitor 31 is disposed on the main body of the HMD 30 so as to be located, for example, in front of both eyes of the user. The non-transmissive monitor 31 is realized, for example, as a liquid crystal monitor or an organic EL (Electro Luminescence) monitor.

他の例として、モニタ31は、透過型の表示装置として実現される。この場合のHMD30は、ユーザの目を覆う密閉型ではなく、メガネ型のような開放型となる。モニタ31は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。一例として、透過型のモニタ31は、HMD30に搭載されたカメラで撮像した現実空間の画像を表示してもよい。他の例として、透過型のモニタ31は、透過率を調整可能に構成されていてもよい。そして、透過型のモニタ31は、表示領域の一部の透過率を高く設定して、現実空間を直接視認できるようにしてもよい。 As another example, the monitor 31 is realized as a transmissive display device. In this case, the HMD 30 is not a closed type that covers the user's eyes, but an open type such as glasses. The monitor 31 may include a configuration that simultaneously displays a part of an image that constitutes a virtual space and the real space. As one example, the transmissive monitor 31 may display an image of the real space captured by a camera mounted on the HMD 30. As another example, the transmissive monitor 31 may be configured to have an adjustable transmittance. The transmissive monitor 31 may also set the transmittance of a part of the display area high so that the real space can be directly viewed.

また、モニタ31は、ユーザに3次元画像を視認させるために、以下の構成を採用してもよい。一例として、モニタ31は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含んでもよい。他の例として、モニタ31は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合のモニタ31は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。 The monitor 31 may also have the following configuration to allow the user to view a three-dimensional image. As one example, the monitor 31 may include a sub-monitor for displaying an image for the right eye and a sub-monitor for displaying an image for the left eye. As another example, the monitor 31 may be configured to display an image for the right eye and an image for the left eye as a single unit. In this case, the monitor 31 includes a high-speed shutter. The high-speed shutter operates to alternately display an image for the right eye and an image for the left eye so that the image is recognized by only one of the eyes.

注視センサ32は、ユーザの右目及び左目の視線が向けられる方向を検知する。つまり、注視センサ32は、ユーザの視線を検知する。注視センサ32は、例えば、アイトラッキング機能を有するセンサにより実現される。注視センサ32は、右目用のセンサ及び左目用のセンサを含むことが好ましい。注視センサ32は、ユーザの右目及び左目に赤外光を照射するとともに、照射光に対する角膜及び虹彩からの反射光を受けることにより各眼球の回転角を検知する。そして、注視センサ32は、検知した各回転角に基づいて、ユーザの視線を特定する。 The gaze sensor 32 detects the direction in which the user's right and left eyes are looking. In other words, the gaze sensor 32 detects the user's gaze. The gaze sensor 32 is realized, for example, by a sensor with an eye tracking function. It is preferable that the gaze sensor 32 includes a sensor for the right eye and a sensor for the left eye. The gaze sensor 32 irradiates the user's right and left eyes with infrared light, and detects the rotation angle of each eyeball by receiving reflected light from the cornea and iris in response to the irradiated light. The gaze sensor 32 then identifies the user's gaze based on each detected rotation angle.

カメラ33は、HMD30を装着したユーザの顔の上部(より詳細には、ユーザの目、眉など)を撮像する。カメラ34は、HMD30を装着したユーザの顔の下部(より詳細には、ユーザの鼻、口など)を撮像する。例えば、HMD30の筐体のうち、ユーザに対面する側にカメラ33が取り付けられ、ユーザと対面する側と反対側にカメラ34が取り付けられる。なお、HMD30は、2台のカメラ33、34に代えて、ユーザの顔全体を撮像する1台のカメラを備えてもよい。 Camera 33 captures the upper part of the face of the user wearing HMD 30 (more specifically, the user's eyes, eyebrows, etc.). Camera 34 captures the lower part of the face of the user wearing HMD 30 (more specifically, the user's nose, mouth, etc.). For example, camera 33 is attached to the side of the housing of HMD 30 that faces the user, and camera 34 is attached to the side opposite the side facing the user. Note that HMD 30 may be provided with one camera that captures the entire face of the user instead of the two cameras 33 and 34.

マイク35は、ユーザの発話を音声信号(電気信号)に変換してコンピュータ26に出力する。スピーカ36は、コンピュータ26から出力された音声信号を音声に変換してユーザに出力する。なお、HMD30は、スピーカ36に替えてイヤホンを含み得る。 The microphone 35 converts the user's speech into an audio signal (electrical signal) and outputs it to the computer 26. The speaker 36 converts the audio signal output from the computer 26 into sound and outputs it to the user. Note that the HMD 30 may include earphones instead of the speaker 36.

動きセンサ41は、HMD30の動きを検出するためのポジショントラッキング機能を有する。一例として、動きセンサ41は、HMD30が発する複数の赤外線を読み取って、現実空間内におけるHMD30の位置及び傾きを検出してもよい。他の例として、動きセンサ41は、カメラで実現されてもよい。この場合の動きセンサ41は、カメラから出力されるHMD30の画像情報を解析して、HMD30の位置及び傾きを検出する。さらに他の例として、動きセンサ41は、角速度センサ、地磁気センサ、あるいは加速度センサで実現されてもよい。 The motion sensor 41 has a position tracking function for detecting the motion of the HMD 30. As one example, the motion sensor 41 may read multiple infrared rays emitted by the HMD 30 to detect the position and inclination of the HMD 30 in real space. As another example, the motion sensor 41 may be realized by a camera. In this case, the motion sensor 41 analyzes the image information of the HMD 30 output from the camera to detect the position and inclination of the HMD 30. As yet another example, the motion sensor 41 may be realized by an angular velocity sensor, a geomagnetic sensor, or an acceleration sensor.

操作装置42は、有線または無線によりコンピュータ26に接続されている。操作装置42は、ユーザによるコンピュータ26に対する命令の入力(操作)を受け付ける。一例として、操作装置42は、ユーザが把持した状態で操作する、所謂コントローラでもよい。他の例として、操作装置42は、ユーザの身体あるいは衣類の一部に装着可能に構成され、モーションセンサによってユーザの動きを検知するものでもよい。但し、操作装置42の具体例はこれらに限定されず、キーボード、ポインティングデバイス、タッチパネルなどでもよい。 The operation device 42 is connected to the computer 26 by wire or wirelessly. The operation device 42 accepts input (operation) of commands to the computer 26 by the user. As one example, the operation device 42 may be a so-called controller that is held and operated by the user. As another example, the operation device 42 may be configured to be wearable on the user's body or part of his/her clothing, and may detect the user's movements by a motion sensor. However, specific examples of the operation device 42 are not limited to these, and may be a keyboard, a pointing device, a touch panel, etc.

図4に示すように、タブレット端末として実現されるユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信インタフェース25と、モニタ31と、カメラ33、34と、マイク35と、スピーカ36と、動きセンサ41と、操作装置42とを主に備える。タブレット端末の各構成要素は、通信バス29に接続されている。プロセッサ21、メモリ22、ストレージ23、通信インタフェース25、モニタ31、カメラ33、34、マイク35、スピーカ36、動きセンサ41、操作装置42の基本的な構成は、HMDセットの場合と共通するので、以下、タブレット端末に特有の構成を説明する。 As shown in FIG. 4, the user terminal 20 realized as a tablet terminal mainly comprises a processor 21, a memory 22, a storage 23, a communication interface 25, a monitor 31, cameras 33 and 34, a microphone 35, a speaker 36, a motion sensor 41, and an operation device 42. Each component of the tablet terminal is connected to a communication bus 29. The basic configuration of the processor 21, memory 22, storage 23, communication interface 25, monitor 31, cameras 33 and 34, microphone 35, speaker 36, motion sensor 41, and operation device 42 is the same as that of an HMD set, so the configuration specific to the tablet terminal will be described below.

モニタ31は、平板状の筐体の表面に設けられている。カメラ33は、平板状の筐体の表面に取り付けられて、モニタ31を視認するユーザの顔を撮像する、所謂インカメラである。カメラ34は、平板状の筐体の裏面(モニタ31と反対側の面)に取り付けられて、周囲を撮像する、所謂アウトカメラである。動きセンサ41は、筐体の動き(例えば、互いに直交する3軸周りの回転)を検知する。タブレット端末に好適な操作装置42としては、例えば、モニタ31に重畳されて、ユーザによる各種タッチ操作(例えば、タップ、スライド、フリック、ピンチイン、ピンチアウトなど)を受け付けるタッチパネルである。 The monitor 31 is provided on the surface of a flat housing. The camera 33 is a so-called in-camera that is attached to the surface of the flat housing and captures an image of the face of a user viewing the monitor 31. The camera 34 is a so-called out-camera that is attached to the back surface of the flat housing (the surface opposite the monitor 31) and captures an image of the surroundings. The motion sensor 41 detects the motion of the housing (e.g., rotation around three mutually orthogonal axes). An example of an operation device 42 suitable for a tablet terminal is a touch panel that is superimposed on the monitor 31 and accepts various touch operations by the user (e.g., tapping, sliding, flicking, pinching in, pinching out, etc.).

[仮想空間90の概要]
図5は、仮想空間90の一態様を概念的に表す図である。図6は、仮想空間90において視界領域94をX方向から見たYZ断面を表す図である。図7は、仮想空間90において視界領域94をY方向から見たXZ断面を表す図である。
[Outline of Virtual Space 90]
Fig. 5 is a diagram conceptually illustrating one aspect of the virtual space 90. Fig. 6 is a diagram illustrating a YZ cross section of the field of view 94 in the virtual space 90 as viewed from the X direction. Fig. 7 is a diagram illustrating an XZ cross section of the field of view 94 in the virtual space 90 as viewed from the Y direction.

図5に示すように、仮想空間90は、中心Cの360度方向の全体を覆う全天球状の構造を有する。図5では説明を複雑にしないために、仮想空間90の上半分の天球が例示されている。仮想空間90では各メッシュが規定される。各メッシュの位置は、仮想空間90に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。仮想空間90に展開可能なパノラマ画像91(静止画、動画等)を構成する各部分画像は、仮想空間90において対応する各メッシュにそれぞれ対応付けられる。 As shown in FIG. 5, the virtual space 90 has a spherical structure that covers the entire 360-degree area from the center C. In FIG. 5, the celestial sphere in the upper half of the virtual space 90 is illustrated to avoid complicating the explanation. Meshes are defined in the virtual space 90. The position of each mesh is defined in advance as a coordinate value in the XYZ coordinate system, which is a global coordinate system defined in the virtual space 90. Each partial image that constitutes a panoramic image 91 (still image, video, etc.) that can be deployed in the virtual space 90 is associated with a corresponding mesh in the virtual space 90.

例えば、仮想空間90では、中心Cを原点とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、及び前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸(水平方向)が実座標系のx軸と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)が実座標系のz軸と平行である。 For example, in virtual space 90, an XYZ coordinate system is defined with center C as the origin. The XYZ coordinate system is, for example, parallel to the real coordinate system. The horizontal direction, vertical direction (up-down direction), and front-to-back direction in the XYZ coordinate system are defined as the X-axis, Y-axis, and Z-axis, respectively. Therefore, the X-axis (horizontal direction) of the XYZ coordinate system is parallel to the x-axis of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the real coordinate system, and the Z-axis (front-to-back direction) of the XYZ coordinate system is parallel to the z-axis of the real coordinate system.

仮想空間90には、ユーザ端末20に対応付けられた仮想カメラ92が配置される。仮想空間90内における仮想カメラ92の位置は、仮想空間90内におけるユーザの視点に相当する。また、仮想カメラ92の向きは、仮想空間90におけるユーザの視線(基準視線93)に相当する。そして、プロセッサ21は、仮想カメラ92の位置と向きとに基づいて、仮想空間90における視界領域94(仮想カメラ92の画角)を規定する。 A virtual camera 92 associated with the user terminal 20 is placed in the virtual space 90. The position of the virtual camera 92 in the virtual space 90 corresponds to the user's viewpoint in the virtual space 90. The orientation of the virtual camera 92 corresponds to the user's line of sight (reference line of sight 93) in the virtual space 90. The processor 21 then determines a viewing area 94 (the angle of view of the virtual camera 92) in the virtual space 90 based on the position and orientation of the virtual camera 92.

図6に示すように、視界領域94は、YZ断面において領域95を含む。領域95は、仮想空間90内で基準視線93を含む鉛直断面(YZ断面)において、基準視線93を中心とする極角αの範囲である。図7に示すように、視界領域94は、XZ断面において領域96を含む。領域96は、仮想空間90内で基準視線93を含む水平断面(XZ断面)において、基準視線93を中心とする方位角βの範囲である。 As shown in FIG. 6, the field of view 94 includes an area 95 in the YZ cross section. Area 95 is a range of polar angle α centered on the reference line of sight 93 in a vertical cross section (YZ cross section) including the reference line of sight 93 in the virtual space 90. As shown in FIG. 7, the field of view 94 includes an area 96 in the XZ cross section. Area 96 is a range of azimuth angle β centered on the reference line of sight 93 in a horizontal cross section (XZ cross section) including the reference line of sight 93 in the virtual space 90.

プロセッサ21は、仮想空間90に展開されたパノラマ画像91のうち、視界領域94に含まれる部分画像を、仮想カメラ92が撮像した仮想空間画像97として生成(抽出)する。そして、プロセッサ21は、生成した仮想空間画像97をモニタ31に表示させる。すなわち、視界領域94は、仮想空間90内におけるユーザの視界に相当する。さらに、仮想空間90内で仮想カメラ92の位置及び向きの変化に追従して視界領域94が移動し、モニタ31に表示される仮想空間画像97が更新される。すなわち、ユーザの視界が移動する。 The processor 21 generates (extracts) a partial image included in the field of view 94 of the panoramic image 91 deployed in the virtual space 90 as a virtual space image 97 captured by the virtual camera 92. The processor 21 then displays the generated virtual space image 97 on the monitor 31. That is, the field of view 94 corresponds to the user's field of view in the virtual space 90. Furthermore, the field of view 94 moves in response to changes in the position and orientation of the virtual camera 92 in the virtual space 90, and the virtual space image 97 displayed on the monitor 31 is updated. That is, the user's field of view moves.

例えば、プロセッサ21は、操作装置42で受け付けたユーザの操作に連動して、仮想空間90内で仮想カメラ92を移動させる。また、プロセッサ21は、動きセンサ41で検知されたユーザ端末20の動き(例えば、互いに直交する3軸周りの回転)に連動して、仮想カメラ92の向き(すなわち、基準視線93)を変化させる。さらに、プロセッサ21は、位置及び向きが変化した後の仮想カメラ92で撮像した仮想空間画像97をモニタ31に表示させる。 For example, the processor 21 moves the virtual camera 92 in the virtual space 90 in conjunction with the user's operation received by the operation device 42. The processor 21 also changes the orientation of the virtual camera 92 (i.e., the reference line of sight 93) in conjunction with the movement of the user terminal 20 detected by the motion sensor 41 (e.g., rotation around three mutually orthogonal axes). Furthermore, the processor 21 displays on the monitor 31 a virtual space image 97 captured by the virtual camera 92 after the position and orientation have been changed.

[サーバ10及びユーザ端末20の機能ブロック図]
図8は、サーバ10及びユーザ端末20の機能ブロック図である。図8に示すように、メモリ12にロードされたサーバプログラム13Pは、サーバ10を、アバター同期手段110、編集補助手段120、視聴補助手段130として機能させる。また、メモリ22にロードされた端末プログラム23Pは、ユーザ端末20(コンピュータ26)を、仮想空間定義手段210、配置手段220、カメラ設定手段230、カメラ移動手段240、映像生成手段250、映像表示手段260、編集手段270として機能させる。
[Functional block diagram of server 10 and user terminal 20]
Fig. 8 is a functional block diagram of the server 10 and the user terminal 20. As shown in Fig. 8, the server program 13P loaded into the memory 12 causes the server 10 to function as an avatar synchronization means 110, an editing assistance means 120, and a viewing assistance means 130. In addition, the terminal program 23P loaded into the memory 22 causes the user terminal 20 (computer 26) to function as a virtual space definition means 210, a placement means 220, a camera setting means 230, a camera movement means 240, an image generation means 250, an image display means 260, and an editing means 270.

アバター同期手段110は、ユーザ端末20の1つから通信ネットワーク2を通じて受信したアバターデータを、他のユーザ端末20に送信(中継)する。これにより、全てのユーザ端末20A~20Cは、同一のアバターデータを保持する。その結果、全てのユーザ端末20A~20Cそれぞれで定義される仮想空間90において、同一の位置に同一のアバターが配置される。すなわち、全てのユーザ端末20A~20Cにおいて、アバターが同期される。 The avatar synchronization means 110 transmits (relays) avatar data received from one of the user terminals 20 via the communication network 2 to the other user terminals 20. This causes all user terminals 20A to 20C to hold the same avatar data. As a result, the same avatar is placed in the same position in the virtual space 90 defined by each of the user terminals 20A to 20C. In other words, the avatars are synchronized in all user terminals 20A to 20C.

編集補助手段120は、例えば、プレイ端末(ユーザ端末20A)で生成された設定視点映像を、編集端末(ユーザ端末20B)で編集するのを補助する。より詳細には、編集補助手段120は、通信ネットワーク2を通じてプレイ端末から受信した設定視点映像データを、ストレージ13に保存する。また、編集補助手段120は、編集端末の要求に応じて、ストレージ13に保存された設定視点映像データを、通信ネットワーク2を通じて編集端末に送信する。さらに、編集補助手段120は、通信ネットワーク2を通じて編集端末から受信した視聴映像データを、ストレージ13に保存する。視聴補助手段130は、視聴端末(ユーザ端末20C)の要求に応じて、ストレージ13に保存された視聴映像データを、通信ネットワーク2を通じて視聴端末に送信する。 The editing assistance means 120, for example, assists in editing the set viewpoint video generated at the play terminal (user terminal 20A) at the editing terminal (user terminal 20B). More specifically, the editing assistance means 120 stores the set viewpoint video data received from the play terminal through the communication network 2 in the storage 13. Also, in response to a request from the editing terminal, the editing assistance means 120 transmits the set viewpoint video data stored in the storage 13 to the editing terminal through the communication network 2. Furthermore, the editing assistance means 120 stores the viewing video data received from the editing terminal through the communication network 2 in the storage 13. In response to a request from the viewing terminal (user terminal 20C), the viewing video data stored in the storage 13 transmits the viewing video data to the viewing terminal through the communication network 2.

なお、編集補助手段120及び視聴補助手段130の機能の一部または全部は、サーバ10と独立したコンピュータ上で実現されてもよい。一例として、編集補助手段120は、クラウド上で記憶領域を提供するストレージサーバによって実現可能である。他の例として、視聴補助手段130は、映像視聴サービス(ストリーミングサービス)を提供するサーバによって実現可能である。 In addition, some or all of the functions of the editing assistance means 120 and the viewing assistance means 130 may be realized on a computer independent of the server 10. As one example, the editing assistance means 120 can be realized by a storage server that provides storage space on the cloud. As another example, the viewing assistance means 130 can be realized by a server that provides a video viewing service (streaming service).

仮想空間定義手段210は、現実空間に対応する仮想空間90を定義する。より詳細には、仮想空間定義手段210は、仮想空間90を示す仮想空間データをメモリ22に展開する。仮想空間データは、例えば、パノラマ画像91と、仮想空間90内に配置されるオブジェクト(例えば、建物、植物)の形状及び位置とを示す。なお、仮想空間データは、予めサーバ10からダウンロードしてストレージ23に保持されていてもよいし、仮想空間90を定義する際にサーバ10からダウンロードされてもよい。また、仮想空間定義手段210は、複数の仮想空間90のうちから操作装置42を通じて選択された仮想空間90を定義してもよい。仮想空間90を定義する具体的な処理は既に周知なので、詳細な説明は省略する。 The virtual space definition means 210 defines a virtual space 90 corresponding to the real space. More specifically, the virtual space definition means 210 expands virtual space data indicating the virtual space 90 in the memory 22. The virtual space data indicates, for example, a panoramic image 91 and the shapes and positions of objects (e.g., buildings, plants) to be placed in the virtual space 90. Note that the virtual space data may be downloaded in advance from the server 10 and stored in the storage 23, or may be downloaded from the server 10 when the virtual space 90 is defined. The virtual space definition means 210 may also define a virtual space 90 selected from among a plurality of virtual spaces 90 via the operation device 42. The specific process of defining the virtual space 90 is already known, and therefore a detailed description thereof will be omitted.

配置手段220は、仮想空間定義手段210で定義された仮想空間90にキャラクタを配置する。ここでは、ユーザ端末20Aで端末プログラム23Pが実行される場合を説明する。配置手段220が仮想空間90に配置するキャラクタは、ユーザ端末20Aのユーザのアバター(以下、「本人アバター」と表記する。)と、他のユーザ端末20B、20Cのユーザのアバター(以下、「他人アバター」と表記する。)とを含む。 The placement means 220 places characters in the virtual space 90 defined by the virtual space definition means 210. Here, a case where the terminal program 23P is executed on the user terminal 20A will be described. The characters that the placement means 220 places in the virtual space 90 include the avatar of the user of the user terminal 20A (hereinafter referred to as the "user's avatar") and the avatars of the users of the other user terminals 20B and 20C (hereinafter referred to as the "other users' avatars").

まず、配置手段220は、ストレージ23に予め記憶されているアバターデータに基づいて、本人アバターを仮想空間90に配置する。そして、配置手段220は、本人アバターのアバターデータを、通信ネットワーク2を通じてサーバ10に送信する。また、配置手段220は、本人アバターの動作を指示するユーザの操作を操作装置42を通じて受け付けた場合に、当該操作に従って仮想空間90内で本人アバターを動作させる。そして、配置手段220は、本人アバターの動作後の状態を示すようにアバターデータを更新し、更新したアバターデータを通信ネットワーク2を通じてサーバ10に送信する。 First, the placement means 220 places the principal avatar in the virtual space 90 based on the avatar data pre-stored in the storage 23. Then, the placement means 220 transmits the avatar data of the principal avatar to the server 10 via the communication network 2. Furthermore, when the placement means 220 receives a user's operation via the operation device 42 instructing the principal avatar to move, it moves the principal avatar in the virtual space 90 in accordance with the operation. Then, the placement means 220 updates the avatar data to indicate the state of the principal avatar after the movement, and transmits the updated avatar data to the server 10 via the communication network 2.

また、配置手段220は、他人アバターのアバターデータを、通信ネットワーク2を通じてサーバ10から受信する。そして、配置手段220は、サーバ10から受信したアバターデータに基づいて、他人アバターを仮想空間90に配置する。さらに、配置手段220は、アバターデータが更新される度に他人アバターを配置し直すことによって、仮想空間90内で他人アバターが動作する。 The placement means 220 also receives avatar data of the other person's avatar from the server 10 via the communication network 2. The placement means 220 then places the other person's avatar in the virtual space 90 based on the avatar data received from the server 10. Furthermore, the placement means 220 rearranges the other person's avatar every time the avatar data is updated, thereby causing the other person's avatar to operate within the virtual space 90.

カメラ設定手段230は、操作装置42を通じたユーザの操作に従って、仮想カメラ92(より詳細には、設定視点カメラ92B~92D)の撮像条件を設定する。図9は、撮像条件設定画面の画面例である。図9に示すように、撮像条件設定画面は、撮像条件として、設定距離、設定角度、撮像部位、設定視点カメラの表示/非表示、他人アバターの表示/非表示、閾値距離の設定を受け付ける。但し、撮像条件の具体例は、これらに限定されない。また、撮像条件を設定するインタフェースは、図9の例に限定されない。そして、カメラ設定手段230は、操作装置42を通じてユーザに指定された撮像条件を満たすように、仮想空間90内に仮想カメラ92を配置する。 The camera setting means 230 sets the imaging conditions of the virtual camera 92 (more specifically, the set viewpoint cameras 92B to 92D) in accordance with the user's operation via the operation device 42. FIG. 9 is an example of an imaging condition setting screen. As shown in FIG. 9, the imaging condition setting screen accepts settings of the set distance, set angle, imaging part, display/non-display of the set viewpoint camera, display/non-display of other people's avatars, and threshold distance as imaging conditions. However, specific examples of imaging conditions are not limited to these. Furthermore, the interface for setting the imaging conditions is not limited to the example in FIG. 9. The camera setting means 230 then positions the virtual camera 92 in the virtual space 90 so as to satisfy the imaging conditions specified by the user via the operation device 42.

なお、図11に示すように、本実施形態に係る仮想カメラ92は、自己視点カメラ92Aと、複数の設定視点カメラ92B、92C、92Dとを含む。以下、自己視点カメラ92Aによって撮像された映像を「自己視点映像」と表記し、設定視点カメラ92B~92Dによって撮像された映像を「設定視点映像」と表記する。自己視点映像及び設定視点映像は、複数の仮想空間画像97を時系列に並べて構成される。 As shown in FIG. 11, the virtual camera 92 according to this embodiment includes a self-viewpoint camera 92A and multiple set viewpoint cameras 92B, 92C, and 92D. Hereinafter, the image captured by the self-viewpoint camera 92A will be referred to as the "self-viewpoint image," and the images captured by the set viewpoint cameras 92B to 92D will be referred to as the "set viewpoint image." The self-viewpoint image and the set viewpoint image are constructed by arranging multiple virtual space images 97 in chronological order.

自己視点カメラ92Aは、本人アバターの自己視点から基準視線93に向かって仮想空間90を撮像する仮想カメラである。すなわち、自己視点カメラ92Aの撮像範囲は、本人アバターの視界に一致する。但し、自己視点カメラ92Aは、本人アバターの後方から基準視線93に向かって仮想空間90を撮像してもよい。設定視点カメラ92B、92C、92Dは、本人アバターと異なる位置に予め設定された設定視点から本人アバターを撮像する仮想カメラである。なお、設定視点カメラ92B、92C、92Dの数は3つに限定されず、2つ以上であればよい。以下、設定視点カメラ92Bの撮像条件について説明する。 The self-viewpoint camera 92A is a virtual camera that captures the virtual space 90 from the self-viewpoint of the user's avatar toward the reference line of sight 93. In other words, the imaging range of the self-viewpoint camera 92A matches the field of view of the user's avatar. However, the self-viewpoint camera 92A may capture the virtual space 90 from behind the user's avatar toward the reference line of sight 93. The set viewpoint cameras 92B, 92C, and 92D are virtual cameras that capture the user's avatar from a set viewpoint that is set in advance at a position different from the user's avatar. Note that the number of set viewpoint cameras 92B, 92C, and 92D is not limited to three, and may be two or more. The imaging conditions of the set viewpoint camera 92B are explained below.

「設定距離」は、本人アバターと設定視点カメラ92Bとの距離を示す。「設定角度」は、本人アバターの基準視線93と、本人アバター及び設定視点カメラ92Bを結ぶ直線とのなす角を示す。すなわち、本人アバターの正面を撮像する場合の設定角度は0°であり、本人アバターの右側面を撮像する場合の設定角度は90°である。「撮像部位」は、設定視点カメラ92Bが撮像する本人アバターの部位(例えば、全身、上半身、顔など)を示す。「設定視点カメラの表示/非表示」は、自己視点映像に設定視点カメラ92Bを含めるか否かを示す。 "Set distance" indicates the distance between the user's avatar and the set viewpoint camera 92B. "Set angle" indicates the angle between the user's avatar's reference line of sight 93 and the line connecting the user's avatar and the set viewpoint camera 92B. In other words, the set angle is 0° when capturing an image of the front of the user's avatar, and the set angle is 90° when capturing an image of the right side of the user's avatar. "Image-capturing part" indicates the part of the user's avatar that is captured by the set viewpoint camera 92B (e.g., whole body, upper body, face, etc.). "Show/hide set viewpoint camera" indicates whether or not to include the set viewpoint camera 92B in the user's viewpoint image.

「他人アバターの表示/非表示」は、本人アバターと設定視点カメラ92Bとの間に位置する他人アバターを、設定視点映像に含めるか否かを示す。「閾値距離」は、他人アバターの非表示が選択された場合において、他人アバターを非表示にする設定視点カメラ92Bからの距離を示す。一例として、閾値距離を5mに設定すると、本人アバターと設定視点カメラ92Bとの間に位置する他人アバターのうち、設定視点カメラ92Bからの距離が5m未満の他人アバターが設定視点映像から除かれ、設定視点カメラ92Bからの距離が5m以上の他人アバターが設定視点映像に含められる。他の例として、設定距離=閾値距離に設定すると、本人アバターと設定視点カメラ92Bとの間に位置する全ての他人アバターが設定視点映像から除外される。 "Show/hide other person's avatar" indicates whether or not other person's avatars located between the user's own avatar and the set viewpoint camera 92B are included in the set viewpoint image. "Threshold distance" indicates the distance from the set viewpoint camera 92B at which other person's avatars are hidden when hiding of other person's avatars is selected. As an example, when the threshold distance is set to 5m, other person's avatars located between the user's own avatar and the set viewpoint camera 92B that are less than 5m away from the set viewpoint camera 92B are excluded from the set viewpoint image, and other person's avatars that are 5m or more away from the set viewpoint camera 92B are included in the set viewpoint image. As another example, when the set distance is set to the threshold distance, all other person's avatars located between the user's own avatar and the set viewpoint camera 92B are excluded from the set viewpoint image.

カメラ移動手段240は、動きセンサ41で検知されたユーザ端末20の動きまたは操作装置42を通じたアバターの動作指示に基づいて、仮想空間90内で仮想カメラ92を移動させる。ユーザ端末20を動かすこと及び操作装置42を通じてアバターの動作を指示することは、移動操作の一例である。そして、カメラ移動手段240は、配置手段220が移動させた本人アバターに追従して、カメラ設定手段230によって設定された撮像条件を満たすように仮想カメラ92を移動させる。 The camera moving means 240 moves the virtual camera 92 within the virtual space 90 based on the movement of the user terminal 20 detected by the motion sensor 41 or the avatar's operation instruction via the operation device 42. Moving the user terminal 20 and instructing the avatar's operation via the operation device 42 are examples of movement operations. The camera moving means 240 then moves the virtual camera 92 to follow the user's avatar moved by the placement means 220 and to satisfy the imaging conditions set by the camera setting means 230.

映像生成手段250は、仮想カメラ92で仮想空間90内を撮像した映像を生成する。より詳細には、映像生成手段250は、パノラマ画像91のうちの視界領域94に相当する画像を仮想空間画像97として抽出する。また、映像生成手段250は、所定の時間間隔(例えば、1/60秒間隔)で抽出した仮想空間画像97を時系列に並べて映像を生成する。 The image generating means 250 generates an image captured within the virtual space 90 by the virtual camera 92. More specifically, the image generating means 250 extracts an image corresponding to the field of view 94 from the panoramic image 91 as a virtual space image 97. The image generating means 250 also generates an image by arranging the virtual space images 97 extracted at a predetermined time interval (e.g., 1/60 second intervals) in chronological order.

なお、映像生成手段250は、自己視点カメラ92Aで仮想空間90内を撮像した自己視点映像と、設定視点カメラ92B~92Dそれぞれで仮想空間90内を撮像した複数の設定視点映像とを生成する。そして、映像生成手段250は、自己視点映像を示す自己視点映像データをメモリ22に記憶させる。また、映像生成手段250は、設定視点映像を示す設定視点映像データをストレージ23に記憶させる。 The image generating means 250 generates a self-viewpoint image captured by the self-viewpoint camera 92A of the virtual space 90, and a plurality of set viewpoint images captured by the set viewpoint cameras 92B to 92D of the virtual space 90. The image generating means 250 then stores self-viewpoint image data representing the self-viewpoint image in the memory 22. The image generating means 250 also stores set viewpoint image data representing the set viewpoint image in the storage 23.

映像表示手段260は、自己視点映像をモニタ31に表示させる。より詳細には、映像表示手段260は、映像生成手段250によって生成された自己視点映像データを、モニタ31のグラフィックメモリに展開する。そして、仮想空間90内のキャラクタが更新される度に、映像生成手段250が仮想空間画像97を新たに生成し、新たに生成された仮想空間画像97を映像表示手段260がモニタ31に表示させる。これにより、ユーザ端末20のユーザは、仮想空間90内で動作するキャラクタの視界を示す自己視点映像を、モニタ31を通じて視聴することができる。 The video display means 260 displays the self-viewpoint video on the monitor 31. More specifically, the video display means 260 expands the self-viewpoint video data generated by the video generation means 250 into the graphic memory of the monitor 31. Then, every time the character in the virtual space 90 is updated, the video generation means 250 generates a new virtual space image 97, and the video display means 260 displays the newly generated virtual space image 97 on the monitor 31. This allows the user of the user terminal 20 to view the self-viewpoint video showing the field of view of the character operating in the virtual space 90 through the monitor 31.

編集手段270は、操作装置42を通じたユーザの操作に従って、映像生成手段250によって生成された複数の設定視点映像を編集して、視聴映像を生成する。編集とは、例えば、複数の設定視点映像それぞれから抽出した静止画像を時系列に並べることを指す。なお、図8の例では、編集手段270と他の手段210~270とが異なるユーザ端末20A、20Bに実装されているが、同一のユーザ端末20に実装されてもよい。また、編集手段270は、周知の映像編集プログラムで代替することができる。 The editing means 270 edits the multiple set viewpoint videos generated by the video generating means 250 in accordance with user operations via the operating device 42 to generate a viewing video. Editing refers to, for example, arranging still images extracted from each of the multiple set viewpoint videos in chronological order. Note that, although the editing means 270 and the other means 210 to 270 are implemented in different user terminals 20A and 20B in the example of FIG. 8, they may be implemented in the same user terminal 20. Also, the editing means 270 can be replaced by a well-known video editing program.

図10~図16を参照して、設定視点映像を生成する際のシステム1の動作を説明する。本実施形態では、2人のアバター50、51が仮想空間90内で行うパフォーマンス(例えば、歌唱、楽器演奏、ダンスなど)を、ユーザ端末20のユーザがアバター52、53を通じて視聴することを想定する。以下、アバター50に関連付けられたユーザ端末20Aの処理を中心に説明する。そして、ユーザ端末20Aのアバター50を「本人アバター50」と表記し、他のユーザ端末20のアバター51、52、53を「他人アバター51、52、53」と表記する。 The operation of system 1 when generating a set viewpoint video will be described with reference to Figures 10 to 16. In this embodiment, it is assumed that a user of a user terminal 20 watches a performance (e.g., singing, playing an instrument, dancing, etc.) given by two avatars 50, 51 in a virtual space 90 through avatars 52, 53. Below, the processing of user terminal 20A associated with avatar 50 will be mainly described. The avatar 50 of user terminal 20A will be referred to as "user avatar 50", and the avatars 51, 52, 53 of other user terminals 20 will be referred to as "other avatars 51, 52, 53".

また、本実施形態では、本人アバター50のパフォーマンスを、3台の設定視点カメラ92B~92Dで撮像して、3つの設定視点映像を生成する。そして、本実施形態では、設定視点カメラ92Bの撮像条件を、設定距離=15m、設定角度=0°、撮像部位=全身、設定視点カメラ=表示、他人アバター=非表示、閾値距離=5mとする。また、設定視点カメラ92Cの撮像条件を、設定距離=10m、設定角度=0°、撮像部位=上半身、設定視点カメラ=非表示、他人アバター=非表示、閾値距離=10mとする。さらに、設定視点カメラ92Dの撮像条件を、設定距離=10m、設定角度=90°、撮像部位=全身、設定視点カメラ=非表示、他人アバター=非表示、閾値距離=3mとする。 In this embodiment, the performance of the person's avatar 50 is captured by three set viewpoint cameras 92B to 92D to generate three set viewpoint videos. In this embodiment, the imaging conditions of the set viewpoint camera 92B are set distance = 15 m, set angle = 0°, imaging part = whole body, set viewpoint camera = displayed, other avatar = hidden, threshold distance = 5 m. The imaging conditions of the set viewpoint camera 92C are set distance = 10 m, set angle = 0°, imaging part = upper body, set viewpoint camera = hidden, other avatar = hidden, threshold distance = 10 m. The imaging conditions of the set viewpoint camera 92D are set distance = 10 m, set angle = 90°, imaging part = whole body, set viewpoint camera = hidden, other avatar = hidden, threshold distance = 3 m.

図10は、ユーザ端末20Aの処理を示すフローチャートである。図11は、ステップS11、S12に対応する仮想空間90の概念図である。図12は、自己視点映像生成&表示処理のフローチャートである。図13は、設定視点カメラ92Bの表示/非表示を切り替えた場合の自己視点映像の例を示す図である。図14は、設定視点映像生成&保存処理のフローチャートである。図15は、設定視点カメラ92Cで他人アバターの表示/非表示を切り替えた場合の設定視点映像の例を示す図である。図16は、設定視点カメラ92Dで閾値距離を変更した場合の設定視点映像の例を示す図である。 Figure 10 is a flowchart showing the processing of the user terminal 20A. Figure 11 is a conceptual diagram of the virtual space 90 corresponding to steps S11 and S12. Figure 12 is a flowchart of the self-viewpoint image generation and display processing. Figure 13 is a diagram showing an example of the self-viewpoint image when the display/non-display of the set viewpoint camera 92B is switched. Figure 14 is a flowchart of the set viewpoint image generation and storage processing. Figure 15 is a diagram showing an example of the set viewpoint image when the display/non-display of another person's avatar is switched in the set viewpoint camera 92C. Figure 16 is a diagram showing an example of the set viewpoint image when the threshold distance is changed in the set viewpoint camera 92D.

図10に示すように、ユーザ端末20A(仮想空間定義手段210)は、ストレージ23に記憶された仮想空間データをメモリ12に展開することによって、仮想空間90を定義する(S11)。次に、ユーザ端末20A(配置手段220及びカメラ設定手段230)は、図11に示すように、ステップS11で定義された仮想空間90に本人アバター50及び仮想カメラ92を配置すると共に、通信ネットワーク2を通じてサーバ10にアバターデータを送信する(S12)。本人アバター50の初期位置は、例えば、仮想空間90の中心Cである。また、自己視点カメラ92Aの初期位置は、本人アバター50の頭の位置である。さらに、設定視点カメラ92B~92Dの初期位置は、撮像条件設定画面で設定された撮像条件で示される位置である。 As shown in FIG. 10, the user terminal 20A (virtual space definition means 210) defines the virtual space 90 by expanding the virtual space data stored in the storage 23 in the memory 12 (S11). Next, the user terminal 20A (placement means 220 and camera setting means 230) places the user's avatar 50 and the virtual camera 92 in the virtual space 90 defined in step S11 as shown in FIG. 11, and transmits the avatar data to the server 10 via the communication network 2 (S12). The initial position of the user's avatar 50 is, for example, the center C of the virtual space 90. The initial position of the user's viewpoint camera 92A is the head position of the user's avatar 50. The initial positions of the set viewpoint cameras 92B to 92D are positions indicated by the imaging conditions set on the imaging condition setting screen.

次に、ユーザ端末20A(配置手段220)は、通信ネットワーク2を通じてサーバ10からアバターデータを受信した場合に(S13:Yes)、例えば図11に示すように、受信したアバターデータに従って仮想空間90に他人アバター51、52、53を配置する(S14)。なお、他人アバター51、52、53は、ユーザ端末20Aと異なるユーザ端末20から送信されたアバターデータに対応する。 Next, when the user terminal 20A (placement means 220) receives avatar data from the server 10 via the communication network 2 (S13: Yes), it places other people's avatars 51, 52, and 53 in the virtual space 90 according to the received avatar data (S14), as shown in FIG. 11 for example. Note that the other people's avatars 51, 52, and 53 correspond to avatar data transmitted from a user terminal 20 other than the user terminal 20A.

次に、ユーザ端末20A(映像生成手段250及び映像表示手段260)は、自己視点映像の一部を構成する仮想空間画像97に他人アバター51、52、53を反映させるために、図12に示す自己視点映像生成&表示処理を実行する(S17)。これにより、自己視点映像の一部を構成する仮想空間画像97が生成され、ユーザ端末20Aのユーザがモニタ31を通じて視認する。 Next, the user terminal 20A (image generating means 250 and image display means 260) executes the self-viewpoint image generating and displaying process shown in FIG. 12 in order to reflect the other person's avatars 51, 52, and 53 in the virtual space image 97 that constitutes part of the self-viewpoint image (S17). As a result, the virtual space image 97 that constitutes part of the self-viewpoint image is generated, and the user of the user terminal 20A views it through the monitor 31.

また、ユーザ端末20A(映像生成手段250)は、設定視点映像の一部を構成する仮想空間画像97に他人アバター51、52、53を反映させるために、設定視点カメラ92B~92Dそれぞれに対して、図14に示す設定視点映像生成&保存処理を実行する(S18)。これにより、設定視点映像の一部を構成する仮想空間画像97が生成され、設定視点映像データの一部としてストレージ23に記憶される。 Furthermore, the user terminal 20A (image generating means 250) executes the setting viewpoint image generating and saving process shown in FIG. 14 for each of the setting viewpoint cameras 92B to 92D in order to reflect the other person avatars 51, 52, and 53 in the virtual space image 97 that constitutes part of the setting viewpoint image (S18). As a result, the virtual space image 97 that constitutes part of the setting viewpoint image is generated and stored in the storage 23 as part of the setting viewpoint image data.

また、ユーザ端末20A(配置手段220及びカメラ移動手段240)は、本人アバター50の動作を指示する操作を操作装置42を通じて受け付けた場合に(S15:Yes)、操作装置42に対するユーザの操作に従って本人アバター50を動作させ、本人アバター50に追従して仮想カメラ92を移動させ、動作後の本人アバター50を示すアバターデータを、通信ネットワーク2を通じてサーバ10に送信する(S16)。また、ユーザ端末20A(カメラ移動手段240)は、動きセンサ41で検知されたユーザ端末20Aの動きに追従して、仮想カメラ92を移動させる。 When the user terminal 20A (positioning means 220 and camera moving means 240) receives an operation instructing the operation of the principal avatar 50 through the operation device 42 (S15: Yes), the user terminal 20A (placement means 220 and camera moving means 240) moves the principal avatar 50 in accordance with the user's operation on the operation device 42, moves the virtual camera 92 following the principal avatar 50, and transmits avatar data showing the principal avatar 50 after the operation to the server 10 through the communication network 2 (S16). The user terminal 20A (camera moving means 240) also moves the virtual camera 92 following the movement of the user terminal 20A detected by the motion sensor 41.

次に、ユーザ端末20A(映像生成手段250及び映像表示手段260)は、自己視点カメラ92Aの移動後の画角に対応する仮想空間画像97を生成するために、自己視点映像生成&表示処理を実行する(S17)。モニタ31に表示される自己視点映像が更新される。また、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dそれぞれの移動後の画角に対応する仮想空間画像97を生成するために、設定視点映像生成&保存処理を実行する(S18)。これにより、設定視点映像に新たな仮想空間画像97が追加される。 Next, the user terminal 20A (image generating means 250 and image display means 260) executes a self-viewpoint image generation and display process (S17) to generate a virtual space image 97 corresponding to the angle of view after the movement of the self-viewpoint camera 92A. The self-viewpoint image displayed on the monitor 31 is updated. Furthermore, the user terminal 20A (image generating means 250) executes a set viewpoint image generation and storage process (S18) to generate a virtual space image 97 corresponding to the angle of view after the movement of each of the set viewpoint cameras 92B to 92D. As a result, a new virtual space image 97 is added to the set viewpoint image.

ユーザ端末20Aは、端末プログラム23Pの終了を指示する操作(例えば、ログアウト)を操作装置42を通じて受け付けるまで(S19:No)、ステップS13~S18の処理を繰り返し実行する。なお、ユーザ端末20Aは、アバターデータを不定期に受信し、ユーザ操作を不定期に受け付ける。すなわち、ステップS14、S16の処理は、任意のタイミング及び頻度で実行される。そして、ユーザ端末20Aは、端末プログラム23Pの終了を指示する操作を操作装置42を通じて受け付けた場合に(S19:Yes)、図10の処理を終了する。 The user terminal 20A repeatedly executes the processes of steps S13 to S18 until an operation (e.g., logging out) instructing the user to terminate the terminal program 23P is received through the operation device 42 (S19: No). The user terminal 20A irregularly receives avatar data and irregularly receives user operations. That is, the processes of steps S14 and S16 are executed at any timing and frequency. Then, when the user terminal 20A receives an operation instructing the user to terminate the terminal program 23P through the operation device 42 (S19: Yes), the user terminal 20A terminates the process of FIG. 10.

また、図12に示すように、ユーザ端末20A(映像生成手段250)は、自己視点カメラ92Aの視界領域94を特定する(S21)。次に、ユーザ端末20A(映像生成手段250)は、撮像条件に基づいて、視界領域94に含まれる設定視点カメラ92B、92Cの表示または非表示を判定する(S22)。そして、ユーザ端末20A(映像生成手段250)は、「設定視点カメラ=表示」が設定された設定視点カメラ92Bを仮想空間画像97に含め(S22:Yes→S23)、「設定視点カメラ=非表示」が設定された設定視点カメラ92Cを仮想空間画像97から除く(S22:No→S24)。 As shown in FIG. 12, the user terminal 20A (image generating means 250) identifies the field of view 94 of the self-viewpoint camera 92A (S21). Next, the user terminal 20A (image generating means 250) determines whether to display or hide the set viewpoint cameras 92B and 92C included in the field of view 94 based on the imaging conditions (S22). The user terminal 20A (image generating means 250) then includes the set viewpoint camera 92B, for which "set viewpoint camera = display" is set, in the virtual space image 97 (S22: Yes → S23), and excludes the set viewpoint camera 92C, for which "set viewpoint camera = hide" is set, from the virtual space image 97 (S22: No → S24).

次に、ユーザ端末20A(映像生成手段250)は、図11の視界領域94に含まれる他人アバター52、53及び設定視点カメラ92B、92Cのうち、他人アバター52、53及び設定視点カメラ92Bを含む仮想空間画像97を、自己視点映像の一部として生成する(S25)。次に、ユーザ端末20A(映像表示手段260)は、ステップS25で生成した仮想空間画像97をモニタ31に表示させる(S26)。 Next, the user terminal 20A (image generating means 250) generates a virtual space image 97 including the other person avatars 52, 53 and the set viewpoint camera 92B out of the other person avatars 52, 53 and the set viewpoint cameras 92B, 92C included in the field of view 94 in FIG. 11 as part of the self-viewpoint image (S25). Next, the user terminal 20A (image display means 260) displays the virtual space image 97 generated in step S25 on the monitor 31 (S26).

これにより、図13(A)に示すように、ユーザ端末20Aのユーザは、設定視点カメラ92Bの位置を意識しながら、本人アバター50にパフォーマンスさせることができる。一方、設定視点カメラ92Bが邪魔な場合は、撮像条件を「設定視点カメラ=非表示」とすることによって、図13(B)に示すように、設定視点カメラ92Bが含まれない仮想空間画像97が生成される。 As a result, as shown in FIG. 13(A), the user of the user terminal 20A can have his/her avatar 50 perform while being conscious of the position of the set viewpoint camera 92B. On the other hand, if the set viewpoint camera 92B is in the way, by setting the imaging condition to "set viewpoint camera = hidden", a virtual space image 97 that does not include the set viewpoint camera 92B is generated, as shown in FIG. 13(B).

さらに、図14に示すように、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dそれぞれの視界領域94を特定する(S31)。次に、ユーザ端末20A(映像生成手段250)は、撮像条件に基づいて、視界領域94に含まれる他人アバター51~53の表示または非表示を判定する(S32)。次に、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dの撮像条件に「他人アバター=非表示」が設定されていると判定した場合に(S32:No)、視界領域94に含まれる他人アバター51~53が、本人アバター50と設定視点カメラ92B~92Dそれぞれとの間に位置しているか否かを判定する(S33)。次に、ユーザ端末20A(映像生成手段250)は、視界領域94の他人アバター51~53が本人アバター50と設定視点カメラ92B~92Dそれぞれとの間に位置すると判定した場合に(S33:Yes)、設定視点カメラ92B~92Dから当該他人アバター51~53までの距離と閾値距離とを比較する(S34)。 Furthermore, as shown in FIG. 14, the user terminal 20A (image generating means 250) identifies the field of view 94 of each of the set viewpoint cameras 92B to 92D (S31). Next, the user terminal 20A (image generating means 250) determines whether to display or hide the other person's avatars 51 to 53 included in the field of view 94 based on the imaging conditions (S32). Next, when the user terminal 20A (image generating means 250) determines that the imaging conditions of the set viewpoint cameras 92B to 92D are set to "other person's avatar = not displayed" (S32: No), it determines whether the other person's avatars 51 to 53 included in the field of view 94 are located between the user's avatar 50 and each of the set viewpoint cameras 92B to 92D (S33). Next, if the user terminal 20A (image generating means 250) determines that the other person's avatars 51-53 in the field of view 94 are located between the user's avatar 50 and each of the set viewpoint cameras 92B-92D (S33: Yes), it compares the distance from the set viewpoint cameras 92B-92D to the other person's avatars 51-53 with a threshold distance (S34).

仮に、設定視点カメラ92Bの撮像条件に「他人アバター=表示」が設定されている場合(S32:Yes)、ユーザ端末20A(映像生成手段250)は、ステップS33~S34の判定処理をスキップして、設定視点カメラ92Bの視界領域94に含まれる全ての他人アバター51、52を仮想空間画像97に含める(S35)。これにより、図15(A)に示すように、聴衆として設定視点カメラ92Bの近くにいる他人アバター52が仮想空間画像97に大きく映り込んで、本人アバター50の大部分を覆い隠してしまう。 If the imaging conditions of the set viewpoint camera 92B are set to "other avatars = display" (S32: Yes), the user terminal 20A (image generating means 250) skips the determination process of steps S33 to S34, and includes all other avatars 51, 52 included in the field of view 94 of the set viewpoint camera 92B in the virtual space image 97 (S35). As a result, as shown in FIG. 15(A), other avatars 52 who are near the set viewpoint camera 92B as audience members are reflected large in the virtual space image 97, obscuring most of the user's avatar 50.

そこで、前述したように、設定視点カメラ92Bの撮像条件に「他人アバター=非表示、閾値距離=5m」を設定するのが望ましい。これにより、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92Bの視界領域94に含まれる他人アバター51、52のうち、本人アバター50に重ならない他人アバター51を仮想空間画像97に含め(S33:No→S35)、本人アバター50に重なり且つ設定視点カメラ92Bからの距離が閾値距離未満の他人アバター52を仮想空間画像97から除く(S33:Yes&S34:No→S36)。これにより、図15(B)に示すように、聴衆として設定視点カメラ92Bの近くにいる他人アバター52に邪魔されずに、本人アバター50を適切に撮像することができる。 Therefore, as described above, it is desirable to set the imaging conditions of the set viewpoint camera 92B to "Other avatars = hidden, threshold distance = 5m". As a result, the user terminal 20A (image generating means 250) includes in the virtual space image 97, among the other avatars 51 and 52 included in the field of view 94 of the set viewpoint camera 92B, the other avatars 51 that do not overlap with the user's avatar 50 (S33: No → S35), and excludes from the virtual space image 97 the other avatars 52 that overlap with the user's avatar 50 and are located less than the threshold distance from the set viewpoint camera 92B (S33: Yes & S34: No → S36). As a result, as shown in FIG. 15(B), the user's avatar 50 can be appropriately imaged without being disturbed by the other avatars 52 that are near the set viewpoint camera 92B as an audience member.

また、設定視点カメラ92Dの撮像条件に「他人アバター=非表示、閾値距離=3m」を設定することによって、ユーザ端末20A(映像生成手段250)は、本人アバター50に重なり且つ設定視点カメラ92Bからの距離が閾値距離以上の他人アバター51を仮想空間画像97に含める(S33:Yes&S34:Yes→S35)。これにより、図16(A)に示すように、本人アバター50の近くで一緒にパフォーマンスする他人アバター51を、本人アバター50と共に設定視点映像に含めることができる。 In addition, by setting the imaging conditions of the set viewpoint camera 92D to "Other avatars = hidden, threshold distance = 3 m", the user terminal 20A (image generating means 250) includes other avatars 51 that overlap the user's avatar 50 and whose distance from the set viewpoint camera 92B is equal to or greater than the threshold distance in the virtual space image 97 (S33: Yes & S34: Yes → S35). This allows other avatars 51 performing together near the user's avatar 50 to be included in the set viewpoint image together with the user's avatar 50, as shown in FIG. 16 (A).

一方、設定視点カメラ92Dの撮像条件に「設定距離=10m、他人アバター=非表示、閾値距離=10m」を設定することによって、ユーザ端末20A(映像生成手段250)は、本人アバター50に重なる全ての他人アバター51を仮想空間画像97から除く(S33:Yes&S34:No→S36)。その結果、図16(B)に示すように、設定視点カメラ92Dからの距離に関係なく、本人アバター50に重なる全ての他人アバター51を非表示にできる。 On the other hand, by setting the imaging conditions of the set viewpoint camera 92D to "set distance = 10 m, other avatars = hidden, threshold distance = 10 m," the user terminal 20A (image generating means 250) removes all other avatars 51 that overlap the user's avatar 50 from the virtual space image 97 (S33: Yes & S34: No → S36). As a result, as shown in FIG. 16 (B), all other avatars 51 that overlap the user's avatar 50 can be hidden regardless of the distance from the set viewpoint camera 92D.

次に、ユーザ端末20A(映像生成手段250)は、例えば図15~図16に示す仮想空間画像97を、設定視点映像の一部として生成する(S37)。次に、ユーザ端末20A(映像生成手段250)は、ステップS37で生成した仮想空間画像97をストレージ23に保存(すなわち、設定視点映像データに追加)する(S38)。そして、設定視点映像生成&保存処理を繰り返し実行することによって、設定視点映像がストレージ23に蓄積される。 Next, the user terminal 20A (image generating means 250) generates, for example, a virtual space image 97 as shown in Figures 15-16 as part of the set viewpoint video (S37). Next, the user terminal 20A (image generating means 250) saves the virtual space image 97 generated in step S37 in the storage 23 (i.e., adds it to the set viewpoint video data) (S38). Then, by repeatedly executing the set viewpoint video generation & saving process, the set viewpoint video is accumulated in the storage 23.

次に、図17及び図18を参照して、設定視点映像を編集する際のシステム1の動作を説明する。図17は、設定視点映像を編集する処理のフローチャートである。図18は、編集画面及び視聴映像の例である。 Next, the operation of the system 1 when editing the set viewpoint video will be described with reference to Figs. 17 and 18. Fig. 17 is a flowchart of the process of editing the set viewpoint video. Fig. 18 shows an example of the editing screen and the video to be viewed.

まず、プレイ端末であるユーザ端末20A(映像生成手段250)は、生成した複数の設定視点映像を通信ネットワーク2を通じてサーバ10に送信する(S41)。次に、サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Aから受信した複数の設定視点映像を、ストレージ13に保存する(S42)。 First, the user terminal 20A (image generating means 250), which is a play terminal, transmits the generated multiple set viewpoint images to the server 10 via the communication network 2 (S41). Next, the server 10 (editing assistance means 120) stores the multiple set viewpoint images received from the user terminal 20A via the communication network 2 in the storage 13 (S42).

次に、編集端末であるユーザ端末20B(編集手段270)は、設定視点映像の編集を開始する際に、通信ネットワーク2を通じてサーバ10に編集要求を送信する(S43)。サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Bから受信した編集要求の返信として、ストレージ13に保存した複数の設定視点映像を、通信ネットワーク2を通じてユーザ端末20Bに送信する(S44)。 Next, when starting to edit the set viewpoint video, the user terminal 20B (editing means 270), which is an editing terminal, transmits an editing request to the server 10 via the communication network 2 (S43). The server 10 (editing assistance means 120) transmits the multiple set viewpoint videos stored in the storage 13 to the user terminal 20B via the communication network 2 as a reply to the editing request received from the user terminal 20B via the communication network 2 (S44).

次に、ユーザ端末20B(編集手段270)は、操作装置42を通じたユーザの操作に従って、通信ネットワーク2を通じてサーバ10から受信した複数の設定視点映像を編集して、視聴映像を生成する(S45)。ユーザ端末20B(編集手段270)は、例えば、図18(A)に示す編集画面をモニタ31に表示させて、設定視点映像を編集するユーザの操作を操作装置42を通じて受け付ける。 Next, the user terminal 20B (editing means 270) edits the multiple set viewpoint videos received from the server 10 via the communication network 2 in accordance with the user's operation via the operation device 42 to generate a viewing video (S45). The user terminal 20B (editing means 270) displays, for example, the editing screen shown in FIG. 18(A) on the monitor 31, and accepts the user's operation to edit the set viewpoint video via the operation device 42.

図18(A)に示す編集画面は、複数の設定視点映像それぞれを構成する複数の静止画像を時系列に並べて表示する。次に、ユーザ端末20B(編集手段270)は、時刻t1~t4それぞれについて、同一時刻の複数の静止画像の1つを選択するユーザの操作を、操作装置42を通じて受け付ける。そして、ユーザ端末20B(編集手段270)は、図18(B)に示すように、操作装置42を通じて選択された静止画像(図18(A)において、太枠で囲った静止画像)を抽出し、抽出した複数の静止画像を時系列に並べて視聴映像を生成する。 The editing screen shown in FIG. 18(A) displays multiple still images constituting each of multiple set viewpoint videos arranged in chronological order. Next, the user terminal 20B (editing means 270) accepts a user operation via the operation device 42 to select one of the multiple still images for the same time for each of times t1 to t4. Then, as shown in FIG. 18(B), the user terminal 20B (editing means 270) extracts the still image selected via the operation device 42 (the still image surrounded by a thick frame in FIG. 18(A)), and arranges the extracted multiple still images in chronological order to generate a viewing video.

次に、ユーザ端末20B(編集手段270)は、ステップS45で生成した視聴映像を、通信ネットワーク2を通じてサーバ10に送信する(S46)。次に、サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Aから受信した視聴映像を、ストレージ13に保存する(S47)。さらに、サーバ10(視聴補助手段130)は、視聴端末であるユーザ端末20Cの要求に応じて、ストレージ13に保存した視聴映像を、通信ネットワーク2を通じて視聴端末に送信する。そして、ユーザ端末20Cは、通信ネットワーク2を通じてサーバ10から受信した視聴映像を、モニタ31に表示させる。 Next, user terminal 20B (editing means 270) transmits the viewing video generated in step S45 to server 10 via communication network 2 (S46). Next, server 10 (editing assistance means 120) stores the viewing video received from user terminal 20A via communication network 2 in storage 13 (S47). Furthermore, in response to a request from user terminal 20C, which is a viewing terminal, server 10 (viewing assistance means 130) transmits the viewing video stored in storage 13 to the viewing terminal via communication network 2. Then, user terminal 20C displays the viewing video received from server 10 via communication network 2 on monitor 31.

一例として、図17に示す処理は、図10に示す処理が終了した後に開始されてもよい。すなわち、図17に示す処理は、設定視点映像が完成した後に、図10に示す処理とは非同期に実行されてもよい。他の例として、図10に示す処理と、図17に示す処理とは、並行して実行されてもよい。すなわち、ユーザ端末20A(映像生成手段250)は、設定視点映像の一部を構成する仮想空間画像97を生成する度に、ステップS41の処理を実行してもよい。また、ユーザ端末20B(編集手段270)は、サーバ10がユーザ端末20Aから仮想空間画像97を受信する度に、ステップS43~S46の処理を実行してもよい。これにより、本人アバター50のパフォーマンスと同時に(厳密には、僅かに遅れて)視聴端末が生成される。 As an example, the process shown in FIG. 17 may be started after the process shown in FIG. 10 is completed. That is, the process shown in FIG. 17 may be executed asynchronously with the process shown in FIG. 10 after the set viewpoint video is completed. As another example, the process shown in FIG. 10 and the process shown in FIG. 17 may be executed in parallel. That is, the user terminal 20A (video generating means 250) may execute the process of step S41 every time it generates a virtual space image 97 that constitutes part of the set viewpoint video. Also, the user terminal 20B (editing means 270) may execute the processes of steps S43 to S46 every time the server 10 receives the virtual space image 97 from the user terminal 20A. In this way, the viewing terminal is generated simultaneously with (strictly speaking, with a slight delay from) the performance of the user's avatar 50.

また、ユーザ端末20B(編集手段270)は、複数セットの設定視点映像をサーバ10から取得して、これらから抽出した仮想空間画像97を時系列に並べて視聴映像を生成してもよい。例えば、ユーザ端末20B(編集手段270)は、アバター50を本人アバターとする複数の設定視点映像と、アバター51を本人アバターとする複数の設定視点映像とを用いて、視聴映像を生成してもよい。 The user terminal 20B (editing means 270) may also obtain multiple sets of set viewpoint images from the server 10 and generate viewing images by arranging virtual space images 97 extracted from these in chronological order. For example, the user terminal 20B (editing means 270) may generate viewing images using multiple set viewpoint images in which avatar 50 is the subject avatar and multiple set viewpoint images in which avatar 51 is the subject avatar.

[本実施形態の作用効果]
上記の実施形態によれば、複数の設定視点カメラ92B~92Dを予め設定した状態で、本人アバター50にパフォーマンスさせることによって、視聴映像の素材となる複数の設定視点映像が生成される。すなわち、設定視点カメラ92B~92Dの設定と、本人アバター50をパフォーマンスさせる操作とを別々のタイミングで実行することによって、本にアバター50の動作の連続性が損なわれることがない。その結果、簡単な操作で、魅力ある視聴映像の素材を得ることができる。
[Effects of this embodiment]
According to the above embodiment, a plurality of set viewpoint images that serve as material for the viewing video are generated by having the person's avatar 50 perform with a plurality of set viewpoint cameras 92B-92D set in advance. In other words, by setting the set viewpoint cameras 92B-92D and performing the person's avatar 50 at different times, the continuity of the movements of the avatar 50 is not lost. As a result, attractive material for the viewing video can be obtained with simple operations.

また、上記の実施形態によれば、設定視点カメラ92B~92Dの撮像条件を予め設定しておくことによって、所望の設定視点映像を得ることができる。なお、撮像条件の具体例は、図9の例に限定されない。他の例として、水平線と、本人アバター50及び設定視点カメラ92Bを結ぶ直線とのなす角(すなわち、仰角または俯角)を、撮像条件に加えてもよい。 Furthermore, according to the above embodiment, a desired set viewpoint image can be obtained by setting the imaging conditions of the set viewpoint cameras 92B to 92D in advance. Note that specific examples of imaging conditions are not limited to the example in FIG. 9. As another example, the angle between the horizon and the straight line connecting the user's avatar 50 and the set viewpoint camera 92B (i.e., the elevation angle or depression angle) may be added to the imaging conditions.

また、上記の実施形態によれば、設定視点カメラ92B~92Dを自己視点映像に含めるか否かを切り替えることによって、本人アバター50を操作するユーザの好み(すなわち、設定視点カメラ92B~92Dを意識するか否か)に合わせて、適切な自己視点映像をモニタ31に表示させることができる。 In addition, according to the above embodiment, by switching whether or not to include the set viewpoint cameras 92B-92D in the self-viewpoint image, an appropriate self-viewpoint image can be displayed on the monitor 31 according to the preferences of the user operating the personal avatar 50 (i.e., whether or not the user is aware of the set viewpoint cameras 92B-92D).

また、上記の実施形態によれば、本人アバター50と設定視点カメラ92B~92Dとの間に位置する他人アバター51~53の表示及び非表示を切り替えることによって、さらに魅力ある視聴映像の素材を得ることができる。例えば、本人アバター50のパフォーマンスの魅力を向上させる他人アバター51を表示させ、本人アバター50のパフォーマンスの邪魔になる他人アバター52を非表示とすればよい。 Furthermore, according to the above embodiment, by switching between displaying and hiding the other person's avatars 51-53 located between the user's avatar 50 and the set viewpoint cameras 92B-92D, it is possible to obtain more attractive video material for viewing. For example, the other person's avatar 51 that enhances the appeal of the user's avatar 50's performance may be displayed, and the other person's avatar 52 that interferes with the user's avatar 50's performance may be hidden.

例えば、本人アバター50の近くにいる他人アバター51はパフォーマンスの魅力を向上させる可能性が高く、設定視点カメラ92B~92Dの近くにいる他人アバター52、53はパフォーマンスの邪魔になる可能性が高い。そこで、上記の実施形態によれば、設定視点カメラ92B~92Dからの距離に応じて、他人アバター51~53の表示及び非表示を切り替えることによって、簡単な設定で魅力ある視聴映像の素材を得ることができる。但し、他人アバター51~53の表示及び非表示を切り替えるパラメータは、前述の例に限定されない。他の例として、ユーザ端末20A(映像生成手段250)は、仮想空間90内に予め設定された表示領域に位置する他人アバターを設定視点映像に含め、仮想空間90内に予め設定された非表示領域に位置する他人アバターを設定視点映像から除いてもよい。 For example, the other person's avatar 51 near the user's avatar 50 is likely to improve the attractiveness of the performance, while the other person's avatars 52, 53 near the set viewpoint cameras 92B-92D are likely to hinder the performance. Therefore, according to the above embodiment, by switching between displaying and hiding the other person's avatars 51-53 depending on the distance from the set viewpoint cameras 92B-92D, it is possible to obtain attractive viewing video material with simple settings. However, the parameters for switching between displaying and hiding the other person's avatars 51-53 are not limited to the above example. As another example, the user terminal 20A (video generating means 250) may include the other person's avatar located in a display area preset in the virtual space 90 in the set viewpoint video, and may exclude the other person's avatar located in a non-display area preset in the virtual space 90 from the set viewpoint video.

さらに、上記の実施形態によれば、複数セットの設定視点映像を用いて視聴映像を生成することによって、例えば、複数のアバター50、51がグループとしてパフォーマンスする場合に、さらに魅力的な視聴映像を生成することができる。 Furthermore, according to the above embodiment, by generating viewing images using multiple sets of set viewpoint images, it is possible to generate even more attractive viewing images, for example, when multiple avatars 50, 51 are performing as a group.

なお、本実施形態において、本人アバター50は「対象オブジェクト」の一例であり、他人アバター51~53は「周辺オブジェクト」の一例である。但し、オブジェクト(対象オブジェクト、周辺オブジェクト)は、仮想空間90内に配置されて移動したり、形を変えるものであれば、人の形をした「キャラクタ」に限定されない。他の例として、オブジェクトは、自動車、船舶、航空機、建設中の建物、動物などでもよい。また、設定視点カメラ92B~92Dで撮像するのは、本人アバター50(対象オブジェクト)のパフォーマンスに限定されず、仮想空間90内での任意の動作であってよい。 In this embodiment, the user's avatar 50 is an example of a "target object," and the other user's avatars 51 to 53 are examples of "peripheral objects." However, the objects (target objects, peripheral objects) are not limited to human-shaped "characters," as long as they are placed in the virtual space 90 and can move or change shape. As other examples, the objects may be automobiles, ships, aircraft, buildings under construction, animals, etc. Furthermore, what is captured by the set viewpoint cameras 92B to 92D is not limited to the performance of the user's avatar 50 (target object), but may be any movement within the virtual space 90.

また、本発明に係るプログラムは、単一のプログラムに限定されず、複数のプログラムの集合体でもよい。また、本発明に係るプログラムは、単一の装置で実行されるものに限定されず、複数の装置で分担して実行されてもよい。さらに、サーバ10及びユーザ端末20の役割分担は、前述の例に限定されない。すなわち、サーバ10の処理の一部がユーザ端末20によって実行されてもよいし、ユーザ端末20の処理の一部がサーバ10によって実行されてもよい。 The program according to the present invention is not limited to a single program, but may be a collection of multiple programs. The program according to the present invention is not limited to being executed by a single device, but may be executed by multiple devices in a shared manner. Furthermore, the division of roles between the server 10 and the user terminal 20 is not limited to the above example. That is, part of the processing of the server 10 may be executed by the user terminal 20, and part of the processing of the user terminal 20 may be executed by the server 10.

さらに、プログラムによって実現される各手段の一部または全部は、集積回路などのハードウェアで実現することもできる。さらに、プログラムは、コンピュータによって読み出し可能な非一過性の記録媒体に記録されて提供されてもよい。記録媒体とは、例えば、ハードディスク、SDカード、DVDの他、インターネット上のサーバ等を指す。 Furthermore, some or all of the means realized by the program can be realized by hardware such as an integrated circuit. Furthermore, the program may be provided in a form recorded on a non-transitory recording medium that can be read by a computer. Examples of recording media include hard disks, SD cards, DVDs, and servers on the Internet.

1…システム、2…通信ネットワーク、3…検知装置、10…サーバ、11,21…プロセッサ、12,22…メモリ、13,23…ストレージ、13P…サーバプログラム、14,24…入出力インタフェース、15,25…通信インタフェース、19,29…通信バス、20…ユーザ端末、23P…端末プログラム、26…コンピュータ、30…HMD、31…モニタ、32…注視センサ、33,34…カメラ、35…マイク、36…スピーカ、41…動きセンサ、42…操作装置、50…本人アバター、51,52,53…他人アバター、90…仮想空間、91…パノラマ画像、92…仮想カメラ、92A…自己視点カメラ、92B,92B,92C,92D…設定視点カメラ、93…基準視線、94…視界領域、95,96…領域、97…仮想空間画像、110…アバター同期手段、120…編集補助手段、130…視聴補助手段、210…仮想空間定義手段、220…配置手段、230…カメラ設定手段、240…カメラ移動手段、250…映像生成手段、260…映像表示手段、270…編集手段 1...system, 2...communication network, 3...detection device, 10...server, 11, 21...processor, 12, 22...memory, 13, 23...storage, 13P...server program, 14, 24...input/output interface, 15, 25...communication interface, 19, 29...communication bus, 20...user terminal, 23P...terminal program, 26...computer, 30...HMD, 31...monitor, 32...gaze sensor, 33, 34...camera, 35...microphone, 36...speaker, 41...motion sensor, 42...operation device, 50...user avatar , 51, 52, 53...Other avatars, 90...Virtual space, 91...Panoramic image, 92...Virtual camera, 92A...Self-viewpoint camera, 92B, 92B, 92C, 92D...Set viewpoint camera, 93...Reference line of sight, 94...Field of view area, 95, 96...Area, 97...Virtual space image, 110...Avatar synchronization means, 120...Editing assistance means, 130...Viewing assistance means, 210...Virtual space definition means, 220...Placement means, 230...Camera setting means, 240...Camera movement means, 250...Image generation means, 260...Image display means, 270...Editing means

Claims (5)

操作装置を備えるコンピュータを、
仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、
前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、
前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトを、前記設定視点映像に含めるか否かを含み、
前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える、プログラム。
A computer having an operating device,
a camera setting means for setting a plurality of virtual cameras for capturing images of a target object placed in a virtual space from different set viewpoints;
functioning as an image generating means for generating a plurality of set viewpoint images captured by the plurality of virtual cameras,
the camera setting means sets, for each of the plurality of virtual cameras, imaging conditions including at least one of a distance from the target object, an angle with respect to the target object, and an imaging portion of the target object in accordance with a user's operation via the operation device;
causing the computer to function as a camera moving unit that moves each of the plurality of virtual cameras in accordance with a movement of the target object in accordance with a user's operation through the operation device so as to satisfy the set imaging condition ;
the imaging condition includes, for each of the plurality of virtual cameras, whether or not to include, in the set viewpoint image, a peripheral object that overlaps with the target object as viewed from the virtual camera, among peripheral objects different from the target object;
The image generating means switches whether or not to include the peripheral object in the set viewpoint image of each of the multiple virtual cameras in accordance with the imaging conditions .
請求項に記載のプログラムにおいて、
前記映像生成手段は、
前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトのうち、前記仮想カメラとの距離が閾値距離以上の前記周辺オブジェクトのみを前記設定視点映像に含め
前記仮想カメラから見て前記対象オブジェクトに重ならない前記周辺オブジェクトを、前記仮想カメラからの距離に拘わらず前記設定視点映像に含める、プログラム。
The program according to claim 1 ,
The image generating means includes:
Among the peripheral objects that overlap the target object as viewed from the virtual camera, only the peripheral objects whose distance from the virtual camera is equal to or greater than a threshold distance are included in the set viewpoint image ;
The program includes, in the set viewpoint image, the peripheral objects that do not overlap the target object as viewed from the virtual camera, regardless of their distance from the virtual camera .
請求項1に記載のプログラムにおいて、
前記対象オブジェクトは、ユーザ端末を通じて操作されるユーザキャラクタであり、
前記映像生成手段は、さらに、前記ユーザキャラクタの自己視点から前記仮想空間内を撮像した自己視点映像を生成し、
前記撮像条件は、複数の前記仮想カメラそれぞれを前記自己視点映像に含めるか否かを含み、
前記コンピュータを、前記撮像条件に従って複数の前記仮想カメラそれぞれを含めるか否かが切り替えられた前記自己視点映像を、前記ユーザキャラクタを操作する前記ユーザ端末に表示させる映像表示手段として機能させる、プログラム。
The program according to claim 1,
The target object is a user character operated through a user terminal,
The image generating means further generates a self-viewpoint image capturing an image of the virtual space from a self-viewpoint of the user character,
the imaging conditions include whether or not to include each of the plurality of virtual cameras in the self-viewpoint image;
A program that causes the computer to function as an image display means that displays the self-viewpoint image, in which the inclusion or non-inclusion of each of the multiple virtual cameras is switched according to the imaging conditions, on the user terminal that controls the user character.
請求項1に記載のプログラムにおいて、
前記コンピュータを、複数の前記設定視点映像を編集して視聴映像を生成する編集手段として機能させる、プログラム。
The program according to claim 1,
A program that causes the computer to function as an editing unit that edits a plurality of the set viewpoint videos to generate a viewing video.
請求項に記載のプログラムにおいて、
前記編集手段は、複数の前記対象オブジェクトそれぞれを撮像した複数セットの前記設定視点映像を用いて、前記視聴映像を生成する、プログラム。
The program according to claim 4 ,
The editing means generates the viewing image using a plurality of sets of the set viewpoint images each capturing a plurality of the target objects.
JP2023012137A 2023-01-30 2023-01-30 program Active JP7589268B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023012137A JP7589268B2 (en) 2023-01-30 2023-01-30 program
PCT/JP2024/002461 WO2024162216A1 (en) 2023-01-30 2024-01-26 Program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023012137A JP7589268B2 (en) 2023-01-30 2023-01-30 program

Publications (2)

Publication Number Publication Date
JP2024107935A JP2024107935A (en) 2024-08-09
JP7589268B2 true JP7589268B2 (en) 2024-11-25

Family

ID=92146668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023012137A Active JP7589268B2 (en) 2023-01-30 2023-01-30 program

Country Status (2)

Country Link
JP (1) JP7589268B2 (en)
WO (1) WO2024162216A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005319040A (en) 2004-05-07 2005-11-17 Nintendo Co Ltd Enlarged image display system reflecting motion of character
JP2020204856A (en) 2019-06-17 2020-12-24 株式会社バンダイナムコアミューズメント Image generation system and program
JP7167388B1 (en) 2021-12-24 2022-11-09 正啓 榊原 Movie creation system, movie creation device, and movie creation program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005319040A (en) 2004-05-07 2005-11-17 Nintendo Co Ltd Enlarged image display system reflecting motion of character
JP2020204856A (en) 2019-06-17 2020-12-24 株式会社バンダイナムコアミューズメント Image generation system and program
JP7167388B1 (en) 2021-12-24 2022-11-09 正啓 榊原 Movie creation system, movie creation device, and movie creation program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
「ばっきーのブログ 2.7 外観の調整」、2021年3月19日、http://backyduck.cocolog-nifty.com/blog/2021/03/post-af3a05.html

Also Published As

Publication number Publication date
JP2024107935A (en) 2024-08-09
WO2024162216A1 (en) 2024-08-08

Similar Documents

Publication Publication Date Title
EP4550280A2 (en) Presenting avatars in three-dimensional environments
JP6276882B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP7042644B2 (en) Information processing equipment, image generation method and computer program
EP3117290B1 (en) Interactive information display
JP2019510321A (en) Virtual reality pass-through camera user interface elements
JP2017097122A (en) Information processing device and image generation method
KR20180112599A (en) Mobile terminal and method for controlling the same
JP2019139673A (en) Information processing apparatus, information processing method, and computer program
JP6201028B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6321263B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
US20240406368A1 (en) Devices, methods, and graphical user interfaces for capturing and viewing immersive media
JPWO2018216402A1 (en) Information processing apparatus, information processing method, and program
JP2018195287A (en) Information processing method, device and program causing computer to execute information processing method
JP6554139B2 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
US20240395073A1 (en) Devices, methods, and graphical user interfaces for biometric feature enrollment
JP2018192238A (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP2019030638A (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP7589268B2 (en) program
JP6856572B2 (en) An information processing method, a device, and a program for causing a computer to execute the information processing method.
WO2024060959A1 (en) Method and apparatus for adjusting viewing picture in virtual environment, and storage medium and device
JP2023065528A (en) Head-mounted information processing device and head-mounted display system
JP2018092592A (en) Information processing method, apparatus, and program for implementing that information processing method on computer
JP7625039B2 (en) program
JP7650309B2 (en) Program and system
JP7650308B2 (en) Program and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230209

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230706

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231117

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20231128

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20231222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240719

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241113

R150 Certificate of patent or registration of utility model

Ref document number: 7589268

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150