WO2021039347A1 - プログラム、方法、および端末装置 - Google Patents
プログラム、方法、および端末装置 Download PDFInfo
- Publication number
- WO2021039347A1 WO2021039347A1 PCT/JP2020/030182 JP2020030182W WO2021039347A1 WO 2021039347 A1 WO2021039347 A1 WO 2021039347A1 JP 2020030182 W JP2020030182 W JP 2020030182W WO 2021039347 A1 WO2021039347 A1 WO 2021039347A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- image
- character
- game
- display
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 53
- 230000033001 locomotion Effects 0.000 claims abstract description 173
- 238000012384 transportation and delivery Methods 0.000 claims description 19
- 238000001514 detection method Methods 0.000 claims description 7
- 238000009826 distribution Methods 0.000 description 145
- 238000003860 storage Methods 0.000 description 47
- 238000004891 communication Methods 0.000 description 45
- 230000008569 process Effects 0.000 description 39
- 238000012545 processing Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 31
- 230000006870 function Effects 0.000 description 30
- 230000015654 memory Effects 0.000 description 29
- 210000001508 eye Anatomy 0.000 description 25
- 230000005540 biological transmission Effects 0.000 description 17
- 230000000694 effects Effects 0.000 description 15
- 230000036544 posture Effects 0.000 description 14
- 210000003128 head Anatomy 0.000 description 13
- 230000004044 response Effects 0.000 description 13
- 238000010079 rubber tapping Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000007704 transition Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 238000005401 electroluminescence Methods 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000014759 maintenance of location Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000008685 targeting Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 210000005155 neural progenitor cell Anatomy 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000002834 transmittance Methods 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 210000000624 ear auricle Anatomy 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 210000004709 eyebrow Anatomy 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 210000002683 foot Anatomy 0.000 description 1
- 210000004209 hair Anatomy 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 210000002414 leg Anatomy 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 210000003739 neck Anatomy 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/214—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
- A63F13/2145—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
- A63F13/525—Changing parameters of virtual cameras
- A63F13/5252—Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
- A63F13/525—Changing parameters of virtual cameras
- A63F13/5255—Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
- A63F13/525—Changing parameters of virtual cameras
- A63F13/5258—Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/847—Cooperative playing, e.g. requiring coordinated actions from several players to achieve a common goal
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/92—Video game devices specially adapted to be hand-held while playing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/10—Multimedia information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/426—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving on-screen location information, e.g. screen coordinates of an area at which the player is aiming with a light gun
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/428—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
Definitions
- the present invention relates to programs, methods, and terminal devices.
- the part corresponding to the request from the user is decorated according to the request. For this reason, for example, it is not possible to give the user a sense of reality that the display mode of a specific part of the virtual character changes spontaneously, and there is room for improvement.
- the present invention has been conceived in view of such circumstances, and an object of the present invention is to provide a program, a method, and a terminal device capable of giving a user a sense of reality of a virtual character.
- a program executed in a terminal device including a processor the processor is provided with an image of a virtual space including a first character that moves in conjunction with the movement of the performer.
- a step of receiving the first display data for making it displayable and a step of displaying an image in which the first character operates in the virtual space based on the first display data are executed.
- a predetermined first object is associated with the first character, and the display mode of the first object is changed according to a predetermined rule.
- FIG. 1 It is a figure which shows a specific example of moving image play. It is a figure which shows the other specific example of moving image play.
- (A) is a flowchart showing an example of display mode control processing on the game play terminal side
- (B) is a flowchart showing an example of display mode setting processing on the user terminal side.
- (A) is a diagram showing an example of the Nth live distribution video
- (B) is a diagram showing an example of the N + 1th live distribution video
- (C) shows an example of the N + 2nd live distribution video. It is a figure.
- (A) is a diagram showing an example of a live distribution video in the normal viewing mode
- (B) is a diagram showing an example of a live distribution video in the AR viewing mode.
- the system according to the present disclosure is a system for providing a game to a plurality of users.
- the system will be described with reference to the drawings. It should be noted that the present invention is not limited to these examples, and is indicated by the scope of claims, and it is intended that all modifications within the meaning and scope equivalent to the scope of claims are included in the present invention. To. In the following description, the same elements are designated by the same reference numerals in the description of the drawings, and duplicate description will not be repeated.
- FIG. 1 is a diagram showing an outline of the system 1 according to the present embodiment.
- the system 1 includes a plurality of user terminals 100 (computers), a server 200, a game play terminal 300 (external device, second external device), and a distribution terminal 400 (external, first external device).
- user terminals 100A to 100C in other words, three user terminals 100 are shown as an example of a plurality of user terminals 100, but the number of user terminals 100 is not limited to the illustrated example. .. Further, in the present embodiment, when it is not necessary to distinguish the user terminals 100A to C, it is described as "user terminal 100".
- the user terminal 100, the game play terminal 300, and the distribution terminal 400 are connected to the server 200 via the network 2.
- the network 2 is composed of various mobile communication systems constructed by the Internet and a wireless base station (not shown). Examples of this mobile communication system include so-called 3G and 4G mobile communication systems, LTE (Long Term Evolution), and wireless networks (for example, Wi-Fi (registered trademark)) that can be connected to the Internet by a predetermined access point. Be done.
- the game provided by the system 1 may be a game in which a plurality of users participate, and is not limited to this example.
- Gameplay terminal 300 The game play terminal 300 advances the game in response to an input operation by the player. In addition, the game play terminal 300 sequentially delivers information generated by the player's game play (hereinafter, game progress information) to the server 200 in real time.
- game progress information information generated by the player's game play
- the server 200 transmits the game progress information (second data) received in real time from the game play terminal 300 to the user terminal 100.
- the server 200 mediates the transmission and reception of various information between the user terminal 100, the game play terminal 300, and the distribution terminal 400.
- the distribution terminal 400 generates operation instruction data (first data) in response to an input operation by the user of the distribution terminal 400, and distributes the operation instruction data to the user terminal 100 via the server 200.
- the operation instruction data is data for playing back a moving image on the user terminal 100, and specifically, is data for operating a character appearing in the moving image.
- the user of the distribution terminal 400 is a player of this game.
- the moving image played on the user terminal 100 based on the operation instruction data is a moving image in which the character operated by the player in the game operates. "Movement" is to move at least a part of the character's body, including speech. Therefore, the motion instruction data according to the present embodiment includes, for example, voice data for causing the character to speak and motion data for moving the character's body.
- the operation instruction data is transmitted to the user terminal 100 after the end of this game.
- the details of the operation instruction data and the moving image played based on the operation instruction data will be described later.
- the user terminal 100 receives the game progress information in real time, and generates and displays the game screen using the information. In other words, the user terminal 100 reproduces the game screen of the game being played by the player by real-time rendering. As a result, the user of the user terminal 100 can visually recognize the same game screen as the game screen that the player is viewing while playing the game at substantially the same timing as the player.
- the user terminal 100 generates information for supporting the progress of the game by the player in response to the input operation by the user, and transmits the information to the game play terminal 300 via the server 200. Details of the information will be described later.
- the user terminal 100 receives the operation instruction data from the distribution terminal 400, and generates and reproduces a moving image (video) using the operation instruction data. In other words, the user terminal 100 renders and reproduces the operation instruction data.
- FIG. 2 is a diagram showing a hardware configuration of the user terminal 100.
- FIG. 3 is a diagram showing a hardware configuration of the server 200.
- FIG. 4 is a diagram showing a hardware configuration of the game play terminal 300.
- FIG. 5 is a diagram showing a hardware configuration of the distribution terminal 400.
- the user terminal 100 is not limited to the smartphone.
- the user terminal 100 may be realized as a feature phone, a tablet computer, a laptop computer (so-called laptop computer), a desktop computer, or the like.
- the user terminal 100 may be a game device suitable for game play.
- the user terminal 100 measures the processor 10, the memory 11, the storage 12, the communication interface (IF) 13, the input / output IF 14, the touch screen 15 (display unit), the camera 17, and the like. It includes a distance sensor 18. These configurations included in the user terminal 100 are electrically connected to each other by a communication bus.
- the user terminal 100 may be provided with an input / output IF 14 to which a display (display unit) configured separately from the user terminal 100 main body can be connected instead of or in addition to the touch screen 15.
- the user terminal 100 may be configured to be communicable with one or more controllers 1020.
- the controller 1020 establishes communication with the user terminal 100 according to a communication standard such as Bluetooth (registered trademark).
- the controller 1020 may have one or more buttons or the like, and transmits an output value based on a user's input operation to the buttons or the like to the user terminal 100.
- the controller 1020 may have various sensors such as an acceleration sensor and an angular velocity sensor, and transmits the output values of the various sensors to the user terminal 100.
- the controller 1020 may have the camera 17 and the distance measuring sensor 18.
- the user terminal 100 causes a user who uses the controller 1020 to input user identification information such as the user's name or login ID via the controller 1020.
- the user terminal 100 can associate the controller 1020 with the user, and identifies which user the output value belongs to based on the source of the received output value (controller 1020). be able to.
- each user terminal 100 communicates with a plurality of controllers 1020, each user grips each controller 1020, so that the one user terminal 100 does not communicate with other devices such as the server 200 via the network 2.
- Multiplayer can be realized with.
- each user terminal 100 communicates with each other according to a wireless standard such as a wireless LAN (Local Area Network) standard (communication connection is made without going through a server 200), thereby realizing local multiplayer with a plurality of user terminals 100. You can also do it.
- a wireless standard such as a wireless LAN (Local Area Network) standard (communication connection is made without going through a server 200), thereby realizing local multiplayer with a plurality of user terminals 100. You can also do it.
- the user terminal 100 may further include at least a part of various functions described later described in the server 200.
- the plurality of user terminals 100 may be provided with various functions described later described in the server 200 in a distributed manner.
- the user terminal 100 may communicate with the server 200.
- information indicating a play result such as a result or victory or defeat in a certain game may be associated with user identification information and transmitted to the server 200.
- the controller 1020 may be configured to be detachable from the user terminal 100.
- a coupling portion with the controller 1020 may be provided on at least one surface of the housing of the user terminal 100.
- the user terminal 100 may accept the attachment of a storage medium 1030 such as an external memory card via the input / output IF14. As a result, the user terminal 100 can read the program and data recorded on the storage medium 1030.
- the program recorded on the storage medium 1030 is, for example, a game program.
- the user terminal 100 may store the game program acquired by communicating with an external device such as the server 200 in the memory 11 of the user terminal 100, or may store the game program acquired by reading from the storage medium 1030 in the memory 11. You may memorize it in.
- the user terminal 100 includes a communication IF 13, an input / output IF 14, a touch screen 15, a camera 17, and a distance measuring sensor 18 as an example of a mechanism for inputting information to the user terminal 100.
- a communication IF 13 an input / output IF 14
- a touch screen 15 a camera 17, and a distance measuring sensor 18
- an input mechanism can be regarded as an operation part configured to accept a user's input operation.
- the operation unit when the operation unit is configured by at least one of the camera 17 and the distance measuring sensor 18, the operation unit detects an object 1010 in the vicinity of the user terminal 100 and performs an input operation from the detection result of the object. Identify.
- a user's hand as an object 1010, a marker having a predetermined shape, or the like is detected, and an input operation is specified based on the color, shape, movement, or type of the object 1010 obtained as a detection result.
- the user terminal 100 inputs a gesture (a series of movements of the user's hand) detected based on the captured image. Identify and accept as.
- the captured image may be a still image or a moving image.
- the user terminal 100 identifies and accepts the user's operation performed on the input unit 151 of the touch screen 15 as the user's input operation.
- the operation unit is composed of the communication IF 13
- the user terminal 100 identifies and accepts a signal (for example, an output value) transmitted from the controller 1020 as an input operation of the user.
- a signal output from an input device (not shown) different from the controller 1020 connected to the input / output IF14 is specified and accepted as a user input operation.
- the server 200 may be a general-purpose computer such as a workstation or a personal computer.
- the server 200 includes a processor 20, a memory 21, a storage 22, a communication IF 23, and an input / output IF 24. These configurations included in the server 200 are electrically connected to each other by a communication bus.
- Gameplay terminal 300 may be a general-purpose computer such as a personal computer.
- the game play terminal 300 includes a processor 30, a memory 31, a storage 32, a communication IF 33, and an input / output IF 34. These configurations included in the gameplay terminal 300 are electrically connected to each other by a communication bus.
- the game play terminal 300 is included in the HMD (Head Mounted Display) set 1000 as an example. That is, it can be expressed that the HMD set 1000 is included in the system 1, and the player can also express that he / she plays a game using the HMD set 1000.
- the device for the player to play the game is not limited to the HMD set 1000.
- the device may be any device that allows the player to experience the game virtually.
- the device may be realized as a smartphone, a feature phone, a tablet computer, a laptop computer (so-called laptop computer), a desktop computer, or the like. Further, the device may be a game device suitable for game play.
- the HMD set 1000 includes a game play terminal 300, an HMD 500, an HMD sensor 510, a motion sensor 520, a display 530, and a controller 540.
- the HMD 500 includes a monitor 51, a gaze sensor 52, a first camera 53, a second camera 54, a microphone 55, and a speaker 56.
- the controller 540 may include a motion sensor 520.
- the HMD 500 may be mounted on the player's head and provide the player with virtual space during operation. More specifically, the HMD 500 displays an image for the right eye and an image for the left eye on the monitor 51, respectively. When each eye of the player visually recognizes the respective image, the player can recognize the image as a three-dimensional image based on the parallax of both eyes.
- the HMD 500 may include either a so-called head-mounted display including a monitor and a head-mounted device capable of mounting a smartphone or other terminal having a monitor.
- the monitor 51 is realized as, for example, a non-transparent display device.
- the monitor 51 is arranged on the main body of the HMD 500 so as to be located in front of both eyes of the player. Therefore, the player can immerse himself in the virtual space when he / she visually recognizes the three-dimensional image displayed on the monitor 51.
- the virtual space includes, for example, a background, player-operable objects, and player-selectable menu images.
- the monitor 51 can be realized as a liquid crystal monitor or an organic EL (Electro Luminescence) monitor included in a so-called smartphone or other information display terminal.
- the monitor 51 can be realized as a transmissive display device.
- the HMD 500 may be an open type such as a glasses type, not a closed type that covers the player's eyes as shown in FIG.
- the transmissive monitor 51 may be temporarily configured as a non-transparent display device by adjusting its transmittance.
- the monitor 51 may include a configuration that simultaneously displays a part of the image constituting the virtual space and the real space.
- the monitor 51 may display an image of the real space taken by the camera mounted on the HMD 500, or may make the real space visible by setting a part of the transmittance to be high.
- the monitor 51 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.
- the monitor 51 may be configured to display the image for the right eye and the image for the left eye as a unit.
- the monitor 51 includes a high speed shutter. The high-speed shutter operates so that the image for the right eye and the image for the left eye can be alternately displayed so that the image is recognized by only one of the eyes.
- the HMD 500 includes a plurality of light sources (not shown). Each light source is realized by, for example, an LED (Light Emitting Diode) that emits infrared rays.
- the HMD sensor 510 has a position tracking function for detecting the movement of the HMD 500. More specifically, the HMD sensor 510 reads a plurality of infrared rays emitted by the HMD 500 and detects the position and inclination of the HMD 500 in the real space.
- the HMD sensor 510 may be implemented by a camera.
- the HMD sensor 510 can detect the position and tilt of the HMD 500 by executing the image analysis process using the image information of the HMD 500 output from the camera.
- the HMD 500 may include a sensor (not shown) as a position detector in place of the HMD sensor 510 or in addition to the HMD sensor 510.
- the HMD500 can use the sensor to detect the position and tilt of the HMD500 itself.
- the sensor is an angular velocity sensor, a geomagnetic sensor, or an accelerometer
- the HMD 500 may use any of these sensors instead of the HMD sensor 510 to detect its position and tilt.
- the angular velocity sensor detects the angular velocity around the three axes of the HMD 500 in real space over time.
- the HMD500 calculates the temporal change of the angle around the three axes of the HMD500 based on each angular velocity, and further calculates the inclination of the HMD500 based on the temporal change of the angle.
- the gaze sensor 52 detects the direction in which the line of sight of the player's right eye and left eye is directed. That is, the gaze sensor 52 detects the line of sight of the player.
- the detection of the direction of the line of sight is realized by, for example, a known eye tracking function.
- the gaze sensor 52 is realized by a sensor having the eye tracking function.
- the gaze sensor 52 preferably includes a sensor for the right eye and a sensor for the left eye.
- the gaze sensor 52 may be, for example, a sensor that irradiates infrared light to the player's right eye and left eye and detects the angle of rotation of each eyeball by receiving reflected light from the cornea and the iris with respect to the irradiation light.
- the gaze sensor 52 can detect the line of sight of the player based on each of the detected rotation angles.
- the first camera 53 photographs the lower part of the player's face. More specifically, the first camera 53 captures the nose and mouth of the player.
- the second camera 54 photographs the eyes and eyebrows of the player.
- the housing on the player side of the HMD500 is defined as the inside of the HMD500, and the housing on the side opposite to the player of the HMD500 is defined as the outside of the HMD500.
- the first camera 53 may be located outside the HMD500 and the second camera 54 may be located inside the HMD500.
- the images generated by the first camera 53 and the second camera 54 are input to the game play terminal 300.
- the first camera 53 and the second camera 54 may be realized as one camera, and the player's face may be photographed by the one camera.
- the microphone 55 converts the player's utterance into a voice signal (electric signal) and outputs it to the game play terminal 300.
- the speaker 56 converts the voice signal into voice and outputs it to the player.
- the HMD 500 may include earphones instead of the speaker 56.
- the controller 540 is connected to the gameplay terminal 300 by wire or wirelessly.
- the controller 540 receives an input of a command from the player to the game play terminal 300.
- the controller 540 is configured to be grippable by the player.
- the controller 540 is configured to be wearable on a player's body or part of clothing.
- the controller 540 may be configured to output at least one of vibration, sound, and light based on a signal transmitted from the gameplay terminal 300.
- the controller 540 receives from the player an operation for controlling the position and movement of an object arranged in the virtual space.
- the controller 540 includes a plurality of light sources. Each light source is realized by, for example, an LED that emits infrared rays.
- the HMD sensor 510 has a position tracking function. In this case, the HMD sensor 510 reads a plurality of infrared rays emitted by the controller 540 and detects the position and inclination of the controller 540 in the real space.
- the HMD sensor 510 may be implemented by a camera. In this case, the HMD sensor 510 can detect the position and tilt of the controller 540 by executing the image analysis process using the image information of the controller 540 output from the camera.
- the motion sensor 520 is attached to the player's hand in a certain aspect to detect the movement of the player's hand. For example, the motion sensor 520 detects the rotation speed, the number of rotations, and the like of the hand. The detected signal is sent to the game play terminal 300.
- the motion sensor 520 is provided in the controller 540, for example.
- the motion sensor 520 is provided in, for example, a controller 540 configured to be grippable by the player.
- the controller 540 is attached to something that does not easily fly by being attached to the player's hand, such as a glove type.
- a sensor not attached to the player may detect the movement of the player's hand.
- the signal of the camera that shoots the player may be input to the game play terminal 300 as a signal indicating the operation of the player.
- the motion sensor 520 and the game play terminal 300 are wirelessly connected to each other.
- the communication mode is not particularly limited, and for example, Bluetooth or other known communication method is used.
- the display 530 displays an image similar to the image displayed on the monitor 51. As a result, users other than the player wearing the HMD 500 can view the same image as the player.
- the image displayed on the display 530 does not have to be a three-dimensional image, and may be an image for the right eye or an image for the left eye. Examples of the display 530 include a liquid crystal display and an organic EL monitor.
- the game play terminal 300 operates a character to be operated by the player based on various information acquired from each part of the HMD 500, the controller 540, and the motion sensor 520, and advances the game.
- the "movements" here include moving parts of the body, changing postures, changing facial expressions, moving, uttering, touching and moving objects placed in virtual space, and characters. This includes the use of weapons and tools to grasp. That is, in this game, when the player moves each part of the body, the character also moves each part of the body in the same manner as the player. Further, in this game, the character utters the content uttered by the player. In other words, in this game, the character is an avatar object that behaves as a player's alter ego. As an example, at least part of the character's movements may be performed by input to the controller 540 by the player.
- the motion sensor 520 is attached to, for example, both hands of the player, both feet of the player, the waist of the player, and the head of the player.
- the motion sensors 520 attached to both hands of the player may be provided in the controller 540 as described above.
- the motion sensor 520 attached to the player's head may be provided in the HMD 500.
- the motion sensor 520 may also be attached to the user's elbows and knees. By increasing the number of motion sensors 520 attached to the player, the movement of the player can be more accurately reflected in the character.
- the player may wear a suit to which one or more motion sensors 520 are attached. That is, the method of motion capture is not limited to the example using the motion sensor 520.
- the distribution terminal 400 may be a mobile terminal such as a smartphone, a PDA (Personal Digital Assistant), or a tablet computer. Further, the distribution terminal 400 may be a so-called stationary terminal such as a desktop personal computer.
- the distribution terminal 400 includes a processor 40, a memory 41, a storage 42, a communication IF 43, an input / output IF 44, and a touch screen 45.
- the distribution terminal 400 may be provided with an input / output IF 44 to which a display (display unit) configured separately from the distribution terminal 400 main body can be connected in place of or in addition to the touch screen 45.
- Controller 1021 may have one or more physical input mechanisms such as buttons, levers, sticks, wheels and the like.
- the controller 1021 transmits an output value based on an input operation input to the input mechanism by the operator of the distribution terminal 400 (player in the present embodiment) to the distribution terminal 400.
- the controller 1021 may have various sensors such as an acceleration sensor and an angular velocity sensor, and may transmit the output values of the various sensors to the distribution terminal 400. The above-mentioned output value is received by the distribution terminal 400 via the communication IF43.
- the distribution terminal 400 may include a camera and a distance measuring sensor (both not shown).
- the controller 1021 may have a camera and a distance measuring sensor.
- the distribution terminal 400 includes a communication IF43, an input / output IF44, and a touch screen 45 as an example of a mechanism for inputting information to the distribution terminal 400.
- a communication IF43 an input / output IF44
- a touch screen 45 an example of a mechanism for inputting information to the distribution terminal 400.
- Each of the above-mentioned parts as an input mechanism can be regarded as an operation part configured to accept a user's input operation.
- the distribution terminal 400 identifies and accepts the user's operation performed on the input unit 451 of the touch screen 45 as the user's input operation.
- the distribution terminal 400 identifies and accepts a signal (for example, an output value) transmitted from the controller 1021 as an input operation of the user.
- the distribution terminal 400 identifies and accepts a signal output from an input device (not shown) connected to the input / output IF44 as a user input operation.
- the processors 10, 20, 30, and 40 control the overall operation of the user terminal 100, the server 200, the game play terminal 300, and the distribution terminal 400, respectively.
- Processors 10, 20, 30, and 40 include a CPU (Central Processing Unit), an MPU (Micro Processing Unit), and a GPU (Graphics Processing Unit).
- Processors 10, 20, 30, and 40 read programs from storages 12, 22, 32, and 42, which will be described later, respectively. Then, the processors 10, 20, 30, and 40 expand the read programs into the memories 11, 21, 31, and 41, which will be described later, respectively.
- Processors 10, 20, and 30 execute the expanded program.
- the memories 11, 21, 31, and 41 are main storage devices.
- the memories 11, 21, 31, and 41 are composed of storage devices such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
- the memory 11 provides a work area to the processor 10 by temporarily storing a program and various data read from the storage 12 described later by the processor 10.
- the memory 11 also temporarily stores various data generated while the processor 10 is operating according to the program.
- the memory 21 provides a work area to the processor 20 by temporarily storing various programs and data read from the storage 22 described later by the processor 20.
- the memory 21 also temporarily stores various data generated while the processor 20 is operating according to the program.
- the memory 31 provides a work area to the processor 30 by temporarily storing various programs and data read from the storage 32 described later by the processor 30.
- the memory 31 also temporarily stores various data generated while the processor 30 is operating according to the program.
- the memory 41 provides a work area to the processor 40 by temporarily storing the program and various data read from the storage 42 described later by the processor 40.
- the memory 41 also temporarily stores various data generated while the processor 40 is operating according to the program.
- the programs executed by the processors 10 and 30 may be game programs of the present game.
- the program executed by the processor 40 may be a distribution program for realizing distribution of operation instruction data.
- the processor 10 may further execute a viewing program for realizing the reproduction of the moving image.
- the program executed by the processor 20 may be at least one of the above-mentioned game program, distribution program, and viewing program.
- the processor 20 executes at least one of a game program, a distribution program, and a viewing program in response to a request from at least one of the user terminal 100, the game play terminal 300, and the distribution terminal 400.
- the distribution program and the viewing program may be executed in parallel.
- the game program may be a program that realizes the game in cooperation with the user terminal 100, the server 200, and the game play terminal 300.
- the distribution program may be a program that realizes distribution of operation instruction data in collaboration with the server 200 and the distribution terminal 400.
- the viewing program may be a program that realizes the reproduction of a moving image in collaboration with the user terminal 100 and the server 200.
- the storages 12, 22, 32, and 42 are auxiliary storage devices.
- the storages 12, 22, 32, and 42 are composed of a storage device such as a flash memory or an HDD (Hard Disk Drive).
- various data related to the game are stored in the storages 12 and 32.
- Various data related to the distribution of operation instruction data are stored in the storage 42.
- various data related to the reproduction of the moving image are stored in the storage 12.
- the storage 22 may store at least a part of various data related to the game, the distribution of the operation instruction data, and the reproduction of the moving image.
- the communication IFs 13, 23, 33, and 43 control the transmission and reception of various data in the user terminal 100, the server 200, the game play terminal 300, and the distribution terminal 400, respectively.
- the communication IFs 13, 23, 33, and 43 include, for example, communication via a wireless LAN (Local Area Network), Internet communication via a wired LAN, a wireless LAN, or a mobile phone network, and communication using a short-range wireless communication or the like. Control.
- the input / output IFs 14, 24, 34, and 44 are interfaces for the user terminal 100, the server 200, the game play terminal 300, and the distribution terminal 400 to receive data input and to output data, respectively.
- the input / output IFs 14, 24, 34, and 44 may input / output data via USB (Universal Serial Bus) or the like.
- Input / output IFs 14, 24, 34, 44 may include physical buttons, cameras, microphones, speakers, mice, keyboards, displays, sticks, levers and the like. Further, the input / output IFs 14, 24, 34, and 44 may include a connection portion for transmitting and receiving data to and from a peripheral device.
- the touch screen 15 is an electronic component that combines an input unit 151 and a display unit 152 (display).
- the touch screen 45 is an electronic component that combines an input unit 451 and a display unit 452.
- the input units 151 and 451 are, for example, touch-sensitive devices, and are configured by, for example, a touch pad.
- the display units 152 and 452 are composed of, for example, a liquid crystal display, an organic EL (Electro-Luminescence) display, or the like.
- the input units 151 and 451 detect the position where the user's operation (mainly a physical contact operation such as a touch operation, a slide operation, a swipe operation, and a tap operation) is input to the input surface, and information indicating the position. Has a function of transmitting as an input signal.
- the input units 151 and 451 may include touch sensing units (not shown).
- the touch sensing unit may adopt any method such as a capacitance method or a resistance film method.
- the user terminal 100 and the distribution terminal 400 may each include one or more sensors for specifying the holding posture of the user terminal 100 and the distribution terminal 400, respectively.
- This sensor may be, for example, an acceleration sensor, an angular velocity sensor, or the like.
- the processors 10 and 40 each specify the holding postures of the user terminal 100 and the distribution terminal 400 from the output of the sensor, and perform processing according to the holding posture. It will also be possible.
- the processors 10 and 40 may be a vertical screen display in which vertically long images are displayed on the display units 152 and 452 when the user terminal 100 and the distribution terminal 400 are held vertically, respectively.
- a horizontally long image may be displayed on the display unit as a horizontal screen display. In this way, the processors 10 and 40 may be able to switch between the vertical screen display and the horizontal screen display according to the holding postures of the user terminal 100 and the distribution terminal 400, respectively.
- FIG. 6 is a block diagram showing a functional configuration of a user terminal 100, a server 200, and an HMD set 1000 included in the system 1.
- FIG. 7 is a block diagram showing a functional configuration of the distribution terminal 400 shown in FIG.
- the user terminal 100 has a function as an input device that accepts a user's input operation and a function as an output device that outputs a game image or sound.
- the user terminal 100 functions as a control unit 110 and a storage unit 120 in cooperation with a processor 10, a memory 11, a storage 12, a communication IF 13, an input / output IF 14, a touch screen 15, and the like.
- the server 200 has a function of mediating the transmission / reception of various information between the user terminal 100, the HMD set 1000, and the distribution terminal 400.
- the server 200 functions as a control unit 210 and a storage unit 220 in cooperation with the processor 20, the memory 21, the storage 22, the communication IF23, the input / output IF24, and the like.
- the HMD set 1000 (game play terminal 300) provides a function as an input device for receiving an input operation of a player, a function as an output device for outputting game images and sounds, and game progress information to a user via a server 200. It has a function of transmitting to the terminal 100 in real time.
- the HMD set 1000 is a control unit 310 in cooperation with the processor 30, the memory 31, the storage 32, the communication IF33, the input / output IF34, and the HMD500, the HMD sensor 510, the motion sensor 520, the controller 540, and the like of the game play terminal 300. And functions as a storage unit 320.
- the distribution terminal 400 has a function of generating operation instruction data and transmitting the operation instruction data to the user terminal 100 via the server 200.
- the distribution terminal 400 functions as a control unit 410 and a storage unit 420 in cooperation with a processor 40, a memory 41, a storage 42, a communication IF 43, an input / output IF 44, a touch screen 45, and the like.
- the storage unit 120 stores the game program 131 (program), the game information 132, and the user information 133.
- the storage unit 220 stores the game program 231 and the game information 232, the user information 233, and the user list 234.
- the storage unit 320 stores the game program 331, the game information 332, and the user information 333.
- the storage unit 420 stores the user list 421, the motion list 422, and the distribution program 423 (program, second program).
- the game programs 131, 231 and 331 are game programs executed by the user terminal 100, the server 200, and the HMD set 1000, respectively. This game is realized by the cooperative operation of each device based on the game programs 131, 231 and 331.
- the game programs 131 and 331 may be stored in the storage unit 220 and downloaded to the user terminal 100 and the HMD set 1000, respectively.
- the user terminal 100 renders the data received from the distribution terminal 400 based on the game program 131, and reproduces the moving image.
- the game program 131 is also a program for playing a moving image using the moving image instruction data distributed from the distribution terminal 400.
- the program for playing the moving image may be different from the game program 131.
- the storage unit 120 stores a program for playing the moving image separately from the game program 131.
- the game information 132, 232, and 332 are data that the user terminal 100, the server 200, and the HMD set 1000 refer to when executing the game program, respectively.
- the user information 133, 233, and 333 are data related to the user account of the user terminal 100.
- the game information 232 is the game information 132 of each user terminal 100 and the game information 332 of the HMD set 1000.
- the user information 233 is the user information of the player included in the user information 133 of each user terminal 100 and the user information 333.
- the user information 333 is the user information 133 of each user terminal 100 and the user information of the player.
- the user list 234 and the user list 421 are a list of users who have participated in the game.
- the user list 234 and the user list 421 may include a list of users who participated in the most recent gameplay by the player, as well as a list of users who participated in each gameplay before the gameplay.
- the motion list 422 is a list of a plurality of motion data created in advance.
- the motion list 422 is, for example, a list in which motion data is associated with each of the information (for example, a motion name) that identifies each motion.
- the distribution program 423 is a program for realizing distribution of operation instruction data for playing a moving image on the user terminal 100 to the user terminal 100.
- the control unit 210 comprehensively controls the server 200 by executing the game program 231 stored in the storage unit 220.
- the control unit 210 mediates the transmission and reception of various information between the user terminal 100, the HMD set 1000, and the distribution terminal 400.
- the control unit 210 functions as a communication mediation unit 211, a log generation unit 212, and a list generation unit 213 according to the description of the game program 231.
- the control unit 210 can also function as other functional blocks (not shown) for mediating the transmission and reception of various information related to game play and distribution of operation instruction data, and for supporting the progress of the game.
- the communication mediation unit 211 mediates the transmission and reception of various information between the user terminal 100, the HMD set 1000, and the distribution terminal 400. For example, the communication mediation unit 211 transmits the game progress information received from the HMD set 1000 to the user terminal 100.
- the game progress information includes data indicating the movement of the character operated by the player, the parameters of the character, information on items and weapons possessed by the character, enemy characters, and the like.
- the server 200 transmits the game progress information to the user terminals 100 of all the users participating in the game. In other words, the server 200 transmits common game progress information to the user terminals 100 of all users participating in the game. As a result, the game progresses in the same manner as the HMD set 1000 on each of the user terminals 100 of all the users participating in the game.
- the communication mediation unit 211 transmits the information received from any one of the user terminals 100 to support the progress of the game by the player to the other user terminals 100 and the HMD set 1000.
- the information may be an item for the player to advance the game advantageously, and may be item information indicating an item provided to the player (character).
- the item information includes information (user name, user ID, etc.) indicating the user who provided the item.
- the communication mediation unit 211 may mediate the distribution of the operation instruction data from the distribution terminal 400 to the user terminal 100.
- the log generation unit 212 generates a game progress log based on the game progress information received from the HMD set 1000.
- the list generation unit 213 generates the user list 234 after the end of game play. Although the details will be described later, each user in the user list 234 is associated with a tag indicating the content of the support provided to the player by the user.
- the list generation unit 213 generates a tag based on the game progress log generated by the log generation unit 212, and associates it with the corresponding user.
- the list generation unit 213 may associate the content of the support provided by each user to the player, which is input by the game operator or the like using a terminal device such as a personal computer, with the corresponding user as a tag. ..
- the user terminal 100 transmits information indicating the user to the server 200 based on the user's operation. For example, the user terminal 100 transmits the user ID input by the user to the server 200. That is, the server 200 holds information indicating each user for all the users participating in the game.
- the list generation unit 213 may generate the user list 234 using the information.
- the control unit 310 comprehensively controls the HMD set 1000 by executing the game program 331 stored in the storage unit 320. For example, the control unit 310 advances the game according to the game program 331 and the operation of the player. In addition, the control unit 310 communicates with the server 200 to send and receive information as needed while the game is in progress. The control unit 310 may send and receive information directly to and from the user terminal 100 without going through the server 200.
- the control unit 310 has an operation reception unit 311, a display control unit 312, a UI control unit 313, an animation generation unit 314, a game progress unit 315, a virtual space control unit 316, and a reaction processing unit 317 according to the description of the game program 331. Functions as.
- the control unit 310 can also function as other functional blocks (not shown) for controlling characters appearing in the game, depending on the nature of the game to be executed.
- the operation reception unit 311 detects and accepts the input operation of the player.
- the operation reception unit 311 receives signals input from the HMD 500, the motion sensor 520, the controller 540, etc., determines what kind of input operation has been performed, and outputs the result to each element of the control unit 310.
- the UI control unit 313 controls a user interface (hereinafter, UI) image to be displayed on the monitor 51, the display 530, and the like.
- UI image is a tool for the player to make an input necessary for the progress of the game to the HMD set 1000, or a tool for obtaining information output during the progress of the game from the HMD set 1000.
- UI images are, but are not limited to, icons, buttons, lists, menu screens, and the like.
- the animation generation unit 314 generates animations showing the motions of various objects based on the control modes of the various objects. For example, the animation generation unit 314 may generate an animation or the like that expresses how an object (for example, a player's avatar object) moves as if it were there, moves its mouth, or changes its facial expression. ..
- the game progress unit 315 advances the game based on the game program 331, the input operation by the player, the operation of the avatar object in response to the input operation, and the like. For example, the game progress unit 315 performs a predetermined game process when the avatar object performs a predetermined operation. Further, for example, the game progress unit 315 may receive information representing a user's operation on the user terminal 100 and perform game processing based on the user's operation. In addition, the game progress unit 315 generates game progress information according to the progress of the game and transmits it to the server 200. The game progress information is transmitted to the user terminal 100 via the server 200. As a result, the progress of the game in the HMD set 1000 is shared in the user terminal 100. In other words, the progress of the game in the HMD set 1000 and the progress of the game in the user terminal 100 are synchronized.
- the virtual space control unit 316 performs various controls related to the virtual space provided to the player according to the progress of the game. As an example, the virtual space control unit 316 creates various objects and arranges them in the virtual space. Further, the virtual space control unit 316 arranges the virtual camera in the virtual space. In addition, the virtual space control unit 316 operates various objects arranged in the virtual space according to the progress of the game. Further, the virtual space control unit 316 controls the position and inclination of the virtual camera arranged in the virtual space according to the progress of the game.
- the display control unit 312 outputs a game screen on which the processing results executed by each of the above elements are reflected to the monitor 51 and the display 530.
- the display control unit 312 may display an image based on the field of view from the virtual camera arranged in the virtual space on the monitor 51 and the display 530 as a game screen. Further, the display control unit 312 may include the animation generated by the animation generation unit 314 in the game screen. Further, the display control unit 312 may superimpose and draw the above-mentioned UI image controlled by the UI control unit 313 on the game screen.
- the reaction processing unit 317 receives feedback on the reaction of the user of the user terminal 100 to the game play of the player, and outputs this to the player.
- the user terminal 100 can create a comment (message) addressed to the avatar object based on the input operation of the user.
- the reaction processing unit 317 receives the comment data of the comment and outputs it.
- the reaction processing unit 317 may display the text data corresponding to the user's comment on the monitor 51 and the display 530, or may output the voice data corresponding to the user's comment from a speaker (not shown). In the former case, the reaction processing unit 317 may superimpose and draw an image corresponding to the text data (that is, an image including the content of the comment) on the game screen.
- the control unit 110 comprehensively controls the user terminal 100 by executing the game program 131 stored in the storage unit 120. For example, the control unit 110 advances the game according to the game program 131 and the user's operation. In addition, the control unit 110 communicates with the server 200 to send and receive information as needed while the game is in progress. The control unit 110 may send and receive information directly to and from the HMD set 1000 without going through the server 200.
- the control unit 110 has an operation reception unit 111, a display control unit 112, a UI control unit 113, an animation generation unit 114, a game progress unit 115, a virtual space control unit 116, and a video playback unit 117 according to the description of the game program 131. Functions as.
- the control unit 110 can also function as other functional blocks (not shown) for the progress of the game, depending on the nature of the game being executed.
- the operation reception unit 111 detects and accepts a user's input operation with respect to the input unit 151.
- the operation reception unit 111 determines what kind of input operation has been performed from the action exerted by the user on the console via the touch screen 15 and other input / output IF 14, and outputs the result to each element of the control unit 110. To do.
- the operation receiving unit 111 receives an input operation for the input unit 151, detects the coordinates of the input position of the input operation, and specifies the type of the input operation.
- the operation reception unit 111 specifies, for example, a touch operation, a slide operation, a swipe operation, a tap operation, and the like as types of input operations. Further, the operation reception unit 111 detects that the contact input is released from the touch screen 15 when the continuously detected input is interrupted.
- the UI control unit 113 controls a UI image to be displayed on the display unit 152 in order to construct a UI according to at least one of a user's input operation and received game progress information.
- the UI image is a tool for the user to input necessary input for the progress of the game to the user terminal 100, or a tool for obtaining information output during the progress of the game from the user terminal 100.
- UI images are, but are not limited to, icons, buttons, lists, menu screens, and the like.
- the animation generation unit 114 generates animations showing the motions of various objects based on the control modes of the various objects.
- the game progress unit 115 advances the game based on the game program 131, the received game progress information, the input operation by the user, and the like.
- the game progress unit 115 performs a predetermined game process by an input operation by the user
- the game progress unit 115 transmits information about the game process to the HMD set 1000 via the server 200.
- the predetermined game processing is shared in the HMD set 1000.
- the predetermined game process is, for example, a process of providing an item to the avatar object, and in this example, the information related to the game process is the item information described above.
- the virtual space control unit 116 performs various controls related to the virtual space provided to the user according to the progress of the game.
- the virtual space control unit 116 creates various objects and arranges them in the virtual space.
- the virtual space control unit 116 arranges the virtual camera in the virtual space.
- the virtual space control unit 116 operates various objects arranged in the virtual space according to the progress of the game, specifically, the received game progress information.
- the virtual space control unit 316 controls the position and inclination of the virtual camera arranged in the virtual space according to the progress of the game, specifically, the received game progress information.
- the display control unit 112 outputs to the display unit 152 a game screen in which the processing results executed by each of the above elements are reflected.
- the display control unit 112 may display an image based on the field of view from the virtual camera arranged in the virtual space provided to the user on the display unit 152 as a game screen. Further, the display control unit 112 may include the animation generated by the animation generation unit 114 in the game screen. Further, the display control unit 112 may superimpose and draw the above-mentioned UI image controlled by the UI control unit 113 on the game screen.
- the game screen displayed on the display unit 152 is the same game screen as the game screen displayed on the other user terminal 100 and the HMD set 1000.
- the moving image reproduction unit 117 analyzes (renders) the operation instruction data received from the distribution terminal 400, and reproduces the moving image.
- the control unit 410 comprehensively controls the distribution terminal 400 by executing a program (not shown) stored in the storage unit 420. For example, the control unit 410 generates operation instruction data and distributes it to the user terminal 100 according to the operation of the program and the user (player in this embodiment) of the distribution terminal 400. In addition, the control unit 410 communicates with the server 200 to send and receive information as needed. The control unit 410 may send and receive information directly to and from the user terminal 100 without going through the server 200.
- the control unit 410 functions as a communication control unit 411, a display control unit 412, an operation reception unit 413, a voice reception unit 414, a motion identification unit 415, and an operation instruction data generation unit 416 according to the description of the program.
- the control unit 410 can also function as other functional blocks (not shown) for the generation and distribution of operation instruction data.
- the communication control unit 411 controls transmission / reception of information to / from the server 200 or the user terminal 100 via the server 200.
- the communication control unit 411 receives the user list 421 from the server 200 as an example. Further, the communication control unit 411 transmits the operation instruction data to the user terminal 100 as an example.
- the display control unit 412 outputs various screens reflecting the processing results executed by each element to the display unit 452. As an example, the display control unit 412 displays a screen including the received user list 234. Further, as an example, the display control unit 412 displays a screen including a motion list 422 for causing the player to select motion data for operating the avatar object included in the motion instruction data to be distributed.
- the operation reception unit 413 detects and accepts a player's input operation with respect to the input unit 151.
- the operation reception unit 111 determines what kind of input operation has been performed from the action exerted by the player on the console via the touch screen 45 and other input / output IF44s, and outputs the result to each element of the control unit 410. To do.
- the operation reception unit 413 receives an input operation for the input unit 451, detects the coordinates of the input position of the input operation, and specifies the type of the input operation.
- the operation reception unit 413 specifies, for example, a touch operation, a slide operation, a swipe operation, a tap operation, and the like as the types of input operations. Further, the operation reception unit 413 detects that the contact input is released from the touch screen 45 when the continuously detected input is interrupted.
- the voice reception unit 414 receives the voice generated around the distribution terminal 400 and generates voice data of the voice.
- the voice receiving unit 414 receives the voice spoken by the player and generates voice data of the voice.
- the motion specifying unit 415 specifies the motion data selected by the player from the motion list 422 according to the input operation of the player.
- the operation instruction data generation unit 416 generates operation instruction data.
- the operation instruction data generation unit 416 generates operation instruction data including the generated voice data and the specified motion data.
- the functions of the HMD set 1000, the server 200, and the user terminal 100 shown in FIG. 6 and the functions of the distribution terminal 400 shown in FIG. 7 are merely examples.
- Each device of the HMD set 1000, the server 200, the user terminal 100, and the distribution terminal 400 may include at least a part of the functions provided by the other devices.
- another device other than the HMD set 1000, the server 200, the user terminal 100, and the distribution terminal 400 may be a component of the system 1, and the other device may be made to execute a part of the processing in the system 1.
- the computer that executes the game program in the present embodiment may be any of the HMD set 1000, the server 200, the user terminal 100, the distribution terminal 400, and other devices, or a plurality of these. It may be realized by the combination of the devices of.
- FIG. 8 is a flowchart showing an example of a flow of control processing of the virtual space provided to the player and the virtual space provided to the user of the user terminal 100.
- FIG. 9 is a diagram showing a virtual space 600A provided to the player and a field of view image visually recognized by the player according to an embodiment.
- FIG. 10 is a diagram showing a virtual space 600B provided to the user of the user terminal 100 and a field of view image visually recognized by the user according to a certain embodiment.
- virtual space 600 when it is not necessary to distinguish between the virtual spaces 600A and 600B, it is described as "virtual space 600".
- step S1 the processor 30 defines the virtual space 600A shown in FIG. 9 as the virtual space control unit 316.
- the processor 30 defines a virtual space 600A by using virtual space data (not shown).
- the virtual space data may be stored in the game play terminal 300, may be generated by the processor 30 based on the game program 331, or may be acquired by the processor 30 from an external device such as the server 200. May be good.
- the virtual space 600 has an all-sky spherical structure that covers the entire 360-degree direction of a point defined as a center.
- the celestial sphere in the upper half of the virtual space 600 is illustrated so as not to complicate the explanation.
- step S2 the processor 30 arranges the avatar object 610 (character) in the virtual space 600A as the virtual space control unit 316.
- the avatar object 610 is an avatar object associated with the player, and operates according to the input operation of the player.
- step S3 the processor 30 arranges other objects in the virtual space 600A as the virtual space control unit 316.
- the processor 30 arranges objects 631 to 634.
- Other objects imitate, for example, character objects (so-called non-player characters, NPCs) that operate according to the game program 331, operation objects such as virtual hands, animals, plants, man-made objects, and natural objects that are arranged as the game progresses.
- Can include objects and the like.
- step S4 the processor 30 arranges the virtual camera 620A in the virtual space 600A as the virtual space control unit 316. As an example, the processor 30 arranges the virtual camera 620A at the position of the head of the avatar object 610.
- step S5 the processor 30 displays the field of view image 650 on the monitor 51 and the display 530.
- the processor 30 defines a field of view 640A, which is the field of view from the virtual camera 620A in the virtual space 600A, according to the initial position and tilt of the virtual camera 620A. Then, the processor 30 defines the field of view image 650 corresponding to the field of view area 640A.
- the processor 30 outputs the field of view image 650 to the monitor 51 and the display 530 to display the field of view image 650 on the HMD 500 and the display 530.
- a part of the object 634 is included in the field of view area 640A, so that the field of view image 650 is one of the objects 634 as shown in FIG. 9B. Including part.
- step S6 the processor 30 transmits the initial arrangement information to the user terminal 100 via the server 200.
- the initial placement information is information indicating the initial placement positions of various objects in the virtual space 600A.
- the initial placement information includes the avatar object 610 and the information of the initial placement positions of the objects 631 to 634.
- the initial placement information can also be expressed as one of the game progress information.
- step S7 the processor 30 controls the virtual camera 620A according to the movement of the HMD 500 as the virtual space control unit 316. Specifically, the processor 30 controls the orientation and tilt of the virtual camera 620A according to the movement of the HMD 500, that is, the posture of the player's head. As will be described later, when the player moves the head (changes the posture of the head), the processor 30 moves the head of the avatar object 610 in accordance with this movement. The processor 30 controls the orientation and tilt of the virtual camera 620A so that, for example, the direction of the line of sight of the avatar object 610 coincides with the direction of the line of sight of the virtual camera 620A. In step S8, the processor 30 updates the field of view image 650 in response to changes in the orientation and tilt of the virtual camera 620A.
- step S9 the processor 30 moves the avatar object 610 as the virtual space control unit 316 according to the movement of the player.
- the processor 30 moves the avatar object 610 in the virtual space 600A in response to the player moving in the real space.
- the processor 30 moves the head of the avatar object 610 in the virtual space 600A in response to the player moving the head in the real space.
- step S10 the processor 30 moves the virtual camera 620A as the virtual space control unit 316 so as to follow the avatar object 610. That is, the virtual camera 620A is always at the position of the head of the avatar object 610 even if the avatar object 610 moves.
- the processor 30 updates the field of view image 650 in response to the movement of the virtual camera 620A. That is, the processor 30 updates the view area 640A according to the posture of the player's head and the position of the virtual camera 620A in the virtual space 600A. As a result, the field of view image 650 is updated.
- step S11 the processor 30 transmits the operation instruction data of the avatar object 610 to the user terminal 100 via the server 200.
- the operation instruction data here is motion data that captures the player's motion, voice data of the voice spoken by the player, and operation data indicating the content of the input operation to the controller 540 during the virtual experience (for example, during game play). Includes at least one.
- the operation instruction data is transmitted to the user terminal 100 as, for example, game progress information.
- steps S7 to S11 are continuously and repeatedly executed while the player is playing the game.
- step S21 the processor 10 of the user terminal 100 of the user 3 defines the virtual space 600B shown in FIG. 10 as the virtual space control unit 116.
- the processor 10 defines the virtual space 600B by using the virtual space data (not shown).
- the virtual space data may be stored in the user terminal 100, may be generated by the processor 10 based on the game program 131, or may be acquired by the processor 10 from an external device such as the server 200. Good.
- step S22 the processor 10 receives the initial placement information.
- step S23 the processor 10 arranges various objects in the virtual space 600B as the virtual space control unit 116 according to the initial arrangement information.
- the various objects are the avatar object 610 and the objects 631 to 634.
- step S24 the processor 10 arranges the virtual camera 620B in the virtual space 600B as the virtual space control unit 116. As an example, the processor 10 arranges the virtual camera 620B at the position shown in FIG. 10 (A).
- step S25 the processor 10 displays the field of view image 660 on the display unit 152.
- the processor 10 defines a field of view 640B, which is a field of view from the virtual camera 620B in the virtual space 600B, according to the initial position and tilt of the virtual camera 620B. Then, the processor 10 defines the field of view image 660 corresponding to the field of view area 640B.
- the processor 10 outputs the field of view image 660 to the display unit 152 to display the field of view image 660 on the display unit 152.
- the avatar object 610 and the object 631 are included in the field of view area 640B, so that the field of view image 660 is the avatar object 610 as shown in FIG. 10B. And the object 631.
- step S26 the processor 10 receives the operation instruction data.
- step S27 the processor 10 moves the avatar object 610 in the virtual space 600B as the virtual space control unit 116 according to the operation instruction data. In other words, the processor 10 reproduces the video in which the avatar object 610 is operating by real-time rendering.
- step S28 the processor 10 controls the virtual camera 620B as the virtual space control unit 116 according to the operation of the user received as the operation reception unit 111.
- step S29 the processor 10 updates the field of view image 660 in response to changes in the position of the virtual camera 620B in the virtual space 600B, the orientation and tilt of the virtual camera 620B.
- the processor 10 may automatically control the virtual camera 620B according to the movement of the avatar object 610, for example, the movement of the avatar object 610 or the change of the orientation.
- the processor 10 may automatically move the virtual camera 620B or change its orientation and tilt so that the avatar object 610 is always photographed from the front.
- the processor 10 may automatically move the virtual camera 620B or change the orientation and tilt so as to always shoot the avatar object 610 from the rear according to the movement of the avatar object 610. Good.
- the avatar object 610 operates according to the movement of the player.
- the operation instruction data indicating this operation is transmitted to the user terminal 100.
- the avatar object 610 operates according to the received operation instruction data.
- the avatar object 610 performs the same operation in the virtual space 600A and the virtual space 600B.
- the user 3 can visually recognize the movement of the avatar object 610 according to the movement of the player by using the user terminal 100.
- FIG. 11 is a diagram showing another example of the field of view image displayed on the user terminal 100. Specifically, it is a figure which shows an example of the game screen of the game (this game) executed by the system 1 played by a player.
- an avatar object 610 that operates weapons such as guns and knives and a plurality of enemy objects 671 that are NPCs appear in the virtual space 600, and the avatar object 610 fights against the enemy object 671. It is a game to let you.
- Various game parameters such as the physical strength of the avatar object 610, the number of magazines that can be used, the number of remaining bullets of the gun, and the remaining number of the enemy object 671 are updated as the game progresses.
- a plurality of stages are prepared in this game, and the player can clear the stage by satisfying a predetermined achievement condition associated with each stage.
- Predetermined achievement conditions are established by, for example, defeating all appearing enemy objects 671, defeating boss objects among the appearing enemy objects 671, acquiring predetermined items, reaching a predetermined position, and the like. It may include the condition to be used.
- the achievement conditions are defined in the game program 131.
- the player clears the stage when the achievement condition is satisfied according to the content of the game, in other words, the avatar object 610 wins the enemy object 671 (avatar object 610 and enemy object 671). The victory or defeat between) is decided.
- the game executed by the system 1 is a racing game or the like, the ranking of the avatar object 610 is determined when the condition of reaching the goal is satisfied.
- the game progress information is live-distributed to the plurality of user terminals 100 at predetermined time intervals.
- a field of view image of the field of view region defined by the virtual camera 620B corresponding to the user terminal 100 is displayed.
- parameter images showing the physical strength of the avatar object 610, the number of magazines that can be used, the number of remaining bullets of the gun, the remaining number of the enemy object 671 and the like are displayed superimposed. ..
- This field of view image can also be expressed as a game screen.
- the game progress information includes motion data that captures the player's movements, voice data of the voice spoken by the player, and operation data that indicates the content of the input operation to the controller 540.
- These data are, that is, information for specifying the position, posture, orientation, etc. of the avatar object 610, information for specifying the position, posture, orientation, etc. of the enemy object 671, and other objects (for example, obstacle objects 672 and 673). It is information that identifies the position of.
- the processor 10 identifies the position, posture, orientation, and the like of each object by analyzing (rendering) the game progress information.
- the game information 132 includes data of various objects such as an avatar object 610, an enemy object 671, and obstacle objects 672 and 673.
- the processor 10 updates the position, posture, orientation, and the like of each object by using the data and the analysis result of the game progress information. As a result, the game progresses, and each object in the virtual space 600B moves in the same manner as each object in the virtual space 600A. Specifically, in the virtual space 600B, each object including the avatar object 610 operates based on the game progress information regardless of whether or not the user operates the user terminal 100.
- UI images 701 and 702 are displayed superimposed on the field of view image.
- the UI image 701 is a UI image that accepts an operation for displaying the UI image 711 for displaying the item input operation for supporting the avatar object 610 from the user 3 on the touch screen 15.
- the UI image 702 receives an operation for displaying a UI image (described later) on the touch screen 15 for receiving an operation for inputting and transmitting a comment for the avatar object 610 (in other words, the player 4) from the user 3. It is a UI image.
- the operation accepted by the UI images 701 and 702 may be, for example, an operation of tapping the UI images 701 and 702.
- the UI image 711 is displayed superimposed on the field of view image.
- the UI image 711 is, for example, a UI image 711A on which a magazine icon is drawn, a UI image 711B on which an first aid box icon is drawn, a UI image 711C on which a triangular cone icon is drawn, and a UI on which a barricade icon is drawn.
- the item insertion operation corresponds to, for example, an operation of tapping any UI image.
- the UI image 711A when the UI image 711A is tapped, the number of remaining bullets of the gun used by the avatar object 610 increases.
- the UI image 711B is tapped, the physical strength of the avatar object 610 is restored.
- the UI images 711C and 711D are tapped, obstacle objects 672 and 673 that obstruct the movement of the enemy object 671 are placed in the virtual space.
- One of the obstacle objects 672 and 673 may obstruct the movement of the enemy object 671 more than the other.
- the processor 10 transmits the item input information indicating that the item input operation has been performed to the server 200.
- the item input information includes at least information for specifying the type of the item specified by the item input operation.
- the item input information may include other information about the item, such as information indicating where the item is placed.
- the item input information is transmitted to the other user terminal 100 and the HMD set 1000 via the server 200.
- FIG. 12 is a diagram showing another example of the field of view image displayed on the user terminal 100. Specifically, it is a figure which shows an example of the game screen of this game, and is the figure for demonstrating the communication between a player and a user terminal 100 during game play.
- the user terminal 100 causes the avatar object 610 to execute the utterance 691.
- the user terminal 100 causes the avatar object 610 to execute the utterance 691 according to the voice data included in the game progress information.
- the content of the utterance 691 is "There is no bullet! Spoken by the player 4. That is, the content of the utterance 691 is to inform each user that the magazine is 0 and the bullet loaded in the gun is 1, so that the means for attacking the enemy object 671 is likely to be lost.
- a balloon is used to visually indicate the utterance of the avatar object 610, but in reality, the voice is output from the speaker of the user terminal 100.
- the balloon shown in FIG. 12A (that is, the balloon including the text of the audio content) may be displayed in the visual field image. This also applies to the utterance 692 described later.
- the user terminal 100 Upon receiving the tap operation on the UI image 702, the user terminal 100 superimposes and displays the UI images 705 and 706 (message UI) on the field of view image as shown in FIG. 12 (B).
- the UI image 705 is a UI image that displays a comment on the avatar object 610 (in other words, the player).
- the UI image 706 is a UI image that accepts a comment transmission operation from the user 3 in order to transmit the input comment.
- the user terminal 100 when the user terminal 100 receives a tap operation on the UI image 705, the user terminal 100 displays a UI image (not shown, hereinafter simply referred to as "keyboard") imitating a keyboard on the touch screen 15.
- the user terminal 100 causes the UI image 705 to display text corresponding to the user's input operation on the keyboard.
- the text "Magazine is sent" is displayed on the UI image 705.
- the user terminal 100 When the user terminal 100 receives a tap operation on the UI image 706 as an example after inputting the text, the user terminal 100 transmits the comment information including the input content (text content) and the information indicating the user to the server 200. To do.
- the comment information is transmitted to the other user terminal 100 and the HMD set 1000 via the server 200.
- the UI image 703A is a UI image showing the user name of the user who sent the comment
- the UI image 704A is a UI image showing the content of the comment sent by the user.
- the user whose user name is "BBBBBB” uses his / her own user terminal 100 to transmit comment information having the content "dangerous!, That is, the UI image 703A and the UI image 704A.
- the UI image 703A and the UI image 704A are displayed on the touch screen 15 of all the user terminals 100 participating in this game and the monitor 51 of the HMD 500.
- the UI images 703A and 704A may be one UI image. That is, one UI image may include the user name and the content of the comment.
- the UI image 703B includes the user name "AAAAAA”, and the UI image 704B contains the comment "Magazine send! Entered in the example of FIG. 12B.
- the user "AAAAA” further inputs a tap operation to the UI image 701, displays the UI image 711 on the touch screen 15, and inputs a tap operation to the UI image 711A. It is a later view image 611. That is, as a result of the item input information indicating the magazine being transmitted from the user terminal 100 of the user "AAAAA" to the other user terminal 100 and the HMD set 1000, the user terminal 100 and the HMD set 1000 have the effect object 674 (described later). Is arranged in the virtual space 600. As an example, the user terminal 100 and the HMD set 1000 execute the effect related to the effect object 674 after the elapsed time indicated in the item input information has elapsed, and execute the process of invoking the effect of the item object.
- the number of magazines is increased from 0 to 1 by executing the process of invoking the effect of the item object.
- the player utters "Thank you!” To the user "AAAAA”, and the voice data of the utterance is transmitted to each user terminal 100.
- each user terminal 100 outputs the voice "Thank you!” As the utterance 692 of the avatar object 610.
- communication between the user and the avatar object 610 is realized by outputting the utterance voice of the avatar object 610 based on the utterance of the player and inputting a comment by each user.
- FIG. 13 is a flowchart showing an example of the flow of the game progress process executed by the game play terminal 300.
- step S31 the processor 30 advances the game as the game progress unit 315 based on the game program 331 and the movement of the player.
- step S32 the processor 30 generates game progress information and distributes it to the user terminal 100. Specifically, the processor 30 transmits the generated game progress information to each user terminal 100 via the server 200.
- the processor 30 When the processor 30 receives the item input information in step S33 (YES in S33), the processor 30 arranges the item object in the virtual space 600A based on the item input information in step S34. As an example, the processor 30 arranges the effect object 674 in the virtual space 600A before arranging the item object (see FIG. 11C).
- the effect object 674 may be, for example, an object imitating a present box.
- the processor 30 may execute the effect related to the effect object 674 after the elapsed time indicated in the item input information has elapsed.
- the effect may be, for example, an animation in which the lid of the present box is opened. After executing the animation, the processor 30 executes a process of invoking the effect of the item object. For example, in the example of FIG. 11D, the obstacle object 673 is arranged.
- the processor 30 may arrange the item object corresponding to the tapped UI image in the virtual space 600A. For example, when a tap operation is performed on the UI image 711A, the processor 30 arranges a magazine object indicating a magazine in the virtual space 600A after executing the animation. Further, when the tap operation is performed on the UI image 711B, the processor 30 arranges the first aid kit object indicating the first aid kit in the virtual space 600A after executing the animation.
- the processor 30 may execute a process of invoking the effect of the magazine object or the first aid kit object when the avatar object 610 moves to the position of the magazine object or the first aid kit object, for example.
- the processor 30 continues and repeats the processes of steps S31 to S34 until the game is finished.
- the game ends for example, when the player inputs a predetermined input operation for ending the game (YES in step S35), the process shown in FIG. 13 ends.
- FIG. 14 is a flowchart showing an example of the flow of the game progress process executed by the user terminal 100.
- step S41 the processor 10 receives the game progress information.
- step S42 the processor 10 advances the game as the game progress unit 115 based on the game progress information.
- step S43 when the processor 10 accepts the item input operation by the user 3 (YES in step S43), in step S44, the processor 10 consumes the virtual currency and arranges the effect object 674 in the virtual space 600B.
- the virtual currency is purchased (charged for the game) by the user 3 performing a predetermined operation on the processor 10 before or during the participation in the game. It may be present, or it may be given to the user 3 when a predetermined condition is satisfied.
- the predetermined conditions may be those that require participation in this game, such as clearing a quest in this game, or those that do not require participation in this game, such as answering a questionnaire.
- the amount of virtual currency (the amount of virtual currency owned) is stored in the user terminal 100 as game information 132 as an example.
- step S45 the processor 10 transmits the item input information to the server 200.
- the item input information is transmitted to the game play terminal 300 via the server 200.
- the processor 10 arranges the item object in the virtual space 600A when a predetermined time elapses after the arrangement of the effect object 674.
- the obstacle object 673 is arranged. That is, when the user 3 inputs a tap operation to the UI image 711C, a predetermined amount of virtual currency is consumed and the obstacle object 673 is arranged.
- the processor 10 continues and repeats the processes of steps S41 to S45 until the game is finished.
- the game is finished, for example, when the player performs a predetermined input operation for ending the game, or when the user 3 performs a predetermined input operation for leaving the game halfway (YES in step S46). ), The process shown in FIG. 14 is completed.
- FIG. 15 is a flowchart showing an example of the flow of game progress processing executed on the server 200.
- step S51 the processor 20 receives the game progress information from the game play terminal 300.
- step S52 the processor 20 updates the game progress log (hereinafter, play log) as the log generation unit 212.
- the play log is generated by the processor 20 when the initial arrangement information is received from the game play terminal 300.
- step S53 the processor 20 transmits the received game progress information to each user terminal 100.
- step S54 When the item input information is received from any user terminal 100 in step S54 (YES in step S54), the processor 20 updates the play log as the log generation unit 212 in step S55. In step S56, the processor 20 transmits the received item input information to the game play terminal 300.
- the processor 20 continues and repeats the processes of steps S51 to S56 until the game is finished.
- the processor 20 acts as a list generator 213 from the play log. Generate a list of users who participated in the game (user list 234).
- the processor 20 stores the generated user list 234 in the server 200.
- FIG. 16 is a diagram showing a specific example of the user list 234.
- information for example, a user name
- Information (tags) generated based on the support provided by each user to the player is stored in the "tag" column.
- tags generated based on the support provided by each user to the player is stored in the "tag" column.
- those without the key brackets are the information automatically generated by the processor 20, and those with the key brackets are those stored by the game operator. This is manually entered information.
- the user "AAAAA” is associated with information such as a magazine, 10F, a boss, and "winning the boss by presenting the magazine”. This indicates that, for example, in the boss battle on the stage of 10F, the user "AAAAA” inserts a magazine, and the avatar object 610 wins the boss with the bullet of the inserted magazine.
- the user "BBBBBB” is associated with information such as a first aid kit, 3rd floor, Zako, and "recovery on the verge of game over”. For example, in a battle with a Zako enemy on the 3rd floor, the user “BBBB” “BBBBBB” throws in the first aid kit, and as a result, it shows that the physical strength of the avatar object 610 has recovered just before it becomes 0 (the game is over).
- the user "CCCCC” is associated with information such as barricade, 5th floor, Zako, and "stopping two zombies at the barricade”. This means that, for example, in a battle with a Zako enemy on the 5th floor, the user "CCCCC” throws in a barricade (obstacle object 672 in FIG. 11), and as a result, succeeds in stopping the two Zako enemies. Shown.
- one support provided is associated with the user name of each user 3, but the user name of the user 3 who has performed the support a plurality of times has a tag for each of the multiple support times. Can be associated.
- each tag is distinguished. As a result, after the game is completed, the player who refers to the user list 421 using the distribution terminal 400 can accurately grasp the content of each support.
- FIG. 17 is a flowchart showing an example of the flow of the distribution process executed by the distribution terminal 400.
- FIG. 18 is a diagram showing a specific example of a screen displayed on the distribution terminal 400.
- FIG. 19 is a diagram showing another specific example of the screen displayed on the distribution terminal.
- step S61 the processor 40 receives the first operation for displaying the list of users who participated in the game (user list 234) as the operation reception unit 413.
- the download screen 721 shown in FIG. 18A is a screen for downloading the user list 234 from the server 200 and displaying it on the display unit 452.
- the download screen 721 is a screen displayed immediately after inputting the start operation of the application for executing the distribution process shown in FIG. 17 into the distribution terminal 400.
- the download screen 721 includes UI images 722 and 723 as an example.
- the UI image 722 accepts an operation for downloading the user list 234, that is, the first operation.
- the first operation may be, for example, an operation of tapping the UI image 722.
- the UI image 723 accepts an operation for terminating the application.
- the operation may be, for example, an operation of tapping the UI image 723.
- the processor 40 Upon receiving the tap operation for the UI image 722, in step S62, the processor 40 acquires (receives) the user list 234 from the server 200 as the communication control unit 411. In step S63, the processor 40 causes the display unit 452 to display the user list 234 as the display control unit 412. Specifically, the processor 40 causes the display unit 452 to display the user list screen generated based on the user list 234.
- the user list screen may be the user list screen 731 shown in FIG. 18B.
- the user list screen 731 is composed of a record image corresponding to each record in the user list 234.
- record images 732A to 732C are shown as record images, but the number of record images is not limited to three. In the example of FIG.
- the player may perform, for example, scroll the screen (eg,).
- Scroll the screen eg, By inputting a drag operation or a flick operation) to the touch screen 45, another record image can be displayed on the display unit 452.
- the record images 732A to 732C include user names 733A to 733C, tag information 734A to 734C, and icons 735A to 735C, respectively.
- the user names 733A to 733C, the tag information 734A to 734C, and the icons 735A to 735C "record image 732", "user name 733", and "user name 733”, respectively. It is described as “tag information 734" and "icon 735".
- the user name 733 is information indicating each user who has participated in the game, which is stored in the "user" column in the user list 234.
- the tag information 734 is information indicating a tag associated with each of the information indicating each user who participated in the game in the user list 234.
- the record image 732A includes "AAAAAA” as the username 733A. Therefore, the record image 732A includes "magazine, 10F, boss,” win the boss by presenting the magazine “” as tag information 734A, which is associated with "AAAAAA” in the user list 234.
- the icon 735 is, for example, an image preset by the user.
- the processor 40 may store the received user list in the distribution terminal 400 (user list 421 in FIG. 7).
- the download screen 721 may include a UI image (not shown) for displaying the user list 421 on the display unit 452.
- the processor 40 does not download the user list 234, reads the user list 421, generates a user list screen from the user list 421, and displays the user list screen on the display unit 452. ..
- step S64 the processor 40 receives a second operation for selecting any of the users included in the user list screen 731 as the operation reception unit 413.
- the second operation may be an operation of tapping any of the record images 732 on the user list screen 731.
- the player inputs a tap operation to the record image 732A. That is, the player has selected the user "AAAAAA" as the user who distributes the operation instruction data.
- the processor 40 Upon receiving the tap operation for the record image 732, in step S65, the processor 40 causes the display unit 452 to display the motion list 422 as the display control unit 412. Specifically, the processor 40 causes the display unit 452 to display the motion list screen generated based on the motion list 422.
- the motion list screen may be the motion list screen 741 shown in FIG.
- the motion list screen 741 is composed of a record image corresponding to each record in the motion list 422.
- record images 742A to 742C are described as record images, but the number of record images is not limited to three. In the example of FIG.
- the player inputs another record, for example, an operation of scrolling the screen (for example, a drag operation or a flick operation) to the touch screen 45.
- the image can be displayed on the display unit 452.
- the record images 742A to 742C include motion names 743A to 743C, motion images 744A to 744C, and UI images 745A to 745C, respectively.
- the motion names 743A to 743C, the motion images 744A to 744C, and the UI images 745A to 745C "record image 7432" and "motion name 743", respectively. It is described as “motion image 744" and "UI image 745".
- the motion name 743 is information for identifying the motion stored in the motion list 422.
- the motion image 744 is an image generated from the motion data associated with each motion name in the motion list 422.
- the processor 40 includes an image of the avatar object 610 that takes the first posture in each motion data in the record image 742 as the motion image 744.
- the motion image 744 may be a UI image that accepts a predetermined operation (for example, a tap operation on the motion image 744) by the player. When the processor 40 accepts the predetermined operation, the processor 40 may reproduce the motion moving image in which the avatar object 610 operates based on the motion data.
- the processor 40 may automatically redisplay the motion list screen 741 when the motion moving image is finished.
- the record image 742 may include, for example, a UI image including the text "motion reproduction" instead of the motion image 744.
- step S66 the processor 40 receives the third operation of selecting the motion as the operation receiving unit 413.
- the third operation may be a tap operation on the UI image 745. That is, the UI image 745 accepts an operation of selecting motion data corresponding to each record image 742.
- the processor 40 specifies the motion data selected by the player as the motion specifying unit 415.
- step S67 the processor 40 receives the voice input of the player as the display control unit 412 and the voice reception unit 414 while the avatar object 610 reproduces the motion moving image that operates based on the selected motion data.
- FIG. 20 is a diagram showing a specific example of voice input by the player 4.
- the player 4 is inputting the utterance voice 820A while playing the motion moving image 810A.
- the utterance voice 820A is a utterance voice addressed to the user 3 (hereinafter, user 3A) whose user name is "AAAAAA”. That is, in the example of FIG. 20, the player 4 selects the user 3A (first user) in step S64 and creates the operation instruction data addressed to the user 3A. It is assumed that the user terminal 100 used by the user 3A is the user terminal 100A.
- the utterance voice 820A is a utterance voice addressed to the user 3A
- the utterance voice is based on the content of the support provided by the user 3A to the avatar object 610 (in other words, the player 4).
- the user 3A inserts a magazine in the boss battle on the stage of 10F, and the avatar object 610 wins the boss with the bullet of the inserted magazine.
- the spoken voice 820A says, "Thank you for giving me the magazine in the boss battle! The timing was perfect! Thanks to AAAAA-san, I was able to clear it!
- the uttered voice includes the content of the support provided by the user 3 in the game and the gratitude to the user 3.
- the player 4 creates the utterance content addressed to the user 3 before starting the voice input, that is, before inputting the third operation to the distribution terminal 400.
- the utterance content addressed to the user 3 may be automatically generated by the processor 40. Further, the processor 40 may superimpose and display the tag associated with the user 3 selected by the second operation on the motion moving image 810A.
- the processor 40 converts the received voice into voice data.
- the processor 40 generates the operation instruction data including the voice data and the motion data of the selected motion as the operation instruction data generation unit 416.
- step S69 the processor 40, as the communication control unit 411, distributes the generated operation instruction data to the user terminal 100 (first computer) of the selected user 3 (user 3A in the example of FIG. 20).
- FIG. 21 is a diagram showing still another specific example of the screen displayed on the distribution terminal 400.
- the processor 40 causes the display unit 452 to display the distribution screen as the display control unit 412.
- the distribution screen may be the distribution screen 751 shown in FIG. 21 (A).
- the distribution screen 751 includes a UI image 752 and a motion image 753A. Further, as shown in FIG. 21A, the distribution screen 751 may include information indicating a user to whom the operation instruction data is distributed.
- the UI image 752 accepts an operation for delivering the operation instruction data to the selected user 3.
- the operation may be, for example, a tap operation on the UI image 752.
- the motion image 753A is a UI image that accepts an operation for playing a moving image based on the generated motion instruction data, that is, a moving image based on the motion instruction data generated for the user 3A.
- the operation may be, for example, a tap operation on the motion image 753A.
- the UI image that accepts the operation for playing the generated moving image is not limited to the motion image 753A. For example, it may be a UI image including the text "video playback".
- the processor 40 may automatically redisplay the distribution screen 751 when the moving image is finished.
- the distribution screen 751 preferably further includes a UI image that accepts an operation for returning to the acceptance of voice input.
- the operation may be, for example, a tap operation on the UI image.
- the player 4 can perform voice input again when the voice input fails, for example, when the content to be spoken is mistaken.
- the UI image may be a UI image that accepts an operation for returning to the selection of motion data.
- the processor 40 Upon receiving the tap operation for the UI image 752, the processor 40 transmits the operation instruction data to the server 200 together with the information indicating the user 3A.
- the server 200 identifies the user terminal 100 to which the operation instruction data is transmitted based on the information indicating the user 3A, and transmits the operation instruction data to the specified user terminal 100 (that is, the user terminal 100A).
- the processor 40 may display the distribution completion screen 761 shown in FIG. 21B on the display unit 452 as an example.
- the delivery completion screen 761 includes UI images 762 and 763 as an example. Further, the distribution completion screen 761 may include a text indicating that the transmission of the operation instruction data has been completed, as shown in FIG. 21 (B).
- the UI image 762 accepts an operation for starting the creation of operation instruction data addressed to another user 3.
- the operation may be, for example, an operation of tapping the UI image 762.
- the processor 40 receives the tap operation, the processor 40 causes the display unit 452 to display the user list screen again. That is, when the tap operation is accepted, the distribution process returns to step S63. At this time, the processor 40 may generate a user list screen based on the user list 421 stored in the distribution terminal 400 and display it on the display unit 452.
- the UI image 763 accepts an operation for terminating the application.
- the operation may be, for example, an operation of tapping the UI image 763.
- the distribution process ends.
- the distribution terminal 400 transmits the operation instruction data of the moving image addressed to the user 3A (the user 3 whose user name is "AAAAAA"). , Sent only to the user terminal 100A.
- FIG. 22 is a diagram showing another specific example of voice input by the player 4.
- the player 4 is inputting the utterance voice 820B while playing the motion moving image 810B.
- the utterance voice 820B is a utterance voice addressed to the user 3 (hereinafter, user 3B) whose user name is "BBBBBB". That is, in the example of FIG. 22, in step S64, the player 4 inputs a tap operation to the record image 732B corresponding to the user 3B, and creates the operation instruction data addressed to the user 3B. It is assumed that the user terminal 100 used by the user 3B is the user terminal 100B.
- the utterance voice 820B is a utterance voice addressed to the user 3B, the utterance voice is based on the content of the support provided by the user 3B to the avatar object 610 (in other words, the player 4). Specifically, in the battle with the Zako enemy on the 3rd floor, the user "BBBBBB” throws in the first aid kit, and as a result, the physical strength of the avatar object 610 becomes 0 (the game is over). I am recovering my physical strength. For this reason, the utterance voice 820B has the content "Thanks to the first aid kit given by Mr. BBBBB, the game did not end on the 3rd floor. Thank you very much!
- FIG. 23 is a diagram showing still another specific example of the screen displayed on the distribution terminal 400.
- the distribution screen 751 shown in FIG. 23A includes a UI image 752 and a motion image 753B.
- the motion image 753B accepts the tap operation, the motion image 753B reproduces a moving image based on the operation instruction data generated for the user 3B.
- the processor 40 Upon receiving the tap operation for the UI image 752, the processor 40 transmits the operation instruction data to the server 200 together with the information indicating the user 3B.
- the server 200 identifies the user terminal 100 to which the operation instruction data is transmitted based on the information indicating the user 3B, and transmits the operation instruction data to the specified user terminal 100 (that is, the user terminal 100B).
- the distribution terminal 400 transmits the operation instruction data of the moving image addressed to the user 3B (the user 3 whose user name is "BBBBBB"). , Transmit only to the user terminal 100B.
- the content of the voice based on the voice data included in the operation instruction data is based on the content of the support provided to the player 4 by the user 3 in participating in the latest game. Since the content of the support is different for each user 3, the content of the voice is different for each user 3. That is, after the end of the game, operation instruction data including voices having different contents is transmitted to at least a part of the user terminals 100 of the user 3 who participated in the game.
- the motion of the avatar object 610 in the example of FIG. 22 is different from the motion of the example of FIG. That is, the player 4 selects motion data different from that at the time of generating the operation instruction data addressed to the user 3A in the operation instruction data generation addressed to the user 3B. Specifically, in step S66, the player 4 inputs a tap operation to the UI image 745B that selects the motion data corresponding to the record image 742B. In this way, the player 4 can make the motion data included in the operation instruction data different for each user 3.
- unique operation instruction data for each user terminal 100 is transmitted to each of the user terminals 100 of the selected user 3.
- FIG. 24 is a diagram showing an outline of transmission of game progress information from the game play terminal 300 to the user terminal 100. While the operation instruction data for video reproduction on the user terminal 100 is unique for each user terminal 100, as shown in FIG. 24, the user terminals 100 of all users 3 participating in the game during game execution.
- the game progress information transmitted to is common among the user terminals 100. That is, the operation instruction data included in the game progress information is also common among the user terminals 100. As described above, it can be said that the operation instruction data for playing the moving image and the operation instruction data for advancing the game are different data from the viewpoints of the same difference between the user terminals 100 and the destination.
- FIG. 25 is a flowchart showing an example of the flow of the moving image reproduction process executed by the user terminal 100.
- step S71 the processor 10 receives the operation instruction data as the moving image reproduction unit 117.
- step S72 the processor 10 notifies the user 3 of the reception of the operation instruction data as the moving image reproduction unit 117.
- the processor 10 displays a notification image on the display unit 152, reproduces a notification voice from a speaker (not shown), lights a lighting unit (not shown) composed of an LED (light-emitting diode), or the like.
- the user 3 is notified of the reception of the operation instruction data by at least one of the blinking.
- step S73 the processor 10 receives the first reproduction operation for reproducing the moving image as the operation reception unit 111.
- the first reproduction operation may be an operation of tapping the notification image.
- step S74 the processor 10 renders the operation instruction data as the moving image reproduction unit 117 and reproduces the moving image.
- the processor 10 may start an application for playing this game and play a video, or may start an application for playing a video different from the application and play a video. Good.
- the video will be referred to as a "thank you video".
- FIG. 26 is a diagram showing a specific example of playing a thank-you video. Specifically, it is a figure which shows an example of the reproduction of the thank-you moving image in the user terminal 100 of the user 3A.
- the avatar object 610 is uttering the voice 920A while executing a certain motion.
- the processor 10 outputs the audio 920A from the speaker (not shown) while playing the thank-you video 910A including the avatar object 610 that executes a certain motion.
- the motion in the thank-you video 910A is based on the motion data selected by the player 4 in the generation of the motion instruction data addressed to the user 3A, and the voice 920A is the utterance voice input by the player 4 in the generation of the motion instruction data. It is based on the voice data generated from the 820A. That is, the voice 920A is a voice including the content of the support provided by the user 3A in the game and the gratitude for the support. In this way, the user 3A can watch the thank-you video in which the avatar object 610 utters the content of the support provided in the game and the gratitude for the support by inputting the first playback operation.
- the user terminal 100 may display at least one UI image on the touch screen 15 after the reproduction of the thank-you moving image 910A is completed.
- the UI image may be, for example, a UI image that accepts an operation for playing the thank-you video 910A again, a UI image that accepts an operation for transitioning to another screen, or an application. It may be a UI image that accepts an operation for terminating.
- the user terminal 100 may display at least one UI image on the touch screen 15 during playback of the thank-you moving image 910A.
- the UI image may be, for example, a plurality of UI images that accept operations such as temporarily stopping the thank-you video 910A being played, ending it, or changing the scene to be played.
- these UI images displayed during the playback of the thank-you video 910A and after the playback of the thank-you video 910A is hunted do not include a UI image for making a response to the avatar object 610. That is, the thank-you video 910A according to the present embodiment does not have a means for responding to the avatar object 610.
- FIG. 27 is a diagram showing another specific example of playing the thank-you video. Specifically, it is a figure which shows the example of the reproduction of the thank-you moving image in the user terminal 100 of the user 3B.
- the avatar object 610 is uttering the voice 920B while executing a certain motion.
- the processor 10 outputs the audio 920B from the speaker (not shown) while playing the thank-you video 910B including the avatar object 610 that executes a certain motion.
- the motion in the thank-you video 910B is based on the motion data selected by the player 4 in the generation of the motion instruction data addressed to the user 3B, and the voice 920B is the utterance voice input by the player 4 in the generation of the motion instruction data. It is based on the voice data generated from the 820B. Therefore, in the example of FIG. 27, the motion performed by the avatar object 610 is different from the motion of the example of FIG. 26. Further, the voice 920B is a voice including the content of the support provided by the user 3B in the game and the gratitude for the support. Therefore, in the example of FIG. 27, the content of the voice 920B is different from the content of the voice 920A in the example of FIG. 26.
- the thank-you video received by at least a part of the user terminals 100 of the users 3 who participated in the game after the end of the game is a video in which the utterance content of the avatar object 610 is different for each user 3.
- the processor 10 may superimpose and display the UI image 930 including the content prompting participation in the next game on the moving image 910.
- the UI image 930 may be distributed together with the operation instruction data, or may be stored in the user terminal 100 as the game information 132.
- the game play terminal 300 distributes the game progress information, which is the distribution content, to the plurality of user terminals 100 via the server 200.
- Each of the plurality of user terminals 100 displays the distributed content on the touch screen 15 based on the game progress information.
- a plurality of types of object data for displaying an object including the avatar object 610 are stored in advance in the memory 11 of the user terminal 100.
- the user terminal 100 receives the game progress information from the game play terminal 300, the user terminal 100 identifies the operation instruction data from the game progress information and analyzes (renders) the operation instruction data to analyze (render) the type, position, and attitude of the object. Etc. are specified.
- the user terminal 100 arranges the object including the avatar object 610 in the virtual space 600B by using the object data stored in the memory 11 based on the analysis result.
- the field of view image 660 of the field of view area 640B according to the position and orientation of the current virtual camera 620B is displayed.
- the object including the avatar object 610 is also arranged in the virtual space 600A defined by the game play terminal 300, and the position, posture, and the like of the object match between the virtual spaces 600A and 600B.
- the distribution content is provided with a plurality of types of content having different characters displayed as the avatar object 610.
- the plurality of types of contents include, for example, first-delivered content that is delivered once or irregularly, second-delivered content that is periodically delivered at a predetermined time on a daily or predetermined day of the week, and the like.
- the first distribution content and the second distribution content are, for example, a plurality of types of content having different characters appearing as the leading role or facilitator, characters appearing in the content, progress, and others, and the type of game played in the content. Is provided. Further, in the second distribution content, although the same character according to the type (for example, the character a according to the content a) appears and the character background (for example, a wreath object) is displayed each time, the same type of content (for example, a wreath object) is displayed. For example, even in the content a), the content and the like are different each time.
- a decorative object such as clothes and accessories is associated with the character displayed as the avatar object 610 for each type of character.
- a specific method for specifying the display mode of the decorative object will be illustrated.
- the distribution content includes the first character content in which the first character appears in the virtual space 600B as the avatar object 610, the second character content in which the second character appears in the virtual space 600B as the avatar object 610, and the like.
- the operation instruction data is data (first display data) for enabling the display of the image of the virtual space 600B in which the object including the first character is arranged.
- the operation instruction data is data (second display data) for enabling the display of the image of the virtual space 600B in which the object including the second character is arranged. ..
- each part of the upper body, lower body, hands, feet, neck, earlobe, eyes, etc. corresponds to clothes and accessories (necklace, earrings, glasses, etc.).
- Decorative objects are pre-associated. The type and part of the decorative object to be associated are defined to be different depending on the type of character.
- the first character includes a first object corresponding to a shirt and a third object that covers a part of the first object by putting it on the first object (shirt).
- Decorative objects including (blouse) are associated.
- the second character is associated with a decorative object including a second object (a shirt having a different design or the like) of the same type as the first object.
- the display mode of the first object associated with the first character is determined on the game play terminal 300 side according to a predetermined rule (for example, random number lottery) for each distribution such as at the start of distribution. ..
- the game play terminal 300 distributes game progress information including display mode information that can identify the display mode to the user terminal 100, and the user terminal 100 displays the display mode of the first object based on the display mode information. Is specified and set.
- the display mode of the decorative object other than the first object associated with the first character is fixed in advance, including the display mode of the third object.
- the user terminal 100 sets the display mode of the decorative object other than the first object to a fixed display mode.
- the display mode of the decorative object associated with the second character is fixed in advance, including the display mode of the second object of the same type as the first object.
- the user terminal 100 sets the display mode of the decorative object to a fixed display mode.
- the display mode of the first object among the decorative objects associated with the first character is changed for each distribution.
- the change of the display mode includes changing the texture image, and the texture image of the first object is changed for each delivery.
- the display mode is irrespective of the number of deliveries (delivery period). It is fixed without.
- the display mode is a mode when the decorative object is displayed on the display unit 152.
- the display mode determined for the first object is the display color (that is, the color of the shirt) of the first object. Therefore, among the decorative objects such as shirts and blouses associated with the first character, the color of the shirt is specified from among a plurality of colors (white, black, red, green, blue, purple, etc.).
- the second distribution content that is periodically distributed includes, for example, a first character content in which a first character whose display mode of the first object is changed each time appears.
- a first character for example, a character exhibiting the appearance of an office lady is illustrated.
- the first character is not limited to this, for example, a character whose age set as a character is less than a predetermined age (18 years old) (for example, a high school student character), a character having the appearance of a cheering party, or a female university student. It may be a character having the appearance of.
- the content is distributed from the game play terminal 300 during a predetermined distribution period.
- the processor 30 of the game play terminal 300 executes the display mode control process shown in FIG. 28 (A). Further, viewing of the content on the user terminal 100 side is started by a touch operation from the user on the predetermined content icon or the like. When the viewing of the content is started by the touch operation, the processor 10 on the user terminal 100 side executes the display mode setting process shown in FIG. 28 (B).
- the game play terminal 300 stores in the memory 31 whether or not the current timing coincides with the content distribution start timing predetermined for each content in step S81. Judgment is made based on the delivery schedule. That is, in the memory 31, information such as the time zone for delivering the content and the type of the content (characters appearing, that is, whether it is the first character content or the second character content, etc.) is used as the delivery schedule. It is remembered. In step S81, it is determined whether or not there is a match based on the delivery schedule.
- step S82 it is determined whether or not the content to be distributed this time is the first character content based on the distribution schedule. When it is determined that the content is the first character content, the process proceeds to step S83.
- step S83 the display mode (that is, the color of the shirt) of the first object among the decorative objects associated with the first character in the current delivery period is changed to a plurality of types of display modes (white, black, red, green, etc.). It is decided (randomly) by a random number lottery from among (blue, purple, etc.). More specifically, as described above, the first character content is the second distribution content that is periodically distributed, and in step S83, the display mode at the time of the previous distribution determined at the time of the previous distribution of the first character content. A display mode different from the above is determined by a random number lottery. As a result, the display mode of the first object (that is, the color of the shirt) is changed to a display mode different from that at the time of the previous delivery.
- step S84 display mode information (first data) capable of specifying the display mode determined in step S83 is set as the information included in the game progress information.
- game progress information including information according to the motion of the performer and display mode information according to the determination in step S83 is provided every predetermined time (for example, 1/60 second). It will be delivered.
- step S84 when it is not determined in step S81 that the current timing matches the start timing of content distribution, or in step S82, it is not determined that the content to be distributed this time is the first character content. When it returns. When content other than the first character content is distributed, game progress information according to the performer's motion or the like is distributed at predetermined time (for example, 1/60 second).
- step S91 the user terminal 100 determines in step S91 whether or not the content viewing start operation has been performed based on the input operation on the touch screen 15. If it is not determined that the viewing start operation has been performed, a return is made, and if it is determined that the viewing start operation has been performed, the process proceeds to step S92.
- step S92 it is determined by analyzing the game progress information whether or not the game progress information received from the game play terminal 300 includes the display mode information.
- step S93 the display mode of the first object in the current distribution period is set based on the display mode information. That is, among the display modes of the decorative objects in the current delivery period, the display mode of the first object (that is, the color of the shirt) is the display mode (white, black, red, green, which is specified by the display mode information. Set to either blue, purple, etc.).
- a fixed display mode is set as a display mode of objects other than the first object among the decorative objects associated with the first character.
- a decorative object including a shirt associated with a character different from the first character (for example, a second character).
- a fixed display mode is set. That is, when the first character content is delivered, the decorative objects (blouse, trousers, shoes, etc.) other than the first object (shirt) among the decorative objects associated with the first character are fixed. Set the display mode (fixed color).
- content different from the first character content for example, second character content
- all of the costume objects associated with the character different from the first character for example, the second character. Is set to a fixed display mode.
- step S93 and S94 model data of the avatar object 610 to be operated in the virtual space 600B is generated. While viewing the content, the avatar object 610 based on the model data operates based on the action instruction data included in the game progress information distributed from the game play terminal 300. When the process of step S94 is completed, the process returns.
- FIG. 29 shows a display example of an object including the first character while viewing the first character content.
- a wreath object reminiscent of a wreath is arranged behind the first character.
- the first character operates based on the operation instruction data.
- a color different from that at the time of the previous distribution is set for each content distribution.
- white is set as shown in FIG. 29 (A) in the Nth live distribution targeting the first character content.
- a gray color is set as shown in FIG. 29 (B)
- a gray color is set as shown in FIG. 29 (C)
- blue the striped pattern in the figure indicates that it is blue
- the same first character appears wearing a shirt of a different color for each content distribution.
- the video of the virtual space 600B including the first character that moves in conjunction with the movement of the performer is based on the movement instruction data (first display data) distributed from the game play terminal 300. Is displayed.
- a predetermined first object (shirt) is associated with the first character, and the display mode (shirt color) of the first object is changed according to a predetermined rule.
- the display mode of the first object can be spontaneously changed, and as a result, the user can have a sense of reality of the first character.
- the image of the virtual space 600B including the second character that moves in conjunction with the movement of the performer is used as the movement instruction data (second display data) distributed from the game play terminal 300. It is displayed based on.
- the second character is associated with a second object (shirt) of the same type as the first object, and the display mode (shirt color) of the second object is fixed. As a result, the sense of reality of the first character can be emphasized.
- the display mode of the first object is changed to a display mode different from the display mode in the previous delivery period for each delivery period.
- the first display data is data distributed from the game play terminal 300, and includes motion data corresponding to the motion input by the performer.
- the video in which the first character operates in the virtual space 600B is displayed by operating the first character in the virtual space 600B in real time based on the motion data. This makes it possible to suppress the amount of data to be delivered.
- the display mode of the first object changed by the predetermined rule is specified by the display mode information (first data) distributed from the game play terminal 300.
- the display mode of the first object is set based on the first data.
- the display mode of the first object on the plurality of user terminals 100 can be uniformly controlled on the game play terminal 300 side.
- the first character is associated with a predetermined third object (blouse).
- the third object is an object that covers at least a part of the first object. As a result, it is possible to control how the first object is displayed by the third object.
- the avatar object 610 or the like is operated in the same virtual space 600B as the virtual space 600A, and the virtual camera 620B arranged in the virtual space 600B is swiped against the touch screen 15 of the user terminal 100.
- the normal viewing mode for displaying the field of view image 660 of the field of view area 640B according to the position, orientation, and tilt of the virtual camera 620B, which changes according to the operation, on the touch screen 15 of the user terminal 100 has been described.
- the space in which the avatar object 610 and the like are operated is not limited to the virtual space, and may be a real space.
- the real space may be, for example, a space specified by an acquired image captured and acquired by the camera (imaging unit) 17.
- the user terminal 100 identifies a flat surface such as a floor surface by analyzing the acquired image taken by the camera 17, for example, the avatar object 610.
- the AR virtual space in which at least is arranged is arranged at a predetermined position of the plane portion (for example, the center position of the plane portion).
- the virtual camera 620B in this case is arranged at a position where the AR virtual space is captured from the same direction as the shooting direction of the camera 17 when the acquired image is shot.
- the image in the augmented reality space obtained by superimposing the field of view image from the virtual camera 620B on the image acquired from the camera 17 is displayed on the display unit 152. Further, the user terminal 100 detects the actual position, orientation, tilt, etc. of the camera 17, and changes the position, orientation, tilt, etc. of the virtual camera 620B according to the position, orientation, tilt, etc. As a result, the acquired image can be changed according to changes in the position, orientation, tilt, etc. of the camera 17.
- the avatar object 610 and the like operate in the augmented reality space in which the object including the avatar object 610 is arranged with respect to the acquired image acquired from the camera 17.
- the user can have an impression (realism) as if the avatar object 610 or the like is actually operating in the real space in front of the user.
- FIG. 30 shows an example in which a character imitating a woman wearing a hat (hereinafter referred to as a first character) appears in the virtual space 600B.
- the 1'character is associated with decorative objects such as a dress worn by the 1'character on the whole body, a hat on the head, and pierced earrings on the ears.
- the piercing of the decorative objects associated with the 1'character corresponds to the first object. Therefore, the display mode of the pierced earring is set to a different display mode for each delivery according to step S83 of FIG. 28.
- the second distribution content that is periodically distributed includes, for example, character content in which the first character whose display mode of the first object is changed each time appears.
- FIG. 30 (A-1) is a display example when the first character faces the front and raises the index finger of the right hand in front.
- FIG. 30 (A-2) is a display example when the first character faces diagonally forward to the right and points forward with the index finger of the right hand.
- the position, orientation, and tilt of the virtual camera 620B are changed according to the swipe operation.
- the pierced earring is covered with a hat corresponding to the third object, and no matter how the swipe operation is performed, the position where the pierced earring can be seen (for example, FIGS. 30 (B-3) and 30 (B) described later).
- the AR viewing mode will be described with reference to FIG. 30 (B).
- 30 (B-1) and 30 (B-2) show display examples in the AR viewing mode at the same timing as FIGS. 30 (A-1) and 30 (A-2), respectively.
- the image from the virtual camera 620B is displayed on the display unit 152. Is displayed.
- the first'character operates based on the operation instruction data distributed from the game play terminal 300. Further, the position, orientation, tilt, etc. of the virtual camera 620B are changed according to the actual position, orientation, tilt, etc. of the camera 17.
- the AR mode transition icon 182 is displayed in an emphasized mode (black and white inverted display in FIG. 30B) to notify that the AR viewing mode is in progress.
- the virtual camera 320B moves to a position where the piercing can be seen, and the image of the piercing is displayed. It is displayed on the display unit 152 (see (B-3) in FIG. 30 (B)). That is, the display mode of the pierced earrings can be confirmed by selecting the AR viewing mode and adjusting the position and orientation of the camera 17. As a result, the user can be motivated to watch in the AR viewing mode, and by extension, the preference can be improved.
- the position where the piercing which is the first object associated with the first character, can be displayed (for example, the first character).
- the virtual camera 620B can be moved to a position such as looking up from the neck of the character or looking up from the feet of the first character.
- the pierced earring which is the first object, can be displayed, and the user can confirm the display mode of the pierced earring.
- the position where the pierced earring, which is the first object associated with the first character, can be displayed for example, the position of the first'
- the virtual camera 620B cannot be moved to a position such as looking up from the neck of the character or looking up from the feet of the first character.
- the pierced earring, which is the first object cannot be displayed, and the user cannot confirm the display mode of the pierced earring.
- the AR viewing mode it is possible to switch to the normal viewing mode by detecting a touch operation or the like on the AR mode transition icon 182 displayed in the emphasized mode.
- the AR mode transition icon 182 is displayed in an emphasized manner, the AR mode reset icon is normally displayed, and the AR mode is reset in response to touching the AR mode reset icon ( (Restart) may be done.
- a flat surface portion such as a floor surface is specified again, and a field view image in the AR virtual space 600C is arranged at a predetermined position of the flat surface portion.
- the viewpoint of the virtual camera 620B is predetermined. It is returned to the viewpoint (for example, the viewpoint that captures the virtual space 600B from the front), or it is changed to the viewpoint that minimizes the movement amount of the virtual camera 620B within the movable range of the virtual camera 620B in the normal mode. To. As a result, the deviation of the viewpoint before and after the mode switching can be reduced as much as possible. Further, in the state where the first object is displayed in the AR viewing mode (FIG. 30 (B-3), etc.), the AR mode transition icon 182 may be temporarily hidden.
- the virtual camera 620B is controlled in synchronization with changes in the position, orientation, tilt, and the like of the camera 17.
- the virtual camera 620B may control the position, orientation, tilt, and the like in response to input operations (for example, swipe operation, touch operation, etc.) from the user.
- input operations for example, swipe operation, touch operation, etc.
- the field of view area of the virtual camera 620B can be changed according to the input operation from the user, and as a result, the field of view image arranged on the acquired image can be changed.
- the avatar object or the like for example, only the avatar object 610, the avatar object 610 and other objects, the entire virtual space
- the input to the touch screen 15 is performed.
- the avatar object 610 and the like can be rotated and moved by the operation.
- a TV mode in which the position, orientation, tilt, etc. of the virtual camera 620B is changed based on the operation of the switcher on the operator side of the system 1 is provided, and the TV mode is switched according to the user's operation. It may be possible. However, in the TV mode, the virtual camera 320B cannot be moved to a position where the first object can be seen, that is, the first object cannot be displayed on the display unit 152.
- the display mode of the costume or the like of the avatar object 610 in the above embodiment is uniformly determined according to the type of the avatar object 610.
- the display mode of the costume or the like of the avatar object 610 may be different for each user depending on, for example, the degree of progress of the game (for example, each time the game is won, each time an item is inserted, etc.).
- the costume of the avatar object 610 may be a costume according to the progress of the game.
- a plurality of types of costume data of the avatar object 610 may be stored in advance on the user terminal 100 side.
- the target for differently displaying the avatar object 610 is not limited to the costume, but may be a hairstyle, a skin color, a degree of makeup, and the like. As a result, the variation of the avatar object 610 can be increased without increasing the processing load on the game play terminal 300 side that outputs the game progress information, so that the user can be attracted.
- the display mode of the avatar object 610 may be different from the display mode displayed on the user terminal 100 of another user according to the charge by the user during the game. .. Further, the display mode of the avatar object 610 may be different depending on the ranking of the users updated according to the result of the game. Further, the user terminal 100 capable of receiving the first character content may be limited to a part of the user terminals 100, for example, the user terminal 100 of a user who charges a large amount during the game.
- the color of the display mode of the first object is changed by the process of step S83.
- the shape of the first object may be changed instead of or in combination with the color.
- the shirt may be changed from a V-neck to a round neck, or the earrings may be changed from a star to a ring.
- the display (for example, to be worn) or non-display (not to be worn) of the first object itself is determined in place of or in addition to the one that determines the color, shape, type, and the like. May be good.
- any one of the decorative objects (for example, shirt, piercing) associated with the first character is set as the first object, and the display mode of the first object is set.
- the first object is not limited to a shirt or earrings as long as it is an object associated with the first character, and may be an object such as socks, trousers, a hair clip, gloves, a hat, or underwear.
- the object is not limited to the decorative object, and may be, for example, an object related to the first character itself (for example, a hairstyle, a nail, etc.).
- the display mode of the first object associated with the first character may be changed, and the display mode of the background object (for example, a wreath object) of the first character may be changed.
- the display mode of the decorative objects other than the first object is fixed in advance.
- the display mode of the decorative object other than the first object may be changed not for each delivery but for each delivery, for example, every predetermined number of times (5 times), every season, every time zone, and the like.
- the display mode of the decorative object associated with the second character is fixed in advance, but the display mode is also distributed every predetermined number of times (5 times) or in seasons. It may be changed every time, every time zone, or the like.
- the display mode of the first object associated with the character (the first character, the first character, etc.) appearing in the second distribution content that is periodically distributed is distributed.
- the display mode of the first object associated with the character appearing in the first distribution content delivered irregularly may also be changed to a display mode different from that at the time of the previous distribution.
- a first character (a first character) that is a program executed in a terminal device (user terminal 100) including a processor and moves in conjunction with the movement of the performer on the processor.
- the virtual A step (S29) of displaying an image in which the first character operates in space is executed, and the first character is associated with a predetermined first object, and the first character is associated with the first character.
- the display mode (color) of the object is changed according to a predetermined rule.
- (Appendix 2) In (Appendix 1), the processor receives the second display data for enabling the display of the image of the virtual space including the second character (another avatar object 610) that moves in conjunction with the movement of the performer. Step (S26) and a step (S29) of displaying an image in which the second character operates in the virtual space based on the second display data are executed, and the second character is executed. Is associated with a shirt of a second object of the same type as the first object), and the display mode (color) of the second object is fixed.
- the first display data is data distributed from the outside, includes motion data corresponding to the motion input by the performer, and is the step to be displayed. Operates the first character in real time in the virtual space based on the motion data, and displays an image in which the first character operates in the virtual space.
- the processor is set to one of a plurality of types of viewing modes (normal viewing mode, AR viewing mode) in which at least a part of the mode for specifying the viewpoint is different.
- the step is executed and the displayed step displays an image of the virtual space viewed from a specified viewpoint and is the first viewing mode (AR viewing mode) among the plurality of types of viewing modes.
- AR viewing mode the first viewing mode
- the terminal device includes a detection unit for detecting the position and orientation of the terminal device and a touch screen, and the first viewing mode is set to the position and orientation detected by the detection unit. It is a viewing mode in which a viewpoint can be specified based on the above, and the plurality of types of viewing modes include a second viewing mode (normal viewing mode) in which a viewpoint is specified based on a touch operation on the touch screen. In the case of the second viewing mode of the viewing modes, the viewpoint cannot be moved to the position where the first object is displayed.
- the first display data is data distributed from the outside, and is associated with the first object whose display mode has been changed according to the predetermined rule.
- the first character is moving image data including an image operating in the virtual space
- the display step is a moving image in which the first character operates in the virtual space based on the moving image data. indicate.
- (Appendix 9) In any of (Appendix 1) to (Appendix 8), the first character is associated with a predetermined third object, and the third object is at least the first object. It is an object that covers a part.
- a method executed in a terminal device including a processor, capable of displaying an image of a virtual space including a first character that moves in conjunction with the movement of a performer.
- a step of receiving the first display data for the first display and a step of displaying an image in which the first character operates in the virtual space based on the first display data.
- a predetermined first object is associated with the first character, and the display mode of the first object is changed according to a predetermined rule.
- a first terminal device including a processor for displaying an image of a virtual space including a first character that moves in conjunction with the movement of a performer.
- the display data of the above is received, and based on the first display data, an image in which the first character operates in the virtual space is produced, and the first character is given a predetermined first character.
- Objects are associated with each other, and the display mode of the first object is changed according to a predetermined rule.
- control blocks (particularly the control units 110, 210, 310, 410) of the user terminal 100, the server 200, the game play terminal 300 (HMD set 1000), and the distribution terminal 400 are logics formed in an integrated circuit (IC chip) or the like. It may be realized by a circuit (hardware) or by software.
- the user terminal 100, the server 200, the game play terminal 300 (HMD set 1000), and the distribution terminal 400 include a computer that executes instructions of a program that is software that realizes each function.
- the computer includes, for example, one or more processors and a computer-readable recording medium that stores the program. Then, in the computer, the processor reads the program from the recording medium and executes it, thereby achieving the object of the present invention.
- the processor for example, a CPU (Central Processing Unit) can be used.
- the recording medium in addition to a “non-temporary tangible medium” such as a ROM (Read Only Memory), a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.
- a RAM RandomAccessMemory
- the program may be supplied to the computer via an arbitrary transmission medium (communication network, broadcast wave, etc.) capable of transmitting the program.
- a transmission medium communication network, broadcast wave, etc.
- one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the above program is embodied by electronic transmission.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Processing Or Creating Images (AREA)
Abstract
演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信する。第1の表示用データに基づいて、仮想空間内で第1のキャラクタが動作する映像を表示する。第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、第1のオブジェクトの表示態様は、所定のルールで変更される。
Description
本発明は、プログラム、方法、および端末装置に関する。
従来より、演者によって制御されるバーチャルキャラクタを表示するためのシステムがある。このようなシステムにおいては、ユーザから表示要求がなされた装飾オブジェクトをバーチャルキャラクタに装着させて表示するものがあった。
しかし、従来のシステムにおいては、ユーザからの要求に応じた部位が当該要求に従って装飾されるものであった。このため、例えばバーチャルキャラクタの特定部位の表示態様が自発的に変化するような実在感をユーザに抱かせることができず、改善の余地があった。
本発明は、かかる実情に鑑み考え出されたものであり、その目的は、バーチャルキャラクタの実在感をユーザに抱かせることができる、プログラム、方法、および端末装置を提供することである。
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置において実行されるプログラムであって、プロセッサに、演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信するステップと、第1の表示用データに基づいて、仮想空間内で第1のキャラクタが動作する映像を表示するステップと、を実行させ、第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、第1のオブジェクトの表示態様は、所定のルールで変更される。
本発明によれば、バーチャルキャラクタの実在感をユーザに抱かせることができる。
本開示に係るシステムは、複数のユーザにゲームを提供するためのシステムである。以下、該システムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
<システム1の動作概要>
図1は、本実施形態に係るシステム1の概要を示す図である。システム1は、複数のユーザ端末100(コンピュータ)と、サーバ200と、ゲームプレイ端末300(外部装置、第2外部装置)と、配信端末400(外部、第1外部装置)とを含む。なお、図1では、複数のユーザ端末100の一例として、ユーザ端末100A~100C、換言すれば、3台のユーザ端末100を記載しているが、ユーザ端末100の台数は図示の例に限定されない。また、本実施形態では、ユーザ端末100A~Cを区別する必要が無い場合、「ユーザ端末100」と記載する。ユーザ端末100、ゲームプレイ端末300、および配信端末400は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
図1は、本実施形態に係るシステム1の概要を示す図である。システム1は、複数のユーザ端末100(コンピュータ)と、サーバ200と、ゲームプレイ端末300(外部装置、第2外部装置)と、配信端末400(外部、第1外部装置)とを含む。なお、図1では、複数のユーザ端末100の一例として、ユーザ端末100A~100C、換言すれば、3台のユーザ端末100を記載しているが、ユーザ端末100の台数は図示の例に限定されない。また、本実施形態では、ユーザ端末100A~Cを区別する必要が無い場合、「ユーザ端末100」と記載する。ユーザ端末100、ゲームプレイ端末300、および配信端末400は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
(ゲームの概要)
本実施形態では、システム1によって提供されるゲーム(以下、本ゲーム)の一例として、ゲームプレイ端末300のユーザが主としてプレイするゲームを説明する。以下、ゲームプレイ端末300のユーザを、「プレイヤ」と称する。プレイヤ(演者)は、一例として、本ゲームに登場するキャラクタを操作することにより、ゲームを進行させる。また、本ゲームにおいて、ユーザ端末100のユーザは、プレイヤによるゲームの進行を支援する役割を担う。本ゲームの詳細については後述する。なお、システム1によって提供されるゲームは、複数のユーザが参加するゲームであればよく、この例に限定されない。
本実施形態では、システム1によって提供されるゲーム(以下、本ゲーム)の一例として、ゲームプレイ端末300のユーザが主としてプレイするゲームを説明する。以下、ゲームプレイ端末300のユーザを、「プレイヤ」と称する。プレイヤ(演者)は、一例として、本ゲームに登場するキャラクタを操作することにより、ゲームを進行させる。また、本ゲームにおいて、ユーザ端末100のユーザは、プレイヤによるゲームの進行を支援する役割を担う。本ゲームの詳細については後述する。なお、システム1によって提供されるゲームは、複数のユーザが参加するゲームであればよく、この例に限定されない。
(ゲームプレイ端末300)
ゲームプレイ端末300は、プレイヤによる入力操作に応じてゲームを進行させる。また、ゲームプレイ端末300は、プレイヤのゲームプレイにより生成された情報(以下、ゲーム進行情報)を、順次、サーバ200にリアルタイムで配信する。
ゲームプレイ端末300は、プレイヤによる入力操作に応じてゲームを進行させる。また、ゲームプレイ端末300は、プレイヤのゲームプレイにより生成された情報(以下、ゲーム進行情報)を、順次、サーバ200にリアルタイムで配信する。
(サーバ200)
サーバ200は、ゲームプレイ端末300からリアルタイムに受信したゲーム進行情報(第2データ)を、ユーザ端末100に送信する。また、サーバ200は、ユーザ端末100、ゲームプレイ端末300、および配信端末400の間の各種情報の送受信を仲介する。
サーバ200は、ゲームプレイ端末300からリアルタイムに受信したゲーム進行情報(第2データ)を、ユーザ端末100に送信する。また、サーバ200は、ユーザ端末100、ゲームプレイ端末300、および配信端末400の間の各種情報の送受信を仲介する。
(配信端末400)
配信端末400は、配信端末400のユーザによる入力操作に応じて、動作指図データ(第1データ)を生成し、サーバ200を介してユーザ端末100へ動作指図データを配信する。動作指図データとは、ユーザ端末100において動画を再生するためのデータであり、具体的には、動画に登場するキャラクタを動作させるためのデータである。
配信端末400は、配信端末400のユーザによる入力操作に応じて、動作指図データ(第1データ)を生成し、サーバ200を介してユーザ端末100へ動作指図データを配信する。動作指図データとは、ユーザ端末100において動画を再生するためのデータであり、具体的には、動画に登場するキャラクタを動作させるためのデータである。
本実施形態では、一例として、配信端末400のユーザは、本ゲームのプレイヤである。また、一例として、ユーザ端末100にて動作指図データに基づいて再生される動画は、プレイヤがゲームで操作したキャラクタが動作する動画である。「動作」とは、キャラクタの身体の少なくとも一部を動かすことであり、発話も含む。このため、本実施形態に係る動作指図データは、例えば、キャラクタに発話させるための音声データと、キャラクタの身体を動かすためのモーションデータとを含む。
動作指図データは、一例として、本ゲームの終了後にユーザ端末100へ送信される。動作指図データ、および、該動作指図データに基づいて再生される動画の詳細については後述する。
(ユーザ端末100)
ユーザ端末100は、ゲーム進行情報をリアルタイムに受信し、該情報を用いてゲーム画面を生成して表示する。換言すれば、ユーザ端末100は、リアルタイムレンダリングにより、プレイヤがプレイしているゲームのゲーム画面を再生する。これにより、ユーザ端末100のユーザは、プレイヤがゲームをプレイしながら視認しているゲーム画面と同一のゲーム画面を、プレイヤとほぼ同じタイミングで視認することができる。
ユーザ端末100は、ゲーム進行情報をリアルタイムに受信し、該情報を用いてゲーム画面を生成して表示する。換言すれば、ユーザ端末100は、リアルタイムレンダリングにより、プレイヤがプレイしているゲームのゲーム画面を再生する。これにより、ユーザ端末100のユーザは、プレイヤがゲームをプレイしながら視認しているゲーム画面と同一のゲーム画面を、プレイヤとほぼ同じタイミングで視認することができる。
また、ユーザ端末100は、ユーザによる入力操作に応じて、プレイヤによるゲームの進行を支援するための情報を生成し、該情報を、サーバ200を介してゲームプレイ端末300へ送信する。該情報の詳細については後述する。
また、ユーザ端末100は、配信端末400から動作指図データを受信し、該動作指図データを用いて動画(映像)を生成して再生する。換言すれば、ユーザ端末100は、動作指図データをレンダリングして再生する。
<システム1のハードウェア構成>
図2は、ユーザ端末100のハードウェア構成を示す図である。図3は、サーバ200のハードウェア構成を示す図である。図4は、ゲームプレイ端末300のハードウェア構成を示す図である。図5は、配信端末400のハードウェア構成を示す図である。
図2は、ユーザ端末100のハードウェア構成を示す図である。図3は、サーバ200のハードウェア構成を示す図である。図4は、ゲームプレイ端末300のハードウェア構成を示す図である。図5は、配信端末400のハードウェア構成を示す図である。
(ユーザ端末100)
本実施形態では、一例として、ユーザ端末100がスマートフォンとして実現される例を説明するが、ユーザ端末100はスマートフォンに限定されない。例えば、ユーザ端末100はフィーチャーフォン、タブレット型コンピュータ、ラップトップ型コンピュータ(いわゆる、ノートパソコン)、または、デスクトップ型コンピュータなどとして実現されてもよい。また、ユーザ端末100は、ゲームプレイに適したゲーム装置であってもよい。
本実施形態では、一例として、ユーザ端末100がスマートフォンとして実現される例を説明するが、ユーザ端末100はスマートフォンに限定されない。例えば、ユーザ端末100はフィーチャーフォン、タブレット型コンピュータ、ラップトップ型コンピュータ(いわゆる、ノートパソコン)、または、デスクトップ型コンピュータなどとして実現されてもよい。また、ユーザ端末100は、ゲームプレイに適したゲーム装置であってもよい。
ユーザ端末100は図2に示すように、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15(表示部)と、カメラ17と、測距センサ18とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末100は、タッチスクリーン15に代えて、または、加えて、ユーザ端末100本体とは別に構成されたディスプレイ(表示部)を接続可能な入出力IF14を備えていてもよい。
また、図2に示すように、ユーザ端末100は、1つ以上のコントローラ1020と通信可能に構成されることとしてもよい。コントローラ1020は、例えば、Bluetooth(登録商標)等の通信規格に従って、ユーザ端末100と通信を確立する。コントローラ1020は、1つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末100へ送信する。また、コントローラ1020は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末100へ送信する。
なお、ユーザ端末100がカメラ17および測距センサ18を備えることに代えて、または、加えて、コントローラ1020がカメラ17および測距センサ18を有していてもよい。
ユーザ端末100は、例えばゲーム開始時に、コントローラ1020を使用するユーザに、該ユーザの名前またはログインID等のユーザ識別情報を、該コントローラ1020を介して入力させることが望ましい。これにより、ユーザ端末100は、コントローラ1020とユーザとを紐付けることが可能となり、受信した出力値の送信元(コントローラ1020)に基づいて、該出力値がどのユーザのものであるかを特定することができる。
ユーザ端末100が複数のコントローラ1020と通信する場合、各コントローラ1020を各ユーザが把持することで、ネットワーク2を介してサーバ200などの他の装置と通信せずに、該1台のユーザ端末100でマルチプレイを実現することができる。また、各ユーザ端末100が無線LAN(Local Area Network)規格等の無線規格により互いに通信接続する(サーバ200を介さずに通信接続する)ことで、複数台のユーザ端末100によりローカルでマルチプレイを実現することもできる。1台のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、ユーザ端末100は、さらに、サーバ200が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末100は、サーバ200が備える後述する種々の機能を分散して備えていてもよい。
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末100はサーバ200と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ200に送信してもよい。
また、コントローラ1020は、ユーザ端末100に着脱可能な構成であるとしてもよい。この場合、ユーザ端末100の筐体における少なくともいずれかの面に、コントローラ1020との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末100とコントローラ1020とが結合している場合は、ユーザ端末100とコントローラ1020とは、有線を介して信号を送受信する。
図2に示すように、ユーザ端末100は、外部のメモリカード等の記憶媒体1030の装着を、入出力IF14を介して受け付けてもよい。これにより、ユーザ端末100は、記憶媒体1030に記録されるプログラム及びデータを読み込むことができる。記憶媒体1030に記録されるプログラムは、例えばゲームプログラムである。
ユーザ端末100は、サーバ200等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末100のメモリ11に記憶してもよいし、記憶媒体1030から読み込むことにより取得したゲームプログラムをメモリ11に記憶してもよい。
以上で説明したとおり、ユーザ端末100は、該ユーザ端末100に対して情報を入力する機構の一例として、通信IF13、入出力IF14、タッチスクリーン15、カメラ17、および、測距センサ18を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
例えば、操作部が、カメラ17および測距センサ18の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末100の近傍の物体1010を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体1010としてのユーザの手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体1010の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末100は、カメラ17の撮影画像からユーザの手が検出された場合、該撮影画像に基づき検出されるジェスチャ(ユーザの手の一連の動き)を、ユーザの入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
あるいは、操作部がタッチスクリーン15で構成される場合、ユーザ端末100は、タッチスクリーン15の入力部151に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信IF13で構成される場合、ユーザ端末100は、コントローラ1020から送信される信号(例えば、出力値)をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力IF14で構成される場合、該入出力IF14と接続されるコントローラ1020とは異なる入力装置(図示せず)から出力される信号をユーザの入力操作として特定し、受け付ける。
(サーバ200)
サーバ200は、一例として、ワークステーションまたはパーソナルコンピュータなどの汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
サーバ200は、一例として、ワークステーションまたはパーソナルコンピュータなどの汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
(ゲームプレイ端末300)
ゲームプレイ端末300は、一例として、パーソナルコンピュータなどの汎用コンピュータであってよい。ゲームプレイ端末300は、プロセッサ30と、メモリ31と、ストレージ32と、通信IF33と、入出力IF34とを備える。ゲームプレイ端末300が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
ゲームプレイ端末300は、一例として、パーソナルコンピュータなどの汎用コンピュータであってよい。ゲームプレイ端末300は、プロセッサ30と、メモリ31と、ストレージ32と、通信IF33と、入出力IF34とを備える。ゲームプレイ端末300が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
図4に示すように、本実施形態に係るゲームプレイ端末300は、一例として、HMD(Head Mounted Display)セット1000に含まれる。つまり、HMDセット1000が、システム1に含まれていると表現することができ、また、プレイヤは、HMDセット1000を用いてゲームをプレイすると表現することもできる。なお、プレイヤがゲームをプレイするための装置は、HMDセット1000に限定されない。一例として、該装置は、プレイヤにゲームを仮想体験させることが可能な装置であればよい。また、該装置は、スマートフォン、フィーチャーフォン、タブレット型コンピュータ、ラップトップ型コンピュータ(いわゆる、ノートパソコン)、または、デスクトップ型コンピュータなどとして実現されてもよい。また、該装置は、ゲームプレイに適したゲーム装置であってもよい。
HMDセット1000は、ゲームプレイ端末300の他、HMD500、HMDセンサ510、モーションセンサ520、ディスプレイ530、コントローラ540を備える。HMD500は、モニタ51と、注視センサ52と、第1カメラ53と、第2カメラ54と、マイク55と、スピーカ56とを含む。コントローラ540は、モーションセンサ520を含み得る。
HMD500は、プレイヤの頭部に装着され、動作中に仮想空間をプレイヤに提供し得る。より具体的には、HMD500は、右目用の画像および左目用の画像をモニタ51にそれぞれ表示する。プレイヤの各目がそれぞれの画像を視認すると、プレイヤは、両目の視差に基づき当該画像を3次元画像として認識し得る。HMD500は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。
モニタ51は、例えば、非透過型の表示装置として実現される。ある局面において、モニタ51は、プレイヤの両目の前方に位置するようにHMD500の本体に配置されている。したがって、プレイヤは、モニタ51に表示される3次元画像を視認すると、仮想空間に没入することができる。ある局面において、仮想空間は、例えば、背景、プレイヤが操作可能なオブジェクト、プレイヤが選択可能なメニューの画像を含む。ある局面において、モニタ51は、所謂スマートフォンその他の情報表示端末が備える液晶モニタまたは有機EL(Electro Luminescence)モニタとして実現され得る。
別の局面において、モニタ51は、透過型の表示装置として実現され得る。この場合、HMD500は、図1に示されるようにプレイヤの目を覆う密閉型ではなく、メガネ型のような開放型であり得る。透過型のモニタ51は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。モニタ51は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。例えば、モニタ51は、HMD500に搭載されたカメラで撮影した現実空間の画像を表示してもよいし、一部の透過率を高く設定することにより現実空間を視認可能にしてもよい。
ある局面において、モニタ51は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含み得る。別の局面において、モニタ51は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、モニタ51は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
ある局面において、HMD500は、図示せぬ複数の光源を含む。各光源は例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ510は、HMD500の動きを検出するためのポジショントラッキング機能を有する。より具体的には、HMDセンサ510は、HMD500が発する複数の赤外線を読み取り、現実空間内におけるHMD500の位置および傾きを検出する。
別の局面において、HMDセンサ510は、カメラにより実現されてもよい。この場合、HMDセンサ510は、カメラから出力されるHMD500の画像情報を用いて、画像解析処理を実行することにより、HMD500の位置および傾きを検出することができる。
別の局面において、HMD500は、位置検出器として、HMDセンサ510の代わりに、あるいはHMDセンサ510に加えてセンサ(不図示)を備えてもよい。HMD500は、該センサを用いて、HMD500自身の位置および傾きを検出し得る。例えば、該センサが角速度センサ、地磁気センサ、あるいは加速度センサである場合、HMD500は、HMDセンサ510の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、HMD500に備えられたセンサが角速度センサである場合、角速度センサは、現実空間におけるHMD500の3軸周りの角速度を経時的に検出する。HMD500は、各角速度に基づいて、HMD500の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD500の傾きを算出する。
注視センサ52は、プレイヤの右目および左目の視線が向けられる方向を検出する。つまり、注視センサ52は、プレイヤの視線を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ52は、当該アイトラッキング機能を有するセンサにより実現される。ある局面において、注視センサ52は、右目用のセンサおよび左目用のセンサを含むことが好ましい。注視センサ52は、例えば、プレイヤの右目および左目に赤外光を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ52は、検出した各回転角に基づいて、プレイヤの視線を検知することができる。
第1カメラ53は、プレイヤの顔の下部を撮影する。より具体的には、第1カメラ53は、プレイヤの鼻および口などを撮影する。第2カメラ54は、プレイヤの目および眉などを撮影する。HMD500のプレイヤ側の筐体をHMD500の内側、HMD500のプレイヤとは逆側の筐体をHMD500の外側と定義する。ある局面において、第1カメラ53は、HMD500の外側に配置され、第2カメラ54は、HMD500の内側に配置され得る。第1カメラ53および第2カメラ54が生成した画像は、ゲームプレイ端末300に入力される。別の局面において、第1カメラ53と第2カメラ54とを1台のカメラとして実現し、この1台のカメラでプレイヤの顔を撮影するようにしてもよい。
マイク55は、プレイヤの発話を音声信号(電気信号)に変換してゲームプレイ端末300に出力する。スピーカ56は、音声信号を音声に変換してプレイヤに出力する。別の局面において、HMD500は、スピーカ56に替えてイヤホンを含み得る。
コントローラ540は、有線または無線によりゲームプレイ端末300に接続されている。コントローラ540は、プレイヤからゲームプレイ端末300への命令の入力を受け付ける。ある局面において、コントローラ540は、プレイヤによって把持可能に構成される。別の局面において、コントローラ540は、プレイヤの身体あるいは衣類の一部に装着可能に構成される。さらに別の局面において、コントローラ540は、ゲームプレイ端末300から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。さらに別の局面において、コントローラ540は、プレイヤから、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。
ある局面において、コントローラ540は、複数の光源を含む。各光源は例えば、赤外線を発するLEDにより実現される。HMDセンサ510は、ポジショントラッキング機能を有する。この場合、HMDセンサ510は、コントローラ540が発する複数の赤外線を読み取り、現実空間内におけるコントローラ540の位置および傾きを検出する。別の局面において、HMDセンサ510は、カメラにより実現されてもよい。この場合、HMDセンサ510は、カメラから出力されるコントローラ540の画像情報を用いて、画像解析処理を実行することにより、コントローラ540の位置および傾きを検出することができる。
モーションセンサ520は、ある局面において、プレイヤの手に取り付けられて、プレイヤの手の動きを検出する。例えば、モーションセンサ520は、手の回転速度、回転数等を検出する。検出された信号は、ゲームプレイ端末300に送られる。モーションセンサ520は、例えば、コントローラ540に設けられている。ある局面において、モーションセンサ520は、例えば、プレイヤに把持可能に構成されたコントローラ540に設けられている。別の局面において、現実空間における安全のため、コントローラ540は、手袋型のようにプレイヤの手に装着されることにより容易に飛んで行かないものに装着される。さらに別の局面において、プレイヤに装着されないセンサがプレイヤの手の動きを検出してもよい。例えば、プレイヤを撮影するカメラの信号が、プレイヤの動作を表わす信号として、ゲームプレイ端末300に入力されてもよい。モーションセンサ520とゲームプレイ端末300とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetoothその他の公知の通信手法が用いられる。
ディスプレイ530は、モニタ51に表示されている画像と同様の画像を表示する。これにより、HMD500を装着しているプレイヤ以外のユーザにもプレイヤと同様の画像を視聴させることができる。ディスプレイ530に表示される画像は、3次元画像である必要はなく、右目用の画像や左目用の画像であってもよい。ディスプレイ530としては、例えば、液晶ディスプレイや有機ELモニタなどが挙げられる。
ゲームプレイ端末300は、HMD500の各部、コントローラ540、およびモーションセンサ520から取得した各種情報に基づいて、プレイヤの操作対象となるキャラクタを動作させ、ゲームを進行させる。ここでの「動作」には、身体の各部を動かすこと、姿勢を変えること、顔の表情を変えること、移動、発話、仮想空間に配置されたオブジェクトに触れたり、動かしたりすること、キャラクタが把持する武器、道具などを使用することなどが含まれる。すなわち、本ゲームでは、プレイヤが身体の各部を動かすことにより、キャラクタもプレイヤと同様に身体の各部を動かす。また、本ゲームでは、プレイヤが発話した内容をキャラクタが発話する。換言すれば、本ゲームにおいて、キャラクタは、プレイヤの分身としてふるまうアバターオブジェクトである。一例として、キャラクタの動作の少なくとも一部が、プレイヤによるコントローラ540に対する入力により実行されてもよい。
本実施形態では、モーションセンサ520は、一例として、プレイヤの両手、プレイヤの両足、プレイヤの腰部、および、プレイヤの頭部に取り付けられる。プレイヤの両手に取り付けられるモーションセンサ520は、上述したとおり、コントローラ540に設けられていてもよい。また、プレイヤの頭部に取り付けられるモーションセンサ520は、HMD500に設けられていてもよい。モーションセンサ520は、さらに、ユーザの両肘や両膝に取り付けられてもよい。プレイヤに取り付けるモーションセンサ520の数を増やすことにより、プレイヤの動きをより正確にキャラクタに反映させることができる。また、プレイヤは、モーションセンサ520を身体の各部に取り付けることに代えて、1以上のモーションセンサ520が取り付けられたスーツを着用してもよい。つまり、モーションキャプチャの方法は、モーションセンサ520を用いる例に限定されない。
(配信端末400)
配信端末400は、スマートフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。また、配信端末400は、デスクトップパソコン等の、いわゆる据え置き型の端末であってもよい。
配信端末400は、スマートフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。また、配信端末400は、デスクトップパソコン等の、いわゆる据え置き型の端末であってもよい。
配信端末400は、図5に示すように、プロセッサ40と、メモリ41と、ストレージ42と、通信IF43と、入出力IF44と、タッチスクリーン45とを備える。なお、配信端末400は、タッチスクリーン45に代えて、または、加えて、配信端末400本体とは別に構成されたディスプレイ(表示部)を接続可能な入出力IF44を備えていてもよい。
コントローラ1021は、1つ以上のボタン、レバー、スティック、ホイール等の物理的な入力機構を有していてもよい。コントローラ1021は、配信端末400の操作者(本実施形態ではプレイヤ)が、該入力機構に対して入力した入力操作に基づく出力値を配信端末400へ送信する。また、コントローラ1021は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値を配信端末400へ送信してもよい。上述の出力値は、通信IF43を介して配信端末400に受け付けられる。
配信端末400は、カメラと、測距センサ(ともに不図示)とを備えていてもよい。配信端末400が備えることに代えて、または、加えて、コントローラ1021がカメラと、測距センサとを有してしてもよい。
以上で説明したとおり、配信端末400は、該配信端末400に対して情報を入力する機構の一例として、通信IF43、入出力IF44、タッチスクリーン45を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
操作部がタッチスクリーン45で構成されている場合、配信端末400は、タッチスクリーン45の入力部451に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信IF43で構成される場合、配信端末400は、コントローラ1021から送信される信号(例えば、出力値)をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力IF44で構成される場合、配信端末400は、該入出力IF44と接続される入力装置(図示せず)から出力される信号をユーザの入力操作として特定し、受け付ける。
<各装置のハードウェア構成要素>
プロセッサ10、20、30、40はそれぞれ、ユーザ端末100、サーバ200、ゲームプレイ端末300、配信端末400の全体の動作を制御する。プロセッサ10、20、30、40は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。プロセッサ10、20、30、40は、それぞれ、後述するストレージ12、22、32、42からプログラムを読み出す。そして、プロセッサ10、20、30、40は、それぞれ、読み出したプログラムを、後述するメモリ11、21、31、41に展開する。プロセッサ10、20、30は、展開したプログラムを実行する。
プロセッサ10、20、30、40はそれぞれ、ユーザ端末100、サーバ200、ゲームプレイ端末300、配信端末400の全体の動作を制御する。プロセッサ10、20、30、40は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。プロセッサ10、20、30、40は、それぞれ、後述するストレージ12、22、32、42からプログラムを読み出す。そして、プロセッサ10、20、30、40は、それぞれ、読み出したプログラムを、後述するメモリ11、21、31、41に展開する。プロセッサ10、20、30は、展開したプログラムを実行する。
メモリ11、21、31、41は主記憶装置である。メモリ11、21、31、41は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ31は、プロセッサ30が後述するストレージ32から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ30に作業領域を提供する。メモリ31は、プロセッサ30がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ41は、プロセッサ40が後述するストレージ42から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ40に作業領域を提供する。メモリ41は、プロセッサ40がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
本実施形態において、プロセッサ10および30が実行するプログラムは、本ゲームのゲームプログラムであってもよい。本実施形態において、プロセッサ40が実行するプログラムは、動作指図データの配信を実現するための配信プログラムであってもよい。また、プロセッサ10は、さらに、動画の再生を実現するための視聴プログラムを実行してもよい。
本実施形態において、プロセッサ20が実行するプログラムは、上述のゲームプログラム、配信プログラム、視聴プログラムの少なくとも何れかであってもよい。プロセッサ20は、ユーザ端末100、ゲームプレイ端末300、および配信端末400の少なくとも何れかからの要求等に応じて、ゲームプログラム、配信プログラム、視聴プログラムの少なくとも何れかを実行する。なお、配信プログラムと視聴プログラムは、並行して実行されてもよい。
すなわち、ゲームプログラムは、ゲームをユーザ端末100、サーバ200、およびゲームプレイ端末300の協働により実現するプログラムであってもよい。配信プログラムは、動作指図データの配信を、サーバ200と配信端末400との協働により実現するプログラムであってもよい。視聴プログラムは、動画の再生を、ユーザ端末100とサーバ200との協働により実現するプログラムであってもよい。
ストレージ12、22、32、42は補助記憶装置である。ストレージ12、22、32、42は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ12、32には、例えば、ゲームに関する各種データが格納される。ストレージ42には、動作指図データの配信に関する各種データが格納される。また、ストレージ12には、動画の再生に関する各種データが格納される。ストレージ22には、ゲーム、動作指図データの配信、および動画の再生それぞれに関する各種データのうち、少なくとも一部が格納されてもよい。
通信IF13、23、33、43は、それぞれ、ユーザ端末100、サーバ200、ゲームプレイ端末300、配信端末400における各種データの送受信を制御する。通信IF13、23、33、43は例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
入出力IF14、24、34、44は、それぞれ、ユーザ端末100、サーバ200、ゲームプレイ端末300、配信端末400がデータの入力を受け付けるため、また、データを出力するためのインターフェースである。入出力IF14、24、34、44は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF14、24、34、44は、物理ボタン、カメラ、マイク、スピーカ、マウス、キーボード、ディスプレイ、スティック、レバーなどを含み得る。また、入出力IF14、24、34、44は、周辺機器との間でデータを送受信するための接続部を含み得る。
タッチスクリーン15は、入力部151と表示部152(ディスプレイ)とを組み合わせた電子部品である。タッチスクリーン45は、入力部451と表示部452とを組み合わせた電子部品である。入力部151および451は、一例として、タッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部152および452は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
入力部151および451は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151および451は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
図示していないが、ユーザ端末100および配信端末400は、それぞれ、ユーザ端末100および配信端末400の保持姿勢を特定するための1以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。
ユーザ端末100および配信端末400がセンサを備えている場合、プロセッサ10および40は、それぞれ、センサの出力からユーザ端末100および配信端末400の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ10および40は、それぞれ、ユーザ端末100および配信端末400が縦向きに保持されているときには、縦長の画像を表示部152および452に表示させる縦画面表示としてもよい。一方、ユーザ端末100および配信端末400が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ10および40は、それぞれ、ユーザ端末100および配信端末400の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
<システム1の機能的構成>
図6は、システム1に含まれるユーザ端末100、サーバ200、およびHMDセット1000の機能的構成を示すブロック図である。図7は、図6に示す配信端末400の機能的構成を示すブロック図である。
図6は、システム1に含まれるユーザ端末100、サーバ200、およびHMDセット1000の機能的構成を示すブロック図である。図7は、図6に示す配信端末400の機能的構成を示すブロック図である。
ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、入出力IF14、およびタッチスクリーン15等の協働によって、制御部110および記憶部120として機能する。
サーバ200は、ユーザ端末100、HMDセット1000、および配信端末400の間の各種情報の送受信を仲介する機能を有する。サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、および入出力IF24等の協働によって、制御部210および記憶部220として機能する。
HMDセット1000(ゲームプレイ端末300)は、プレイヤの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能と、ゲーム進行情報を、サーバ200を介してユーザ端末100へリアルタイムに送信する機能を有する。HMDセット1000は、ゲームプレイ端末300のプロセッサ30、メモリ31、ストレージ32、通信IF33、入出力IF34、並びに、HMD500、HMDセンサ510、モーションセンサ520、およびコントローラ540等の協働によって、制御部310および記憶部320として機能する。
配信端末400は、動作指図データを生成して、該動作指図データを、サーバ200を介してユーザ端末100へ送信する機能を有する。配信端末400は、プロセッサ40、メモリ41、ストレージ42、通信IF43、入出力IF44、およびタッチスクリーン45等の協働によって、制御部410および記憶部420として機能する。
(各装置の記憶部が格納するデータ)
記憶部120は、ゲームプログラム131(プログラム)、ゲーム情報132、および、ユーザ情報133を格納する。記憶部220は、ゲームプログラム231、ゲーム情報232、ユーザ情報233、および、ユーザリスト234を格納する。記憶部320は、ゲームプログラム331、ゲーム情報332、および、ユーザ情報333を格納する。記憶部420は、ユーザリスト421、モーションリスト422、配信プログラム423(プログラム、第2プログラム)を格納する。
記憶部120は、ゲームプログラム131(プログラム)、ゲーム情報132、および、ユーザ情報133を格納する。記憶部220は、ゲームプログラム231、ゲーム情報232、ユーザ情報233、および、ユーザリスト234を格納する。記憶部320は、ゲームプログラム331、ゲーム情報332、および、ユーザ情報333を格納する。記憶部420は、ユーザリスト421、モーションリスト422、配信プログラム423(プログラム、第2プログラム)を格納する。
ゲームプログラム131、231、331は、それぞれ、ユーザ端末100、サーバ200、HMDセット1000が実行するゲームプログラムである。ゲームプログラム131、231、331に基づいて各装置が協働して動作することにより、本ゲームが実現される。なお、ゲームプログラム131および331は、記憶部220に格納され、ユーザ端末100およびHMDセット1000にそれぞれダウンロードされる構成でもよい。なお、本実施形態では、ユーザ端末100は、ゲームプログラム131に基づいて、配信端末400から受信したデータをレンダリングし、動画を再生するものとする。換言すれば、ゲームプログラム131は、配信端末400から配信された動画指図データを用いて、動画を再生するためのプログラムでもある。該動画を再生するためのプログラムは、ゲームプログラム131と異なってもよい。この場合、記憶部120は、ゲームプログラム131とは別に、該動画を再生するためのプログラムを格納する。
ゲーム情報132、232、332は、それぞれ、ユーザ端末100、サーバ200、HMDセット1000がゲームプログラムを実行する際に参照するデータである。ユーザ情報133、233、333は、ユーザ端末100のユーザのアカウントに関するデータである。ゲーム情報232は、各ユーザ端末100のゲーム情報132、および、HMD セット1000のゲーム情報332である。ユーザ情報233は、各ユーザ端末100のユーザ情報133、および、ユーザ情報333に含まれる、プレイヤのユーザ情報である。ユーザ情報333は、各ユーザ端末100のユーザ情報133、および、プレイヤのユーザ情報である。
ユーザリスト234およびユーザリスト421は、ゲームに参加したユーザのリストである。ユーザリスト234およびユーザリスト421は、プレイヤによる直近のゲームプレイにおいて参加したユーザのリストの他、該ゲームプレイ以前の各ゲームプレイにおいて参加したユーザのリストを含んでいてもよい。モーションリスト422は、予め作成されている複数のモーションデータのリストである。モーションリスト422は、例えば、各モーションを識別する情報(例えば、モーション名)のそれぞれに、モーションデータが対応付けられたリストである。配信プログラム423は、ユーザ端末100にて動画を再生するための動作指図データの、ユーザ端末100への配信を実現するためのプログラムである。
(サーバ200の機能的構成)
制御部210は、記憶部220に格納されたゲームプログラム231を実行することにより、サーバ200を統括的に制御する。例えば制御部210は、ユーザ端末100、HMDセット1000、および配信端末400の間の各種情報の送受信を仲介する。
制御部210は、記憶部220に格納されたゲームプログラム231を実行することにより、サーバ200を統括的に制御する。例えば制御部210は、ユーザ端末100、HMDセット1000、および配信端末400の間の各種情報の送受信を仲介する。
制御部210は、ゲームプログラム231の記述に応じて、通信仲介部211、ログ生成部212、リスト生成部213として機能する。制御部210は、ゲームプレイおよび動作指図データの配信に係る各種情報の送受信の仲介、並びに、ゲームの進行の支援のために、図示しないその他の機能ブロックとしても機能することができる。
通信仲介部211は、ユーザ端末100、HMDセット1000、および配信端末400の間の各種情報の送受信を仲介する。例えば、通信仲介部211は、HMDセット1000から受信したゲーム進行情報をユーザ端末100へ送信する。ゲーム進行情報は、プレイヤによって操作されるキャラクタの動き、該キャラクタのパラメータ、該キャラクタが所持しているアイテムや武器、敵キャラクタなどの情報などを示すデータが含まれる。サーバ200は、ゲーム進行情報を、ゲームに参加している全てのユーザのユーザ端末100へ送信する。換言すれば、サーバ200は、共通のゲーム進行情報をゲームに参加している全てのユーザのユーザ端末100へ送信する。これにより、ゲームに参加している全てのユーザのユーザ端末100それぞれにおいて、HMDセット1000と同様にゲームが進行する。
また、例えば、通信仲介部211は、ユーザ端末100のいずれかから受信した、プレイヤによるゲームの進行を支援するための情報を、その他のユーザ端末100、および、HMDセット1000へ送信する。該情報は、一例として、プレイヤがゲームを有利に進行するためのアイテムであって、プレイヤ(キャラクタ)に提供されるアイテムを示すアイテム情報であってもよい。アイテム情報は、アイテムを提供したユーザを示す情報(ユーザ名、ユーザIDなど)を含む。また、通信仲介部211は、配信端末400からユーザ端末100への動作指図データの配信を仲介してもよい。
ログ生成部212は、HMDセット1000から受信するゲーム進行情報に基づいて、ゲーム進行のログを生成する。リスト生成部213は、ゲームプレイの終了後にユーザリスト234を生成する。詳細については後述するが、ユーザリスト234における各ユーザには、そのユーザが行ったプレイヤへの支援の内容を示すタグが関連付けられている。リスト生成部213は、ログ生成部212が生成したゲーム進行のログに基づいて、タグを生成し、該当するユーザに関連付ける。なお、リスト生成部213は、ゲームの運営者などがパーソナルコンピュータなどの端末装置を用いて入力した、各ユーザが行ったプレイヤへの支援の内容を、タグとして、該当するユーザに関連付けてもよい。これにより、各ユーザが行った支援の内容がより詳細なものとなる。なお、ユーザ端末100は、ユーザがゲームに参加する際、ユーザの操作に基づいて、ユーザを示す情報をサーバ200へ送信する。例えば、ユーザ端末100は、ユーザが入力したユーザIDをサーバ200へ送信する。つまり、サーバ200は、ゲームに参加している全てのユーザについて、各ユーザを示す情報を保持している。リスト生成部213は、該情報を用いて、ユーザリスト234を生成すればよい。
(HMDセット1000の機能的構成)
制御部310は、記憶部320に格納されたゲームプログラム331を実行することにより、HMDセット1000を統括的に制御する。例えば、制御部310は、ゲームプログラム331、および、プレイヤの操作に従って、ゲームを進行させる。また、制御部310は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部310は、情報の送受信を、サーバ200を介さずにユーザ端末100と直接行ってもよい。
制御部310は、記憶部320に格納されたゲームプログラム331を実行することにより、HMDセット1000を統括的に制御する。例えば、制御部310は、ゲームプログラム331、および、プレイヤの操作に従って、ゲームを進行させる。また、制御部310は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部310は、情報の送受信を、サーバ200を介さずにユーザ端末100と直接行ってもよい。
制御部310は、ゲームプログラム331の記述に応じて、操作受付部311、表示制御部312、UI制御部313、アニメーション生成部314、ゲーム進行部315、仮想空間制御部316、および反応処理部317として機能する。制御部310は、実行されるゲームの性質に応じて、該ゲームに登場するキャラクタの制御などのために、図示しないその他の機能ブロックとしても機能することができる。
操作受付部311は、プレイヤの入力操作を検知し、受け付ける。操作受付部311は、HMD500、モーションセンサ520、コントローラ540などから入力された信号を受け付け、いかなる入力操作がなされたかを判別し、その結果を制御部310の各要素に出力する。
UI制御部313は、モニタ51、ディスプレイ530などに表示させるユーザインターフェース(以下、UI)画像を制御する。UI画像は、プレイヤが、ゲームの進行上必要な入力をHMDセット1000に対して行うためのツール、または、ゲームの進行中に出力される情報をHMDセット1000から得るためのツールである。UI画像は、これには限定されないが、例えば、アイコン、ボタン、リスト、メニュー画面などである。
アニメーション生成部314は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。例えば、アニメーション生成部314は、オブジェクト(例えば、プレイヤのアバターオブジェクト)がまるでそこにいるかのように動いたり、口を動かしたり、表情を変えたりする様子を表現したアニメーション等を生成してもよい。
ゲーム進行部315は、ゲームプログラム331、プレイヤによる入力操作、および、該入力操作に応じたアバターオブジェクトの動作などに基づいて、ゲームを進行する。例えば、ゲーム進行部315は、アバターオブジェクトが所定の動作を行った場合に、所定のゲーム処理を行う。また、例えば、ゲーム進行部315は、ユーザ端末100におけるユーザの操作を表す情報を受信し、当該ユーザの操作に基づいてゲーム処理を行ってもよい。また、ゲーム進行部315は、ゲームの進行に従ってゲーム進行情報を生成し、サーバ200へ送信する。該ゲーム進行情報は、サーバ200を介してユーザ端末100へ送信される。これにより、HMDセット1000におけるゲームの進行が、ユーザ端末100において共有される。換言すれば、HMDセット1000におけるゲームの進行と、ユーザ端末100におけるゲームの進行とが同期する。
仮想空間制御部316は、ゲームの進行に応じて、プレイヤに提供される仮想空間に関する各種の制御を行う。一例として、仮想空間制御部316は、各種オブジェクトを生成し、仮想空間に配置する。また、仮想空間制御部316は、仮想カメラを仮想空間に配置する。また、仮想空間制御部316は、ゲームの進行に応じて、仮想空間に配置した各種オブジェクトを動作させる。また、仮想空間制御部316は、ゲームの進行に応じて、仮想空間に配置した仮想カメラの位置、傾きを制御する。
表示制御部312は、モニタ51、ディスプレイ530に対して、上述の各要素によって実行された処理結果が反映されたゲーム画面を出力する。表示制御部312は、仮想空間に配置された仮想カメラからの視界に基づく画像を、ゲーム画面として、モニタ51、ディスプレイ530に表示してもよい。また、表示制御部312は、アニメーション生成部314によって生成されたアニメーションを該ゲーム画面に含めてもよい。また、表示制御部312は、UI制御部313によって制御される上述のUI画像を、該ゲーム画面に重畳して描画してもよい。
反応処理部317は、ユーザ端末100のユーザによる、プレイヤのゲームプレイに対する反応についてフィードバックを受け付けて、これを、プレイヤに対して出力する。本実施形態では、例えば、ユーザ端末100は、ユーザの入力操作に基づいて、アバターオブジェクトに宛てたコメント(メッセージ)を作成することができる。反応処理部317は、該コメントのコメントデータを受け付けて、これを出力する。反応処理部317は、ユーザのコメントに対応するテキストデータを、モニタ51、ディスプレイ530に表示してもよいし、ユーザのコメントに対応する音声データを、図示しないスピーカから出力してもよい。前者の場合、反応処理部317は、上記テキストデータに対応する画像(すなわち、コメントの内容を含む画像)を、ゲーム画面に重畳して描画してもよい。
(ユーザ端末100の機能的構成)
制御部110は、記憶部120に格納されたゲームプログラム131を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲームプログラム131、および、ユーザの操作に従って、ゲームを進行させる。また、制御部110は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部110は、情報の送受信を、サーバ200を介さずにHMDセット1000と直接行ってもよい。
制御部110は、記憶部120に格納されたゲームプログラム131を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲームプログラム131、および、ユーザの操作に従って、ゲームを進行させる。また、制御部110は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部110は、情報の送受信を、サーバ200を介さずにHMDセット1000と直接行ってもよい。
制御部110は、ゲームプログラム131の記述に応じて、操作受付部111、表示制御部112、UI制御部113、アニメーション生成部114、ゲーム進行部115、仮想空間制御部116、および動画再生部117として機能する。制御部110は、実行されるゲームの性質に応じて、ゲームの進行のために、図示しないその他の機能ブロックとしても機能することができる。
操作受付部111は、入力部151に対するユーザの入力操作を検知し受け付ける。操作受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
例えば、操作受付部111は、入力部151に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部111は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部111は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
UI制御部113は、ユーザの入力操作、および、受信したゲーム進行情報の少なくとも何れかに応じて、UIを構築するために表示部152に表示させるUI画像を制御する。UI画像は、ユーザが、ゲームの進行上必要な入力をユーザ端末100に対して行うためのツール、または、ゲームの進行中に出力される情報をユーザ端末100から得るためのツールである。UI画像は、これには限定されないが、例えば、アイコン、ボタン、リスト、メニュー画面などである。
アニメーション生成部114は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。
ゲーム進行部115は、ゲームプログラム131、受信したゲーム進行情報、および、ユーザによる入力操作などに基づいて、ゲームを進行する。ゲーム進行部115は、ユーザによる入力操作により、所定のゲーム処理を行った場合、該ゲーム処理に関する情報を、サーバ200を介してHMDセット1000へ送信する。これにより、該所定のゲーム処理が、HMDセット1000において共有される。換言すれば、HMDセット1000におけるゲームの進行と、ユーザ端末100におけるゲームの進行とが同期する。所定のゲーム処理とは、例えば、アバターオブジェクトにアイテムを提供する処理であり、この例の場合、ゲーム処理に関する情報は、上述したアイテム情報である。
仮想空間制御部116は、ゲームの進行に応じて、ユーザに提供される仮想空間に関する各種の制御を行う。一例として、仮想空間制御部116は、各種オブジェクトを生成し、仮想空間に配置する。また、仮想空間制御部116は、仮想カメラを仮想空間に配置する。また、仮想空間制御部116は、ゲームの進行、具体的には、受信したゲーム進行情報に応じて、仮想空間に配置した各種オブジェクトを動作させる。また、仮想空間制御部316は、ゲームの進行、具体的には、受信したゲーム進行情報に応じて、仮想空間に配置した仮想カメラの位置、傾きを制御する。
表示制御部112は、表示部152に対して、上述の各要素によって実行された処理結果が反映されたゲーム画面を出力する。表示制御部112は、ユーザに提供される仮想空間に配置された仮想カメラからの視界に基づく画像を、ゲーム画面として、表示部152に表示してもよい。また、表示制御部112は、アニメーション生成部114によって生成されたアニメーションを該ゲーム画面に含めてもよい。また、表示制御部112は、UI制御部113によって制御される上述のUI画像を、該ゲーム画面に重畳して描画してもよい。いずれにしても、表示部152に表示されるゲーム画面は、他のユーザ端末100、および、HMDセット1000にて表示されるゲーム画面と同様のゲーム画面である。
動画再生部117は、配信端末400から受信した動作指図データを解析(レンダリング)し、動画を再生する。
(配信端末400の機能的構成)
制御部410は、記憶部420に格納されたプログラム(不図示)を実行することにより、配信端末400を統括的に制御する。例えば、制御部410は、該プログラム、および、配信端末400のユーザ(本実施形態ではプレイヤ)の操作に従って、動作指図データを生成し、ユーザ端末100に配信する。また、制御部410は、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部410は、情報の送受信を、サーバ200を介さずにユーザ端末100と直接行ってもよい。
制御部410は、記憶部420に格納されたプログラム(不図示)を実行することにより、配信端末400を統括的に制御する。例えば、制御部410は、該プログラム、および、配信端末400のユーザ(本実施形態ではプレイヤ)の操作に従って、動作指図データを生成し、ユーザ端末100に配信する。また、制御部410は、必要に応じて、サーバ200と通信して、情報の送受信を行う。制御部410は、情報の送受信を、サーバ200を介さずにユーザ端末100と直接行ってもよい。
制御部410は、プログラムの記述に応じて、通信制御部411、表示制御部412、操作受付部413、音声受付部414、モーション特定部415、および動作指図データ生成部416として機能する。制御部410は、動作指図データの生成および配信のために、図示しないその他の機能ブロックとしても機能することができる。
通信制御部411は、サーバ200、または、サーバ200を介したユーザ端末100との情報の送受信を制御する。通信制御部411は、一例として、サーバ200からユーザリスト421を受信する。また、通信制御部411は、一例として、動作指図データをユーザ端末100へ送信する。
表示制御部412は、表示部452に対して、各要素によって実行された処理結果が反映された各種画面を出力する。表示制御部412は、一例として、受信したユーザリスト234を含む画面を表示する。また、表示制御部412は、一例として、配信する動作指図データに含まれる、アバターオブジェクトを動作させるためのモーションデータを、プレイヤに選択させるためのモーションリスト422を含む画面を表示する。
操作受付部413は、入力部151に対するプレイヤの入力操作を検知し受け付ける。操作受付部111は、タッチスクリーン45およびその他の入出力IF44を介したコンソールに対してプレイヤが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部410の各要素に出力する。
例えば、操作受付部413は、入力部451に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部413は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部413は、連続して検知されていた入力が途切れると、タッチスクリーン45から接触入力が解除されたことを検知する。
音声受付部414は、配信端末400の周囲で発生した音声を受け付け、該音声の音声データを生成する。音声受付部414は、一例として、プレイヤが発話した音声を受け付け、該音声の音声データを生成する。
モーション特定部415は、プレイヤの入力操作に応じて、モーションリスト422から、プレイヤが選択したモーションデータを特定する。
動作指図データ生成部416は、動作指図データを生成する。一例として、動作指図データ生成部416は、生成された音声データと、特定されたモーションデータとを含む動作指図データを生成する。
なお、図6に示すHMDセット1000、サーバ200、およびユーザ端末100の機能、並びに、図7に示す配信端末400の機能は一例にすぎない。HMDセット1000、サーバ200、ユーザ端末100、および配信端末400の各装置は、他の装置が備える機能の少なくとも一部を備えていてもよい。さらに、HMDセット1000、サーバ200、ユーザ端末100、および配信端末400以外のさらに別の装置をシステム1の構成要素とし、該別の装置にシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、HMDセット1000、サーバ200、ユーザ端末100、および配信端末400、並びに、それ以外の別の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
<仮想空間の制御処理>
図8は、プレイヤに提供される仮想空間、および、ユーザ端末100のユーザに提供される仮想空間の制御処理の流れの一例を示すフローチャートである。図9は、ある実施の形態に従う、プレイヤに提供される仮想空間600A、および、プレイヤが視認する視界画像を示す図である。図10は、ある実施の形態に従う、ユーザ端末100のユーザに提供される仮想空間600B、および、ユーザが視認する視界画像を示す図である。なお以降、仮想空間600Aおよび600Bを区別する必要が無い場合、「仮想空間600」と記載する。
図8は、プレイヤに提供される仮想空間、および、ユーザ端末100のユーザに提供される仮想空間の制御処理の流れの一例を示すフローチャートである。図9は、ある実施の形態に従う、プレイヤに提供される仮想空間600A、および、プレイヤが視認する視界画像を示す図である。図10は、ある実施の形態に従う、ユーザ端末100のユーザに提供される仮想空間600B、および、ユーザが視認する視界画像を示す図である。なお以降、仮想空間600Aおよび600Bを区別する必要が無い場合、「仮想空間600」と記載する。
ステップS1において、プロセッサ30は、仮想空間制御部316として、図9に示す仮想空間600Aを規定する。プロセッサ30は、仮想空間データ(不図示)を用いて、仮想空間600Aを規定する。仮想空間データは、ゲームプレイ端末300に記憶されていてもよいし、プロセッサ30が、ゲームプログラム331に基づいて生成してもよいし、プロセッサ30が、サーバ200などの外部の装置から取得してもよい。
仮想空間600は、一例として、中心として定義された点の360度方向の全体を覆う全天球状の構造を有する。図9および図10では、説明を複雑にしないために、仮想空間600のうちの上半分の天球が例示されている。
ステップS2において、プロセッサ30は、仮想空間制御部316として、仮想空間600Aに、アバターオブジェクト610(キャラクタ)を配置する。アバターオブジェクト610は、プレイヤに関連付けられたアバターオブジェクトであり、プレイヤの入力操作に従って動作する。
ステップS3において、プロセッサ30は、仮想空間制御部316として、仮想空間600Aに、その他のオブジェクトを配置する。図9の例では、プロセッサ30は、オブジェクト631~634を配置する。その他のオブジェクトは、例えば、ゲームプログラム331に従って動作するキャラクタオブジェクト(いわゆるノンプレイヤキャラクタ、NPC)、仮想手などの操作オブジェクト、ゲームの進行に従って配置される動物、植物、人工物、自然物などを模したオブジェクトなどを含み得る。
ステップS4において、プロセッサ30は、仮想空間制御部316として、仮想空間600Aに仮想カメラ620Aを配置する。プロセッサ30は、一例として、仮想カメラ620Aを、アバターオブジェクト610の頭部の位置に配置する。
ステップS5において、プロセッサ30は、視界画像650をモニタ51およびディスプレイ530に表示する。プロセッサ30は、仮想カメラ620Aの初期の位置と傾きとに応じて、仮想空間600Aにおける仮想カメラ620Aからの視界である視界領域640Aを定義する。そして、プロセッサ30は、視界領域640Aに対応する視界画像650を定義する。プロセッサ30は、視界画像650をモニタ51およびディスプレイ530に出力することによって、視界画像650をHMD500およびディスプレイ530に表示させる。
図9の例において、図9(A)に示すように、オブジェクト634の一部が視界領域640Aに含まれているため、視界画像650は、図9(B)に示すようにオブジェクト634の一部を含む。
ステップS6において、プロセッサ30は、初期配置情報を、サーバ200を介してユーザ端末100へ送信する。初期配置情報とは、仮想空間600Aにおける各種オブジェクトの初期の配置位置を示す情報である。図9の例において、初期配置情報は、アバターオブジェクト610、および、オブジェクト631~634の初期の配置位置の情報を含む。初期配置情報は、ゲーム進行情報の1つであると表現することもできる。
ステップS7において、プロセッサ30は、仮想空間制御部316として、HMD500の動きに応じて仮想カメラ620Aを制御する。具体的には、プロセッサ30は、HMD500の動き、すなわち、プレイヤの頭部の姿勢に応じて、仮想カメラ620Aの向きおよび傾きを制御する。後述のように、プロセッサ30は、プレイヤが頭部を動かす(頭部の姿勢を変更する)と、この動きに合わせて、アバターオブジェクト610の頭部を動かす。プロセッサ30は、例えば、アバターオブジェクト610の視線の方向と、仮想カメラ620Aの視線の方向とが一致するように、仮想カメラ620Aの向きおよび傾きを制御する。ステップS8において、プロセッサ30は、仮想カメラ620Aの向きおよび傾きが変更されたことに応じて、視界画像650を更新する。
ステップS9において、プロセッサ30は、仮想空間制御部316として、プレイヤの動きに応じて、アバターオブジェクト610を動かす。一例として、プロセッサ30は、プレイヤが現実空間で移動したことに応じて、仮想空間600Aでアバターオブジェクト610を移動させる。また、プロセッサ30は、プレイヤが現実空間で頭部を動かしたことに応じて、仮想空間600Aでアバターオブジェクト610の頭部を動かす。
ステップS10において、プロセッサ30は、仮想空間制御部316として、仮想カメラ620Aを、アバターオブジェクト610に追随するように移動させる。つまり、仮想カメラ620Aは、アバターオブジェクト610が移動しても、常にアバターオブジェクト610の頭部の位置にある。
プロセッサ30は、仮想カメラ620Aの移動に応じて、視界画像650を更新する。つまり、プロセッサ30は、プレイヤの頭部の姿勢と、仮想空間600Aにおける仮想カメラ620Aの位置とに応じて、視界領域640Aを更新する。その結果、視界画像650が更新される。
ステップS11において、プロセッサ30は、アバターオブジェクト610の動作指図データを、サーバ200を介してユーザ端末100へ送信する。ここでの動作指図データは、仮想体験中(例えば、ゲームプレイ中)において、プレイヤの動作を取り込んだモーションデータ、プレイヤが発話した音声の音声データ、コントローラ540に対する入力操作の内容を示す操作データの少なくとも何れかを含む。プレイヤがゲームをプレイしている場合、動作指図データは、例えば、ゲーム進行情報としてユーザ端末100へ送信される。
ステップS7~S11の処理は、プレイヤがゲームをプレイしている間、継続して繰り返し実行される。
ステップS21において、ユーザ3のユーザ端末100のプロセッサ10は、仮想空間制御部116として、図10に示す仮想空間600Bを規定する。プロセッサ10は、仮想空間データ(不図示)を用いて、仮想空間600Bを規定する。仮想空間データは、ユーザ端末100に記憶されていてもよいし、プロセッサ10が、ゲームプログラム131に基づいて生成してもよいし、プロセッサ10が、サーバ200などの外部の装置から取得してもよい。
ステップS22において、プロセッサ10は、初期配置情報を受信する。ステップS23において、プロセッサ10は、仮想空間制御部116として、初期配置情報に応じて各種オブジェクトを仮想空間600Bに配置する。図10の例の場合、各種オブジェクトは、アバターオブジェクト610、および、オブジェクト631~634である。
ステップS24において、プロセッサ10は、仮想空間制御部116として、仮想空間600Bに仮想カメラ620Bを配置する。プロセッサ10は、一例として、仮想カメラ620Bを、図10(A)に示す位置に配置する。
ステップS25において、プロセッサ10は、視界画像660を表示部152に表示する。プロセッサ10は、仮想カメラ620Bの初期の位置と傾きとに応じて、仮想空間600Bにおける仮想カメラ620Bからの視界である視界領域640Bを定義する。そして、プロセッサ10は、視界領域640Bに対応する視界画像660を定義する。プロセッサ10は、視界画像660を表示部152に出力することによって、視界画像660を表示部152に表示させる。
図10の例において、図10(A)に示すように、アバターオブジェクト610およびオブジェクト631が視界領域640Bに含まれているため、視界画像660は、図10(B)に示すようにアバターオブジェクト610およびオブジェクト631を含む。
ステップS26において、プロセッサ10は、動作指図データを受信する。ステップS27において、プロセッサ10は、仮想空間制御部116として、動作指図データに応じて、仮想空間600Bでアバターオブジェクト610を動かす。換言すれば、プロセッサ10は、リアルタイムレンダリングにより、アバターオブジェクト610が動作している映像を再生する。
ステップS28において、プロセッサ10は、仮想空間制御部116として、操作受付部111として受け付けたユーザの操作に応じて仮想カメラ620Bを制御する。ステップS29において、プロセッサ10は、仮想カメラ620Bの仮想空間600Bにおける位置、仮想カメラ620Bの向きおよび傾きが変更されたことに応じて、視界画像660を更新する。なお、ステップS28において、プロセッサ10は、アバターオブジェクト610の動き、例えば、アバターオブジェクト610の移動や、向きの変更に応じて仮想カメラ620Bを自動的に制御してもよい。例えば、プロセッサ10は、常にアバターオブジェクト610を正面から撮影するように自動的に仮想カメラ620Bを移動させたり、向きおよび傾きを変更したりしてもよい。また、一例として、プロセッサ10は、アバターオブジェクト610の動きに応じて、常にアバターオブジェクト610を後方から撮影するように自動的に仮想カメラ620Bを移動させたり、向きおよび傾きを変更したりしてもよい。
このように、仮想空間600Aにおいて、アバターオブジェクト610は、プレイヤの動きに応じて動作する。この動作を示す動作指図データは、ユーザ端末100に送信される。仮想空間600Bにおいて、アバターオブジェクト610は、受信した動作指図データに応じて動作する。これにより、仮想空間600Aと仮想空間600Bとにおいて、アバターオブジェクト610は同様の動作を行う。換言すれば、ユーザ3は、ユーザ端末100を用いて、プレイヤの動作に応じたアバターオブジェクト610の動作を視認することができる。
<ゲーム概要>
図11は、ユーザ端末100において表示される視界画像の他の例を示す図である。具体的には、プレイヤがプレイしている、システム1が実行するゲーム(本ゲーム)のゲーム画面の一例を示す図である。
図11は、ユーザ端末100において表示される視界画像の他の例を示す図である。具体的には、プレイヤがプレイしている、システム1が実行するゲーム(本ゲーム)のゲーム画面の一例を示す図である。
本ゲームは、一例として、銃、ナイフなどの武器を操作するアバターオブジェクト610と、NPCである複数の敵オブジェクト671とを仮想空間600に登場させ、アバターオブジェクト610に敵オブジェクト671との対戦を行わせるゲームである。アバターオブジェクト610の体力、使用可能なマガジンの数、銃の残弾数、敵オブジェクト671の残数等の各種ゲームパラメータは、ゲームの進行に応じて更新される。
本ゲームには、複数のステージが用意されており、プレイヤは、各ステージに関連付けられている所定の達成条件を成立させることにより、当該ステージをクリアすることができる。所定の達成条件としては、例えば、出現する敵オブジェクト671をすべて倒すことや、出現する敵オブジェクト671のうちボスオブジェクトを倒すこと、所定のアイテムを獲得すること、所定位置に到達することなどにより成立する条件を含むものであってもよい。該達成条件は、ゲームプログラム131内で定義されている。なお、本ゲームでは、ゲームの内容に即し、達成条件が成立された場合にプレイヤはステージをクリア、換言すれば、アバターオブジェクト610の敵オブジェクト671への勝利(アバターオブジェクト610と敵オブジェクト671との間の勝敗)が決定される。これに対し、例えば、システム1で実行されるゲームがレースゲーム等である場合、ゴールに到達するという条件が成立した場合に、アバターオブジェクト610の順位が決定される。
本ゲームでは、HMDセット1000及び複数のユーザ端末100の間で仮想空間を共有するために、ゲーム進行情報が、所定時間毎に複数のユーザ端末100にライブ配信される。この結果、ゲームを視聴中のユーザ端末100のタッチスクリーン15には、ユーザ端末100に対応する仮想カメラ620Bによって規定される視界領域の視界画像が表示される。また、視界画像の右上段および左上段には、アバターオブジェクト610の体力、使用可能なマガジンの数、銃の残弾数、敵オブジェクト671の残数等を表すパラメータ画像が重畳的に表示される。この視界画像は、ゲーム画面と表現することもできる。
ゲーム進行情報は、上述したとおり、プレイヤの動作を取り込んだモーションデータ、プレイヤが発話した音声の音声データ、コントローラ540に対する入力操作の内容を示す操作データを含む。これらのデータはすなわち、アバターオブジェクト610の位置、姿勢、向きなどを特定するための情報、敵オブジェクト671の位置、姿勢、向きなどを特定する情報、その他オブジェクト(例えば、障害物オブジェクト672、673)の位置などを特定する情報である。プロセッサ10は、ゲーム進行情報を解析(レンダリング)することにより、各オブジェクトの位置、姿勢、向きなどを特定する。
ゲーム情報132は、アバターオブジェクト610、敵オブジェクト671、障害物オブジェクト672、673等の各種オブジェクトのデータを含む。プロセッサ10は、該データと、ゲーム進行情報の解析結果とを用いて、各オブジェクトの位置、姿勢、向きなどを更新する。これにより、ゲームが進行し、仮想空間600Bにおける各オブジェクトは、仮想空間600Aにおける各オブジェクトと同様に動く。具体的には、仮想空間600Bにおいて、アバターオブジェクト610を含む各オブジェクトは、ユーザ端末100に対するユーザからの操作の有無に関わらず、ゲーム進行情報に基づいて動作する。
ユーザ端末100のタッチスクリーン15においては、一例として、UI画像701および702が、視界画像に重畳して表示される。UI画像701は、アバターオブジェクト610を支援するためのアイテム投入操作をユーザ3から受け付けるUI画像711を、タッチスクリーン15に表示するための操作を受け付けるUI画像である。UI画像702は、アバターオブジェクト610(換言すれば、プレイヤ4)に対するコメントを入力し、送信するための操作をユーザ3から受け付けるUI画像(後述)を、タッチスクリーン15に表示するための操作を受け付けるUI画像である。UI画像701および702が受け付ける操作は、例えば、UI画像701および702をタップする操作であってもよい。
UI画像701がタップされると、UI画像711が、視界画像に重畳して表示される。UI画像711は、例えば、マガジンのアイコンが描かれたUI画像711A、救急箱のアイコンが描かれたUI画像711B、三角コーンのアイコンが描かれたUI画像711C、バリケードのアイコンが描かれたUI画像711Dを含む。アイテム投入操作は、例えば、いずれかのUI画像をタップする操作に相当する。
一例として、UI画像711Aがタップされると、アバターオブジェクト610が使用する銃の残弾数が増加する。UI画像711Bがタップされると、アバターオブジェクト610の体力が回復する。UI画像711Cおよび711Dがタップされると、敵オブジェクト671の移動を妨害する障害物オブジェクト672、673が仮想空間に配置される。障害物オブジェクト672、673は、一方が他方に比べて、敵オブジェクト671の移動をより妨害するものであってもよい。
プロセッサ10は、アイテム投入操作が行われたことを示すアイテム投入情報を、サーバ200へ送信する。アイテム投入情報には、アイテム投入操作により指定されたアイテムの種別を特定するための情報が少なくとも含まれる。アイテム投入情報には、アイテムが配置される位置を示す情報など、アイテムに関するその他の情報が含まれていてもよい。アイテム投入情報は、サーバ200を介して、他のユーザ端末100、および、HMDセット1000へ送信される。
図12は、ユーザ端末100において表示される視界画像の他の例を示す図である。具体的には、本ゲームのゲーム画面の一例を示す図であり、ゲームプレイ中のプレイヤとユーザ端末100とのコミュニケーションについて説明するための図である。
図12(A)の例において、ユーザ端末100は、アバターオブジェクト610に発話691を実行させている。具体的には、ユーザ端末100は、ゲーム進行情報に含まれる音声データに従って、アバターオブジェクト610に発話691を実行させている。発話691の内容は、プレイヤ4が発話した「弾が無いよー!」というものである。すなわち、発話691の内容は、マガジンが0、銃に装填した銃弾が1となったことにより、敵オブジェクト671を攻撃する手段を失いそうであることを各ユーザに伝えるものである。
なお、図12(A)では、アバターオブジェクト610の発話を視覚的に示すため吹き出しを用いているが、実際は、ユーザ端末100のスピーカから音声が出力される。なお、音声出力とともに、図12(A)に示す吹き出し(すなわち、音声の内容のテキストを含む吹き出し)が視界画像中に表示されてもよい。これは、後述する発話692でも同様である。
UI画像702に対するタップ操作を受け付けると、ユーザ端末100は、図12(B)に示すように、UI画像705および706(メッセージUI)を視界画像に重畳して表示する。UI画像705は、アバターオブジェクト610(換言すれば、プレイヤ)に対するコメントを表示するUI画像である。UI画像706は、入力されたコメントを送信するためコメント送信操作をユーザ3から受け付けるUI画像である。
ユーザ端末100は、一例として、UI画像705へのタップ操作を受け付けると、キーボードを模したUI画像(不図示、以下、単に「キーボード」と記載)をタッチスクリーン15に表示させる。ユーザ端末100は、キーボードに対するユーザの入力操作に応じたテキストを、UI画像705に表示させる。図12(B)の例では、「マガジン送るね」というテキストがUI画像705に表示されている。
ユーザ端末100は、テキスト入力後に、一例として、UI画像706へのタップ操作を受け付けると、入力した内容(テキストの内容)を示す情報と、ユーザを示す情報とを含むコメント情報をサーバ200へ送信する。コメント情報は、サーバ200を介して、他のユーザ端末100、および、HMDセット1000へ送信される。
UI画像703Aは、コメントを送信したユーザのユーザ名を示すUI画像であり、UI画像704Aは、該ユーザが送信したコメントの内容を示すUI画像である。図12(B)の例では、ユーザ名が「BBBBB」であるユーザが、自身のユーザ端末100を用い、「危ない!」という内容のコメント情報を送信したことにより、UI画像703AおよびUI画像704Aが表示されている。UI画像703AおよびUI画像704Aは、本ゲームに参加しているすべてのユーザ端末100のタッチスクリーン15、および、HMD500のモニタ51に表示される。なお、UI画像703Aおよび704Aは、1つのUI画像であってもよい。すなわち、1つのUI画像にユーザ名とコメントの内容とが含まれていてもよい。
図12(C)の例では、図12に示すユーザ端末100のユーザである、「AAAAA」というユーザ名のユーザが、上述したとおりコメントを入力し、送信したことにより、タッチスクリーン15にUI画像703Bおよび704Bが表示されている。UI画像703Bにはユーザ名「AAAAA」が含まれており、UI画像704Bには、図12(B)の例において入力された「マガジン送るね!」とのコメントが含まれている。
また、図12(C)の例は、ユーザ「AAAAA」がさらに、UI画像701へのタップ操作を入力し、UI画像711をタッチスクリーン15に表示させ、UI画像711Aへのタップ操作を入力した後の視界画像611である。つまり、ユーザ「AAAAA」のユーザ端末100から、他のユーザ端末100およびHMDセット1000に、マガジンを示すアイテム投入情報が送信された結果、ユーザ端末100およびHMDセット1000は、演出オブジェクト674(後述)を仮想空間600に配置している。一例として、ユーザ端末100およびHMDセット1000は、アイテム投入情報にて示された経過時間が経過した後に、演出オブジェクト674に関する演出を実行し、アイテムオブジェクトの効果を発動させる処理を実行する。
図12(D)の例では、アイテムオブジェクトの効果を発動させる処理の実行により、マガジンの数が0から1に増加している。この結果、プレイヤは、ユーザ「AAAAA」に対して、「ありがとう!」と発話し、該発話の音声データが、各ユーザ端末100に送信される。これにより、各ユーザ端末100は、アバターオブジェクト610の発話692として、「ありがとう!」という音声を出力する。
以上のように、本ゲームにおいては、プレイヤの発話に基づくアバターオブジェクト610の発話音声の出力と、各ユーザによるコメントの入力とにより、ユーザとアバターオブジェクト610とのコミュニケーションが実現される。
(ゲームプレイ端末300におけるゲーム進行処理)
図13は、ゲームプレイ端末300で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
図13は、ゲームプレイ端末300で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
ステップS31において、プロセッサ30は、ゲーム進行部315として、ゲームプログラム331とプレイヤの動きとに基づいてゲームを進行させる。ステップS32において、プロセッサ30は、ゲーム進行情報を生成し、ユーザ端末100へ配信する。具体的には、プロセッサ30は、生成したゲーム進行情報を、サーバ200を介して、各ユーザ端末100へ送信する。
ステップS33において、プロセッサ30は、アイテム投入情報を受信すると(S33でYES)、ステップS34において、アイテム投入情報に基づいて、アイテムオブジェクトを仮想空間600Aに配置する。一例として、プロセッサ30は、アイテムオブジェクトの配置の前に、演出オブジェクト674を仮想空間600Aに配置する(図11(C)参照)。演出オブジェクト674は、例えば、プレゼント箱を模したオブジェクトであってもよい。プロセッサ30は、一例として、アイテム投入情報にて示された経過時間が経過した後に、演出オブジェクト674に関する演出を実行してもよい。該演出は、例えば、プレゼント箱の蓋が開くアニメーションであってもよい。プロセッサ30は、該アニメーションの実行の後、アイテムオブジェクトの効果を発動させる処理を実行する。例えば、図11(D)の例では、障害物オブジェクト673を配置する。
プロセッサ30は、アニメーションの実行の後、タップ操作されたUI画像に対応するアイテムオブジェクトを仮想空間600Aに配置してもよい。例えば、UI画像711Aに対してタップ操作が行われた場合、プロセッサ30は、アニメーションの実行の後、マガジンを示すマガジンオブジェクトを仮想空間600Aに配置する。また、UI画像711Bに対してタップ操作が行われた場合、プロセッサ30は、アニメーションの実行の後、救急箱を示す救急箱オブジェクトを仮想空間600Aに配置する。プロセッサ30は、例えば、マガジンオブジェクトまたは救急箱オブジェクトの位置に、アバターオブジェクト610が移動した場合に、マガジンオブジェクトまたは救急箱オブジェクトの効果を発動させる処理を実行してもよい。
プロセッサ30は、ゲームが終了するまで、ステップS31~S34の処理を継続し、繰り返す。ゲームが終了した場合、例えば、プレイヤがゲームを終了するための所定の入力操作を入力した場合(ステップS35でYES)、図13に示す処理は終了する。
(ユーザ端末100におけるゲーム進行処理)
図14は、ユーザ端末100で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
図14は、ユーザ端末100で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
ステップS41において、プロセッサ10は、ゲーム進行情報を受信する。ステップS42において、プロセッサ10は、ゲーム進行部115として、ゲーム進行情報に基づいてゲームを進行させる。
ステップS43において、プロセッサ10が、ユーザ3によるアイテム投入操作を受け付けると(ステップS43にてYES)、ステップS44において、プロセッサ10は、仮想通貨を消費し、演出オブジェクト674を仮想空間600Bに配置する。ここで、仮想通貨は、ゲームへの参加の前、あるいは、ゲームへの参加中に、ユーザ3がプロセッサ10に対し所定の操作を行うことにより購入(本ゲームに対して課金)されるものであってもよいし、所定の条件を満たした場合にユーザ3に付与されるものであってもよい。所定の条件とは、本ゲームにおけるクエストのクリア等、本ゲームへの参加が必要なものであってもよいし、アンケートに答える等、本ゲームへの参加が不要なものであってもよい。仮想通貨の金額(仮想通貨の所有量)は、一例として、ゲーム情報132としてユーザ端末100に記憶される。
ステップS45において、プロセッサ10は、アイテム投入情報をサーバ200へ送信する。アイテム投入情報は、サーバ200を介してゲームプレイ端末300へ送信される。
プロセッサ10は、演出オブジェクト674の配置後、所定時間が経過すると、アイテムオブジェクトを仮想空間600Aに配置する。図11の例では、障害物オブジェクト673を配置する。つまり、ユーザ3が、UI画像711Cへのタップ操作を入力することにより、所定量の仮想通貨が消費され、障害物オブジェクト673が配置される。
プロセッサ10は、ゲームが終了するまで、ステップS41~S45の処理を継続し、繰り返す。ゲームが終了した場合、例えば、プレイヤがゲームを終了するための所定の入力操作を行った場合や、ユーザ3が、ゲームから途中退席するための所定の入力操作を行った場合(ステップS46でYES)、図14に示す処理は終了する。
(サーバ200におけるゲーム進行処理)
図15は、サーバ200で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
図15は、サーバ200で実行されるゲーム進行処理の流れの一例を示すフローチャートである。
ステップS51において、プロセッサ20は、ゲーム進行情報をゲームプレイ端末300から受信する。ステップS52において、プロセッサ20は、ログ生成部212として、ゲーム進行のログ(以下、プレイログ)を更新する。なお、プレイログは、一例として、ゲームプレイ端末300から初期配置情報を受信したとき、プロセッサ20が生成する。
ステップS53において、プロセッサ20は、受信したゲーム進行情報を、各ユーザ端末100へ送信する。
ステップS54において、アイテム投入情報をいずれかのユーザ端末100から受信した場合(ステップS54にてYES)、ステップS55において、プロセッサ20は、ログ生成部212としてプレイログを更新する。ステップS56において、プロセッサ20は、受信したアイテム投入情報をゲームプレイ端末300へ送信する。
プロセッサ20は、ゲームが終了するまで、ステップS51~S56の処理を継続し、繰り返す。ゲームが終了した場合、例えば、ゲームプレイ端末300から、ゲームが終了したことを示す情報を受信した場合(ステップS57でYES)、ステップS58において、プロセッサ20は、リスト生成部213として、プレイログからゲームに参加したユーザのリスト(ユーザリスト234)を生成する。プロセッサ20は、生成したユーザリスト234を、サーバ200に記憶する。
図16は、ユーザリスト234の一具体例を示す図である。「ユーザ」のカラムには、ゲームに参加した各ユーザを示す情報(例えば、ユーザ名)が格納されている。「タグ」のカラムには、各ユーザがプレイヤに対して行った支援に基づいて生成された情報(タグ)が格納されている。図16の例において、「タグ」のカラムに格納されたタグのうち、鍵括弧を有さないものは、プロセッサ20が自動生成した情報であり、鍵括弧を有するものは、ゲームの運営者が手動で入力した情報である。
図16の例において、ユーザ「AAAAA」には、マガジン、10F、ボス、「マガジンのプレゼントによりボスに勝利」という情報が対応付けられている。これは、例えば、10Fというステージでのボス戦において、ユーザ「AAAAA」がマガジンを投入し、その投入されたマガジンの銃弾でアバターオブジェクト610がボスに勝利したことを示している。
また、ユーザ「BBBBB」には、救急箱、3F、ザコ、「ゲームオーバー寸前で回復」という情報が対応付けられている、これは、例えば、3Fというステージのザコ敵との戦闘において、ユーザ「BBBBB」が救急箱を投入し、その結果、アバターオブジェクト610の体力が0になる(ゲームオーバーになる)寸前で体力が回復したことを示している。
また、ユーザ「CCCCC」には、バリケード、5F、ザコ、「バリケードでゾンビを二人足止め」という情報が対応付けられている。これは、例えば、5Fというステージのザコ敵との戦闘において、ユーザ「CCCCC」がバリケード(図11における障害物オブジェクト672)を投入し、その結果、二人のザコ敵の足止めに成功したことを示している。
図16の例では、各ユーザ3のユーザ名に対し、行った支援が1つ対応付けられているが、支援を複数回行なったユーザ3のユーザ名には、複数回の支援それぞれのタグが対応付けられる。ユーザリスト234において、該それぞれのタグは区別されていることが好ましい。これにより、ゲーム終了後に、配信端末400を用いてユーザリスト421を参照するプレイヤが、各支援の内容を正確に把握できる。
<動作指図データの配信>
(配信端末400における配信処理)
図17は、配信端末400で実行される配信処理の流れの一例を示すフローチャートである。図18は、配信端末400に表示される画面の一具体例を示す図である。図19は、配信端末に表示される画面の他の具体例を示す図である。
(配信端末400における配信処理)
図17は、配信端末400で実行される配信処理の流れの一例を示すフローチャートである。図18は、配信端末400に表示される画面の一具体例を示す図である。図19は、配信端末に表示される画面の他の具体例を示す図である。
ステップS61において、プロセッサ40は、操作受付部413として、ゲームに参加したユーザのリスト(ユーザリスト234)を表示するための第1操作を受け付ける。図18(A)に示すダウンロード画面721は、ユーザリスト234をサーバ200からダウンロードし、表示部452に表示させるための画面である。ダウンロード画面721は、一例として、図17に示す配信処理を実行するアプリケーションの起動操作を、配信端末400に入力した直後に表示される画面である。
ダウンロード画面721は、一例として、UI画像722および723を含む。UI画像722は、ユーザリスト234をダウンロードするための操作、すなわち、上記第1操作を受け付ける。第1操作は、例えば、UI画像722をタップする操作であってもよい。UI画像723は、アプリケーションを終了するための操作を受け付ける。該操作は、例えば、UI画像723をタップする操作であってもよい。
UI画像722に対するタップ操作を受け付けると、ステップS62において、プロセッサ40は、通信制御部411として、ユーザリスト234をサーバ200から取得(受信)する。ステップS63において、プロセッサ40は、表示制御部412として、ユーザリスト234を表示部452に表示させる。具体的には、プロセッサ40は、ユーザリスト234に基づいて生成されたユーザリスト画面を、表示部452に表示させる。ユーザリスト画面は、一例として、図18(B)に示すユーザリスト画面731であってもよい。ユーザリスト画面731は、ユーザリスト234における各レコードに対応するレコード画像からなる。図18(B)の例では、レコード画像として、レコード画像732A~732Cを記載しているが、レコード画像の数は3つに限定されない。図18(B)の例において、ユーザリスト234におけるレコードの数が3より多い(すなわち、ゲームに参加したユーザの人数が3人より多い)場合、プレイヤは、例えば画面をスクロールする操作(例えば、ドラッグ操作やフリック操作)をタッチスクリーン45に入力することにより、他のレコード画像を表示部452に表示させることができる。
一例として、レコード画像732A~732Cは、それぞれ、ユーザ名733A~733C、タグ情報734A~734C、および、アイコン735A~735Cを含む。以降、レコード画像732A~732C、ユーザ名733A~733C、タグ情報734A~734C、および、アイコン735A~735Cについて、区別する必要が無い場合、それぞれ、「レコード画像732」、「ユーザ名733」、「タグ情報734」、「アイコン735」と記載する。
ユーザ名733は、ユーザリスト234において、「ユーザ」のカラムに格納されている、ゲームに参加した各ユーザを示す情報である。タグ情報734は、ユーザリスト234において、ゲームに参加した各ユーザを示す情報のそれぞれに対応付けられているタグを示す情報である。例えば、レコード画像732Aは、ユーザ名733Aとして、「AAAAA」を含む。このため、レコード画像732Aは、タグ情報734Aとして、ユーザリスト234において「AAAAA」に対応付けられている、『マガジン、10F、ボス、「マガジンのプレゼントによりボスに勝利」』を含む。アイコン735は、例えば、ユーザが事前に設定した画像である。
なお、プロセッサ40は、受信したユーザリストを配信端末400に記憶してもよい(図7のユーザリスト421)。ダウンロード画面721は、ユーザリスト421を表示部452に表示するためのUI画像(不図示)を含んでいてもよい。この例において、該UI画像がタップされた場合、プロセッサ40は、ユーザリスト234のダウンロードを行わず、ユーザリスト421を読み出し、該ユーザリスト421からユーザリスト画面を生成し、表示部452に表示させる。
ステップS64において、プロセッサ40は、操作受付部413として、ユーザリスト画面731に含まれるユーザの何れかを選択するための第2操作を受け付ける。第2操作は、一例として、ユーザリスト画面731におけるレコード画像732の何れかをタップする操作であってもよい。図18(B)の例では、プレイヤは、レコード画像732Aへのタップ操作を入力している。すなわち、プレイヤは、動作指図データを配信するユーザとしてユーザ「AAAAA」を選択している。
レコード画像732に対するタップ操作を受け付けると、ステップS65において、プロセッサ40は、表示制御部412として、モーションリスト422を表示部452に表示させる。具体的には、プロセッサ40は、モーションリスト422に基づいて生成されたモーションリスト画面を、表示部452に表示させる。モーションリスト画面は、一例として、図19に示すモーションリスト画面741であってもよい。モーションリスト画面741は、モーションリスト422における各レコードに対応するレコード画像からなる。図19の例では、レコード画像として、レコード画像742A~742Cを記載しているが、レコード画像の数は3つに限定されない。図19の例において、モーションリスト422におけるレコードの数が4より多い場合、プレイヤは、例えば画面をスクロールする操作(例えば、ドラッグ操作やフリック操作)をタッチスクリーン45に入力することにより、他のレコード画像を表示部452に表示させることができる。
一例として、レコード画像742A~742Cは、それぞれ、モーション名743A~743C、モーション画像744A~744C、および、UI画像745A~745Cを含む。以降、レコード画像742A~742C、モーション名743A~743C、モーション画像744A~744C、および、UI画像745A~745Cについて、区別する必要が無い場合、それぞれ、「レコード画像7432」、「モーション名743」、「モーション画像744」、「UI画像745」と記載する。
モーション名743は、モーションリスト422に格納されているモーションを識別する情報である。モーション画像744は、モーションリスト422において、各モーション名に対応付けられているモーションデータから生成される画像である。プロセッサ40は、一例として、各モーションデータにおける最初の姿勢をとるアバターオブジェクト610の画像を、モーション画像744とてレコード画像742に含める。モーション画像744は、プレイヤによる所定の操作(例えば、モーション画像744に対するタップ操作)を受け付けるUI画像であってもよい。プロセッサ40は、該所定の操作を受け付けた場合、モーションデータに基づいてアバターオブジェクト610が動作するモーション動画を再生してもよい。プロセッサ40は、モーション動画が終了すると、自動的にモーションリスト画面741を再表示してもよい。
なお、レコード画像742は、モーション画像744に代えて、例えば、「モーション再生」とのテキストを含むUI画像を含んでもよい。
ステップS66において、プロセッサ40は、操作受付部413として、モーションを選択する第3操作を受け付ける。第3操作は、一例として、UI画像745へのタップ操作であってもよい。つまり、UI画像745は、各レコード画像742に対応するモーションデータを選択する操作を受け付ける。第3操作を受け付けたことにより、プロセッサ40は、モーション特定部415として、プレイヤが選択したモーションデータを特定する。
ステップS67において、プロセッサ40は、表示制御部412および音声受付部414として、アバターオブジェクト610が、選択されたモーションデータに基づき動作するモーション動画を再生しながら、プレイヤの音声入力を受け付ける。
図20は、プレイヤ4による音声入力の一具体例を示す図である。図20に示すように、プレイヤ4は、モーション動画810Aを再生しながら、発話音声820Aを入力している。この発話音声820Aは、ユーザ名が「AAAAA」であるユーザ3(以下、ユーザ3A)宛の発話音声である。つまり、図20の例において、プレイヤ4は、ステップS64にて、ユーザ3A(第1ユーザ)を選択し、該ユーザ3A宛の動作指図データを作成している。なお、ユーザ3Aが使用するユーザ端末100は、ユーザ端末100Aであるとする。
発話音声820Aは、ユーザ3A宛の発話音声であるため、該ユーザ3Aがアバターオブジェクト610(換言すれば、プレイヤ4)に対して行った支援の内容に基づく発話音声となっている。具体的には、ユーザ3Aは、10Fというステージでのボス戦において、マガジンを投入し、その投入されたマガジンの銃弾でアバターオブジェクト610がボスに勝利している。このため、発話音声820Aは、「ボス戦でマガジンをプレゼントしてくれてありがとう!タイミングも完璧だったね!AAAAAさんのおかげでクリアできたよ!」という内容である。このように、発話音声は、ユーザ3がゲームにおいて行った支援の内容と、ユーザ3への感謝とを含むものであることが好ましい。
ある局面において、プレイヤ4は、音声入力を開始する前、すなわち、第3操作を配信端末400へ入力する前に、ユーザ3宛の発話内容を作成する。別の局面において、ユーザ3宛の発話内容は、プロセッサ40が自動生成してもよい。また、プロセッサ40は、第2操作によって選択されたユーザ3に対応付けられたタグを、モーション動画810Aに重畳して表示させてもよい。
プロセッサ40は、受け付けた音声を音声データに変換する。ステップS68において、プロセッサ40は、動作指図データ生成部416として、該音声データと、選択されたモーションのモーションデータとを含む動作指図データを生成する。
ステップS69において、プロセッサ40は、通信制御部411として、生成した動作指図データを選択されたユーザ3(図20の例ではユーザ3A)のユーザ端末100(第1コンピュータ)に配信する。図21は、配信端末400に表示される画面のさらなる別の具体例を示す図である。プロセッサ40は、ステップS68の実行後、表示制御部412として、配信画面を表示部452に表示させる。配信画面は、一例として、図21(A)に示す配信画面751であってもよい。配信画面751は、UI画像752、および、モーション画像753Aを含む。また、配信画面751は、図21(A)に示すように、動作指図データの配信先のユーザを示す情報を含むものであってもよい。
UI画像752は、動作指図データを選択されたユーザ3へ配信するための操作を受け付ける。該操作は、例えば、UI画像752へのタップ操作であってもよい。モーション画像753Aは、生成した動作指図データに基づく動画、すなわち、ユーザ3A用に生成した動作指図データに基づく動画を再生するための操作を受け付けるUI画像である。該操作は、例えば、モーション画像753Aへのタップ操作であってもよい。なお、生成した動画を再生するための操作を受け付けるUI画像は、モーション画像753Aに限定されない。例えば、「動画再生」とのテキストを含むUI画像であってもよい。プロセッサ40は、動画が終了すると、自動的に配信画面751を再表示してもよい。
配信画面751は、音声入力の受け付けに戻るための操作を受け付けるUI画像をさらに含むことが好ましい。該操作は、例えば、該UI画像へのタップ操作であってもよい。配信画面751が該UI画像を含むことにより、プレイヤ4は、例えば、発話する内容を間違えた場合など、音声入力に失敗した場合に、再度音声入力を行うことができる。なお、該UI画像は、モーションデータの選択に戻るための操作を受け付けるUI画像であってもよい。
UI画像752に対するタップ操作を受け付けると、プロセッサ40は、ユーザ3Aを示す情報とともに、動作指図データをサーバ200へ送信する。サーバ200は、ユーザ3Aを示す情報に基づいて、動作指図データの送信先のユーザ端末100を特定し、該動作指図データを特定したユーザ端末100(すなわち、ユーザ端末100A)へ送信する。
プロセッサ40は、動作指図データの送信が終了した場合、一例として、図21(B)に示す配信完了画面761を表示部452に表示させてもよい。配信完了画面761は、一例として、UI画像762および763を含む。また、配信完了画面761は、図21(B)に示すように、動作指図データの送信が完了したことを示すテキストを含むものであってもよい。
UI画像762は、別のユーザ3宛の動作指図データの作成を開始するための操作を受け付ける。該操作は、例えば、UI画像762をタップする操作であってもよい。プロセッサ40は、該タップ操作を受け付けると、ユーザリスト画面を、表示部452に再度表示させる。すなわち、該タップ操作を受け付けた場合、配信処理は、ステップS63に戻る。このとき、プロセッサ40は、配信端末400に記憶したユーザリスト421に基づいて、ユーザリスト画面を生成し、表示部452に表示させてもよい。UI画像763は、アプリケーションを終了するための操作を受け付ける。該操作は、例えば、UI画像763をタップする操作であってもよい。該操作を受け付けると、配信処理は終了する。
図20、図21を参照して説明した例では、図21(C)に示すように、配信端末400は、ユーザ3A(ユーザ名が「AAAAA」のユーザ3)宛の動画の動作指図データを、ユーザ端末100Aのみに送信する。
図22は、プレイヤ4による音声入力の他の具体例を示す図である。図22に示すように、プレイヤ4は、モーション動画810Bを再生しながら、発話音声820Bを入力している。この発話音声820Bは、ユーザ名が「BBBBB」であるユーザ3(以下、ユーザ3B)宛の発話音声である。つまり、図22の例において、プレイヤ4は、ステップS64にて、ユーザ3Bに対応するレコード画像732Bへのタップ操作を入力し、ユーザ3B宛の動作指図データを作成している。なお、ユーザ3Bが使用するユーザ端末100は、ユーザ端末100Bであるとする。
発話音声820Bは、ユーザ3B宛の発話音声であるため、該ユーザ3Bがアバターオブジェクト610(換言すれば、プレイヤ4)に対して行った支援の内容に基づく発話音声となっている。具体的には、ユーザ3Bは、3Fというステージのザコ敵との戦闘において、ユーザ「BBBBB」が救急箱を投入し、その結果、アバターオブジェクト610の体力が0になる(ゲームオーバーになる)寸前で体力が回復している。このため、発話音声820Bは、「BBBBBさんがプレゼントしてくれた救急箱のおかげで、3Fでゲームオーバーにならずにすんだよ。本当にありがとう!」という内容である。
図23は、配信端末400に表示される画面のさらなる別の具体例を示す図である。図23(A)に示す配信画面751は、UI画像752、および、モーション画像753Bを含む。モーション画像753Bは、タップ操作を受け付けると、ユーザ3B用に生成した動作指図データに基づく動画を再生する。
UI画像752に対するタップ操作を受け付けると、プロセッサ40は、ユーザ3Bを示す情報とともに、動作指図データをサーバ200へ送信する。サーバ200は、ユーザ3Bを示す情報に基づいて、動作指図データの送信先のユーザ端末100を特定し、該動作指図データを特定したユーザ端末100(すなわち、ユーザ端末100B)へ送信する。
図22、図23を参照して説明した例では、図23(C)に示すように、配信端末400は、ユーザ3B(ユーザ名が「BBBBB」のユーザ3)宛の動画の動作指図データを、ユーザ端末100Bのみに送信する。
以上のように、動作指図データに含まれる音声データに基づく音声の内容は、ユーザ3が直近のゲームへの参加において、プレイヤ4に対して行った支援の内容に基づくものとなる。該支援の内容はユーザ3ごとに異なるため、音声の内容は、ユーザ3ごとに異なる内容となる。つまり、ゲームの終了後、ゲームに参加したユーザ3の少なくとも一部のユーザ端末100には、それぞれ異なる内容の音声を含む動作指図データが送信される。
また、図22の例におけるアバターオブジェクト610のモーションは、図20の例におけるモーションと異なる。つまり、プレイヤ4は、ユーザ3B宛の動作指図データ生成において、ユーザ3A宛の動作指図データ生成時と異なるモーションデータを選択している。具体的には、プレイヤ4は、ステップS66において、レコード画像742Bに対応するモーションデータを選択する、UI画像745Bへのタップ操作を入力している。このように、プレイヤ4は、動作指図データに含まれるモーションデータを、ユーザ3毎に異ならせることができる。
そして、ユーザ3毎に異なる内容の音声データと、ユーザ3毎に選択されたモーションデータとを含む、ユーザ3毎の動作指図データは、各ユーザ3のユーザ端末100のみに送信される。換言すれば、ユーザ端末100毎にユニーク(一意)の動作指図データが、選択されたユーザ3のユーザ端末100の各々に送信される。
図24は、ゲームプレイ端末300からユーザ端末100へのゲーム進行情報の送信の概要を示す図である。ユーザ端末100における動画再生のための動作指図データが、ユーザ端末100毎にユニークである一方、図24に示すように、ゲーム実行中に、ゲームに参加している全てのユーザ3のユーザ端末100に送信されるゲーム進行情報は、各ユーザ端末100の間で共通である。すなわち、ゲーム進行情報に含まれる動作指図データもまた、各ユーザ端末100の間で共通である。このように、動画再生のための動作指図データと、ゲームを進行させるための動作指図データとは、ユーザ端末100間での同異、および、送信先といった観点で異なるデータであると言える。
(ユーザ端末100における動画再生処理)
図25は、ユーザ端末100で実行される動画再生処理の流れの一例を示すフローチャートである。
図25は、ユーザ端末100で実行される動画再生処理の流れの一例を示すフローチャートである。
ステップS71において、プロセッサ10は、動画再生部117として、動作指図データを受信する。ステップS72において、プロセッサ10は、動画再生部117として、動作指図データの受信をユーザ3へ通知する。プロセッサ10は、一例として、通知画像の表示部152への表示、スピーカ(不図示)からの通知音声の再生、LED(light-emitting diode)などで構成される点灯部(不図示)の点灯または点滅の少なくともいずれかにより、動作指図データの受信をユーザ3へ通知する。
ステップS73において、プロセッサ10は、操作受付部111として、動画を再生するための第1再生操作を受け付ける。第1再生操作は、一例として、通知画像をタップする操作であってもよい。ステップS74において、プロセッサ10は、動画再生部117として、動作指図データをレンダリングし、動画を再生する。プロセッサ10は、一例として、本ゲームをプレイするためのアプリケーションを起動し、動画を再生してもよいし、該アプリケーションとは別の、動画再生用のアプリケーションを起動し、動画を再生してもよい。以降、該動画を、「ありがとう動画」と記載する。
図26は、ありがとう動画の再生の一具体例を示す図である。具体的には、ユーザ3Aのユーザ端末100における、ありがとう動画の再生の一例を示す図である。該ユーザ端末100において再生されたありがとう動画910Aにおいて、アバターオブジェクト610は、或るモーションを実行しながら、音声920Aを発話している。換言すれば、プロセッサ10は、或るモーションを実行するアバターオブジェクト610を含むありがとう動画910Aを再生しながら、音声920Aをスピーカ(不図示)から出力させている。
ありがとう動画910Aにおけるモーションは、ユーザ3A宛の動作指図データの生成において、プレイヤ4が選択したモーションデータに基づくものであり、音声920Aは、該動作指図データの生成において、プレイヤ4が入力した発話音声820Aから生成された音声データに基づくものである。つまり、音声920Aは、ユーザ3Aがゲームにおいて行った支援の内容と、該支援に対する感謝とを含む音声である。このように、ユーザ3Aは、第1再生操作の入力により、自身がゲームにおいて行った支援の内容と、該支援に対する感謝とを、アバターオブジェクト610が発話するありがとう動画を視聴することができる。
ユーザ端末100は、一例として、ありがとう動画910Aの再生が終了した後、少なくとも1つのUI画像をタッチスクリーン15に表示させてもよい。該UI画像は、例えば、ありがとう動画910Aをもう一度再生するための操作を受け付けるUI画像であってもよいし、別の画面に遷移するための操作を受け付けるUI画像であってもよいし、アプリケーションを終了するための操作を受け付けるUI画像であってもよい。
また、ユーザ端末100は、一例として、ありがとう動画910Aの再生中に、少なくとも1つのUI画像をタッチスクリーン15に表示させてもよい。該UI画像は、例えば、再生中のありがとう動画910Aを一時的に停止させたり、終了させたり、再生する場面を変更させたりする操作をそれぞれ受け付ける、複数のUI画像であってもよい。
なお、ありがとう動画910Aの再生中、および、ありがとう動画910Aの再生が狩猟した後に表示されるこれらのUI画像には、アバターオブジェクト610に対する返答を行うためのUI画像は含まれない。すなわち、本実施形態に係るありがとう動画910Aにおいては、アバターオブジェクト610に対する返答を行うための手段が備えられていない。
図27は、ありがとう動画の再生の他の具体例を示す図である。具体的には、ユーザ3Bのユーザ端末100における、ありがとう動画の再生の例を示す図である。該ユーザ端末100において再生されたありがとう動画910Bにおいて、アバターオブジェクト610は、或るモーションを実行しながら、音声920Bを発話している。換言すれば、プロセッサ10は、或るモーションを実行するアバターオブジェクト610を含むありがとう動画910Bを再生しながら、音声920Bをスピーカ(不図示)から出力させている。
ありがとう動画910Bにおけるモーションは、ユーザ3B宛の動作指図データの生成において、プレイヤ4が選択したモーションデータに基づくものであり、音声920Bは、該動作指図データの生成において、プレイヤ4が入力した発話音声820Bから生成された音声データに基づくものである。このため、図27の例において、アバターオブジェクト610が行っているモーションは、図26の例のモーションとは異なる。また、音声920Bは、ユーザ3Bがゲームにおいて行った支援の内容と、該支援に対する感謝とを含む音声である。このため、図27の例において、音声920Bの内容は、図26の例における音声920Aの内容とは異なる。
このように、ゲームの終了後に、ゲームに参加したユーザ3の少なくとも一部のユーザ端末100が受信するありがとう動画は、ユーザ3毎にアバターオブジェクト610の発話内容が異なる動画である。
なお、プロセッサ10は、次回のゲームへの参加を促す内容を含むUI画像930を、動画910に重畳させて表示させてもよい。UI画像930は、動作指図データとともに配信されてもよいし、ゲーム情報132として、ユーザ端末100が記憶していてもよい。
本ゲームでは、ゲームプレイ端末300は、配信コンテンツであるゲーム進行情報をサーバ200を介して複数のユーザ端末100に配信する。当該複数のユーザ端末100の各々は、当該ゲーム進行情報に基づいて配信コンテンツをタッチスクリーン15に表示する。具体的には、ユーザ端末100のメモリ11には、アバターオブジェクト610を含むオブジェクトを表示するための複数種類のオブジェクトデータが予め記憶されている。ユーザ端末100は、ゲームプレイ端末300からゲーム進行情報を受信したとき、当該ゲーム進行情報から動作指図データを特定し、当該動作指図データを解析(レンダリング)することにより、オブジェクトの種類・位置・姿勢等を特定する。また、ユーザ端末100は、当該解析結果に基づき、メモリ11に記憶されているオブジェクトデータを用いて、アバターオブジェクト610を含むオブジェクトを仮想空間600Bに配置する。タッチスクリーン15には、現在の仮想カメラ620Bの位置および向きに応じた視界領域640Bの視界画像660が表示される。なお、アバターオブジェクト610を含むオブジェクトは、ゲームプレイ端末300により規定された仮想空間600Aにも配置され、当該オブジェクトの位置・姿勢等は、仮想空間600Aおよび600Bの間で一致する。
配信コンテンツには、アバターオブジェクト610として表示されるキャラクタが異なる複数種類のコンテンツが設けられている。複数種類のコンテンツには、例えば、1回あるいは不定期に配信される第1配信コンテンツや、毎日あるいは所定曜日の所定時間において定期的に配信される第2配信コンテンツなどが含まれる。
第1配信コンテンツおよび第2配信コンテンツは、それぞれ、例えば主役あるいは進行役として登場するキャラクタや、内容・進行具合い・その他に登場するキャラクタ、コンテンツ中に行われるゲームの種類等が異なる複数種類のコンテンツが設けられている。また、第2配信コンテンツは、毎回、種類に応じた同じキャラクタ(例えば、コンテンツaに応じてキャラクタa)が登場するとともにキャラクタ背景(例えば花輪オブジェクト等)が表示されるものの、同じ種類のコンテンツ(例えば、コンテンツa)であっても毎回内容等が異なる。
アバターオブジェクト610として表示されるキャラクタには、キャラクタの種類毎に、衣服やアクセサリー等の装飾オブジェクト(テクスチャ画像)が関連付けられている。以下では、当該装飾オブジェクトの表示態様を特定する具体的な手法を例示する。
配信コンテンツには、アバターオブジェクト610として第1のキャラクタが仮想空間600Bに登場する第1キャラクタコンテンツや、アバターオブジェクト610として第2のキャラクタが仮想空間600Bに登場する第2キャラクタコンテンツなどが含まれる。第1キャラクタコンテンツを配信する場合、動作指図データは、第1のキャラクタを含むオブジェクトが配置された仮想空間600Bの映像を表示可能にするためのデータ(第1の表示用データ)である。一方、第2キャラクタコンテンツを配信する場合、動作指図データは、第2のキャラクタを含むオブジェクトが配置された仮想空間600Bの映像を表示可能にするためのデータ(第2の表示用データ)である。
第1のキャラクタおよび第2のキャラクタのいずれにおいても、上半身や、下半身、手、足、首元、耳たぶ、目元等の各部位には、衣服やアクセサリー(ネックレス、イヤリング、眼鏡等)に相当する装飾オブジェクトが予め関連付けられている。関連付ける装飾オブジェクトの種類や部位は、キャラクタの種類に応じて異なるように定められている。
本実施形態では、第1のキャラクタには、シャツに相当する第1のオブジェクトと、当該第1のオブジェクト(シャツ)の上に羽織ることで当該第1のオブジェクトの一部を覆う第3のオブジェクト(ブラウス)とを含む装飾オブジェクトが関連付けられている。一方、第2のキャラクタには、第1のオブジェクトと同種の第2のオブジェクト(デザイン等が異なるシャツ)を含む装飾オブジェクトが関連付けられている。
ここで、第1のキャラクタに関連付けられている第1のオブジェクトの表示態様については、配信開始時などの配信毎に、ゲームプレイ端末300側において所定のルール(例えば乱数抽選)にしたがって決定される。ゲームプレイ端末300は、当該表示態様を特定可能な表示態様情報を含むゲーム進行情報をユーザ端末100に対して配信し、ユーザ端末100は、当該表示態様情報に基づいて第1のオブジェクトの表示態様を特定して設定する。一方、第1のキャラクタに関連付けられている第1のオブジェクト以外の装飾オブジェクトの表示態様は、第3のオブジェクトの表示態様も含めて、予め固定されている。ユーザ端末100は、第1のオブジェクト以外の装飾オブジェクトの表示態様を固定の表示態様に設定する。他方、第2のキャラクタに関連付けられている装飾オブジェクトの表示態様は、第1のオブジェクトと同種の第2のオブジェクトの表示態様も含めて、予め固定されている。ユーザ端末100は、当該装飾オブジェクトの表示態様を固定の表示態様に設定する。
このため、第1のキャラクタに関連付けられている装飾オブジェクトのうち第1のオブジェクトの表示態様は、配信毎に変更される。ここで、表示態様の変更は、テクスチャ画像を変更することを含み、第1のオブジェクトのテクスチャ画像が、配信毎に変更される。一方、第1のキャラクタに関連付けられている第1のオブジェクト以外の装飾オブジェクトと、第2のキャラクタに関連付けられている装飾オブジェクトとについては、表示態様は、配信の回数目(配信期間)にかかわらず固定される。
表示態様とは、装飾オブジェクトを表示部152に表示する際の態様である。本実施形態では、第1のオブジェクト(シャツ)について決定する表示態様が当該第1のオブジェクトの表示色(即ち、シャツの色)である例を示す。このため、第1のキャラクタに関連付けられているシャツ、ブラウス等の装飾オブジェクトのうち、シャツの色が、複数色(白、黒、赤、緑、青、紫等)のうちから特定される。
本実施形態において、定期的に配信される第2配信コンテンツには、例えば、第1のオブジェクトの表示態様が毎回変更される第1のキャラクタが登場する第1キャラクタコンテンツが含まれる。また、本実施形態では、第1のキャラクタとして、例えば、オフィスレディーの様相を呈するキャラクタを例示する。ただし、第1のキャラクタはこれに限るものではなく、例えばキャラクタに設定されている年齢が所定年齢(18歳)未満となるキャラクタ(例えば高校生キャラクタ)や、応援団の様相を呈するキャラクタ、女子大学生の様相を呈するキャラクタなどであってもよい。
コンテンツは、予め定められている配信期間にゲームプレイ端末300から配信される。コンテンツの配信を開始する際、ゲームプレイ端末300のプロセッサ30は、図28(A)に示す表示態様制御処理を実行する。また、ユーザ端末100側におけるコンテンツの視聴は、予め定められているコンテンツアイコンに対するユーザからのタッチ操作などにより開始される。タッチ操作によりコンテンツの視聴を開始する際、ユーザ端末100側のプロセッサ10は、図28(B)に示す表示態様設定処理を実行する。
図28(A)を参照して、ゲームプレイ端末300は、ステップS81において、現在のタイミングがコンテンツ毎に予め定められているコンテンツ配信の開始タイミングと一致するか否かを、メモリ31に記憶されている配信スケジュールに基づいて判定する。即ち、メモリ31には、コンテンツを配信する時間帯や、当該コンテンツの種類(登場するキャラクタ、すなわち第1キャラクタコンテンツであるか、第2キャラクタコンテンツであるかなど)などの情報が、配信スケジュールとして記憶されている。ステップS81では、当該配信スケジュールに基づいて一致するか否かを判定する。
当該開始タイミングと一致すると判定されたときは、ステップS82に進む。ステップS82では、今回配信するコンテンツが第1キャラクタコンテンツであるか否かを、当該配信スケジュールに基づいて判定する。当該第1キャラクタコンテンツであると判定されたときは、ステップS83に進む。
ステップS83では、今回の配信期間において第1のキャラクタに関連付けられる装飾オブジェクトのうち第1のオブジェクトの表示態様(即ち、シャツの色)を、複数種類の表示態様(白、黒、赤、緑、青、紫等)のうちから乱数抽選により(ランダムで)決定する。より具体的に、第1キャラクタコンテンツは、前述したとおり、定期的に配信される第2配信コンテンツであり、ステップS83においては、第1キャラクタコンテンツの前回配信時に決定された前回配信時における表示態様とは異なる表示態様を、乱数抽選により決定する。これにより、第1のオブジェクトの表示態様(即ち、シャツの色)は、前回配信時と異なる表示態様に変更される。
ステップS84では、ゲーム進行情報に含まれる情報として、ステップS83で決定された表示態様を特定可能な表示態様情報(第1のデータ)を設定する。第1キャラクタコンテンツが配信される場合には、演者のモーション等に応じた情報であってステップS83の決定に応じた表示態様情報を含むゲーム進行情報が所定時間(例えば1/60秒)毎に配信される。
ステップS84の処理が完了したとき、ステップS81において現在のタイミングがコンテンツ配信の開始タイミングと一致すると判定されなかったとき、またはステップS82において今回配信するコンテンツが第1キャラクタコンテンツであると判定されなかったときは、リターンする。第1キャラクタコンテンツ以外のコンテンツが配信される場合には、演者のモーション等に応じたゲーム進行情報が所定時間(例えば1/60秒)毎に配信される。
図28(B)を参照して、ユーザ端末100は、ステップS91において、コンテンツの視聴開始操作が行われたか否かを、タッチスクリーン15に対する入力操作に基づいて判定する。当該視聴開始操作が行われたと判定されなかったときはリターンし、当該視聴開始操作が行われたと判定されたときはステップS92に進む。ステップS92では、ゲームプレイ端末300から受信したゲーム進行情報が表示態様情報を含んでいるか否かを、当該ゲーム進行情報を解析することにより判定する。
当該表示態様情報を含んでいると判定されると、ステップS93に進み、今回の配信期間における第1のオブジェクトの表示態様を当該表示態様情報に基づいて設定する。即ち、今回の配信期間における装飾オブジェクトの表示態様のうち、第1のオブジェクトの表示態様(即ち、シャツの色)を、当該表示態様情報により特定された表示態様(白、黒、赤、緑、青、紫等のうちのいずれか)に設定する。ステップS93の処理が完了したとき、またはステップS92において表示態様情報を含むゲーム進行情報を受信したと判定されなかったときは、ステップS94に進む。
ステップS94では、第1のキャラクタに関連付けられている装飾オブジェクトのうち第1のオブジェクト以外のオブジェクトの表示態様として、固定の表示態様を設定する。また、第1のキャラクタ以外のキャラクタが登場するコンテンツを視聴する場合、ステップS94では、第1のキャラクタとは異なるキャラクタ(例えば第2のキャラクタなど)に関連付けられている装飾オブジェクト(シャツを含む)の表示態様として、固定の表示態様を設定する。即ち、第1キャラクタコンテンツが配信される場合には、第1のキャラクタに関連付けられている装飾オブジェクトのうち第1のオブジェクト(シャツ)以外の装飾オブジェクト(ブラウス、ズボン、靴等)を、固定の表示態様(固定の色)に設定する。一方、第1キャラクタコンテンツとは異なるコンテンツ(例えば第2キャラクタコンテンツ)が配信される場合には、第1のキャラクタとは異なるキャラクタ(例えば第2のキャラクタなど)に関連付けられている衣装オブジェクトの全てを、固定の表示態様に設定する。
ステップS93およびS94の処理により、仮想空間600B内において動作させるアバターオブジェクト610のモデルデータが生成される。コンテンツ視聴中においては、当該モデルデータに基づくアバターオブジェクト610が、ゲームプレイ端末300から配信されたゲーム進行情報に含まれる動作指図データに基づいて動作する。ステップS94の処理が完了すると、リターンする。
図29は、第1キャラクタコンテンツの視聴中における第1のキャラクタを含むオブジェクトの表示例を示す。図29においては、第1のキャラクタの背後に、花輪を想起させる花輪オブジェクトが配置されている。第1のキャラクタは、動作指図データに基づいて動作する。
第1のキャラクタに関連付けられる装飾オブジェクトとしては、上半身に着用するシャツ、当該シャツの上に羽織ったブラウス、下半身着用するズボン、足に着用する靴などが定められている。また、第1のオブジェクトであるシャツ以外の装飾オブジェクトについては、表示態様としての色が一律に定められている。例えば、ブラウスおよび靴については白色が定められており、ズボンについてはグレー色が定められている。
一方、第1のオブジェクトであるシャツについては、図28のステップS83で示したとおり、コンテンツ配信毎に前回配信時とは異なる色が設定される。当該シャツの表示態様として、第1キャラクタコンテンツを対象とするN回目のライブ配信においては、図29(A)に示すように白色が設定されている。また、第1キャラクタコンテンツを対象とするN+1回目のライブ配信においては、図29(B)に示すようにグレー色が設定され、第1キャラクタコンテンツを対象とするN+2回目のライブ配信においては、図29(C)に示すように青色(図中の縞模様は青色であることを示す)が設定されている。このように、第1キャラクタコンテンツについては、同じ第1のキャラクタが、コンテンツ配信毎に異なる色のシャツを着用して登場する。
<本実施形態の効果>
本実施形態によれば、演者の動作に連動して動く第1のキャラクタを含む仮想空間600Bの映像は、ゲームプレイ端末300から配信された動作指図データ(第1の表示用データ)に基づいて表示される。ここで、第1のキャラクタには、予め定められた第1のオブジェクト(シャツ)が関連付けられており、第1のオブジェクトの表示態様(シャツの色)は、所定のルールで変更される。これにより、第1のオブジェクトの表示態様を自発的に変化させることができ、その結果、第1のキャラクタの実在感をユーザに抱かせることができる。
本実施形態によれば、演者の動作に連動して動く第1のキャラクタを含む仮想空間600Bの映像は、ゲームプレイ端末300から配信された動作指図データ(第1の表示用データ)に基づいて表示される。ここで、第1のキャラクタには、予め定められた第1のオブジェクト(シャツ)が関連付けられており、第1のオブジェクトの表示態様(シャツの色)は、所定のルールで変更される。これにより、第1のオブジェクトの表示態様を自発的に変化させることができ、その結果、第1のキャラクタの実在感をユーザに抱かせることができる。
また、本実施形態によれば、演者の動作に連動して動く第2のキャラクタを含む仮想空間600Bの映像は、ゲームプレイ端末300から配信された動作指図データ(第2の表示用データ)に基づいて表示される。ここで、第2のキャラクタには、第1のオブジェクトと同種の第2のオブジェクト(シャツ)が関連付けられており、第2のオブジェクトの表示態様(シャツの色)は、固定されている。これにより、第1のキャラクタの実在感を際立たせることができる。
さらに、本実施形態によれば、第1のオブジェクトの表示態様は、配信期間毎に、前回の配信期間における表示態様とは異なる表示態様に変更される。これにより、配信毎に第1のオブジェクトの表示態様を意図的に変化させているといった印象とともに、今回の配信期間においてはどのような表示態様で登場するのかといった面白みをユーザに提供でき、当該配信の視聴率を向上させることができる。
また、本実施形態によれば、第1の表示用データは、ゲームプレイ端末300から配信されるデータであって、演者の入力したモーションに対応するモーションデータを含む。仮想空間600B内で第1のキャラクタが動作する映像は、当該モーションデータに基づいて当該仮想空間600B内において第1のキャラクタをリアルタイムに動作させることにより表示される。これにより、配信されるデータ量を抑制することが可能となる。
さらに、本実施形態によれば、所定のルールで変更された第1のオブジェクトの表示態様は、ゲームプレイ端末300から配信される表示態様情報(第1のデータ)により特定される。第1のオブジェクトの表示態様は、当該第1のデータに基づいて設定される。これにより、複数のユーザ端末100における第1のオブジェクトの表示態様をゲームプレイ端末300側で一律に制御することができる。
また、本実施形態によれば、第1のキャラクタには、予め定められた第3のオブジェクト(ブラウス)が関連付けられている。当該第3のオブジェクトは、第1のオブジェクトの少なくとも一部を覆うオブジェクトである。これにより、第1のオブジェクトが表示される具合を、第3のオブジェクトにより制御することが可能となる。
<変形例>
以上説明した実施形態の変形例などを以下に列挙する。
以上説明した実施形態の変形例などを以下に列挙する。
(1)上記実施形態においては、仮想空間600Aと同じ仮想空間600B内においてアバターオブジェクト610等を動作させ、仮想空間600Bに配置されている仮想カメラ620Bであってユーザ端末100のタッチスクリーン15に対するスワイプ操作に応じて変化する仮想カメラ620Bの位置、向き、および傾きに応じた視界領域640Bの視界画像660をユーザ端末100のタッチスクリーン15に表示する通常視聴モードについて説明した。
しかし、アバターオブジェクト610等を動作させる空間は、仮想空間に限らず、現実空間であってもよい。現実空間としては、例えば、カメラ(撮像部)17により撮影されて取得した取得画像により特定される空間であってもよい。具体的には、例えばAR視聴モードに切り替えられると、ユーザ端末100においては、カメラ17により撮影されて取得した取得画像を解析することにより、床面等の平面部が特定され、例えばアバターオブジェクト610が少なくとも配置されているAR用仮想空間が当該平面部の所定位置(例えば平面部の中心位置)に配置される。また、この場合における仮想カメラ620Bは、取得画像を撮影したときのカメラ17の撮影方向と同じ方向からAR用仮想空間を捉える位置に配置される。この結果、カメラ17からの取得画像に対して仮想カメラ620Bからの視界画像を重畳させてなる拡張現実空間内の画像が表示部152に表示される。さらに、ユーザ端末100は、カメラ17の実際の位置、向き、傾き等を検出し、当該位置、向き、傾き等に応じて仮想カメラ620Bの位置、向き、傾き等を変更する。これにより、取得画像は、カメラ17の位置、向き、傾き等の変更に応じて変化させることができる。
AR視聴モードが選択されているユーザ端末100においては、カメラ17から取得した取得画像に対してアバターオブジェクト610を含むオブジェクトを配置させてなる拡張現実空間内において、アバターオブジェクト610等が動作する。これにより、ユーザの目の前の現実空間においてアバターオブジェクト610等が実際に動作しているかのような印象(臨場感)をユーザに抱かせることができる。
図30は、帽子を着用した女性を模したキャラクタ(以下、第1’のキャラクタと称する)が仮想空間600Bに登場する例を示す。第1’のキャラクタには、当該第1’のキャラクタが全身に羽織るワンピース、頭部に被る帽子、耳に付けるピアスなどの装飾オブジェクトが関連付けられている。図30では、第1’のキャラクタに関連付けられている装飾オブジェクトのうちのピアスが、第1のオブジェクトに相当する。このため、当該ピアスの表示態様は、図28のステップS83により、配信毎に異なる表示態様に設定される。なお、定期的に配信される第2配信コンテンツには、例えば、第1のオブジェクトの表示態様が毎回変更される第1’のキャラクタが登場するキャラクタコンテンツが含まれる。
まず、図30(A)を参照して、通常視聴モードについて説明する。図30(A-1)は、第1’のキャラクタが正面を向いて右手の人差し指を前に掲げているときの表示例である。図30(A-2)は、第1’のキャラクタが右斜め前を向いて右手の人差し指で前方を指しているときの表示例である。当該通常視聴モードでは、スワイプ操作に応じて仮想カメラ620Bの位置、向き、および傾きが変更される。ただし、ピアスは第3のオブジェクトに相当する帽子により覆われており、どのようにスワイプ操作を行ったとしても、ピアスが見える位置(例えば、後述する図30(B-3)や図30(B-4)などを表示可能とする位置)に仮想カメラ320Bを移動させることはできない。通常視聴モードでは、図30(A)に示すように、AR視聴モードに切り替えるためのARモード移行用アイコン182が通常表示される。通常視聴モードにおいて当該ARモード移行用アイコン182に対するタッチ操作等が検出されることにより、AR視聴モードに切り替えることができる。
図30(B)を参照して、AR視聴モードについて説明する。図30(B-1)および図30(B-2)は、各々、図30(A-1)および図30(A-2)と同じタイミングにおけるAR視聴モード中の表示例を示している。当該AR視聴モードでは、カメラ17により撮影されて取得された取得画像に対して第1’のキャラクタが配置されている拡張現実空間の画像のうち、仮想カメラ620Bからの画像が、表示部152に表示される。当該第1’のキャラクタは、ゲームプレイ端末300から配信された動作指図データに基づいて動作する。また、仮想カメラ620Bの位置、向き、傾き等は、カメラ17の実際の位置、向き、傾き等に応じて変更される。なお、AR視聴モードでは、ARモード移行用アイコン182が強調態様で表示(図30(B)では白黒反転表示)されることにより、AR視聴モード中である旨が報知される。
このため、第1’のキャラクタの左方の斜め下あたりから左耳を見上げるようにカメラ17の位置・向き等を調整すれば、ピアスが見える位置に仮想カメラ320Bが移動し、ピアスの画像が表示部152に表示される(図30(B)の(B-3)参照)。即ち、ピアスの表示態様は、AR視聴モードを選択し、カメラ17の位置・向き等を調整することにより、確認することができる。これにより、AR視聴モードで視聴することに対するモチベーションをユーザに持たせることができ、ひいては好趣を向上させることができる。なお、第1’のキャラクタの足元から当該第1’のキャラクタの左半身を見上げるようにカメラ17の位置・向き等を調整すれば、図30(B)の(B-4)に示すように、足を含む左半身の画像が表示部152に表示される。
このようにAR視聴モードにおいては、カメラ17の位置・向き等を調整することにより、第1’のキャラクタに関連付けられる第1のオブジェクトであるピアスを表示可能な位置(例えば、第1’のキャラクタの首元から見上げるような位置、第1’のキャラクタの足元から見上げるような位置など)に仮想カメラ620Bを移動させることができる。その結果、第1のオブジェクトであるピアスを表示させることができ、ユーザは当該ピアスの表示態様を確認できる。一方、通常視聴モードにおいては、前述したように、どのように操作を行ったとしても、第1’のキャラクタに関連付けられる第1のオブジェクトであるピアスを表示可能な位置(例えば、第1’のキャラクタの首元から見上げるような位置、第1’のキャラクタの足元から見上げるような位置など)に仮想カメラ620Bを移動させることができない。その結果、第1のオブジェクトであるピアスを表示させることができず、ユーザは当該ピアスの表示態様を確認できない。
AR視聴モードでは、強調態様で表示されているARモード移行用アイコン182に対するタッチ操作等が検出されることにより通常視聴モードに切り替えることができる。なお、AR視聴モードでは、ARモード移行用アイコン182を強調態様で表示するとともに、ARモードリセット用アイコンを通常表示するようにし、当該ARモードリセット用アイコンへのタッチに応じてARモードをリセット(再起動)するようにしてもよい。ARモードがリセットされると、床面等の平面部が再度特定され、当該平面部の所定位置にAR用仮想空間600C内の視界画像が配置される。
なお、AR視聴モードにおいて第1のオブジェクトが表示されている状態で、強調態様で表示されているARモード移行用アイコン182へのタップ操作が行われた場合、仮想カメラ620Bの視点は、予め定められている視点(例えば仮想空間600Bを正面から捉える視点)に戻されるか、あるいは通常モードにおいて仮想カメラ620Bが移動可能な範囲内のうちの仮想カメラ620Bの移動量が最小となる視点に変更される。これにより、モード切替前後における視点のズレを極力低減できる。また、AR視聴モードにおいて第1のオブジェクトが表示されている状態(図30(B-3)等)では、ARモード移行用アイコン182を一時的に非表示とするようにしてもよい。
また、AR視聴モードでは、カメラ17の位置、向き、および傾き等の変化に同期させて仮想カメラ620Bが制御される。しかし、仮想カメラ620Bは、ユーザからの入力操作(例えば、スワイプ操作、タッチ操作等)に応じて、位置、向き、および傾き等を制御するようにしてもよい。これにより、ユーザからの入力操作に応じて、仮想カメラ620Bの視界領域を変更でき、その結果、取得画像上に配置される視界画像を変更できる。具体的には、スワイプ操作により、取得画像上に配置されるアバターオブジェクト等(例えば、アバターオブジェクト610のみ、アバターオブジェクト610およびその他のオブジェクト、仮想空間全体)を回転させたり、移動させたりできる。これにより、例えば、ユーザ端末100の位置や向き等を十分に調整できないような狭いスペースにおいて拡張現実空間を生成してアバターオブジェクト610等を動作させているときであっても、タッチスクリーン15に対する入力操作により当該アバターオブジェクト610等を回転・移動させることが可能となる。
さらに、視聴モードとしては、システム1の運営者側のスイッチャの操作に基づいて仮想カメラ620Bの位置、向き、傾き等が変更されるTVモードを設け、ユーザの操作に応じて当該TVモードに切替え可能とするようにしてもよい。ただし、当該TVモードにおいては、第1のオブジェクトが見える位置に仮想カメラ320Bが移動させることができず、即ち当該第1のオブジェクトを表示部152に表示することができない。
(2)上記実施形態においては、リアルタイムレンダリング方式により、アバターオブジェクト610が動作している映像を再生するようにしている。しかし、当該映像は動画配信方式により再生するようにしてもよい。この場合、第1キャラクタコンテンツについては、所定のルールで表示態様が変更された第1のオブジェクトが、ゲームプレイ端末300において第1のキャラクタに関連付けられ、当該第1のキャラクタが仮想空間内において動作する映像を含む動画データが、第1の表示用データとしてゲームプレイ端末300から配信される。ユーザ端末100のタッチスクリーン15には、当該動画データに基づいて仮想空間内で第1のキャラクタが動作する映像が表示される。
(3)上記実施形態におけるアバターオブジェクト610の衣装等の表示態様は、アバターオブジェクト610の種類に応じて一律に定められている。しかし、アバターオブジェクト610の衣装等の表示態様は、例えば、ゲームの進行度合い(例えば、ゲームで勝利する毎、あるいはアイテムを投入する毎等)に応じてユーザ毎に異なり得るようにしてもよい。例えば、ゲームプレイ端末300側から送信されるゲーム進行情報が同じであっても、アバターオブジェクト610の衣装を、ゲームの進行度合いに応じた衣装とするようにしてもよい。この場合、アバターオブジェクト610の衣装データは、各ユーザ端末100側において予め複数種類記憶されているようにしてもよい。なお、アバターオブジェクト610の表示態様を異ならせる対象は、衣装に限らず、髪型、肌の色、化粧の程度等であってもよい。これにより、ゲーム進行情報を出力するゲームプレイ端末300側の処理負担を増大させることなく、アバターオブジェクト610のバリエーションを増やすことができるため、ユーザを惹きつけることが可能となる。
これに替えてあるいは加えて、アバターオブジェクト610の表示態様は、ゲーム中においてユーザによる課金に応じて、他のユーザのユーザ端末100において表示される表示態様と異ならせることができるようにしてもよい。また、アバターオブジェクト610の表示態様は、ゲームの結果に応じて更新されるユーザのランキングに応じて異なるようにしてもよい。さらに、第1キャラクタコンテンツを受信できるユーザ端末100は、例えばゲーム中において課金額が多いユーザのユーザ端末100のように、一部のユーザ端末100に制限するようにしてもよい。
(4)上記実施形態においては、ステップS83の処理によって、第1のオブジェクト(シャツ)の表示態様のうちの色を変更するようにしている。しかし、ステップS83においては、色の替わりに、または色とともに、第1のオブジェクトの形状を変更するようにしてもよい。例えば、シャツをVネックのものから丸首のものに変更したり、ピアスを星形のものからリング状のものに変更するようにしてもよい。また、ステップS83においては、色や形状・種類等を決定するものに替えてあるいは加えて、当該第1のオブジェクト自体の表示(例えば着用させる)・非表示(着用させない)を決定するようにしてもよい。
(5)上記実施形態においては、第1のキャラクタに関連付けられている装飾オブジェクトのうちのいずれかのオブジェクト(例えば、シャツ、ピアス)を第1のオブジェクトとし、当該第1のオブジェクトの表示態様を変更するようにしている。しかし、第1のオブジェクトは、第1のキャラクタに関連付けられているオブジェクトであれば、シャツやピアスに限らず、靴下、ズボン、髪留め、手袋、帽子、下着などのオブジェクトであってもよい。また、装飾オブジェクトに限らず、例えば、第1のキャラクタ自身にかかわるオブジェクト(例えば、髪型、ネイル等)であってもよい。さらに、第1のキャラクタに関連付けられている第1のオブジェクトの表示態様を変更するとともに、第1のキャラクタの背景のオブジェクト(例えば花輪オブジェクト)の表示態様を変更するようにしてもよい。
(6)上記実施形態においては、第1のキャラクタの関連付けられている装飾オブジェクトのうち、第1のオブジェクト以外の装飾オブジェクトの表示態様は、予め固定されている。しかし、第1のオブジェクト以外の装飾オブジェクトの表示態様は、配信毎ではなく、例えば、所定回数(5回)配信される毎や、季節毎、時間帯毎等に変更するようにしてもよい。同様に、上記実施形態においては、第2のキャラクタに関連付けられている装飾オブジェクトの表示態様が予め固定されているが、当該表示態様についても、所定回数(5回)配信される毎や、季節毎、時間帯毎等に変更するようにしてもよい。
(7)上記実施形態においては、定期的に配信される第2配信コンテンツにおいて登場するキャラクタ(第1のキャラクタや第1’のキャラクタなど)に関連付けられている第1のオブジェクトの表示態様が配信毎に変更される例について説明した。しかし、不定期に配信される第1配信コンテンツにおいて登場するキャラクタに関連付けられている第1のオブジェクトの表示態様についても、前回配信時とは異なる表示態様に変更されるようにしてもよい。
<付記>
以上の各実施形態で説明した事項を、以下に付記する。
以上の各実施形態で説明した事項を、以下に付記する。
(付記1):
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置(ユーザ端末100)において実行されるプログラムであって、前記プロセッサに、演者の動作に連動して動く第1のキャラクタ(アバターオブジェクト610)を含む仮想空間の映像を表示可能にするための第1の表示用データ(動作指図データ)を受信するステップ(S26)と、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップ(S29)と、を実行させ、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様(色)は、所定のルールで変更される。
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置(ユーザ端末100)において実行されるプログラムであって、前記プロセッサに、演者の動作に連動して動く第1のキャラクタ(アバターオブジェクト610)を含む仮想空間の映像を表示可能にするための第1の表示用データ(動作指図データ)を受信するステップ(S26)と、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップ(S29)と、を実行させ、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様(色)は、所定のルールで変更される。
(付記2):
(付記1)において、前記プロセッサに、演者の動作に連動して動く第2のキャラクタ(別のアバターオブジェクト610)を含む仮想空間の映像を表示可能にするための第2の表示用データを受信するステップ(S26)と、前記第2の表示用データに基づいて、前記仮想空間内で前記第2のキャラクタが動作する映像を表示するステップ(S29)と、を実行させ、前記第2のキャラクタには、前記第1のオブジェクトと同種の第2のオブジェクトのシャツ)が関連付けられており、前記第2のオブジェクトの表示態様(色)は、固定されている。
(付記1)において、前記プロセッサに、演者の動作に連動して動く第2のキャラクタ(別のアバターオブジェクト610)を含む仮想空間の映像を表示可能にするための第2の表示用データを受信するステップ(S26)と、前記第2の表示用データに基づいて、前記仮想空間内で前記第2のキャラクタが動作する映像を表示するステップ(S29)と、を実行させ、前記第2のキャラクタには、前記第1のオブジェクトと同種の第2のオブジェクトのシャツ)が関連付けられており、前記第2のオブジェクトの表示態様(色)は、固定されている。
(付記3):
(付記1)または(付記2)において、前記第1のオブジェクトの表示態様は、配信期間毎に、前回の配信期間における表示態様とは異なる表示態様に変更される。
(付記1)または(付記2)において、前記第1のオブジェクトの表示態様は、配信期間毎に、前回の配信期間における表示態様とは異なる表示態様に変更される。
(付記4):
(付記1)から(付記3)のいずれかにおいて、前記第1の表示用データは、外部から配信されるデータであって、演者の入力したモーションに対応するモーションデータを含み、前記表示するステップは、前記モーションデータに基づいて前記仮想空間内において前記第1のキャラクタをリアルタイムに動作させ、前記仮想空間内で当該第1のキャラクタが動作する映像を表示する。
(付記1)から(付記3)のいずれかにおいて、前記第1の表示用データは、外部から配信されるデータであって、演者の入力したモーションに対応するモーションデータを含み、前記表示するステップは、前記モーションデータに基づいて前記仮想空間内において前記第1のキャラクタをリアルタイムに動作させ、前記仮想空間内で当該第1のキャラクタが動作する映像を表示する。
(付記5):
(付記4)において、前記プロセッサに、前記所定のルールで変更された第1のオブジェクトの表示態様を特定するための第1のデータ(表示態様情報)を受信するステップ(S92)と、前記第1のデータに基づいて前記第1のオブジェクトの表示態様を設定するステップ(S93)を実行させる。
(付記4)において、前記プロセッサに、前記所定のルールで変更された第1のオブジェクトの表示態様を特定するための第1のデータ(表示態様情報)を受信するステップ(S92)と、前記第1のデータに基づいて前記第1のオブジェクトの表示態様を設定するステップ(S93)を実行させる。
(付記6):
(付記4)または(付記5)において、前記プロセッサに、視点を特定するための態様の少なくとも一部が異なる複数種類の視聴モード(通常視聴モード、AR視聴モード)のうちのいずれかに設定するステップを実行させ、前記表示するステップは、特定される視点から見た前記仮想空間の映像を表示し、前記複数種類の視聴モードのうちの第1の視聴モード(AR視聴モード)である場合には、前記第1のオブジェクトを表示する位置に視点を移動可能であり、前記第1の視聴モード以外のモードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である。
(付記4)または(付記5)において、前記プロセッサに、視点を特定するための態様の少なくとも一部が異なる複数種類の視聴モード(通常視聴モード、AR視聴モード)のうちのいずれかに設定するステップを実行させ、前記表示するステップは、特定される視点から見た前記仮想空間の映像を表示し、前記複数種類の視聴モードのうちの第1の視聴モード(AR視聴モード)である場合には、前記第1のオブジェクトを表示する位置に視点を移動可能であり、前記第1の視聴モード以外のモードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である。
(付記7):
(付記6)において、前記端末装置は、当該端末装置の位置および向きを検知する検知部と、タッチスクリーンとを備え、前記第1の視聴モードは、前記検知部により検知された位置および向きに基づいて視点を特定可能な視聴モードであり、前記複数種類の視聴モードは、前記タッチスクリーンに対するタッチ操作に基づいて視点を特定する第2の視聴モード(通常視聴モード)を含み、前記複数種類の視聴モードのうちの前記第2の視聴モードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である。
(付記6)において、前記端末装置は、当該端末装置の位置および向きを検知する検知部と、タッチスクリーンとを備え、前記第1の視聴モードは、前記検知部により検知された位置および向きに基づいて視点を特定可能な視聴モードであり、前記複数種類の視聴モードは、前記タッチスクリーンに対するタッチ操作に基づいて視点を特定する第2の視聴モード(通常視聴モード)を含み、前記複数種類の視聴モードのうちの前記第2の視聴モードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である。
(付記8):
(付記1)から(付記3)のいずれかにおいて、前記第1の表示用データは、外部から配信されるデータであって、前記所定のルールで表示態様が変更された第1のオブジェクトが関連付けられている第1のキャラクタが前記仮想空間内において動作する映像を含む動画データであり、前記表示するステップは、前記動画データに基づいて前記仮想空間内で前記第1のキャラクタが動作する映像を表示する。
(付記1)から(付記3)のいずれかにおいて、前記第1の表示用データは、外部から配信されるデータであって、前記所定のルールで表示態様が変更された第1のオブジェクトが関連付けられている第1のキャラクタが前記仮想空間内において動作する映像を含む動画データであり、前記表示するステップは、前記動画データに基づいて前記仮想空間内で前記第1のキャラクタが動作する映像を表示する。
(付記9):
(付記1)から(付記8)のいずれかにおいて、前記第1のキャラクタには、予め定められた第3のオブジェクトが関連付けられており、前記第3のオブジェクトは、前記第1のオブジェクトの少なくとも一部を覆うオブジェクトである。
(付記1)から(付記8)のいずれかにおいて、前記第1のキャラクタには、予め定められた第3のオブジェクトが関連付けられており、前記第3のオブジェクトは、前記第1のオブジェクトの少なくとも一部を覆うオブジェクトである。
(付記10):
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置において実行される方法であって、演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信するステップと、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップと、を備え、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様は、所定のルールで変更される。
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置において実行される方法であって、演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信するステップと、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップと、を備え、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様は、所定のルールで変更される。
(付記11):
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置であって、演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信し、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像をし、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様は、所定のルールで変更される。
本開示に示す一実施形態のある局面によれば、プロセッサを備える端末装置であって、演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信し、前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像をし、前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、前記第1のオブジェクトの表示態様は、所定のルールで変更される。
〔ソフトウェアによる実現例〕
ユーザ端末100、サーバ200、ゲームプレイ端末300(HMDセット1000)、および配信端末400の制御ブロック(特に制御部110、210、310、410)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
ユーザ端末100、サーバ200、ゲームプレイ端末300(HMDセット1000)、および配信端末400の制御ブロック(特に制御部110、210、310、410)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
後者の場合、ユーザ端末100、サーバ200、ゲームプレイ端末300(HMDセット1000)、および配信端末400は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
1 システム、2 ネットワーク、3、3A、3B ユーザ(第1ユーザ)、4 プレイヤ(演者)、10,20,30,40 プロセッサ、11,21,31,41 メモリ、12,22,32,42 ストレージ、13,23,33,43 通信IF、14,24,34,44 入出力IF、15,45 タッチスクリーン、17 カメラ、18 測距センサ、51 モニタ、52 注視センサ、53 第1カメラ、54 第2カメラ、55 マイク、56 スピーカ、100,100A,100B,100C ユーザ端末(コンピュータ、第1コンピュータ、第1情報処理装置)、110,210,310,410 制御部(第1制御部、第2制御部)、111,311,413 操作受付部、112,312,412 表示制御部、113,313 UI制御部、114,314 アニメーション生成部、115,315 ゲーム進行部、116,316 仮想空間制御部、117 動画再生部、120,220,320,420 記憶部(第1記憶部、第2記憶部)、131,231,331 ゲームプログラム(プログラム、第1プログラム)、132,232,332 ゲーム情報、133,233,333 ユーザ情報、151,451 入力部、152,452 表示部(ディスプレイ)、200 サーバ、211 通信仲介部、212 ログ生成部、213 リスト生成部、234,421 ユーザリスト、300 ゲームプレイ端末(外部装置、第2外部装置)、317 反応処理部、400 配信端末(外部、第1外部装置、コンピュータ、第2情報処理装置)、411 通信制御部、414 音声受付部、415 モーション特定部、416 動作指図データ生成部、422 モーションリスト、423 配信プログラム(プログラム、第2プログラム)、540,1020,1021 コントローラ、500 HMD、510 HMDセンサ、520 モーションセンサ、530 ディスプレイ、600A、600B 仮想空間、610 アバターオブジェクト(キャラクタ)、620A,620B 仮想カメラ、631,632,633,634 オブジェクト、640A,640B 視界領域、650,660 視界画像、671 敵オブジェクト、672,673 障害物オブジェクト、674 演出オブジェクト、691,692 発話、701,702,703A,70B,704A,704B,705,706,711,711A,711B,711C,711D,722,723,745,745A,745B,745C,752,762,763,930,2011、2022、2031、2032、2033、2034、2037、2038、2051、2063、2072、2073、2075 UI画像(メッセージUI、UI)、721 ダウンロード画面、731 ユーザリスト画面(リスト)、732,732A,732B,732C,742,742A,742B,742C レコード画像、733,733A,733B,733C ユーザ名、734,734A,734B,734C タグ情報、735,735A,735B,735C アイコン、741 モーションリスト画面(選択肢)、743,743A,743B,743C モーション名、744,744A,744B,744C,753 モーション画像、751 配信画面、761 配信完了画面、810A,810B モーション動画、820A,820B 発話音声、910A,910B 動画、920A,920B 音声、1000 HMDセット、1010 物体、1030 記憶媒体、2010 ホーム画面、2020 ランキング画面、2021 タイトル画像、2026,2026A,2026B 順位、2027,2027A,2027B 課金額、2028,2028A,2028B 送信回数、2029 送信済通知、2030 前回送信日、2035 詳細表示領域、2036 スクロールバー、2040 詳細画面、2050,2060 準備画面、2052 テキスト、2053、2061 選択画像、2054A、2054B、2054C、2062A,2062B,2062C,2062D,2062E,2062F 選択肢、2070 音声入力画面、2074 タグ画像
Claims (11)
- プロセッサを備える端末装置において実行されるプログラムであって、前記プロセッサに、
演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信するステップと、
前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップと、を実行させ、
前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、
前記第1のオブジェクトの表示態様は、所定のルールで変更される、プログラム。 - 前記プロセッサに、
演者の動作に連動して動く第2のキャラクタを含む仮想空間の映像を表示可能にするための第2の表示用データを受信するステップと、
前記第2の表示用データに基づいて、前記仮想空間内で前記第2のキャラクタが動作する映像を表示するステップと、を実行させ、
前記第2のキャラクタには、前記第1のオブジェクトと同種の第2のオブジェクトが関連付けられており、
前記第2のオブジェクトの表示態様は、固定されている、請求項1に記載のプログラム。 - 前記第1のオブジェクトの表示態様は、配信期間毎に、前回の配信期間における表示態様とは異なる表示態様に変更される、請求項1または請求項2に記載のプログラム。
- 前記第1の表示用データは、外部から配信されるデータであって、演者の入力したモーションに対応するモーションデータを含み、
前記表示するステップは、前記モーションデータに基づいて前記仮想空間内において前記第1のキャラクタをリアルタイムに動作させ、前記仮想空間内で当該第1のキャラクタが動作する映像を表示する、請求項1~請求項3のいずれかに記載のプログラム。 - 前記プロセッサに、
前記所定のルールで変更された第1のオブジェクトの表示態様を特定するための第1のデータを受信するステップと、
前記第1のデータに基づいて前記第1のオブジェクトの表示態様を設定するステップを実行させる、請求項4に記載のプログラム。 - 前記プロセッサに、
視点を特定するための態様の少なくとも一部が異なる複数種類の視聴モードのうちのいずれかに設定するステップを実行させ、
前記表示するステップは、特定される視点から見た前記仮想空間の映像を表示し、
前記複数種類の視聴モードのうちの第1の視聴モードである場合には、前記第1のオブジェクトを表示する位置に視点を移動可能であり、前記第1の視聴モード以外のモードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である、請求項4または請求項5に記載のプログラム。 - 前記端末装置は、当該端末装置の位置および向きを検知する検知部と、タッチスクリーンとを備え、
前記第1の視聴モードは、前記検知部により検知された位置および向きに基づいて視点を特定可能な視聴モードであり、
前記複数種類の視聴モードは、前記タッチスクリーンに対するタッチ操作に基づいて視点を特定する第2の視聴モードを含み、
前記複数種類の視聴モードのうちの前記第2の視聴モードである場合には、前記第1のオブジェクトを表示する位置に視点を移動不可能である、請求項6に記載のプログラム。 - 前記第1の表示用データは、外部から配信されるデータであって、前記所定のルールで表示態様が変更された第1のオブジェクトが関連付けられている第1のキャラクタが前記仮想空間内において動作する映像を含む動画データであり、
前記表示するステップは、前記動画データに基づいて前記仮想空間内で前記第1のキャラクタが動作する映像を表示する、請求項1~3のいずれかに記載のプログラム。 - 前記第1のキャラクタには、予め定められた第3のオブジェクトが関連付けられており、
前記第3のオブジェクトは、前記第1のオブジェクトの少なくとも一部を覆うオブジェクトである、請求項1~請求項8のいずれかに記載のプログラム。 - プロセッサを備える端末装置において実行される方法であって、
演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信するステップと、
前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像を表示するステップと、を備え、
前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、
前記第1のオブジェクトの表示態様は、所定のルールで変更される、方法。 - プロセッサを備える端末装置であって、
演者の動作に連動して動く第1のキャラクタを含む仮想空間の映像を表示可能にするための第1の表示用データを受信し、
前記第1の表示用データに基づいて、前記仮想空間内で前記第1のキャラクタが動作する映像をし、
前記第1のキャラクタには、予め定められた第1のオブジェクトが関連付けられており、
前記第1のオブジェクトの表示態様は、所定のルールで変更される、端末装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202080061197.3A CN114340749A (zh) | 2019-08-30 | 2020-08-06 | 程序、方法、以及终端装置 |
EP20858889.7A EP4023310A4 (en) | 2019-08-30 | 2020-08-06 | PROGRAM, METHOD AND TERMINAL DEVICE |
KR1020227010229A KR20220052363A (ko) | 2019-08-30 | 2020-08-06 | 프로그램, 방법, 및 단말 장치 |
US17/638,976 US20220297006A1 (en) | 2019-08-30 | 2020-08-06 | Program, method, and terminal device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-157900 | 2019-08-30 | ||
JP2019157900A JP6726345B1 (ja) | 2019-08-30 | 2019-08-30 | プログラム、方法、および端末装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021039347A1 true WO2021039347A1 (ja) | 2021-03-04 |
Family
ID=71663903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/030182 WO2021039347A1 (ja) | 2019-08-30 | 2020-08-06 | プログラム、方法、および端末装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220297006A1 (ja) |
EP (1) | EP4023310A4 (ja) |
JP (1) | JP6726345B1 (ja) |
KR (1) | KR20220052363A (ja) |
CN (1) | CN114340749A (ja) |
WO (1) | WO2021039347A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022147265A (ja) * | 2021-03-23 | 2022-10-06 | 株式会社コロプラ | プログラム、方法、および情報処理装置 |
JP7317325B1 (ja) * | 2022-04-27 | 2023-07-31 | グリー株式会社 | 情報処理システム、情報処理方法およびコンピュータプログラム |
JP7445272B1 (ja) | 2023-03-31 | 2024-03-07 | グリー株式会社 | 動画処理方法、動画処理システム、及び動画処理プログラム |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0120930B2 (ja) | 1986-11-22 | 1989-04-19 | Zenya Aruminiumu Seisakusho Kk | |
JPH0243403B2 (ja) * | 1981-09-09 | 1990-09-28 | ||
JPH0256301B2 (ja) * | 1982-12-23 | 1990-11-29 | Asahi Glass Co Ltd | |
US20050223328A1 (en) * | 2004-01-30 | 2005-10-06 | Ashish Ashtekar | Method and apparatus for providing dynamic moods for avatars |
JP2011515736A (ja) * | 2008-02-27 | 2011-05-19 | ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー | シーンの深度データをキャプチャし、コンピュータのアクションを適用する方法 |
JP2013517051A (ja) * | 2010-01-15 | 2013-05-16 | マイクロソフト コーポレーション | モーション・キャプチャー・システムにおけるユーザー意図の認識 |
JP2018007828A (ja) * | 2016-07-13 | 2018-01-18 | 株式会社バンダイナムコエンターテインメント | プログラム及び電子機器 |
CN107750005A (zh) * | 2017-09-18 | 2018-03-02 | 迈吉客科技(北京)有限公司 | 虚拟互动方法和终端 |
US20180174347A1 (en) * | 2016-12-20 | 2018-06-21 | Sony Interactive Entertainment LLC | Telepresence of multiple users in interactive virtual space |
JP6463535B1 (ja) * | 2018-04-27 | 2019-02-06 | 株式会社コロプラ | プログラム、情報処理装置、および方法 |
JP6473265B1 (ja) * | 2018-08-31 | 2019-02-20 | 株式会社バーチャルキャスト | コンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信方法及びプログラム |
US20190065027A1 (en) * | 2017-08-31 | 2019-02-28 | Apple Inc. | Systems, Methods, and Graphical User Interfaces for Interacting with Augmented and Virtual Reality Environments |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6091054U (ja) | 1983-11-29 | 1985-06-21 | ジロフレツクス エントヴイツクルンクス アクチエンゲゼルシヤフト | 椅子用脚 |
US6139433A (en) * | 1995-11-22 | 2000-10-31 | Nintendo Co., Ltd. | Video game system and method with enhanced three-dimensional character and background control due to environmental conditions |
US7445549B1 (en) * | 2001-05-10 | 2008-11-04 | Best Robert M | Networked portable and console game systems |
US8187104B2 (en) * | 2007-01-29 | 2012-05-29 | Sony Online Entertainment Llc | System and method for creating, editing, and sharing video content relating to video game events |
US20170282075A1 (en) * | 2014-09-24 | 2017-10-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, system and nodes for handling media streams relating to an online game |
US11836285B2 (en) * | 2017-03-10 | 2023-12-05 | Kenneth Perlin | System for a spectator to view a virtual reality of a performer and method |
JP6470356B2 (ja) * | 2017-07-21 | 2019-02-13 | 株式会社コロプラ | 仮想空間を提供するコンピュータで実行されるプログラム、方法、および当該プログラムを実行する情報処理装置 |
JP6420930B1 (ja) * | 2018-08-01 | 2018-11-07 | グリー株式会社 | アクターの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画を配信する動画配信システム、動画配信方法及び動画配信プログラム |
JP6556301B1 (ja) * | 2018-07-25 | 2019-08-07 | 株式会社バーチャルキャスト | コンテンツ配信サーバ、仮想キャラクタ提供サーバ、コンテンツ配信システム、コンテンツ配信方法及びプログラム |
JP6543403B1 (ja) * | 2018-12-12 | 2019-07-10 | グリー株式会社 | 動画配信システム、動画配信方法及び動画配信プログラム |
-
2019
- 2019-08-30 JP JP2019157900A patent/JP6726345B1/ja active Active
-
2020
- 2020-08-06 WO PCT/JP2020/030182 patent/WO2021039347A1/ja unknown
- 2020-08-06 KR KR1020227010229A patent/KR20220052363A/ko unknown
- 2020-08-06 EP EP20858889.7A patent/EP4023310A4/en active Pending
- 2020-08-06 CN CN202080061197.3A patent/CN114340749A/zh active Pending
- 2020-08-06 US US17/638,976 patent/US20220297006A1/en active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0243403B2 (ja) * | 1981-09-09 | 1990-09-28 | ||
JPH0256301B2 (ja) * | 1982-12-23 | 1990-11-29 | Asahi Glass Co Ltd | |
JPH0120930B2 (ja) | 1986-11-22 | 1989-04-19 | Zenya Aruminiumu Seisakusho Kk | |
US20050223328A1 (en) * | 2004-01-30 | 2005-10-06 | Ashish Ashtekar | Method and apparatus for providing dynamic moods for avatars |
JP2011515736A (ja) * | 2008-02-27 | 2011-05-19 | ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー | シーンの深度データをキャプチャし、コンピュータのアクションを適用する方法 |
JP2013517051A (ja) * | 2010-01-15 | 2013-05-16 | マイクロソフト コーポレーション | モーション・キャプチャー・システムにおけるユーザー意図の認識 |
JP2018007828A (ja) * | 2016-07-13 | 2018-01-18 | 株式会社バンダイナムコエンターテインメント | プログラム及び電子機器 |
US20180174347A1 (en) * | 2016-12-20 | 2018-06-21 | Sony Interactive Entertainment LLC | Telepresence of multiple users in interactive virtual space |
US20190065027A1 (en) * | 2017-08-31 | 2019-02-28 | Apple Inc. | Systems, Methods, and Graphical User Interfaces for Interacting with Augmented and Virtual Reality Environments |
CN107750005A (zh) * | 2017-09-18 | 2018-03-02 | 迈吉客科技(北京)有限公司 | 虚拟互动方法和终端 |
JP6463535B1 (ja) * | 2018-04-27 | 2019-02-06 | 株式会社コロプラ | プログラム、情報処理装置、および方法 |
JP6473265B1 (ja) * | 2018-08-31 | 2019-02-20 | 株式会社バーチャルキャスト | コンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信方法及びプログラム |
Non-Patent Citations (1)
Title |
---|
ANONYMOUS: "Thorough commentary! What is ''Virtual Cast'' that anyone can become VTuber?", MOGULIVE, 21 April 2018 (2018-04-21), XP055794105, Retrieved from the Internet <URL:https://www.moguravr.com/virtualcast-2> [retrieved on 20190121] * |
Also Published As
Publication number | Publication date |
---|---|
CN114340749A (zh) | 2022-04-12 |
JP6726345B1 (ja) | 2020-07-22 |
KR20220052363A (ko) | 2022-04-27 |
EP4023310A4 (en) | 2023-08-30 |
JP2021035454A (ja) | 2021-03-04 |
EP4023310A1 (en) | 2022-07-06 |
US20220297006A1 (en) | 2022-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6776400B1 (ja) | プログラム、方法、および情報端末装置 | |
JP6776393B2 (ja) | 視聴プログラム、視聴方法、および情報端末装置 | |
WO2021039347A1 (ja) | プログラム、方法、および端末装置 | |
WO2021039346A1 (ja) | プログラム、方法、および情報処理端末 | |
JP2021010181A (ja) | 視聴プログラム、視聴方法、および情報端末装置 | |
JP7479219B2 (ja) | プログラム、方法、および端末装置 | |
WO2020262331A1 (ja) | ゲームプログラム、ゲーム方法、および端末装置 | |
WO2020262332A1 (ja) | ゲームプログラム、ゲーム方法、および情報端末装置 | |
JP6813618B2 (ja) | 視聴プログラム、視聴方法、視聴端末、配信プログラム、配信方法、および情報端末装置 | |
JP7437480B2 (ja) | プログラム、方法、およびコンピュータ | |
JP2021168748A (ja) | プログラム、コンピュータ、および方法 | |
JP7332562B2 (ja) | プログラム、方法、および情報端末装置 | |
JP6818106B1 (ja) | プログラム、方法、および視聴端末 | |
JP6826645B1 (ja) | プログラム、方法、および端末装置 | |
WO2020255996A1 (ja) | プログラム、方法、および端末装置 | |
JP6776425B1 (ja) | プログラム、方法、および配信端末 | |
JP6754859B1 (ja) | プログラム、方法、およびコンピュータ | |
JP2021053406A (ja) | プログラム、方法、および端末装置 | |
JP2021058747A (ja) | ゲームプログラム、ゲーム方法、および端末装置 | |
JP2021053455A (ja) | プログラム、方法、および視聴端末 | |
JP2022028694A (ja) | プログラム、方法、および情報端末装置 | |
JP2021053453A (ja) | ゲームプログラム、ゲーム方法、および情報端末装置 | |
JP2022112769A (ja) | プログラム、方法、および情報端末装置 | |
JP2021053401A (ja) | プログラム、方法、および配信端末 | |
JP2021049391A (ja) | 視聴プログラム、視聴方法、視聴端末、配信プログラム、配信方法、および情報端末装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20858889 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20227010229 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2020858889 Country of ref document: EP Effective date: 20220330 |