Computer systems and programs

The computer system enhances the visual representation of characters by controlling muscle expression based on content progression and virtual camera relationships, addressing the lack of realism in existing technologies through dynamic shape, color, and texture changes.

JP2026120935APending Publication Date: 2026-07-23BANDAI NAMCO ENTERTAINMENT INC
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
BANDAI NAMCO ENTERTAINMENT INC
Filing Date
2025-01-10
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

Existing technologies lack the capability to enrich the visual representation of movable objects in virtual experiences by effectively controlling the appearance of characters, particularly in terms of muscle representation, which is crucial for enhancing the realism and engagement of virtual content.

Method used

A computer system that includes character setting means and control means to manage muscle-representable parts, allowing for muscle expression based on content progression, virtual camera relationships, and external influences, with features to exaggerate shape, color, and texture changes.

Benefits of technology

Enriches the appearance representation of characters by dynamically controlling muscle representation, including bulges and external shape changes, color, and texture, even when wearing items or under external influences, thereby enhancing visual realism.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026120935000001_ABST
    Figure 2026120935000001_ABST
Patent Text Reader

Abstract

To provide new technologies that enrich the visual representation of movable objects appearing in content. [Solution] The server system 1100 provides content featuring characters. The server system 1100 configures the character to have muscle-representable parts, which are areas in the appearance where muscle representation is possible. Then, based on 1) the progress of the content, or 2) the relative relationship of the virtual camera used to generate the content image to the character, it controls the execution of muscle representation for the muscle-representable parts.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0006] , , , ,

[0001] The present invention relates to a computer system or the like that provides content in which characters appear.

Background Art

[0002] In content themed on virtual experiences in a virtual space, an object model such as a character is arranged in a virtual three-dimensional space, and a virtual space image obtained by photographing this with a virtual camera is displayed.

[0003] For a movable object such as a character, a polygon model (geometry data) that defines its outer shape with a large number of polygons and a skeleton model (skeleton data) that defines a skeletal structure are set. Each polygon vertex of the polygon model is previously set with a binding setting to a joint or the like of the skeleton model. When the pose of the character is controlled by the skeleton model, the polygon follows this and is generated, thereby creating a three-dimensional character appearance taking the pose.

[0004] For example, Patent Document 1 describes a technique in which an auxiliary bone is provided so as to face the axis of the motion bone, and the model object is deformed so as to follow the motion bone and the auxiliary bone.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0006] Regardless of genre—whether humans, animals, plants, machines, or virtual creatures—controlling the appearance of objects such as characters is a crucial element in determining the quality of content. For example, proper control of the surface appearance of a character in a video game can make it appear as if there are internal structures that affect its external form. In the case of a fighting game character, it can make it appear as if there are muscles inside, even though they are not visible from the outside.

[0007] The problem that this invention aims to solve is to provide a new technology that enriches the visual representation of movable objects appearing in content. [Means for solving the problem]

[0008] The first invention for solving the above problem is a computer system that provides content featuring characters, The character setting means (for example, the character setting unit 212 in Figure 13, the character control data 710 in Figure 12, and steps S10 and S12 in Figure 15) sets the character to have multiple muscle-representing parts that allow for the visual representation of muscles, 1) based on the progress of the content, and / or 2) based on the relative relationship of a virtual camera for generating an image of the content to the character, control means (for example, muscle expression control unit 214 in Figure 13, steps S24 to S32 in Figure 15) that perform control to execute the muscle expression for a muscle expressible part selected from the plurality of muscle expressible parts using a given parameter value, It is a computer system equipped with [a certain feature].

[0009] According to the first invention, the computer system can control the muscle representation of the character's muscle-representable parts based on the progress of the content and the relative relationship between the virtual camera and the character. Therefore, it becomes possible to enrich the appearance representation of the character.

[0010] The second invention is a computer system in which the muscle representation includes at least a representation of the protrusion of the part in question.

[0011] According to the second invention, a computer system becomes capable of representing muscle bulges.

[0012] The third invention is a computer system in which the muscle representation is an exaggerated representation of the muscle by changing at least one of the external shape, color, and texture of the muscle-representable part (e.g., muscle color control definition data 620 in Figure 8, step S26 in Figure 15).

[0013] According to the third invention, the computer system can exaggerate the appearance of muscles by changing at least one of the following: the shape, color, and texture of the muscle-representable area.

[0014] The fourth invention is a computer system in which, in the above-described computer system, the muscle representation is an exaggerated representation of the muscle by changing the external shape of the muscle-representable part and further changing the color and / or texture.

[0015] According to the fourth invention, the computer system can change the external shape of muscle-representable areas, and further change their color and texture. Therefore, the representation becomes richer.

[0016] The fifth invention is a computer system in which, in the above-described computer system, the character setting means sets a wearable item outside the muscle-expressible area, and the control means performs the muscle expression by changing the external shape of the wearable item (for example, wearable item 3 in Figure 10, step S32 in Figure 15).

[0017] According to the fifth invention, the computer system can realize muscle expression by changing the outer shape of the wearable item. That is, even when the character is wearing the wearable item, muscle expression becomes possible.

[0018] According to the sixth invention, in the above computer system, the character setting means sets a wearable item outside the muscle-expression possible part, and the control means executes the destruction process of the wearable item to execute the muscle expression (for example, the wearable item 3b in FIG. 10), which is a computer system.

[0019] According to the sixth invention, the computer system can execute muscle expression by destroying the wearable item.

[0020] According to the seventh invention, in the above computer system, the progress of the content includes the influence exerted on the character by other objects other than the character (for example, the collision condition 574a and the environmental condition 574b in FIG. 7), and the control means executes the muscle expression based on the influence, which is a computer system.

[0021] According to the seventh invention, the computer system can perform muscle expression taking into account the influence exerted on the character by other objects other than the character.

[0022] According to the eighth invention, in the above computer system, the other object includes other characters, the influence includes the influence based on the relationship between the character and the other characters (for example, the other character condition 555d in FIG. 6), and the control means executes the muscle expression based on the influence based on the relationship, which is a computer system.

