Programs and systems
The program and system simplify the creation and movement of avatars by storing and applying setting information to avatar parts, allowing easy combination and movement through bones and parameters, addressing the complexity of conventional systems.
Patent Information
- Application Number
- JP2025085157
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-05-21
- Publication Date
- 2025-12-11
- Estimated Expiration
- 2045-05-21
AI Technical Summary
Conventional systems require complex setting and adjustment to move avatars created by combining various parts, making it difficult for users to freely manipulate their movements.
A program and system that stores image data and setting information for avatar parts, allowing users to easily combine parts and impart movement through a combination of bones, parameters, and movement information, enabling independent and relative movements of avatar components.
Enables users to easily create and move avatars by freely combining parts, simplifying the process and enhancing user interaction with avatars on screens.
Smart Images

Figure 0007784182000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a program and a system. [Background technology]
[0002] 2. Description of the Related Art Conventionally, there have been known programs that allow a user to create an avatar and move it on a screen.
[0003] For example, Patent Document 1 discloses a system in which a user creates an avatar by combining the avatar body with accessories for the avatar. This system executes a process to change the posture of the avatar by manipulating the movement of the avatar. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Publication No. 2024-099908 Summary of the Invention [Problem to be solved by the invention]
[0005] However, with conventional technologies including the system described in Patent Document 1, it was necessary to set the movement of an avatar made up of a combination of various parts, and in order to give movement to the generated avatar, the user had to perform complex setting and adjustment work, etc. This made it difficult to move an avatar on the screen, even though the user could freely combine numerous avatar-related parts to create an avatar.
[0006] The present invention has been made in consideration of these problems, and its purpose is to provide a program and system that allows a user to easily move an avatar that they have created by freely combining parts. [Means for solving the problem]
[0007] In order to solve the above problem, the program of the present invention causes a computer to function as a storage means for storing multiple image data corresponding to the type of each part of an avatar and setting information for adding movement to the multiple image data according to a combination of the multiple image data, a reception means for accepting a user's selection of two or more image data for each type from the multiple stored image data, and a generation means for generating avatar data of an avatar to which the movement has been added based on the setting information stored in the storage means, according to the combination of the two or more image data accepted by the reception means.
[0008] In another aspect of the program of the present invention, the setting information is information in which settings have been made in advance for moving each of the plurality of image data, and is also information that imparts the movement to the combined plurality of image data, the storage means stores a plurality of identification information for identifying each of the parts, the plurality of image data corresponding to each of the plurality of identification information, and the setting information corresponding to each of the plurality of image data, in association with each other, and the generation means generates avatar data of the avatar to which the movement has been imparted based on the setting information linked to the identification information.
[0009] In another aspect of the program of the present invention, the setting information includes adjustment information for adjusting the movement, and the adjustment information includes bone information regarding bones that form the skeleton of the avatar and are attached to the multiple image data, parameter information regarding at least parameters necessary to move the bones, and movement information regarding at least how the bones move in accordance with the parameters, and the generation means combines the bones attached to each of the two or more combined image data to generate avatar data for the avatar in which the relative positional relationships between the combined bones and the relative movements between the combined bones are adjusted based on the adjustment information.
[0010] In another aspect of the program of the present invention, the bones include at least a first bone added to image data corresponding to parts that make up the main body of the avatar, and a second bone added to image data corresponding to parts that make up accessories attached to the main body.
[0011] In another aspect of the program of the present invention, the adjustment information includes information that, when the image data to which the first bones have been added are combined, imparts movement such that the combined first bones operate independently of each other.
[0012] In another aspect of the program of the present invention, the adjustment information includes information that, when the image data to which the first bone has been added and the image data to which the second bone has been added are combined, gives the second bone a movement that follows the movement of the first bone.
[0013] In another aspect of the present invention, the program causes the computer to function as movement means for moving the avatar on the screen of the computer based on the movement set in the avatar data.
[0014] In another aspect of the program of the present invention, a user terminal operated by the user is made to function as the reception means and a first output means that outputs information regarding the two or more image data received by the reception means to a server device that can communicate with the user terminal, and the server device is made to function as the storage means and the generation means.
[0015] In another aspect of the program of the present invention, a user terminal operated by the user is made to function as the reception means, a first output means that outputs information regarding the two or more image data received by the reception means to a server device that can communicate with the user terminal, and the generation means, and the server device is made to function as the second output means that outputs the setting information corresponding to the two or more image data received by the reception means to the user terminal, and the storage means.
[0016] The system of the present invention comprises a storage means for storing a plurality of image data corresponding to the type of each part of an avatar and setting information for adding movement to the plurality of image data according to a combination of the plurality of image data; a reception means for accepting a user's selection of two or more image data for each type from the plurality of stored image data; and a generation means for generating avatar data of an avatar to which the movement has been added based on the setting information stored in the storage means according to the combination of the two or more image data accepted by the reception means. [Effects of the Invention]
[0017] According to the present invention, it is possible to provide a program and a system that allows a user to easily move an avatar that has been created by freely combining parts. [Brief explanation of the drawings]
[0018] [Figure 1] 1 is a block diagram showing the overall configuration of an avatar generation system according to a first embodiment. [Figure 2] FIG. 2 is a diagram illustrating an example of a hardware configuration of a server device according to the first embodiment. [Figure 3] FIG. 2 is a diagram illustrating an example of a hardware configuration of a user terminal according to the first embodiment. [Figure 4] 2 is a block diagram showing an example of functional units of a server device and a user terminal according to the first embodiment; FIG. [Figure 5] FIG. 2 is a schematic diagram showing an example of image data of the main body of an avatar to which essential bones have been added in the first embodiment. [Figure 6] FIG. 10 is a schematic diagram showing an example of image data in which image data of a main body to which essential bones have been added is combined with image data of an accessory to which additional bones have been added in the first embodiment. [Figure 7] FIG. 10 is a schematic diagram showing an example of image data in which image data of a main body to which essential bones have been added is combined with image data of other accessories to which additional bones have been added in the first embodiment. [Figure 8] FIG. 3 is a diagram showing an example of bone information and parameter information included in setting information in the first embodiment. [Figure 9] FIG. 3 is a diagram showing an example of bone information and movement information included in setting information in the first embodiment. [Figure 10A] FIG. 10 is a diagram showing an example of a reception screen that receives a user's selection of two or more image data by type from a plurality of image data in the first embodiment. [Figure 10B] FIG. 10 is a diagram showing another example of a reception screen that receives a user's selection of two or more image data by type from a plurality of image data in the first embodiment. [Figure 11A] FIG. 10 is a diagram showing an example of a state before a motion is performed on a motion screen on which a motion-imparted avatar is displayed. [Figure 11B] FIG. 10 is a diagram showing an example of a state after a movement on a movement screen on which an avatar with movement is displayed. [Figure 12] 1 is a flowchart showing the flow of processing executed by the avatar generation system according to the first embodiment. [Figure 13] 4 is a flowchart showing the flow of a generation process in the first embodiment. [Figure 14] FIG. 11 is a block diagram showing an example of functional units of a server device and a user terminal according to a second embodiment. [Figure 15] 10 is a flowchart showing the flow of processing executed by the avatar generation system according to the second embodiment. [Figure 16] 10 is a flowchart showing the flow of a distribution process in the first embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0019] First Embodiment A first embodiment of the present invention will be described below.
[0020] --Overall structure-- FIG. 1 is a block diagram showing the overall configuration of an avatar generation system 1 according to a first embodiment. The avatar generation system 1 shown in FIG. 1 is a system that allows a user to freely combine parts to generate an avatar and easily move the generated avatar. As shown in FIG. 1, the avatar generation system 1 according to the first embodiment includes a server device 10 and multiple terminal devices 20, 20a, and 20b. These devices are configured to be able to communicate with each other via a communication network NT such as the Internet or a telephone network. Hereinafter, a user who generates an avatar using the avatar generation system 1 will be simply referred to as a "user," and a terminal device 20 operated by the user will be referred to as a "user terminal 20."
[0021] Avatar generation system 1 generates an avatar by combining multiple pieces of image data 10A2 (see FIG. 4) corresponding to the types of avatar features. Movements are imparted to the avatar data of the generated avatar based on the combination of image data 10A2. The generated avatar can be moved according to the movements imparted to the avatar data. Note that, as used herein, "avatar data of an avatar to which movements are imparted" refers to data in which the movement of the avatar is expressed by multiple successive pieces of image data, such as video data. For example, if the movement of the avatar's eyes is to close, a series of image data, starting with image data 10A2 showing the eyes open, gradually closing the eyelids, and ending with the eyelids being closed, corresponds to avatar data of an avatar to which the movement of the eyes is imparted.
[0022] The server device 10 is an information processing device (computer) that provides the results of execution of a system program (program) (hereinafter simply referred to as the "system program") of the avatar generation system 1 to users who own user terminals 20 via a communication network NT. The server device 10 executes the system program and outputs the execution results (image data, etc.) to the user terminals 20.
[0023] The user terminal 20 is an information processing device (computer) owned by a user. A system program is installed in the user terminal 20. The user terminal 20 outputs the results of the program executed by the server device 10 and the user terminal 20 to the user. Examples of the user terminal 20 include various devices such as a mobile phone, a smartphone, a tablet, and a personal computer.
[0024] --Hardware configuration-- Next, the hardware configuration of the server device 10 will be described.
[0025] Fig. 2 is a diagram showing an example of the hardware configuration of the server device 10 according to the first embodiment. As shown in Fig. 2, the server device 10 includes a control device 12, a communication device 14, and a storage device 16. The control device 12 is mainly configured to include a CPU (Central Processing Unit) 12a and a memory 12b.
[0026] In the control device 12, the CPU 12a executes predetermined programs stored in the memory 12b or the storage device 16, etc., thereby functioning as various functional means. Details of these functional means will be described later.
[0027] The communication device 14 is configured with a communication interface for communicating with an external device, etc. The communication device 14 transmits and receives various information to and from the user terminal 20, for example.
[0028] The storage device 16 stores various programs and information necessary for executing processes in the control device 12, including a system program, as well as information on the results of the processes. The storage device 16 is, for example, a computer-readable instruction recording medium (non-transitory computer-readable instruction recording medium) and is configured with a hard disk, solid-state drive, or the like. The storage device 16 stores various programs and information necessary for executing processes in the control device 12, as well as information on the results of the processes. Other examples of non-transitory computer-readable instruction recording media include portable recording media such as magnetic tape, flexible disks, optical disks, digital versatile disks, Blu-ray disks, magneto-optical disks, memory cards, and USB memory.
[0029] The server device 10 can be realized using an information processing device such as a dedicated or general-purpose server computer. The server device 10 may be configured from a single information processing device or from multiple information processing devices distributed over a communication network NT. Fig. 2 shows only a portion of the main hardware configuration of the server device 10, and the server device 10 may also have other configurations that are generally included in a server.
[0030] Next, the hardware configuration of the user terminal 20 will be described.
[0031] Fig. 3 is a diagram showing an example of the hardware configuration of a user terminal 20 according to the first embodiment. As shown in Fig. 3, the user terminal 20 includes a main control unit 21, a touch panel (touch screen) 22, a camera 23, a speaker 24, a mobile communication unit 26, a wireless LAN communication unit 27, and a storage unit 28. Note that the touch panel 22 is an example of an input device, and the input device is not limited to the touch panel 22. Furthermore, a microphone may be included as an input device.
[0032] The main control unit 21 is configured to include a CPU, a memory, etc. The main control unit 21 is connected to a touch panel 22 as a display input device, a camera 23, a speaker 24, a mobile communication unit 26, a wireless LAN communication unit 27, and a storage unit 28. The main control unit 321 has a function of controlling these connection destinations.
[0033] The touch panel 22 has both a display function and an input function, and is composed of a display 22A that performs the display function and a touch sensor 22B that performs the input function. The display 22A can display images (moving images) and operation input images such as button images. The touch sensor 22B can detect the input position of the player relative to the display 22A.
[0034] The camera 23 has a function of taking still images and / or videos and storing them in the storage unit 28. The mobile communication unit 26 has a function of connecting to a mobile communication network via an antenna 26A and communicating with other communication devices connected to the mobile communication network. The wireless LAN communication unit 27 has a function of connecting to a communication network NT via an antenna 27A and communicating with other devices such as the server device 10 connected to the communication network NT.
[0035] Various programs and various data such as player information are stored in the storage unit 28. A system program is also stored in the storage unit 28. The speaker 24 has a function of outputting sound and the like.
[0036] --Functional configuration-- Next, the functional configuration of the server device 10 and the user terminal 20 will be described.
[0037] Fig. 4 is a block diagram showing an example of functional means of the server device 10 and the user terminal 20 according to the first embodiment. As shown in Fig. 4, the server device 10 has, as its functional configuration, a storage means 10A, a server-side output means (second output means) 10B, and a control means 10C. The storage means 10A is realized by one or more storage devices 16. These functional means are realized by the control device 12 executing a system program stored in the storage device 16 or the like.
[0038] The storage means 10A has a function of storing identification information 10A1, image data 10A2, setting information 10A3, etc. The storage means 10A also stores the identification information 10A1, the image data 10A2, and the setting information 10A3 corresponding to each of the plurality of image data 10A2 in association with each other.
[0039] Identification information 10A1 is information for identifying each part (hair, head, torso, both hands, both legs, clothing, accessories, etc.) that makes up a humanoid avatar (a girl's avatar in the example shown in the first embodiment). Each part may include main parts such as hair and head, and sub-parts such as bangs, back hair, eyes, nose, eyebrows, etc. Identification information 10A1 includes an identification number assigned to each type of avatar part. In the first embodiment, an identification number ranging from P001 to PXXX (XXX is an arbitrary number) is assigned to each type of avatar part.
[0040] The image data 10A2 includes a plurality of image data 10A2 corresponding to the types of each part of the avatar. For example, the image data 10A2 constituting the head (face) of the avatar includes image data 10A2 of eyebrows, eyelashes, eyes, nose, mouth, etc. Furthermore, the image data 10A2 of clothing and accessories to be worn on the avatar's body includes image data 10A2 of underwear, middlewear, outerwear, footwear, skirts, hats, etc.
[0041] Bones, which are the skeleton of the avatar, are set in advance for at least some of the parts of the avatar. Bones are necessary to control the movement of the avatar, and the movement of the avatar is expressed by the rotation and movement of the bones. Bones are expressed, for example, as a combination of lines (line sections EB1 and EB2, which will be described later) and points (point sections EB2 and AB2, which will be described later), and include at least a required bone (first bone) EB (see FIG. 5) that is added to the main body 30 of the avatar, and an additional bone (second bone) AB (see FIG. 6) that is added to accessories (clothing, accessories, etc.) of the avatar. Note that the additional bone AB may not be set for all accessories of the avatar, and may be set in advance for some accessories.
[0042] The setting information 10A3 is information for imparting movement to each image data 10A2 according to the combination of the image data 10A2. More specifically, the setting information 10A3 is information in which settings for moving the image data 10A2 are made in advance for each of the plurality of image data 10A2. Furthermore, the setting information 10A3 is information for imparting movement to the plurality of combined image data 10A2. The setting information 10A3 includes adjustment information for adjusting the movement imparted to each image data 10A2.
[0043] Specifically, the adjustment information includes relative information, bone information 60 (see FIG. 8) regarding bones to be added to each image data 10A2, parameter information 62 (see FIG. 8) regarding parameters required to move the bones, and movement information 64 (see FIG. 9) regarding how the bones move according to the parameters.
[0044] The adjustment information may also include information about deformers preset for some parts, or information about parameters other than the deformers preset for some parts. In this specification, a deformer refers to a function for easily controlling the movement of an avatar, such as a function that can collectively move vertices preset on each part (object) in image data 10A2. Examples of deformers include rotation deformers and warp deformers. A rotation deformer is a function that rotates, enlarges, or reduces an object, while a warp deformer is a function that deforms an object to add movement. Note that parameter information 62 may also include information about parameters required to move a part to which a deformer is set.
[0045] The relative information is information about the relative positions and movement relationships between bones when image data 10A2 to which an essential bone EB has been added is combined with image data 10A2 to which another essential bone EB or additional bone AB has been added. The relative information also includes information that, when image data 10A2 to which an essential bone EB has been added is combined, imparts movement to the combined essential bones EB so that they move independently of each other. The relative information also includes information that, when image data 10A2 to which an essential bone EB has been added is combined with image data 10A2 to which an additional bone AB has been added, imparts movement to the additional bone AB so that it moves in accordance with the movement of the essential bone EB.
[0046] The bone information 60 is information for identifying a bone, such as the left eye bone or the hat bone. The bone information 60 includes information indicating the position and shape of the bone in the image data 10A2, at least for the additional bone AB. The parameter information 62 is information regarding parameters for moving the bone, such as parameter XXX for the open eye state and parameter YYY for the closed eye state. The movement information 64 is a parameter for specifying the type of movement when transitioning from parameter XXX to parameter YYY (when transitioning from the open eye state to the closed eye state). The relative information, bone information 60, parameter information 62, and movement information 64 are preset for each bone. While the first embodiment illustrates a configuration in which bones are preset for the eye features, the above-described deformers may be preset for features such as the eyes and mouth instead of bones.
[0047] Here, the bones added to each image data 10A2 will be described with reference to FIGS. 5 to 7. FIG. 5 is a schematic diagram showing an example of image data of the avatar main body 30 to which a required bone EB has been added (hereinafter referred to as "first image data ID1"). FIG. 6 is a schematic diagram showing an example of image data (hereinafter referred to as "second image data ID2") in which the first image data ID1 is combined with image data 10A2 of an accessory to which an additional bone AB has been added. FIG. 7 is a schematic diagram showing an example of image data (hereinafter referred to as "third image data ID3") in which the first image data ID1 is combined with image data 10A2 of another accessory to which an additional bone AB has been added. Note that the accessory image data 10A2 shown in FIGS. 6 and 7 also has a required bone EB added, but this is not shown.
[0048] 5, the first image data ID1 is image data 10A2 that combines image data 10A2 of each part of the avatar's main body 30: the head 32, torso 34, both hands 36, and both legs 38. Each of the image data 10A2 of the torso 34, both hands 36, and both legs 38, excluding the head 32, has an essential bone EB. These essential bones EB include a linear portion EB1 that forms the skeleton, and a dot-like portion EB2 that is set to a position relative to other essential bones EB or additional bones AB. The essential bones EB are set so that the linear portion EB1 moves using the dot-like portion EB2 as a joint (fulcrum).
[0049] In the example shown in FIG. 5, the essential bones EB of the torso 34 are made up of essential bones EB extending in three vertical rows. Point-like portions EB2 are set on the torso 34 near the neck 30a, near both shoulders 30b, and near the abdomen 30c. The essential bones EB of both hands 36 are made up of essential bones EB extending to the right and left hands, respectively. Point-like portions EB2 are set on both hands 36 near the bases of both hands and near the elbows. The essential bones EB of both legs 38 are made up of essential bones EB extending to the right and left legs, respectively, and essential bones EB extending from both sides of the waist 38a. Point-like portions EB2 are set on both legs 38 near the bases of both legs, near the ankles, and near both sides of the waist 38a.
[0050] As shown in FIG. 6, the second image data ID2 is image data 10A2 in which image data 10A2 of accessories, such as middlewear, underwear, and footwear, are combined with the first image data ID1. In the example shown in FIG. 6, image data of a one-piece dress 40 is combined with the first image data ID1 as middlewear. Furthermore, image data 10A2 of knee-socks 42 is combined with the first image data ID1 as underwear. Furthermore, image data 10A2 of shoes 44 is combined with the first image data ID1 as footwear. Of these, an additional bone AB is set in the image data 10A2 of the one-piece dress 40. Like the essential bone EB, this additional bone AB includes a linear portion AB1 that forms a skeleton and a dot-like portion AB2 that is set to a position relative to the essential bone EB. The additional bone AB is set so that the linear portion AB1 moves with the dot-like portion AB2 as a joint (fulcrum).
[0051] 6, the additional bones AB of the one-piece dress 40 consist of at least three additional bones AB set in the skirt portion 40A. Dotted portions AB2 are set at the base portions on both sides of the skirt portion 40A and at the center of the skirt portion 40A. These dotted portions AB2 of the one-piece dress 40 are relatively associated with the essential bones EB of the torso 34. Then, in the second image data ID2, based on the relative information in the setting information 10A3, movement is imparted to the skirt portion 40A of the one-piece dress 40 so that it moves in accordance with the movement of the essential bones EB of the main body 30, with these dotted portions AB2 as fulcrums.
[0052] As shown in FIG. 7, the third image data ID3 is image data 10A2 in which image data 10A2 of outerwear, middlewear, and footwear, which are accessories, are combined with the first image data ID1. In the example shown in FIG. 7, image data of a half cape 50 as outerwear is combined with the first image data ID1. Furthermore, image data 10A2 of a tuxedo 52 as middlewear is combined with the first image data ID1. Furthermore, image data 10A2 of boots 54 as footwear is combined with the first image data ID1. Of these, additional bones AB are set in the image data 10A2 of the half cape 50.
[0053] 7, the additional bones AB of the half cloak 50 are two additional bones AB set in a portion of the half cloak 50 below the height of the waist 38a. Dotted portions AB2 are set on one side of the waist 38a, in the center of the waist 38a, and on the lower portion of the half cloak 50 (at the height of the upper end 54a of the boot 54), respectively. These dotted portions AB2 of the half cloak 50 are relatively associated with the essential bones EB of the torso 34. Then, in the third image data ID3, based on the relative information of the setting information 10A3, movement is imparted to the portion of the half cloak 50 below the height of the waist 38a so that it moves in accordance with the movement of the essential bones EB of the main body 30, with these dotted portions AB2 as fulcrums.
[0054] Next, an example of setting information 10A3 associated with identification information 10A1 stored in storage means 10A will be shown with reference to Figures 8 and 9. Figure 8 is a diagram showing an example of bone information 60 and parameter information 62 included in setting information 10A3. Figure 9 is a diagram showing an example of bone information 60 and movement information 64 included in setting information 10A3.
[0055] In the example shown in Fig. 8, bone information 60 indicates that the bone is one of the bones for the left eye, that the bone is a required bone EB, and that the identification number (identification information 10A1) of the bone is P012. Also, parameter information 62 indicates that the parameter for the left eye's open state (open state) is XXX, and the parameter for the left eye's closed state (closed state) is YYY. Also, parameter information 62 indicates that the open state is 5 seconds, the time required to transition from the open state to the closed state is 0.3 seconds, the closed state is 0.5 seconds, and the time required to transition from the closed state to the open state is 0.2 seconds. These settings allow the left eye to blink.
[0056] The blinking action is not limited to the above settings, and may be preset to, for example, transition from an open state to a closed state and then immediately transition back to the open state instantaneously, or may be set to occur randomly.
[0057] In the example shown in FIG. 9, bone information 60 specifies that the bone is one of the bones of the skirt, that the bone is an additional bone AB, and that the identification number (identification information 10A1) of the bone is P052. Furthermore, movement information 64 specifies the "movement distance," "rotation," and "reaction speed" of the skirt when the additional bone AB of the skirt is connected to the essential bone EB of the main body 30. In the example shown in FIG. 9, the "movement distance" is specified such that when the essential bone EB of the waist 38a of the main body 30 moves a distance X, the additional bone AB of the skirt moves a distance 2X. Furthermore, the "rotation" is specified such that when the essential bone EB of the waist 38a of the main body 30 rotates around the Y-axis AX1 (see FIG. 5), the additional bone AB of the skirt also rotates around the Y-axis AX1. Furthermore, the "reaction speed" is specified such that when the essential bone EB of the waist 38a of the main body 30 is 1, the additional bone AB of the skirt moves 1.5, i.e., the additional bone AB of the skirt moves 0.5 seconds behind the movement of the essential bone EB of the waist 38a. In the example shown in FIG. 9, all of "movement distance," "rotation," and "reaction speed" are set as movement information 64, but it is not necessary for all of these to be set, and at least one of them may be set.
[0058] As described above, bone information 60, parameter information 62, and movement information 64 are set in advance for each of the multiple bones (including both the essential bones EB and the additional bones AB) set in at least a part of each body part.
[0059] 4, the following description will be given of the functional means of the server device 10 and the user terminal 20. The server-side output means 10B executes a server-side output process for outputting to the user terminal 20 setting information 10A3 corresponding to two or more image data 10A2 accepted by the accepting means 20A of the user terminal 20, which will be described later. Furthermore, when the server device 10 receives two or more pieces of image data 10A2 accepted by the accepting means 20A, the server-side output means 10B outputs to the user terminal 20 identification information 10A1 and setting information 10A3 linked to the received plurality of image data 10A2.
[0060] The control means 10C has a function of controlling the entire server device 10. For example, the control means 10C determines whether or not two or more image data 10A2 accepted by the accepting means 20A from the user terminal 20 have been received.
[0061] On the other hand, as shown in FIG. 4, the user terminal 20 has, as its functional configuration, a receiving means 20A, a generating means 20B, a terminal side output means (first output means) 20C, an operating means 20D, and a control means 20E.
[0062] The accepting means 20A executes an accepting process for accepting a user's selection of two or more image data 10A2 by type from the plurality of image data 10A2 stored in the storage means 10A. In the first embodiment, the user can first select image data 10A2 that constitutes the avatar's main body 30 to which the essential bones EB have been added. After selecting the image data 10A2 that constitutes the avatar's main body 30, the user can then select two or more image data 10A2 of the avatar's accessories to which the additional bones AB have been added. Note that the image data 10A2 that constitutes the avatar's main body 30 may be a single piece of image data, or may be divided into multiple pieces for each part that constitutes the main body 30.
[0063] 10A and 10B, an example of the reception process executed by the reception unit 20A is shown. Fig. 10A is a diagram showing an example of a reception screen 70A that receives a user's selection of two or more image data 10A2 for each part type from a plurality of image data 10A2 in the first embodiment. Fig. 10B is a diagram showing another example of a reception screen 70B that receives a user's selection of two or more image data 10A2 for each part type from a plurality of image data 10A2 in the first embodiment.
[0064] The reception screen 70A shown in FIG. 10A is a screen for accepting a user's selection of avatar hair image data 10A2. In the example shown in FIG. 10A, an enlarged image of the avatar's head (face) is displayed in an avatar display area 72A at the top of the reception screen 70A. Nine image data 10A2 representing hair parts are displayed in a selection area 74A at the bottom of the reception screen 70A. The user can select the tapped hair image data 10A2 by tapping one of the nine image data 10A2. When the user selects one of the hair image data 10A2, the selected hair part is reflected in the avatar displayed in the display area 72A.
[0065] The reception screen 70B shown in FIG. 10B is a screen for accepting a user's selection of image data 10A2 of middleware to be attached to an avatar. In the example shown in FIG. 10B, the entire avatar is displayed in an avatar display area 72B at the top of the reception screen 70B. Nine image data 10A2 representing middleware parts are displayed in a selection area 74B at the bottom of the reception screen 70B. The user can select the image data 10A2 of the tapped middleware by tapping any of the nine image data 10A2. When the user selects any of the middleware image data 10A2, the selected middleware part is reflected in the avatar displayed in the display area 72A.
[0066] Returning to Figure 4, the generation means 20B executes a generation process to generate avatar data of an avatar to which movement has been added based on the setting information 10A3 stored in the storage means 10A in accordance with a combination of two or more image data 10A2 received by the reception means 20A.
[0067] In the generation process, the generation means 20B first combines two or more pieces of image data 10A2 selected by the user. Specifically, the generation means 20B combines, for example, image data 10A2 constituting the avatar main body 30 to which the essential bones EB have been added, with image data 10A2 of a plurality of accessories to which the essential bones EB and additional bones AB have been added.
[0068] Next, the generating means 20B reads out setting information 10A3 linked to the identification information 10A1 (identification number) of each of the combined image data 10A2. Specifically, the generating means 20B outputs information about the two or more image data 10A2 accepted by the accepting means 20A (identification information 10A1 for identifying parts of the image data 10A2 selected by the user) to the server device 10 via the terminal-side output means 20C, which will be described later. Then, the generating means 20B inputs setting information 10A3 corresponding to these image data 10A2 output from the server device 10 by the server-side output means 10B.
[0069] Since setting information 10A3 corresponding to each image data 10A2 is set in advance, the generation means 20B reads out the setting information 10A3 and imparts movement to the combined avatar image data 10A2. Specifically, the generation means 20B reads out the setting information 10A3 and combines the required bones EB and additional bones AB added to each image data 10A2 as shown in FIGS. 5 to 7. This allows the relative positional relationships between the combined bones, the relative movements between the combined bones, and the movements of parts for which parameters other than bones (deformers) are set in advance to be imparted based on the setting information 10A3, without any additional setting of the avatar's movement. The generation means 20B then generates avatar data for the avatar to which movement has been imparted (hereinafter referred to as "set avatar 82 (see FIG. 11A)").
[0070] The terminal side output means 20C outputs to the server device 10 information relating to the two or more image data 10A2 accepted by the accepting means 20A.
[0071] The movement means 20D executes movement processing to move the avatar on the screen of the user terminal 20 based on the movement set in the avatar data generated by the generation means 20B.
[0072] 11A and 11B, an example of the operation process executed by the operation means 20D is shown. Fig. 11A is a diagram showing an example of a state before an operation on an operation screen 80A displaying the set avatar 82. Fig. 11B is a diagram showing an example of a state after an operation on an operation screen 80B displaying the set avatar 82.
[0073] 11A, the action screen 80A displays the set avatar 82 facing forward before performing a movement. Meanwhile, in the example shown in FIG. 11B, the action screen 80B displays the set avatar 82 performing a head movement. Specifically, compared to the set avatar 82 displayed in the action screen 80A, the head (face) of the set avatar 82 displayed in the action screen 80B is rotated slightly to the left around the Y-axis AX1, and the eyes, nose, and mouth, which make up the face, have moved slightly to the left. Furthermore, compared to the set avatar 82 displayed in the action screen 80A, the hair of the set avatar 82 in the action screen 80B is slightly fluttering (moving) to the left as the head (face) rotates.
[0074] The movement of the set avatar 82 as described above is realized, for example, as follows. In the set avatar 82, setting information 10A3 regarding a required bone EB (hereinafter referred to as a "head-neck bone EB") that moves independently of a required bone EB located in the neck portion of the torso part (hereinafter referred to as a "neck portion required bone EB") among the multiple required bones EB of the head part is set in advance as follows: "Rotation" is set as the movement information 64 for the head-neck bone EB. Specifically, the movement information 64 is set to rotate independently about the Y-axis AX1 with respect to the neck portion required bone EB. With such settings made in advance, by combining the image data 10A2 of the head with the image data 10A2 of the torso, the set avatar 82 realizes a rotational movement of the head about the Y-axis AX1 relative to the torso. Note that the movement of the set avatar 82 based on such settings is executed, for example, by the user inputting the movement into the user terminal 10. The movement is input, for example, by motion tracking or the like, which acquires movement data corresponding to the user's movement captured by the camera 23 or the like of the user terminal 120.
[0075] Additionally, in the set avatar 82, additional bones AB are set for the hair (bangs) part. Of these additional hair bones AB, the additional bone AB that is relatively related to the essential head bone EB has "reaction speed" set as movement information 64. Specifically, the movement information 64 is set so that the additional hair bones AB move 0.5 seconds behind the movement of the essential head bone EB. With these settings made in advance, by combining the head image data 10A2 with the hair (bangs) image data 10A2, the hair of the set avatar 82 moves in accordance with the rotation of the head. This allows the hair to move in a natural manner.
[0076] 4, control means 20E has a function of controlling the entire user terminal 20. For example, control means 20E determines whether or not identification information 10A1 and setting information 10A3 have been received from server device 10.
[0077] --Processing flow-- Next, referring to Fig. 12, an example of the flow of processing executed by server device 10 and user terminal 20 in a series of steps in which a user uses avatar generation system 1 to generate an avatar with animation will be described. Fig. 12 is a flowchart showing the flow of processing executed by avatar generation system 1 according to the first embodiment. This series of processing is started, for example, when a user launches an application for a program and taps a start button on user terminal 20 in which the program has been installed.
[0078] (Step S10) The reception means 20A of the user terminal 20 executes reception processing. That is, reception screens 70A and 70B as shown in FIGS. 10A and 10B are displayed on the screen of the user terminal 20. The user can select image data 10A2 for each part of the avatar to be generated on the reception screens 70A and 70B displayed on the screen of the user terminal 20. The reception means 20A accepts the image data 10A2 that the user taps and specifies on the reception screens 70A and 70B as the image data 10A2 selected by the user. Then, the processing proceeds to step S12.
[0079] (Step S12) The terminal-side output means 20C of the user terminal 20 outputs information relating to the two or more image data 10A2 accepted by the acceptance means 20A to the server device 10. Specifically, the terminal-side output means 20C collectively (groups) the two or more image data 10A2 selected by the user on the acceptance screens 70A and 70B as a selection result to the server device 10.
[0080] When the control means 10C determines that the selection results have been received from the user terminal 20, the server-side output means 10B of the server device 10 outputs the identification information 10A1 and the setting information 10A3 linked to the received plurality of image data 10A2 (selection results) to the user terminal 20. Then, the process proceeds to step S14.
[0081] (Step S14) When generation means 20B of user terminal 20 determines that control means 20E has received identification information 10A1 and setting information 10A3 from server device 10, generation means 20B executes generation processing. The detailed flow of the generation processing will be described later. Then, the processing proceeds to step S16.
[0082] (Step S16) The operation means 20D of the user terminal 20 executes the operation process. That is, the avatar is operated on the operation screens 80A and 80B of the user terminal 20 based on the movements set in the avatar data generated in the generation process. Then, the control means 20E ends the series of processes shown in FIG.
[0083] Next, a detailed description will be given of the flow of the generation process executed in step S14 by the generation means 20B of the user terminal 20. Fig. 13 is a flowchart showing the flow of the generation process in the first embodiment.
[0084] (Step S14A) The generating means 20B combines two or more pieces of image data 10A2 selected by the user in the reception process. Specifically, the generating means 20B combines, for example, image data 10A2 constituting the avatar main body 30 to which the essential bones EB have been added, with image data 10A2 of a plurality of accessories (clothes, accessories, etc.) to which the essential bones EB and additional bones AB have been added. Then, the process proceeds to step S14B.
[0085] (Step S14B) The generating means 20B reads out the setting information 10A3 linked to the identification information 10A1 (identification number) of each of the combined image data 10A2. Specifically, the generating means 20B receives the identification information 10A1 and the setting information 10A3 corresponding to these image data 10A2 output from the server device 10. Then, the process proceeds to step S14C.
[0086] (Step S14C) When generation means 20B receives identification information 10A1 and setting information 10A3 from server device 10, movement is imparted to image data 10A2 of the combined avatar based on the preset identification information 10A1 and setting information 10A3, without the user having to perform any additional settings regarding the avatar's movement. Specifically, generation means 20B combines each essential bone EB and each additional bone AB added to each image data 10A2 to generate avatar data for an avatar in which the relative positional relationships and relative movements of the combined bones are set based on setting information 10A3. Then, the process proceeds to step S14D.
[0087] (Step S14D) Generation means 20B generates avatar data for set avatar 82. The avatar data for the generated avatar is stored in storage unit 28 or the like of user terminal 20. Then, generation means 20B ends the series of processes shown in FIG.
[0088] --effect-- As described above, the program provided in the avatar generation system 1 according to the first embodiment causes a computer (server device 10, user terminal 20) to function as: storage means 10A that stores multiple image data 10A2 corresponding to the type of each part of the avatar and setting information 10A3 for adding movement to the multiple image data 10A2 according to combinations of the multiple image data 10A2; reception means 20A that accepts a user's selection of two or more image data 10A2 by type from the multiple stored image data 10A2; and generation means 20B that generates avatar data of an avatar to which movement has been added based on the setting information 10A3 stored in storage means 10A according to the combination of two or more image data 10A2 accepted by reception means 20A.
[0089] With this configuration, a user can freely select multiple image data 10A2 corresponding to the type of avatar part according to their preference, and generate an avatar by combining the two or more selected image data 10A2. Then, without the user having to configure any additional settings for the avatar's movement, the generated avatar is given a movement based on the setting information 10A3 in accordance with the combination of the two or more image data 10A2 selected by the user. For example, different movements are given depending on the combination of the image data 10A2 of two or more accessories selected by the user. This allows the user to easily move the avatar they have generated according to their preference with a wide variety of movements. In this way, the program included in the avatar generation system 1 allows the user to easily move the avatar they have generated by freely combining parts.
[0090] In addition, in the program provided in the avatar generation system 1, the setting information 10A3 is information in which settings have been made in advance for each of the multiple image data 10A2 to move the image data 10A2, and is also information that imparts movement to the combined multiple image data 10A2, and the storage means 10A stores multiple identification information 10A1 for identifying each part, multiple image data 10A2 corresponding to each of the multiple identification information 10A1, and setting information 10A3 corresponding to each of the multiple image data 10A2, in association with each other, and the generation means 20B generates an avatar to which movement has been imparted based on the setting information 10A3 linked to the identification information 10A1.
[0091] With this configuration, because setting information 10A3 corresponding to each image data 10A2 is set in advance, avatar data can be generated for an avatar with movement based on setting information 10A3 in accordance with a combination of two or more image data 10A2 selected by the user, without the user having to configure any settings for the avatar's movement. This eliminates the need for the user to perform complex settings or adjustments to configure the avatar's movement, and allows for easy generation of avatars that can move in a wide variety of ways.
[0092] In addition, in the program provided in the avatar generation system 1, the setting information 10A3 includes adjustment information for adjusting movement, and the adjustment information includes bone information 60 (see Figure 8) relating to bones that form the skeleton of each part and are attached to multiple image data 10A2, parameter information 62 (see Figure 8) relating to at least the parameters required to move the bones, and movement information 64 (see Figure 9) relating to at least the movement of the bones according to the parameters.The generation means 20B combines the bones attached to each of the two or more combined image data 10A2 to set avatar data for an avatar in which the relative positional relationships between the combined bones and the relative movements between the combined bones are adjusted based on the adjustment information.
[0093] This provides a specific configuration for imparting relative movement between the required bones EB and additional bones AB added to the image data 10A2 for an avatar generated by combining two or more image data 10A2.
[0094] In addition, in the program provided in the avatar generation system 1, the bones added to the image data 10A2 include at least required bones EB added to the image data 10A2 corresponding to the parts that make up the main body 30 of the avatar, and additional bones AB added to the image data 10A2 corresponding to the parts that make up the accessories attached to the main body 30.
[0095] According to this configuration, the bones (essential bones EB) added to the image data 10A2 of the avatar's main body 30 are pre-set to be distinguished from the bones (additional bones AB) added to the image data 10A2 of the avatar's accessories, thereby allowing the avatar to be given more realistic or more cute movements.
[0096] In addition, in the program provided in the avatar generation system 1, the adjustment information includes information that, when image data 10A2 to which essential bones EB have been added are combined, adds movement so that the combined essential bones EB move independently of each other.
[0097] According to this configuration, when image data 10A2 to which essential bones EB are added are combined, it is possible to provide specific movements of the essential bones EB.
[0098] In addition, in the program provided in the avatar generation system 1, the adjustment information includes information that, when image data 10A2 to which an essential bone EB has been added is combined with image data 10A2 to which an additional bone AB has been added, adds movement so that the additional bone AB moves in accordance with the movement of the essential bone EB.
[0099] According to this configuration, when image data 10A2 to which the essential bone EB has been added and image data 10A2 to which the additional bone AB has been added are combined, it is possible to provide a specific way of moving the additional bone AB.
[0100] Furthermore, the program included in avatar generation system 1 causes a computer (server device 10, user terminal 20) to function as movement means 20D that moves an avatar on the computer screen based on the movements set in the avatar data.
[0101] According to this configuration, the avatar generated according to the user's preferences can be moved by the movement means 20D in accordance with the movement set on the screen of the server device 10 or the user terminal 20. This can increase the interest.
[0102] In addition, the program provided in the avatar generation system 1 causes the user terminal 20 operated by the user to function as a reception means 20A, a terminal-side output means 20C that outputs information regarding two or more image data 10A2 received by the reception means 20A to a server device 10 that can communicate with the user terminal 20, and a generation means 20B, and causes the server device 10 to function as a server-side output means 10B that outputs setting information 10A3 corresponding to the two or more image data 10A2 received by the reception means 20A to the user terminal 20, and a memory means 10A.
[0103] Although the volume of avatar data for the generated avatar is expected to be large, with the above configuration, the generation process is executed on the user terminal 20 side, so when the generated avatar is displayed on the screen of the user terminal 20, there is no need to receive the avatar data for the generated avatar from the server device 10 side. This reduces the load on the CPU and other devices involved in sending and receiving data between the server device 10 and the user terminal 20.
[0104] One possible method for moving an avatar created by a user freely combining multiple body parts is to preset setting information 10A3 for all combinations of the avatar's body parts and then read the avatar's setting information 10A3 based on the user's selection. However, in this case, the number of combinations that must be preset increases significantly as the number of avatar body parts increases. For example, if an avatar's body parts are divided into 10 types and 100 image data 10A2 can be selected for each type of body part, there are 100 10 possible combinations, which requires pre-setting a huge amount of setting information 10A3 (100 10). In contrast, the avatar generation system 1 according to the first embodiment only requires pre-setting setting information 10A3 for each avatar's body part. In the above example, pre-setting 10 x 100 (1,000) sets of setting information 10A3 would allow the avatar to move in all combinations. This allows the avatar generation system 1 to be realized, allowing users to more easily generate avatars with a variety of combinations of movement.
[0105] Second Embodiment Next, a second embodiment of the present invention will be described.
[0106] The avatar generation system according to the second embodiment differs from the first embodiment in part in the functional configuration of the server device 110 and the user terminal 120. The avatar generation system according to the second embodiment is also capable of distributing the generated avatar. Hereinafter, a user who watches a video of the generated avatar being distributed will be referred to as a "viewing user." In the second embodiment, terminal devices 20a and 20b other than the user terminal 20 shown in FIG. 1 will be referred to as viewer terminals 20a and 20b operated by viewing users. The other configurations are the same as those in the first embodiment, and therefore their description will be omitted or simplified.
[0107] --Functional configuration-- Fig. 14 is a block diagram showing an example of functional means of the server device 110 and the user terminal 120 according to the second embodiment. As shown in Fig. 14, the server device 110 includes, as functional components, storage means 110A, control means 110C, and generation means 110D.
[0108] Storage means 110A has a function of storing identification information 10A1, image data 10A2, setting information 10A3, avatar data 10A4, etc. Storage means 110A also stores identification information 10A1, image data 10A2, and setting information 10A3 in association with each other. Avatar data 10A4 stored in storage means 110A is avatar data 10A4 of an avatar to which movement has been added, which has been generated by a generation process.
[0109] In addition to having the same functions as the control means 10C of the server device 10 in the first embodiment, the control means 110C combines the avatar data generated by the generation means 110D with motion data (described later) to generate display data for distribution video. Furthermore, the control means 110C transmits the generated display data to the viewer terminals 20a and 20b.
[0110] The generating means 110D executes a generating process, which is similar to the generating process executed by the generating means 20B of the user terminal 20 in the first embodiment.
[0111] On the other hand, as shown in FIG. 14, the user terminal 120 includes, as functional components, a reception unit 120A, a terminal side output unit 120C, a control unit 120E, and a distribution unit 120F.
[0112] The reception unit 120A executes a reception process, which is the same as the reception process executed by the reception unit 20A of the user terminal 20 in the first embodiment.
[0113] The terminal side output means 120C and the control means 120E are the same as the terminal side output means 20C and the control means 20E of the user terminal 20 in the first embodiment.
[0114] The distribution unit 120F executes part of the distribution process. Specifically, the distribution unit 120F performs image analysis of the user's movements captured by the camera 23 of the user terminal 120, and acquires the movement data. The distribution unit 120F then transmits the acquired movement data to the server device 110.
[0115] --Processing flow-- Next, an example of the flow of processing executed by server device 10 and user terminal 20 in a series of steps in which a user generates an animated avatar using the avatar generation system according to the second embodiment and transmits a distribution video of the generated avatar to viewer terminals 20a and 20b will be described with reference to Fig. 15. This series of processing is started, for example, when a user launches an application for a program on user terminal 120 in which the program has been installed and taps a start button.
[0116] (Step S110) The reception means 120A of the user terminal 120 executes the reception process, and the process then proceeds to step S112.
[0117] (Step S112) The terminal-side output means 120C of the user terminal 120 outputs information relating to the two or more image data 10A2 accepted by the acceptance means 120A to the server device 10. Specifically, the terminal-side output means 120C outputs the two or more image data 10A2 selected by the user on the acceptance screens 70A and 70B together (groups) as a selection result to the server device 10. Then, the process proceeds to step S114.
[0118] (Step S114) Upon receiving the selection results from the user terminal 120, the generation means 110D of the server device 110 combines each of the image data 10A2 included in the selection results. Then, the generation means 110D reads out, from the storage means 110A, the identification information 10A1 and the setting information 10A3 associated with each of the image data 10A2 included in the selection results.
[0119] Generation means 110D reads out identification information 10A1 and setting information 10A3, and based on the preset identification information 10A1 and setting information 10A3, movement is imparted to combined avatar image data 10A2 without the user having to set any avatar movement. Generation means 110D then generates avatar data for set avatar 82. The process then proceeds to step S118.
[0120] (Step S118) The distribution means 120F of the user terminal 120 and the server device 110 execute the distribution process. The detailed flow of the distribution process will be described later. Then, the series of processes ends.
[0121] Next, the detailed flow of the distribution process executed by the distribution means 120F of the user terminal 120 and the server device 110 in step S118 will be described. FIG. 16 is a flowchart showing the flow of the distribution process in the second embodiment.
[0122] (Step S118A) The distribution means 120F performs image analysis on the user's movements captured by the camera 23 of the user terminal 120, and acquires the movements as movement data. Then, the distribution means 120F transmits the acquired movement data to the server device 110. Then, the process proceeds to step S118B.
[0123] (Step S118B) Control means 110C of server device 110 generates display data for distribution video by combining the avatar data generated by generation means 110D with the motion data received from user terminal 120. Specifically, control means 110C generates display data by adding motion to the avatar data in accordance with the motion data. Then, the process proceeds to step S118C.
[0124] (Step S118C) The control means 110C of the server device 110 transmits the generated display data (distribution video) to the viewer terminals 20a and 20b. Then, the process proceeds to step S228D.
[0125] (Step S118D) Each of the viewer terminals 20a and 20b can display the received display data on its screen, allowing the viewing user to view the avatar created by the user with added movement.
[0126] --effect-- As described above, the program provided in the avatar generation system of the second embodiment causes the user terminal 120 operated by the user to function as a reception means 120A and a terminal-side output means 120C that outputs information relating to two or more image data 10A2 received by the reception means 120A to a server device 110 that can communicate with the user terminal 120, and causes the server device 110 to function as a storage means 110A and a generation means 110D.
[0127] According to this configuration, for example, server device 110 acquires motion data that matches the user's motion captured by camera 23 or the like on user terminal 120, and combines the acquired motion data with avatar data generated on server device 110 to generate avatar data with added motion that matches the user's motion as a video to be distributed. The generated video to be distributed can then be transmitted to a terminal device (e.g., terminal devices 20a and 20b operated by viewers) different from user terminal 120. This allows avatars that can be easily moved to be distributed as a video to be distributed with added motion.
[0128] <Modification> The above-described embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments may be embodied in various other forms, and various omissions, substitutions, and modifications may be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the invention, and are also included in the scope of the invention and its equivalents as defined in the claims.
[0129] In the first embodiment, a configuration has been described in which the generated avatar can be moved by motion processing. However, a configuration may also be adopted in which, for example, motion data corresponding to the user's motion captured by camera 23 or the like on user terminal 20 is acquired and combined with the avatar data of the generated avatar, thereby enabling user terminal 20 to generate avatar data with added motion corresponding to the user's motion.
[0130] In the first embodiment described above, a configuration was exemplified in which the server device 10 functions as storage means 10A and server-side output means 10B, and the user terminal 20 functions as reception means 20A, generation means 20B, terminal-side output means 20C, and operation means 20D. In the second embodiment described above, a configuration was exemplified in which the server device 110 functions as storage means 110A and generation means 110D, and the user terminal 120 functions as reception means 120A, terminal-side output means 120C, and distribution means 120F. However, these configurations are merely examples, and the allocation of functional components (allocation of processes to be executed) of the server devices 10, 110 and the user terminals 20, 120 can be freely combined as appropriate. For example, the server devices 10, 110 may perform reception processing, and the setting information 10A3 may be stored in the user terminals 20, 120.
[0131] In the above embodiments, the identification information 10A1, image data 10A2, and setting information 10A3 are stored in association with each other on the server device 10 side. However, the identification information 10A1, image data 10A2, and setting information 10A3 may be stored in association with each other on the user terminal 20 side. In this case, the user terminal 20 can acquire the identification information 10A1 and setting information 10A3 associated with the selection result without outputting two or more pieces of image data 10A2 selected by the user (selection result) to the server device 10. This reduces the load on the CPU and other devices involved in transmission and reception between the server device 10 and the user terminal 20.
[0132] In the above embodiments, the bones are preset to have movement, and thus the generated avatar is imparted with movement. However, the avatar may be generated with movement imparted by pre-setting deformers or other parameters, or may be generated with movement imparted by a combination of pre-set bones, deformers, and other parameters.
[0133] In the above embodiments, the additional bone AB is positioned relative to the point EB2 of the essential bone EB. However, for example, the additional bone AB may be positioned relative to the contour of the waist 38a of the main body 30, and may be given a relative movement in response to the movement of the waist 38a of the main body 30.
[0134] In each of the above embodiments, an example has been shown in which the essential bones EB are added to the main body 30 of the avatar, but the essential bones EB may also be added to accessories of the avatar.
[0135] In the above-described embodiments, the additional bone AB is set in one image data 10A2 among the plurality of image data 10A2 of the accessory to be combined with the image data 10A2 of the main body 30. However, the additional bone AB may be set in two or more image data 10A2 among the plurality of image data 10A2 of the accessory to be combined with the image data 10A2 of the main body 30.
[0136] In the above embodiments, an example has been shown in which a common essential bone EB is added to image data 10A2 of avatar main body 30. However, for example, image data 10A2 of main body 30 with different genders, ages, etc. may be stored in storage means 10A, 110A, and different essential bones EB may be added to image data 10A2 of avatar main body 30 depending on gender, age, etc. In this case, additional bones AB added to the avatar accessories may be set in advance to move in different ways depending on the gender, age, etc. of avatar main body 30 (depending on the character).
[0137] In the above embodiments, the same bone is set for each type of avatar feature, but different bones may be set for the same type of feature. For example, the length of the essential bone EB added to image data 10A2 of short eyelashes may be different from the length of the essential bone EB added to image data 10A2 of long eyelashes. In this case, for example, by moving (swaying) the eyelashes in accordance with the movement of the eyes, realistic or cute movements can be achieved depending on the length of the eyelashes.
[0138] In the above embodiments, a configuration has been described in which the additional bone AB is given a movement so that it moves in accordance with the movement of the essential bone EB. However, for example, a configuration in which the additional bone AB is given a movement so that it moves in accordance with the movement of another additional bone AB may also be used. In this case, for example, a movement may be given so that the additional bone AB added to the outerwear combined with the middleware image data 10A2 moves in accordance with the movement of the additional bone AB added to the middleware image data 10A2.
[0139] In the above embodiments, a configuration has been described in which the movement of the additional bone AB among the essential bones EB is preset so that the additional bone AB moves in accordance with the movement of the portion to which the additional bone AB is positioned relative to the bone. However, a configuration in which the movement of the additional bone AB among the essential bones EB is preset so that the additional bone AB moves in accordance with the movement of a portion other than the portion to which the additional bone AB is positioned relative to the bone may also be used. For example, the additional bone AB added to the hat image data 10A2 may be preset to move in accordance with the movement of the essential bone EB added to the right foot image data 10A2. In this case, the user can enjoy unexpected movements of the avatar.
[0140] In the above embodiments, the image data to be combined and the image of the avatar to be generated are 2D images, but the image data to be combined and the image of the avatar to be generated may be 3D images. In this case, the setting information 10A3 may be set in advance so that the 3D image of the avatar to be generated operates according to the combination of the image data 10A2. [Explanation of symbols]
[0141] 1: avatar generation system, 10: server device, 10A, 110A: storage means, 10A1: identification information, 10A2: image data, 10A3: setting information, 20: user terminal, 20A, 120A: reception means, 20B, 110D: generation means, AB: additional bone (second bone), EB: required bone (first bone)
Claims
1. Computer, a storage means for storing a plurality of image data corresponding to the types of each part of an avatar, and setting information for adding movement to the plurality of image data in accordance with a combination of the plurality of image data; a receiving means for receiving a user's selection of two or more image data items for each type from the plurality of image data items stored; a generating means for generating avatar data of an avatar to which the movement is imparted based on the setting information stored in the storage means in accordance with the combination of the two or more image data sets received by the receiving means; It functions as The setting information is information on which settings for moving each of the plurality of image data have been made in advance, and is information on which the movement is imparted to the combined plurality of image data. program.
2. The storage means stores a plurality of pieces of identification information for identifying each of the parts, the plurality of pieces of image data corresponding to each of the plurality of pieces of identification information, and the setting information corresponding to each of the plurality of pieces of image data in association with each other; the generating means generates avatar data of the avatar to which the movement is assigned based on the setting information linked to the identification information. The program according to claim 1.
3. the setting information includes adjustment information for adjusting the movement; the adjustment information includes bone information on bones that are skeletons of the respective parts and are added to the plurality of image data, parameter information on parameters necessary to move at least the bones, and movement information on how at least the bones move in accordance with the parameters; the generating means combines the bones added to each of the two or more combined image data to generate avatar data of the avatar in which the relative positional relationships and relative movements of the combined bones are adjusted based on the adjustment information; The program according to claim 2.
4. The bones include at least a first bone added to image data corresponding to parts constituting the main body of the avatar, and a second bone added to image data corresponding to parts constituting accessories attached to the main body. The program according to claim 3.
5. the adjustment information includes information for adding a movement such that, when the image data to which the first bones are added are combined, the combined first bones move independently of each other; The program according to claim 4.
6. the adjustment information includes information for imparting a movement to the second bone so that the second bone moves in accordance with the movement of the first bone when the image data to which the first bone has been added and the image data to which the second bone has been added are combined; The program according to claim 4.
7. causing the computer to function as an operation means for operating the avatar on a screen of the computer based on the movement set in the avatar data; The program according to any one of claims 1 to 6.
8. a user terminal operated by the user is caused to function as the reception means and a first output means that outputs information relating to the two or more image data items received by the reception means to a server device that can communicate with the user terminal; causing the server device to function as the storage means and the generation means; The program according to claim 1.
9. a user terminal operated by the user is caused to function as the receiving means, a first output means that outputs information relating to the two or more image data items received by the receiving means to a server device that can communicate with the user terminal, and the generating means; causing the server device to function as a second output unit that outputs the setting information corresponding to the two or more image data items received by the receiving unit to the user terminal, and as the storage unit; The program according to claim 1.
10. a storage means for storing a plurality of image data corresponding to the types of each part of an avatar, and setting information for adding movement to the plurality of image data in accordance with a combination of the plurality of image data; a receiving means for receiving a user's selection of two or more image data items for each type from the plurality of stored image data items; a generating means for generating avatar data of an avatar to which the movement is added based on the setting information stored in the storage means in accordance with the combination of the two or more image data sets received by the receiving means; Equipped with The setting information is information on which settings for moving each of the plurality of image data have been made in advance, and is information on which the movement is imparted to the combined plurality of image data. system.
Citation Information
Patent Citations
Avatar service system and method for providing avatar in service provided in mobile environment
JP2013156985A
Avatar generation system, avatar generation method and avatar generation program
JP2024099908A