[0023] According to the eighth invention, the computer system can perform muscle expression taking into account the influence based on the relationship between the character and other characters.

[0024] The ninth invention is a computer system in the above computer system, wherein the influence includes the influence exerted by the other object on the character based on the occurrence of a given event in the content (e.g., event condition 555a in FIG. 6), and the control means executes the muscle expression based on the influence based on the occurrence of the event.

[0025] According to the ninth invention, the computer system enables muscle expression taking into account the influence of events.

[0026] The tenth invention is a computer system in the above computer system, wherein the control means executes the muscle expression based on the operation information of the user (e.g., user operation information condition 554y in FIG. 6).

[0027] According to the tenth invention, the computer system can perform muscle expression based on the operation information of the user.

[0028] The eleventh invention is a computer system in the above computer system, wherein the character has a skeletal structure (e.g., skeleton data 532 in FIG. 2), the character setting means sets a main bone for defining the normal outer shape as the skeletal structure of the muscle expression possible part, and a sub - bone for realizing the muscle expression associated with the main bone, and the control means executes the muscle expression by controlling the sub - bone (e.g., sub - bone control pattern definition data 630 in FIG. 8, step S28 in FIG. 15).

[0029] According to the eleventh invention, the computer system enables muscle expression by controlling the sub - bone.

[0030] The twelfth invention is a computer system in which, in the above-described computer system, the character setting means sets out shape tracking setting information for the muscle-representable parts when the normal outward shape is changed in accordance with the control of the subbones (for example, bind data 535 in Figure 2, steps S10 and S12 in Figure 15), and the control means performs the muscle representation by controlling the subbones and changing the tracking setting information (for example, tracking setting change definition data 628 in Figure 8, step S30 in Figure 15).

[0031] According to the twelfth invention, the computer system can perform muscle expression by controlling subbones and changing the tracking setting information. Therefore, it becomes possible to make the expression richer.

[0032] The thirteenth invention is a computer system in which the control means performs control to change the color and / or texture of the muscle-representable area based on the tracking setting information (for example, tracking setting condition 608 in Figure 20).

[0033] According to the 13th invention, the computer system can change the color and / or texture of muscle-representable areas based on tracking setting information.

[0034] The fourteenth invention is a computer system in which, in the above-described computer system, the character setting means sets up a plurality of subbones, and the control means controls the plurality of subbones to perform the muscle expression.

[0035] According to the 14th invention, a computer system can express a wide range of muscles by controlling multiple subbones.

[0036] The fifteenth invention is a computer system in which the control means controls the degree of muscle expression and / or the rate of change of the muscle expression by changing the control content of the subbone.

[0037] According to the 15th invention, the computer system becomes capable of controlling the degree of muscle representation and / or the rate of change in muscle representation.

[0038] The sixteenth invention is a computer system in which, in the above-described computer system, the character setting means sets a first shape (for example, the base shape 12 in Figure 18) that defines the normal external shape of the muscle-representable part and a second shape (for example, the first target shape 14 and the second target shape 16 in Figure 18) that defines the external shape of the muscle-representable part when it is erect, and the control means performs the muscle representation by changing the blend ratio of the first shape and the second shape.

[0039] According to the 16th invention, a computer system can represent muscles by blending shapes.

[0040] The 17th invention is a program for causing a computer system to control content in which a character appears, and the program is a program for causing the computer system to function as: a character setting means for setting the character to have a plurality of muscle-expressible parts capable of visually representing muscles; and a control means for performing control to execute the muscle representation on a muscle-expressible part selected from the plurality of muscle-expressible parts based on 1) the progress of the content and / or 2) the relative relationship of a virtual camera for generating an image of the content to the character.

[0041] According to the 17th invention, it is possible to realize a program that can enable a computer system to perform the same functions as the first invention. [Brief explanation of the drawing]

[0042] [Figure 1] A system configuration diagram showing an example of a content delivery system. [Figure 2] A diagram showing an example of data structure related to characters. [Figure 3] A diagram illustrating how to change the external shape by controlling subbones. [Figure 4] A diagram showing an example of the data structure for site parameter information. [Figure 5] A diagram illustrating the change in visibility. [Figure 6] A diagram illustrating the change in internal force vectors. [Figure 7] A diagram illustrating the change in the external force vector. [Figure 8] A diagram illustrating the control of surface elevation in areas where subbones are defined. [Figure 9] A diagram to explain muscle representation. [Figure 10] A diagram illustrating changes in the external appearance of clothing items. [Figure 11] A diagram illustrating the control of surface elevation based on visibility. [Figure 12] A diagram showing examples of programs and data stored by a server system. [Figure 13] This diagram shows an example of the functional configuration of the server processing unit. [Figure 14] A diagram showing an example of the data structure for initial content settings data. [Figure 15] A flowchart illustrating the processing flow related to muscle representation. [Figure 16] A diagram illustrating a modified example. [Figure 17] A diagram illustrating a modified example. [Figure 18] A diagram illustrating a modified example. [Figure 19] A diagram illustrating a modified example. [Figure 20] A diagram illustrating a modified example. [Figure 21] A diagram illustrating a modified example. [Modes for carrying out the invention]

[0043] Examples of embodiments of the present invention will be described below, but it goes without saying that the embodiments to which the present invention can be applied are not limited to the following embodiments.

[0044] Figure 1 is a system configuration diagram showing an example of the configuration of a content provision system according to this embodiment. The content provision system 1000 is a computer system that provides content offering virtual experiences in a virtual space, such as video games, virtual activities, and shopping, to multiple registered users. In other words, the content provision system 1000 provides virtual experiences to users. Hereafter, the content provision system 1000 will be described as providing video games.

[0045] The content provision system 1000 is a computer system that includes a server system 1100 and user terminals 1500 for each user, all connected via a network 9 for data communication.

[0046] Network 9 refers to a communication path capable of data transmission. In other words, Network 9 includes not only LANs (Local Area Networks) using dedicated lines (dedicated cables) or Ethernet (registered trademark) for direct connections, but also telephone networks, cable networks, and the Internet.

[0047] The server system 1100 has a control board 1150 mounted on the main unit 1101. The control board 1150 is equipped with various microprocessors such as a CPU (Central Processing Unit) 1151, a GPU (Graphics Processing Unit), and a DSP (Digital Signal Processor), various IC memories 1152 such as VRAM, RAM, and ROM, and a communication device 1153. Some or all of the functions mounted on the control board 1150 may be implemented using an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a SoC (System on a Chip).

[0048] In Figure 1, the server system 1100 is depicted as a single server device, but it may also be implemented using multiple devices. For example, the server system 1100 may be configured with multiple servers, each responsible for a specific function, connected to each other via an internal bus or network 9 for data communication.

[0049] User terminal 1500 serves as a Man-Machine Interface (MMIF) for user 2 to play content as a player. For example, if the content to be played is a game, user terminal 1500 functions as a gameplay terminal for user 2, who is the player. In actual operation, it is common for multiple user terminals 1500 to communicate with the server system 1100 simultaneously.

[0050] The user terminal 1500 is a computer system that can connect to the network 9, such as a personal computer, smartphone, wearable computer, portable game console, home game console, or tablet computer.

[0051] The user terminal 1500 is a computer comprising an operation input device, an image display device, a communication device, and a control board 1550 for performing calculations. Examples of the operation input device include a touch panel 1506, a keyboard, a game controller, and a mouse. Examples of the image display device include a touch panel 1506, a head-mounted display, and a glasses-type display.

[0052] The control board 1550 is equipped with a CPU 1551, various microprocessors such as a GPU and DSP, various IC memories 1552 such as VRAM, RAM, and ROM, and a communication module 1553 that connects to the network 9. These elements mounted on the control board 1550 are electrically connected via bus circuits and the like, enabling data reading and writing, and signal transmission and reception. Part or all of the control board 1550 may be an ASIC, FPGA, or SoC.

[0053] The control board 1550 stores programs and various data necessary to realize the functions of the user terminal 1500 in the IC memory 1552. The user terminal 1500 realizes the functions of a play terminal for playing content by executing a predetermined application program.

[0054] Figure 2 shows an example of the data structure of character model data 530 related to characters appearing in the game. The server system 1100 constructs the game space by placing background objects in a virtual three-dimensional space. Then, it places characters defined by character model data 530 in the game space and controls their movements, while generating a game screen based on virtual space images captured by a virtual camera, and displays this on the user terminal 1500.

[0055] The character model data 530 includes geometry data 531 that defines the basic shape of the character body, skeleton data 532, texture data 533, rig data 534, and bind data 535.

[0056] Skeleton data 532 is data that defines the main skeleton of a character by connecting multiple main bones 5 (thick black lines in Figure 2) with joints 6 (black circles in Figure 2). The position and number of main bones 5 and joints 6 are set appropriately depending on how the character's parts are connected by what joint structure and what kind of movements they will perform. If the character is humanoid, the main bones 5 and joints 6 are set according to each part of the human body structure.

[0057] The skeleton data 532 has one or more subbones 7 (7a, 7b; white rod-shaped objects in Figure 2) associated with the main bone 5 of a specific part of that part, connected by subjoints 8 (8a, 8b; white circles in Figure 2). For example, one end of the first subbone 7a is connected to the main bone 5 of the upper arm by the first subjoint 8a, and the other end of the first subbone 7a is connected to the second subbone 7b by the second subjoint 8b, forming a group of subbones.

[0058] Texture data 533 is color data applied to polygons generated based on geometry data 531 to express the precise color scheme, three-dimensionality, and texture of the surface of that part.

[0059] The polygon vertices defined by geometry data 531 are bound to joint 6 of main bone 5 and subjoint 8 of subbone 7.

[0060] Then, based on the geometry data 531 and the bind data 535, the character's polygons are formed. In Figure 3, the outline of the polygons is represented by long dashed lines.

[0061] Note that while Figure 2 shows subbone 7 only for the upper arm of character 4, subbone 7 can, of course, be provided for other parts as well. Also, although an example is shown where one subbone group is set with two subbones 7 for one part, the number and position of subbones 7 and subbone groups set for one part can be set as appropriate. Furthermore, the structure of the subbone group is not limited to a linearly connected configuration; a tree-like shape or other configurations can be selected as appropriate.

[0062] Figure 3 is a comparison diagram of skeleton models to illustrate the change in the character's appearance shape through the control of subbone 7.

[0063] In Figure 3(1), the character has its arms slightly raised, and the first subbone 7a and the second subbone 7b are in their normal state (base state). The first subbone 7a and the second subbone 7b are folded and positioned close to the main bone 5.

[0064] In Figure 3(2), the character is in a pose with their arms bent and tensed. The first subbone 7a and the second subbone 7b are unfolded from their folded state. Viewed as a single group of subbones, they extend outward from the main bone 5.

[0065] Based on the geometry data 531 and the bind data 535, the character's polygons are formed. Therefore, the change from Figure 3(1) to Figure 3(2) results in the creation of ridges on the character's surface.

[0066] If the character design is themed around humans or animals, this bulge would appear as if there were muscles there, and that the muscles bulged out when the character exerted force. Even if the character design is not themed around humans or animals, it would appear as if there is an internal structure that is not visible from the outside, and that the external appearance has changed due to a change in that internal structure.

[0067] Figure 4 shows an example of the data structure of part parameter information 720 set for the parts of a character. The part parameter information 720 includes the part ID 721, visibility 723, internal force vector 725, and external force vector 727.

[0068] Visibility 723 indicates the degree to which the outline of the polygon model of the relevant part is visible from the outside. For example, if a character wears opaque clothing or armor, that part will not be visible from the outside, so it will be set to "0". If the clothing or armor is transparent or semi-transparent, it will be visible from the outside, so it will be set to "1". If the clothing or armor is the type that fits tightly to the body's contours (e.g., leotard, swimsuit, diving suit, etc.), it will be set to "1".

[0069] The internal force vector 725 indicates how much and in what direction the subbone 7 should be changed from its base state, based on the character's internal factors. When representing the bulging of virtual muscles that you want the player to visually perceive, the magnitude of the internal force vector 725 indicates the degree of tension, or the amount of force applied to the virtual muscle. The direction of the internal force vector 725 indicates the direction in which the virtual muscle bulges, so if the character is a vertebrate like a real person or animal in the game world setting, it is fixed as a predetermined value. However, if the character is a virtual organism (for example, an amorphous virtual organism like slime, or a virtual organism where a group functions as a single organism, etc.), it is not fixed.

[0070] External force vector 727 indicates the effect of external forces acting on the relevant part. For example, if the relevant part of a character collides with another object and is subjected to a virtual force within the game's setting (e.g., magic, psychokinesis, etc.), the strength and direction of the virtual force will be set in external force vector 727.

[0071] The result of vector synthesis of the internal force vector 725 and the external force vector 727 determines how much control is applied to subbone 7 and the group of subbones in that area.

[0072] Figure 5 is a diagram illustrating the change in visibility level 723. The visibility score of 723 is affected by the relative distance between the character and the virtual camera, as well as the equipment the character is wearing, such as clothing and armor. The equipment is determined based on predetermined equipment setting operations performed by the player, User 2.

[0073] Specifically, the server system 1100 sets the specified visibility 544 to visibility 723 when the relative distance between the character and the virtual camera satisfies the relative distance condition 542 (e.g., limit distance) defined by the predetermined visibility definition data 540. For example, visibility 723 is set to "0 (the body part cannot be recognized because it is too far away = invisible)".

[0074] Furthermore, when a player performs a setting operation to equip a character with a given item, the server system 1100 refers to the item definition data 650 that has been pre-configured for that item. The item definition data 650 is prepared for each item and includes an item ID 652, item model data 654, item ability parameter value 656, and specified visibility 658.

[0075] The server system 1100 sets the specified visibility level 658 of the referenced item definition data 650 to the visibility level 723 of the relevant part. In cases where multiple items can be worn in layers on one part, such as when layering clothing, the server system 1100 references each item definition data 650. If the specified visibility level 658 of any of these items is set to "0 (not visible from the outside)", the server system 1100 sets it to the visibility level 723.

[0076] Figure 6 is a diagram illustrating the change in the internal force vector 725. The internal force vector 725 is modified depending on the character's movements and the game situation. Specifically, each part of the character to which subbone 7 is set has multiple types of internal force vector definition data 550 assigned to it.

[0077] One internal force vector definition data 550 includes an application site ID 551, an application requirement 553, and a specified internal force vector 558.

[0078] Application requirement 553 specifies the circumstances under which the definition data should be selected and applied. Application requirement 553 is defined by combining one or more subconditions 554 with AND or OR.

[0079] Examples of subconditions 554 include motion type condition 554a, motion usage condition 554b, and game situation condition 554c. Of course, other subconditions may also be set.

[0080] Motion type condition 554a is a condition that must be met regarding the type of motion applied to a character. If character 4 is a player character, character 4's actions are determined based on user input, and the motion is determined by the determined actions. Therefore, motion type condition 554a can also be the user input information condition (554y).

[0081] Motion Usage Condition 554b specifies the conditions that must be met regarding the circumstances under which the motion is used. Examples of usage situations include normal actions, evasion, and attacks. Even with the same movement, the degree of muscle tension, or the degree of muscle protrusion, will differ depending on the usage. These differences can be realized by appropriately setting Motion Usage Condition 554b.

[0082] Game situation conditions 554c are conditions that must be met regarding the game situation. Game situation conditions 554c are further defined by combining them with one or more detailed conditions 555 using AND or OR. Of course, other subconditions may also be used as appropriate.

[0083] Detailed conditions 555 include, for example, event conditions 555a, equipment conditions 555b, skill activation conditions 555c, other character conditions 555d, other player conditions 555e, and so on.

[0084] Event condition 555a is a condition that must be met for an event to occur in the game world. For example, suppose there is a werewolf character who normally appears as a human with average abilities, but on the night of a full moon, transforms into a muscular beastman and exhibits superhuman abilities. By setting event condition 555a to "night of a full moon" and setting the specified internal force vector 558 to a higher internal force than normal, it becomes possible to depict the character's muscles becoming muscular on the night of a full moon, just like a werewolf. The activation of a power-boosting mode (for example, the activation of divine protection) can also be treated as a type of event.

[0085] Equipment condition 555b is a condition that must be met when equipping an item that forcibly changes the virtual muscles / virtual internal structure to be represented by subbone 7 into a certain state. For example, it may be set as equipping a strength-enhancing item that amplifies muscle strength many times over.

[0086] Skill activation condition 555c is the condition that must be met for the activation of a skill (which can also be called by other names such as "Divine Blessing" in the game's world setting) that forcibly changes the virtual muscles / virtual internal structure to be represented by Subbone 7 into a certain state. For example, it can be set as the activation of a strength-boosting skill that amplifies muscle strength many times over, or the application of a strength-boosting buff.

[0087] Other Character Condition 555d is a condition that must be met regarding the relationship with other characters present at that time, such as other characters who are in the party with the character in question, or other characters who are allies of the character in question. For example, it might be set as "there is another character in the party who has the ability of a constantly active double-strength blessing."

[0088] Other Player Condition 555e is a condition that must be met regarding the relationship between a player and other players during multiplayer. For example, in a competitive game where match results are recorded, if compatibility is determined from past match results, it would be set to something like "an opponent with poor compatibility."

[0089] The server system 1100 searches for internal force vector definition data 550 that satisfies the application requirement 553 at that time, and sets the specified internal force vector 558 to internal force vector 725.

[0090] Alternatively, instead of preparing multiple internal force vector definition data 550 as required by application requirement 553, it may be substituted by defining them using a predetermined function or table data. If a predetermined function is used, the values ​​of various parameters referenced in determining whether or not application requirement 553 is satisfied can be used as variables in the definition.

[0091] Figure 7 is a diagram illustrating the change in the external force vector 727. The external force vector 727 is modified by referring to multiple types of external force vector definition data 570 that are pre-set for each part.

[0092] The external force vector definition data 570 includes an application part ID 571 indicating the part to which the definition data applies, application requirements 573 specifying the conditions that must be met in order to apply the definition data, and a designated external force vector 578.

[0093] Application requirement 573 is described by combining one or more subconditions 574 with AND or OR. Examples of subconditions 574 include impact conditions 574a and environmental conditions 574b, which are conditions that must be satisfied for the impact received by the part in question.

[0094] Collision condition 574a is a condition that must be satisfied for collisions with other objects. For example, it may be described as a condition that must be satisfied regarding the magnitude of the impact, the cumulative number of impacts, etc.

[0095] Environmental condition 574b may include, for example, specific weather conditions in the game world (e.g., strong winds), being in a special space where gravity is amplified, etc. The environment also includes special situations realized by magic in the game world (e.g., strong winds caused by wind magic, situations where water is sprayed by water magic, situations where gravity is increased by gravity magic). The magic does not matter whether it is naturally occurring or cast by the character.

[0096] The server system 1100 searches for external force vector definition data 570 that satisfies the application requirement 573 at that time, and sets the specified external force vector 578 to external force vector 727.

[0097] Figure 8 illustrates the control of surface elevation in areas where subbones 7 are set. Each area where subbones 7 are set has pre-configured muscle representation definition data 600. Figure 8 shows the muscle representation definition data 600 configured in the upper arm.

[0098] The muscle representation definition data 600 includes an application site ID 602, application requirements 604, muscle color control definition data 620, followability setting change definition data 628, and multiple subbone control pattern definition data 630.

[0099] Application requirement 604 defines the conditions that must be met for the definition data to be applied. Application requirement 604 is written by combining one or more subconditions with AND or OR. Subconditions include site parameter conditions 610, which are conditions that must be met for site parameters.

[0100] The part parameter condition 610 includes a visibility condition 612 that must be satisfied with respect to visibility 723, an internal force vector condition 614 that must be satisfied with respect to internal force vector 725, and an external force vector condition 616 that must be satisfied with respect to external force vector 727. There may be definition data that sets one or more of the visibility condition 612, internal force vector condition 614, and external force vector condition 616 to "unlimited" or "not set".

[0101] The muscle color control definition data 620 specifies the display format of the surface of the area in question in accordance with the control of the muscle representation of the surface of that area. The muscle color control definition data 620 includes a texture specification range 622 related to the texture data 533 and a specification range color correction data 624. For example, if blood vessels are drawn in the texture specification range 622, the specification range color correction data 624 sets a color correction that emphasizes the dark areas to make the blood vessels stand out. Alternatively, muscle bundles may be drawn instead of blood vessels, and settings may be made to make the muscle bundles stand out. If the character's appearance and color scheme are determined by the polygon color itself without applying a texture, then instead of using a texture, you can adjust the polygon range and color.

[0102] The tracking setting change definition data 628 defines how to change the tracking setting information for the shape of character 4 when changing its normal external shape. Specifically, it defines how to change the bind data 535 applied to character 4. That is, it defines the list or range of polygon vertex IDs and edge IDs to be changed, the amount of change (e.g., change vector), the time displacement of the amount of change, etc.

[0103] The subbone control pattern definition data 630 is prepared for each subbone 7 in the relevant area and includes the subbone ID 632, joint rotation control data 634, and subbone deformation control data 636.

[0104] The joint rotation control data 634 defines and specifies the rotation direction, amount of rotation, and their temporal changes for the sub-joint 8 (see Figure 2). The subbone deformation control data 636 specifies the stretching, enlarging, or shrinking of the subbone 7. For example, it may specify the scaling factor and amount of the subbone 7.

[0105] Figure 9 is a diagram illustrating the muscle representation controlled by the muscle representation control for Character 4. As shown in Figures 2 and 3, Character 4 has sub-bones 7 set not only in the upper arms, but also in the chest, abdomen, and legs.

[0106] Figure 9(1) shows Character 4 in its normal state (normal condition). Character 4's arms, chest, abdomen, and legs all have a smooth, flat appearance with no protrusions or indentations.

[0107] Figure 9(2) shows character 4 in a state where the player is tensing the upper arm. For example, this corresponds to the action of lifting something using only the arm. In this state, the outer end of subbone 7 of character 4's upper arm is controlled to move slightly away from mainbone 5 from the normal state (reference state). As a result, a slight bulge is created in the upper arm, giving the appearance of a bulging biceps muscle.

[0108] Figure 9(3) shows Character 4 in a state where the player is controlling it and exerting force throughout its entire body. For example, this corresponds to the action of unleashing a special move with full force. In this state, the outer ends of all subbones 7 of Character 4's arms, chest, abdomen, and legs are controlled to be furthest from the main bone 5 from the normal state. As a result, large bulges are created in various parts of the arms, chest, abdomen, and legs, representing that Character 4 is exerting its maximum strength.

[0109] Figure 10 is a diagram illustrating the modification of the appearance of wearable item 3, which is one of the equipment items that is attached to the outside of character 4.

[0110] Various types of wearable items 3 are available for character 4. Wearable item 3(3a) in Figure 10 is an item that is stretchable but will break when stretched to its limit, such as a T-shirt. Wearable item 3(3a) is stretched and compressed according to the magnitude of the vector in the direction of the composite vector of the internal force vector 725 and external force vector 727 of the part parameter information 720 of the part it covers.

[0111] The polygon vertices of the geometry data of Wearable Item 3, one of the equipped items, are mapped to the nearest polygon vertices among the polygons defined by the geometry data 531 of Character 4. Then, the polygons of Wearable Item 3 are deformed in accordance with the changes in Character 4's polygons.

[0112] Then, when the amount of deformation from the standard state reaches a predetermined upper limit, the wearable item 3, which is one of the pieces of equipment, is subjected to a pre-prepared damaged state model (for example, a model having small damaged parts and remaining large parts) and is destroyed in a way that causes it to tear and scatter.

[0113] Figure 11 is a diagram illustrating the control of surface ridges of character 4 based on visibility of 723. Figure 11(1) shows the appearance of wearable item 3b wearing opaque equipment (e.g., armor) that does not have elasticity and covers parts that are not visible from the outside. Figure 11(2) is a perspective view showing the outline of the opaque equipment with dashed lines.

[0114] When character 4 is equipped with item 3b, the visibility 723 in the part parameter information 720 for each equipped part is set to "0 (not visible from the outside)". In this case, even if internal force vectors 725 and external force vectors 727 are set and there is corresponding muscle expression definition data 600, the control of subbone 7 is not executed. In other words, because it is not visible from the outside, muscle expression control is omitted.

[0115] Figure 12 shows an example of programs and data stored by the server system 1100. The server system 1100 stores the server program 501, the distribution client program 503, the content initial setup data 510, the user information 690, and the play data 700 in the IC memory 1152. Of course, other data may also be stored as appropriate.

[0116] The server system 1100 executes and processes the server program 501 on the CPU 1151, thereby realizing the function of a server processing unit 200s, as shown in Figure 13.

[0117] The server processing unit 200s performs various controls related to content provision. Specifically, the server processing unit 200s includes a user information management unit 202, a game progress control unit 210, and a timing unit 280.

[0118] The User Information Management Unit 202 executes the prescribed user registration procedure and controls the registration and management of user information 690 for each user 2.

[0119] The game progress control unit 210 performs various controls for providing content featuring characters, specifically controlling the progress of the game. For example, the game progress control unit 210 performs the placement and control of objects in the virtual 3D space, and the placement and control of virtual cameras that capture the virtual 3D space. It also performs controls related to the generation of game images (content images) captured by the virtual cameras, object collision detection, and play performance determination. The game progress control unit 210 includes a character setting unit 212, a muscle expression control unit 214, and a specification unit 216.

[0120] The character setting unit 212 sets the character 4 to have multiple muscle-representing parts that allow for the visual representation of muscles.

[0121] The muscle expression control unit 214 controls the execution of muscle expression using given parameter values ​​for a muscle-expressible part selected from among a plurality of muscle-expressible parts, based on the progress of the content and / or the relative relationship of the virtual camera for generating the image of the content to the character.

[0122] The identification unit 216 identifies the muscle-representable region from among the multiple muscle-representable regions to be the target of muscle representation.

[0123] The timing unit 280 uses the system clock to perform various timing operations, such as determining the current date and time and the time limit.

[0124] Returning to Figure 12, the distribution client program 503 is executed by the user terminal 1500, causing the user terminal 1500 to function as a man-machine interface for various control and content provision systems 1000 as a game client.

[0125] Content initial settings data 510 defines various initial settings for the content in question. The content initial setup data 510 includes, for example, character initial setup data 520 prepared for each type of character 4, and item definition data 650 prepared for each type of item, such as wearable item 3, as shown in Figure 14.

[0126] One character initial setup data 520 includes character type 521, ability parameter value initial setup data 522, and motion definition data 524. It also includes character model data 530, visibility definition data 540, internal force vector definition data 550, external force vector definition data 570, and muscle expression definition data 600.

[0127] Item definition data 650 includes item type, list of usable character types, list of attachment locations, stretch limit value, item model data, item ability parameter values, etc.

[0128] Returning to Figure 12, user information 690 is prepared for each user 2 who has completed the prescribed registration procedure, and stores various information associated with that user 2. One user information 690 includes, for example, a user account, player character type, equipment setting data, play performance data, etc. Equipment setting data is information such as items equipped to the layer character. It may also include relationships with other characters (e.g., friend or foe) and relationships with other players (e.g., friend registration, win / loss record, etc.).

[0129] Play data 700 stores various information related to the provision of content. One piece of play data 700 includes, for example, a player account 701, game status information 703 describing the game's progress, game space control data 705, virtual camera control data 707, and character control data 710.

[0130] Game status information 703 contains information about the progress of the content. For example, it includes information such as the virtual date and time in the game space, spatial settings such as weather and season in the game world, event management information, progress of the game scenario, and play results.

[0131] The game space control data 705 includes control information for background objects that make up the game space.

[0132] Virtual camera control data 707 is created for each virtual camera and stores information such as the camera ID, the ID of the character being photographed, the position coordinates in the virtual space, the orientation, and the field of view.

[0133] Character control data 710 is prepared for each character placed in the game space. One set of character control data 710 includes character ID 711, character type 713, motion control data 715, body part parameter information 720, character model control data 730, and equipment model control data 732. Of course, other data may also be included as appropriate.

[0134] Figure 15 is a flowchart illustrating the processing flow related to muscle representation performed by the server system 1100. The server system 1100 first performs the initial setup of the player character (step S10). The server system 1100 performs the initial setup according to the character type selection operation and equipment setting operation performed by the player, user 2. Then, it sets the visibility 723 of the part parameter information 720 based on the equipment settings, and sets the magnitude of both the internal force vector 725 and the external force vector 727 to "0".

[0135] Next, the server system 1100 initializes the NPCs (step S12) and initializes the game space (step S14).

[0136] Next, the server system 1100 begins controlling the game's progress (step S18). Accordingly, it controls the player character's movements (motions) based on the input of the player, user 2, determines things like hits and interference to the character, and the influence of the environment, and updates the play data 700.

[0137] During gameplay, the server system 1100 repeatedly executes loop A for each character (steps S20 to S34). In loop A, the server system 1100 determines whether the predetermined part parameter change conditions for the character to be processed have been met (step S22).

[0138] Conditions for changing part parameters include, for example, (1) a change in the character's motion, (2) a change in the character's mode, (3) the activation of a skill on the character, and (4) a collision with another object occurring on the character.

[0139] Specifically, if various parameters used to determine whether the application requirements for the internal force vector definition data 550 (see Figure 6) or the external force vector definition data 570 (see Figure 7) are met change, it is determined that the part parameter change condition has been met.

[0140] If it is determined that the part parameter change conditions are met (YES in step S22), the server system 1100 updates the part parameter information 720 (step S24). Specifically, the server system 1100 searches for internal force vector definition data 550 that satisfies application requirement 553 and external force vector definition data 570 that satisfies application requirement 573. Then, according to the corresponding definition data, it updates the internal force vector 725 and external force vector 727 in the part parameter information 720 of the character to be processed.

[0141] Next, the server system 1100 identifies areas with a visibility score of "1" as specific areas. For each specific area, it searches for muscle representation definition data 600 that matches the updated area parameter information 720 (see Figure 8). Then, it starts muscle color control for the character to be processed in Loop A according to the muscle color control definition data 620 (step S26).

[0142] Next, the server system 1100 starts controlling the sub-bone 7 for each specific part according to the sub-bone control pattern definition data 630 that matches the updated part parameter information 720 (step S28). This controls the surface bulges of the character being processed.

[0143] Next, the server system 1100 searches for muscle representation definition data 600 (see Figure 8) that satisfies the application requirement 604 based on the part parameter information 720, and refers to the followability setting change definition data 628. Then, it starts control to change the binding of polygon vertices and edges from the initial settings by applying the followability setting change definition data 628 to the character model control data 730 (see Figure 12) of the character to be processed (step S30). Furthermore, the server system 1100 performs an external shape change process on one of the pieces of equipment equipped on the character to be processed, which is the worn item 3, in order to correspond to the changes in the character model control data 730 of the character to be processed (step S32; see Figure 10), and then terminates loop A (step S34).

[0144] The server system 1100 repeatedly executes loop A for all characters until the end of the game (NO in step S40).

[0145] As described above, according to this embodiment, the muscle expression control of character 4 can be performed in a variety of ways depending on various factors. Therefore, the bulging of character 4's muscles can be expressed in a wide variety of ways.

[0146] [Variation] Although examples of embodiments to which the present invention is applied have been described above, the forms to which the present invention can be applied are not limited to the above forms, and components can be added, omitted, or modified as appropriate.

[0147] (Variation 1) For example, the content provision system 1000 may be implemented using a P2P (Peer to Peer) architecture with multiple user terminals 1500. In this case, programs and data corresponding to the functional division are stored in the user terminals 1500, and the functions corresponding to the server processing unit 200s in the above embodiment are distributed and implemented by the user terminals 1500, which act as P2P nodes. The same effects as in the above embodiment can be obtained with this configuration as well.

[0148] (Variation 2) Furthermore, in the above embodiment, the content provision system 1000 may be implemented not as a client-server type, but as a single computer system that was the user terminal 1500 in the above embodiment.

[0149] Specifically, as shown in Figure 16, for example, the user terminal 1500 of the content provision system 1000B stores all the data stored by the server system 1100 in the above embodiment. However, instead of the server program 501 and the distribution client program 503, a content provision program 505 is provided as an application program for the user terminal 1500.

[0150] In the above embodiment, the content provision program 505 implements all the functional parts of the server system 1100 as a terminal processing unit 200t on the user terminal 1500, as shown in Figure 17, for example. In this modified example, the content provision program is executed on the user terminal 1500. Then, the processing flow described in the above embodiment (see Figure 15) can be read as the execution entity being the user terminal 1500 instead of the server system 1100.

[0151] (Variation 3) Furthermore, although the content delivery system 1000 is a client-server type, it is also possible to configure it so that the user terminal 1500 functions as a terminal processing unit 200t (see Figure 17) through the distribution client program 503 (see Figure 13).

[0152] (Variation 4) Form animation elements may be added to the above embodiments and variations. In other words, one could prepare multiple geometry data 531 (see Figure 2) with different shapes, create a blend shape by blending them, and then use the blend shape to control the character's muscle expression.

[0153] For example, in the example shown in Figure 18, a base shape 12 representing the normal state (reference state) of the upper arm of character 4, and a first target shape 14 and a second target shape 16 with different protrusion shapes are prepared. The second target shape 16 is set to have a locally higher degree of protrusion compared to the first target shape 14. These areas may be, for example, areas of muscle that you want to make particularly protruding, or areas that represent engorgement of blood vessels.

[0154] In this configuration, the base shape 12, the first target shape 14, and the second target shape 16 are blended to create a blend shape 18, which is then applied.

[0155] Accordingly, the muscle representation definition data 600B in the modified example includes base shape data 640, first target shape data 641, second target shape data 642, and deformer setting data 644, as shown in Figure 19.

[0156] Base shape data 640 is the geometry data that defines base shape 12. First target shape data 641 is the geometry data that defines first target shape 14. Second target shape data 642 is the geometry data that defines second target shape 16.

[0157] The deformer setting data 644 includes a specification of the blend ratio, which determines the ratio in which the base shape 12, the first target shape 14, and the second target shape 16 are blended to create the blend shape 18. Furthermore, if the blend ratio is to be changed over time, deformation pattern data indicating the pattern of change may be included in the deformer setting data 644.

[0158] (Variation 5) Furthermore, as shown in the muscle representation definition data 600C in Figure 20, bone conditions 606 and followability setting conditions 608 may be added to the application requirements 604.

[0159] Bone condition 606 is a condition that must be satisfied for either main bone 5 or sub-bone 7, and is prepared separately for each bone to be judged. The bone ID to be judged and the judgment criterion data are stored in association with each other. The followability setting conditions 608 are conditions that must be satisfied for the bind data 535, and are prepared for each range of vertices presented in the bind data 535, and are stored in association with the target range and the judgment criterion data.

[0160] (Variation #6) In the above embodiment, a humanoid character 4 was used as an example of a movable object, but the objects to which the present invention can be applied are not limited to humanoid characters. It may also be plants, animals, or virtual creatures (so-called monsters, demons, etc.) in a game world, and the present invention may be similarly applied to any object whose setting allows us to infer that there is some kind of movable structure inside from changes in its external shape.

[0161] Furthermore, muscle representation is not limited to the representation of muscle bulges. For example, in a horror game, as shown in Figure 21, the appearance changes caused by a mysterious creature 20 hatching in the abdomen of character 4 and moving around inside the abdomen could be represented as muscle representation.

[0162] (Variation 7) In the above embodiment, subbone 7 is always present in the skeleton data 532 and is controlled to move when muscles are expressed, but this is not limited to this. That is, setting information for ON (enabled) / OFF (disabled) for each subbone 7 may be prepared, and ON / OFF settings for each subbone 7 may be set in the muscle expression definition data 600 (see Figure 8).

[0163] (Variation 8) The example shown involves making the polygon vertices of the geometry data 531 follow the main bone 5 and subbone 7 defined in the skeleton data 532 to represent muscles, but this is not the only way to do so.

[0164] For example, some muscle expressions, such as those in a character's cheeks or stomach, which repeatedly expand and contract, may be controlled independently of bones by controlling the polygon vertices or edges themselves. Specifically, the subbone control pattern definition data 630 is omitted from the muscle expression definition data 600 (see Figure 8) for these muscle expressions. In the cheeks and stomach, the initial polygon vertices and edges defined by the geometry data 531 and bind data 535 (see Figure 14) are modified according to the followability setting change definition data 628. Thus, muscle expression is achieved independently of bone control.

[0165] Of course, this technique can be used not only for certain muscle representations that repeatedly expand and contract, but also for other things. For example, it can be used for characters or objects that do not have joint structures (such as slime characters or magma or mud bubble objects that repeatedly expand and contract). [Explanation of symbols]

[0166] 3…Items worn 4… translat 5...Main bone 7... Subbone 200s... Server Processing Unit 210...Game Progression Control Unit 212...Character Design Section 214…Muscle Representation Control Unit 216…Specific section 501…Server Program 510...Content Initial Setup Data 520...Character initial settings data 530... Character model data 531…Geometry data 532...Skeleton data 540… Visibility Definition Data 550... Internal force vector definition data 554c...Game situation conditions 554y... User operation information conditions 555a...Event conditions 555d... Other character conditions 570…External force vector definition data 574a…Collision condition 574b…Environmental conditions 600... Muscle representation definition data 606...Bone conditions 608... Followability setting conditions 610... Part parameter conditions 620... Muscle color control definition data 628... Followability setting change definition data 630... Subbone control pattern definition data 640...Base shape data 641…First target shape data 642…Second target shape data 644... Deformer setting data 700... Play data 703...Game Status Information 705…Game space control data 710... Character control data 711… CHARACTID 713…Character types 715…Motion control data 720... Part parameter information 723…Visibility 725... Internal force vector 727... External force vector 730... Character model control data 732…Equipment Model Control Data 1000... Content delivery system 1100... Server System 1500... User terminals

Claims

1. A computer system that provides content featuring characters, A character setting means for setting the aforementioned character to have multiple muscle-representing parts that allow for the visual representation of muscles, 1) a control means that controls the execution of muscle representation using given parameter values ​​for a muscle-representable part selected from the plurality of muscle-representable parts, based on the progress of the content and / or 2) the relative relationship of a virtual camera for generating an image of the content to the character, A computer system equipped with the following features.

2. The muscle representation includes at least a representation of the prominence of the area, The computer system according to claim 1.

3. The muscle representation is an exaggerated representation of a muscle by changing at least one of the external shape, color, and texture of the muscle-representable area. The computer system according to claim 1.

4. The aforementioned muscle representation is an exaggerated representation of muscles by changing the external shape of the muscle-representable area and further changing its color and / or texture. The computer system according to claim 1.

5. The character setting means sets the wearable items on the outside of the muscle-representable area, The control means performs the muscle expression by changing the external shape of the wearable item. The computer system according to claim 1.

6. The character setting means sets the wearable items on the outside of the muscle-representable area, The control means performs the destruction process of the worn item to perform the muscle expression. The computer system according to claim 1.

7. The progress of the aforementioned content includes the influence that other objects besides the aforementioned character have on the aforementioned character. The control means executes the muscle expression based on the influence. The computer system according to claim 1.

8. The aforementioned other objects include other characters, The aforementioned effects include effects based on the relationship between the character and the other characters. The control means executes the muscle expression based on the influence based on the relationship. The computer system according to claim 7.

9. The aforementioned effect includes the effect that the other object has on the character based on the occurrence of a given event in the content. The control means executes the muscle representation based on the effects resulting from the occurrence of the event. The computer system according to claim 7.

10. The control means executes the muscle expression based on the user's operation information. The computer system according to claim 1.

11. The aforementioned character has a skeletal structure, The character setting means sets, as the skeletal structure of the muscle-expressible part, a main bone for defining the normal external shape and a subbone attached to the main bone for realizing the muscle expression, The control means executes the muscle representation by controlling the subbones. The computer system according to claim 1.

12. The character setting means sets information on how the external shape can follow when the external shape changes in accordance with the control of the sub-bones for the muscle-representable parts. The control means performs the muscle representation by controlling the subbone and changing the tracking setting information. The computer system according to claim 11.

13. The control means performs control to change the color and / or texture of the muscle-representable area based on the tracking setting information. The computer system according to claim 12.

14. The character setting means sets multiple subbones, The control means executes the muscle representation by controlling the plurality of subbones. The computer system according to claim 11.

15. The control means controls the degree of muscle expression and / or the rate of change of the muscle expression by changing the control content of the subbone. The computer system according to claim 11.

16. The character setting means sets a first shape that defines the normal external shape of the muscle-representable area and a second shape that defines the bulging external shape of the muscle-representable area. The control means performs the muscle representation by changing the blending ratio of the first shape and the second shape. The computer system according to claim 1.

17. A program that allows a computer system to control content featuring characters, Character setting means for setting the aforementioned character to have multiple muscle-representing parts that allow for the visual representation of muscles, 1) a control means that controls the execution of muscle representation using a given parameter value for a muscle-representable part selected from the plurality of muscle-representable parts, based on the progress of the content and / or 2) the relative relationship of a virtual camera for generating an image of the content to the character. A program for causing the aforementioned computer system to function.