Program and system

By adjusting image display in a game based on player settings and distances, the program optimizes resource usage, ensuring smooth game progression and enhanced excitement.

JP7625119B1Active Publication Date: 2025-01-31COLOPL
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
JP2024079328
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-05-15
Publication Date
2025-01-31
Estimated Expiration
2044-05-15

AI Technical Summary

Technical Problem

The process of displaying images in a three-dimensional virtual space in games requires significant resources, leading to reduced game progression and diminished excitement as more images are drawn.

Method used

A program that adjusts the display form of images in a game based on pre-set display settings for each player, displaying images close to the avatar and hiding those far away, with adjustable thresholds and settings to conserve resources.

Benefits of technology

This approach conserves computer resources, allowing smooth game progression and enhances the gaming experience by optimizing image display based on player settings and distances.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007625119000001_ABST
    Figure 0007625119000001_ABST
Patent Text Reader

Abstract

To improve the interest of a game. [Solution] The program causes a computer to have a player draw images for objects placed in a three-dimensional virtual space in a game that takes place in the virtual space, and changes the display mode of the images according to display settings for each player.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a program and a system. [Background technology]

[0002] Conventionally, in games in which an avatar operates in a three-dimensional virtual space, there has been known a technique in which a player draws any image (e.g., letters, numbers, symbols, figures) on objects (e.g., mountains, hills, the ground, trees, walls, buildings) placed in the virtual space (see, for example, Patent Documents 1 and 2). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2012-073857 A [Patent Document 2] Patent No. 3767649 Summary of the Invention [Problem to be solved by the invention]

[0004] However, the process of displaying the rendered images in the virtual space requires a large amount of resources (for example, memory capacity and CPU usage). Therefore, the more images are rendered in the virtual space, the fewer resources are needed to progress in the game, which may reduce the game's interest.

[0005] An object of the present invention is to improve the entertainment value of a game. [Means for solving the problem]

[0006] In order to solve the above problems, a program according to the present invention includes a step of causing a computer to, in a game that progresses in a three-dimensional virtual space, have a player draw an image for an object disposed in the virtual space; The image is displayed with the same image data according to the display settings for each player that are stored in advance in the storage before the image is drawn. The display mode of the image is Every time To transform. Effect of the Invention

[0007] According to the present invention, the entertainment value of the game can be improved. [Brief description of the drawings]

[0008] [Figure 1] 1 is a diagram showing an overview of a system according to an embodiment of the present invention; [Diagram 2] FIG. 2 is a diagram illustrating a hardware configuration of a server. [Diagram 3] FIG. 2 is a hardware configuration diagram of a user terminal. [Figure 4] FIG. 1 is a diagram conceptually illustrating one aspect of a virtual space. [Diagram 5] 1 is a diagram showing a YZ cross section of a field of view in a virtual space as viewed from an X direction. [Figure 6] 1 is a diagram showing an XZ cross section of a field of view in a virtual space as viewed from the Y direction. [Figure 7] 1 is a screen example showing a game field. [Figure 8] A screenshot showing an avatar attempting to excavate a mountain slope. [Figure 9] A screenshot showing an avatar digging into a mountain slope and discovering a gemstone. [Figure 10] 1 shows examples of player data (A) and image data (B). [Figure 11] 13 is a diagram showing examples of a drawing setting screen (A) and a display setting screen (B). [Figure 12] 13 is a flowchart of a drawing control process. [Figure 13] FIG. 2 is a side view of the avatar and object. [Figure 14] FIG. 2 is a rear view of an avatar facing an object. [Figure 15] 13 is a flowchart of a display control process. [Figure 16] FIG. 2 is a top view of the avatar and the object. [Figure 17]13 is a flowchart of a threshold value determination process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] The system 1 according to the embodiment will be described below with reference to the drawings. Note that the embodiment of the present invention described below is an example of how the present invention is embodied, and the scope of the present invention is not limited to the scope of the embodiment. Therefore, the present invention can be implemented by making various modifications to the embodiment. In addition, the following embodiments and modifications can be combined in any combination without departing from the spirit of the present invention.

[0010] [System 1 Overview] FIG. 1 is a diagram showing an overview of a system 1 according to this embodiment. As shown in FIG. 1, the system 1 mainly includes a server 10 and user terminals 20A, 20B, 20C, and 20D (hereinafter, these may be collectively referred to as "user terminals 20"). Although four user terminals 20 are illustrated in FIG. 1, examples of the user terminals 20 included in the system 1 are not limited to these. The server 10 and the user terminals 20 are connected to each other so as to be able to communicate with each other via a communication network 2. A specific example of the communication network 2 is not particularly limited, and may be, for example, the Internet, a mobile communication system (e.g., 4G, 5G, etc.), a wireless network such as Wi-Fi (registered trademark), or a combination of these.

[0011] The system 1 according to this embodiment is a game system that realizes a game on a user terminal 20. Hereinafter, a user who operates the user terminal 20 to play a game will be referred to as a "player." Also, the player of the user terminal 20A will be referred to as "player A," the player of the user terminal 20B as "player B," the player of the user terminal 20C as "player C," and the player of the user terminal 20D as "player D."

[0012] The game realized by the system 1 is, for example, an online game in which the server 10 and the multiple user terminals 20 communicate with each other, and the game progresses synchronously on each of the multiple user terminals 20. However, the game may be an offline game that is completed on one user terminal 20. The game realized by the system 1 progresses in a virtual space 90, which will be described later. More specifically, the game realized by the system 1 progresses by operating an avatar in the three-dimensional virtual space 90. As an example, the game realized by the system 1 may be a cooperative game in which multiple players cooperate to achieve a goal (for example, moving to a destination, defeating an enemy character, obtaining an item). As another example, the game realized by the system 1 may be a competitive game in which multiple players compete against each other.

[0013] [Server 10 configuration] 2 is a hardware configuration diagram of the server 10. The server 10 realizes an online game by synchronizing game data of each of a plurality of user terminals 20. The server 10 is realized by, for example, a general-purpose computer such as a workstation or a personal computer. As shown in FIG. 2, the server 10 mainly includes a processor 11, a memory 12, a storage 13, an input / output interface 14, and a communication interface 15. Each component of the server 10 is connected to a communication bus 19.

[0014] The processor 11 realizes processes described below by executing a series of instructions included in a server program 13P stored in the memory 12 or the storage 13. The processor 11 is realized as, for example, a central processing unit (CPU), a graphics processing unit (GPU), a micro processing unit (MPU), a field-programmable gate array (FPGA), or other devices.

[0015] The memory 12 temporarily holds a server program 13P and data. The server program 13P is loaded from, for example, the storage 13. The data includes data input to the server 10 and data generated by the processor 11. For example, the memory 12 is realized as a RAM (Random Access Memory) or other volatile memory.

[0016] The storage 13 permanently holds the server program 13P and data. The storage 13 is realized, for example, as a ROM (Read-Only Memory), a hard disk drive, a flash memory, or other non-volatile storage device. The storage 13 may also be realized as a removable storage device such as a memory card. As yet another example, the storage 13 may be connected to the server 10 as an external storage device instead of being built into the server 10. With this configuration, for example, in a scene where a plurality of user terminals 20 are used, such as an amusement facility, it becomes possible to collectively update the server program 13P and data.

[0017] The input / output interface 14 is an interface for connecting external devices such as a monitor, an input device (e.g., a keyboard, a pointing device), an external storage device, a speaker, a camera, a microphone, a sensor, etc. to the server 10. The processor 11 communicates with the external devices through the input / output interface 14. The input / output interface 14 is realized using, for example, a Universal Serial Bus (USB), a Digital Visual Interface (DVI), a High-Definition Multimedia Interface (HDMI (registered trademark)), or other terminals.

[0018] The communication interface 15 communicates with other devices (e.g., user terminal 20) connected to the communication network 2. The communication interface 15 is realized as, for example, a wired communication interface such as a Local Area Network (LAN) or a wireless communication interface such as Wireless Fidelity (Wi-Fi), Bluetooth (registered trademark), or Near Field Communication (NFC).

[0019] [Configuration of user terminal 20] The user terminal 20 is realized, for example, as an HMD (Head Mounted Display) set, a tablet terminal, a wearable device, smart glasses, a smartphone, a feature phone, a laptop computer, a desktop computer, etc. In this embodiment, an example of the user terminal 20 as a tablet terminal will be described as shown in FIG.

[0020] Fig. 3 is a hardware configuration diagram of the user terminal 20. As shown in Fig. 3, the user terminal 20 mainly includes a processor 21, a memory 22, a storage 23, a communication interface 25, a monitor 31, cameras 33 and 34, a microphone 35, a speaker 36, a motion sensor 41, a position sensor 42, and an operation device 43 (operation unit). Each component of the user terminal 20 is connected to a communication bus 29.

[0021] The processor 21, memory 22, storage 23, and communication IF 25 have the same configuration as the processor 11, memory 12, storage 13, and communication IF 15 of the server 10. The storage 23 also stores a terminal program 23P.

[0022] The monitor 31 is provided on the surface of a flat housing, as shown in Fig. 1 for example. The monitor 31 is a display device (display unit) that displays images or videos. The camera 33 is a so-called in-camera that is attached to the surface of the flat housing and captures an image of the face of a user viewing the monitor 31. The camera 34 is a so-called out-camera that is attached to the back surface of the flat housing (the surface opposite to the monitor 31) and captures an image of the surroundings.

[0023] The microphone 35 converts the user's speech into an audio signal (electrical signal) and outputs it. The speaker 36 converts the audio signal into voice and outputs it to the user. Note that the user terminal 20 may include an earphone instead of the speaker 36.

[0024] The motion sensor 41 detects the motion of the housing (for example, rotation around three mutually orthogonal axes). The motion sensor 41 may be realized by, for example, an angular velocity sensor, a geomagnetic sensor, a vibration sensor, or an acceleration sensor.

[0025] The position sensor 42 detects the current location of the user terminal 20. Since it is assumed that the user terminal 20 is carried by the user, the location of the user terminal 20 corresponds to the location of the user who carries the user terminal 20. For example, the position sensor 42 acquires a signal from a global positioning satellite (GPS) and outputs information indicating the current location (hereinafter, referred to as "current location information"). A specific example of the current location information is not particularly limited, and may be, for example, a combination of the latitude and longitude of the current location. The user terminal 20 may calculate the number of steps, movement distance, and movement direction of the user using the detection results of the motion sensor 41 and the position sensor 42. The user's location may be specified by using values ​​detected by an external device (sensor). For example, it is possible to use the detection results of a photographing device or a position sensor (such as an infrared sensor) installed in a building. In addition, the user's location may be specified by having a plurality of terminals (devices) and sharing the detection results of the sensors between the devices.

[0026] The operation device 43 accepts input (operation) of commands by the user to the user terminal 20. The operation device 43 is, for example, a touch panel that is superimposed on the monitor 31 and accepts various touch operations by the user. That is, the monitor 31 according to this embodiment is a touch panel type display unit. As another example, the user terminal 20 may include, as the operation device 43, a controller equipped with buttons, an operation stick, and the like.

[0027] [Overview of Virtual Space 90] Fig. 4 is a diagram conceptually showing one aspect of virtual space 90. Fig. 5 is a diagram showing a YZ cross section of a viewing area 94 in virtual space 90 as viewed from the X direction. Fig. 6 is a diagram showing an XZ cross section of a viewing area 94 in virtual space 90 as viewed from the Y direction. Virtual space 90 is a three-dimensional space in which a game progresses.

[0028] As shown in Fig. 4, the virtual space 90 has a celestial sphere-like structure covering the entire 360-degree direction from the center C. In Fig. 4, in order to avoid complicating the explanation, the celestial sphere in the upper half of the virtual space 90 is illustrated as an example. Meshes are defined in the virtual space 90. The position of each mesh is defined in advance as a coordinate value in an XYZ coordinate system, which is a global coordinate system defined in the virtual space 90. Each partial image constituting a panoramic image 91 (still image, video, etc.) that can be deployed in the virtual space 90 is associated with a corresponding mesh in the virtual space 90.

[0029] For example, in the virtual space 90, an XYZ coordinate system is defined with the center C as the origin. The XYZ coordinate system is, for example, parallel to the real coordinate system. The horizontal direction, vertical direction (up-down direction), and front-back direction in the XYZ coordinate system are defined as the X-axis, Y-axis, and Z-axis, respectively. Therefore, the X-axis (horizontal direction) of the XYZ coordinate system is parallel to the x-axis of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the real coordinate system, and the Z-axis (front-back direction) of the XYZ coordinate system is parallel to the z-axis of the real coordinate system.

[0030] A virtual camera 92 associated with the user terminal 20 is placed in the virtual space 90. The position of the virtual camera 92 in the virtual space 90 corresponds to the user's viewpoint in the virtual space 90. The orientation of the virtual camera 92 corresponds to the user's line of sight (reference line of sight 93) in the virtual space 90. The processor 21 then determines a viewing area 94 (angle of view of the virtual camera 92) in the virtual space 90 based on the position and orientation of the virtual camera 92.

[0031] As shown in Fig. 5, the field of view region 94 includes an area 95 in the YZ cross section. The area 95 is a range of a polar angle α centered on the reference line of sight 93 in a vertical cross section (YZ cross section) including the reference line of sight 93 in the virtual space 90. As shown in Fig. 6, the field of view region 94 includes an area 96 in the XZ cross section. The area 96 is a range of an azimuth angle β centered on the reference line of sight 93 in a horizontal cross section (XZ cross section) including the reference line of sight 93 in the virtual space 90.

[0032] The processor 21 generates (extracts) a partial image included in the field of view 94 of the panoramic image 91 deployed in the virtual space 90 as a captured image 97 captured by the virtual camera 92. Then, the processor 21 displays the generated captured image 97 on the monitor 31. That is, the field of view 94 corresponds to the user's field of view in the virtual space 90. Furthermore, the field of view 94 moves in accordance with changes in the position and orientation of the virtual camera 92 in the virtual space 90, and the captured image 97 displayed on the monitor 31 is updated. That is, the user's field of view moves.

[0033] For example, the processor 21 moves the virtual camera 92 in the virtual space 90 in conjunction with a user's operation received by the operation device 43. The processor 21 also changes the orientation of the virtual camera 92 (i.e., the reference line of sight 93) in conjunction with the movement of the user terminal 20 detected by the motion sensor 41 (e.g., rotation around three mutually orthogonal axes). Furthermore, the processor 21 causes the monitor 31 to display a captured image 97 captured by the virtual camera 92 after the position and orientation have been changed.

[0034] [Details of the games that System 1 realizes] FIG. 7 is an example screen showing the field F (virtual space 90) of the game. FIG. 8 is an example screen showing a state in which avatar B is about to excavate the slope of a mountain. FIG. 9 is an example screen showing a state in which avatar B has excavated the slope of a mountain and discovered an ore. Below, an overview of the game realized by the system 1 will be described with reference to FIGS. 7 to 9. However, the game according to this embodiment is not limited to the following examples as long as it progresses in the virtual space 90.

[0035] The system 1 according to this embodiment provides a game in which, for example, an item (e.g., gemstone rough R) is acquired in a field F, the acquired item is processed (e.g., the rough R is polished to generate a gemstone), and the processed item (e.g., gemstone) is collected, exhibited, and traded. More specifically, the system 1 according to this embodiment is a game in which the rough stone R is acquired (i.e., one of the objectives of the game is achieved) by operating (e.g., moving, excavating) the avatars B, C, and D in the field F shown in Figs. 7 to 9. Note that the game realized by the system 1 is not limited to proceeding entirely in a three-dimensional virtual space 90, and a part of the game may proceed in two dimensions (e.g., an icon or command selection screen).

[0036] The "field F" is, for example, a three-dimensional virtual space 90 in which an object O and avatars B, C, and D are placed. The object O according to this embodiment includes at least a mountain (or hill) in which raw stone R is buried. However, the object O is not limited to a mountain or hill, and may include the ground, trees, walls, buildings, and the like. Furthermore, the object O is not limited to objects fixed to the field F, and may include objects that can move in the field F (for example, vehicles). Furthermore, the object O may be capable of being destroyed (for example, by excavating the slope of a mountain), and may be capable of repairing destroyed and missing parts (for example, by piling up soil in the excavated parts).

[0037] An "avatar" is, for example, a 3D object having a three-dimensional shape with three-dimensional coordinates. The avatar is an alter ego of the player that moves in the field F according to the player's operation through the operation device 43. However, specific examples of the avatar are not limited to being in the shape of a human, and may be animals, monsters, robots, vehicles, etc. Hereinafter, the avatar operated by user B will be referred to as "avatar B", the avatar operated by user C as "avatar C", and the avatar operated by user D as "avatar D". In addition, among the multiple avatars displayed on the user terminal 20, the avatar operated by the player of the user terminal 20 will be referred to as "own avatar", and the avatar operated by another player will be referred to as "other player's avatar".

[0038] Furthermore, players A to D participating in the game take on the role of either an owner (e.g., player A) who owns a mountain placed in field F, or a scalar (e.g., players B, C, D) who mines the mountain at the request of the owner. Note that the roles of owner and scalar are not fixed and may be interchanged at will. Also, in the examples of Figures 7 to 9, only scalar avatars B, C, and D are shown, but the owner avatar A may also operate in field F (i.e., excavate the mountain).

[0039] The owner, for example, consumes items to acquire a mountain and recruits a scholar to excavate the mountain. The owner also acquires, for example, raw stones R mined in field F. The owner also acquires gems by having a polisher (Non Player Character) polish the acquired raw stones R. The owner also exhibits the acquired gems in the game so that other players can view them, and buys and sells them to other players.

[0040] For example, as shown in Figs. 7 to 9, the scholar moves the avatar in field F and has the avatar mine the mountain with a tool (e.g., pickaxe). The scholar may also locate the location where the raw stones are buried by, for example, bringing a detector (not shown) carried by the avatar close to the slope of the mountain. Furthermore, the scholar hands over the raw stones R discovered in field F to the owner and obtains rewards (e.g., experience points, items), for example, as shown in Fig. 9.

[0041] Furthermore, multiple players A, B, C, and D who operate avatars A, B, C, and D in the game belong to the same group. As one example, a group is a gathering of players (e.g., a party, a raid) who are trying to achieve the same goal (e.g., discovering raw stones). As another example, a group is a gathering of players who are mutually registered in the game (e.g., friends, a team, a guild).

[0042] Furthermore, the players A to D can spray a mist of liquid (ink) from a tool (for example, a spray can S shown in FIG. 13) held by the avatars A to D to draw an image (hereinafter, referred to as a "drawn image") on the object O. The drawn image is, for example, an image drawn by the player (avatar) on the surface of the object O placed in the virtual space 90. The drawn image includes any visually recognizable object (for example, a letter, a number, a symbol, a figure). The tool for drawing the drawn image may be a pen, a paintbrush, a brush, or the like. As an example, the players A to D may draw a drawn image (for example, a marker) at a position where excavation will be performed (for example, a position where a detector has reacted) or a position where excavation has already been completed. As another example, the players A to D may communicate with each other through the drawn image (for example, a letter, a number). The drawn image may be drawn on all objects O, or may be drawn on only some objects O (hereinafter, referred to as a "specific object"). For example, rendered images may only be rendered on destructible objects.

[0043] The server program 13P causes the server 10 (one example of a computer) to execute the following processes, and the terminal program 23P causes the user terminal 20 (another example of a computer) to execute the following processes, thereby allowing the game to progress synchronously on multiple user terminals 20. The server 10 and the user terminal 20 identify an account to be used by the user before progressing the game, and progress the game using the identified account. Note that, if multiple accounts are selectable, the server 10 and the user terminal 20 identify an account to progress through from among the multiple accounts, and then progress the game. Hereinafter, the server program 13P (terminal program 23P) causing the server 10 (user terminal 20) to execute processes will be simply expressed as "the server 10 (user terminal 20) executes processes."

[0044] The user terminals 20A to 20D receive field data indicating field F from the server 10 via the communication IF 25. Furthermore, the user terminals 20A to 20D load the field F indicated by the field data received from the server 10 in the memory 22. Then, the user terminals 20A to 20D display the captured image 97 captured by the virtual camera 92 installed in the field F on the monitor 31. As a result, the captured image 97 of the field F common to the user terminals 20A to 20D is displayed.

[0045] Furthermore, the user terminal 20A operates avatar A in the field F expanded in the user terminal 20A according to an operation received from the player A through the operation device 43. The user terminal 20A also transmits avatar data indicating the avatar A after the operation to the server 10 through the communication IF 25. The server 10 then transmits the avatar data received from the user terminal 20A to the other user terminals 20B to 20D through the communication IF 15. Furthermore, the user terminals 20B to 20C operate avatar A in the field F expanded in the memory 22 based on the avatar data received from the server 10 through the communication IF 25. This causes the avatar A to operate synchronously in all the user terminals 20A to 20D. The same applies to the avatars B to D.

[0046] Furthermore, when the avatar A changes the shape of the object O (for example, destroys or repairs) in accordance with the operation of the player A, the user terminal 20A transmits object data indicating the object O after the shape change to the server 10 via the communication IF 25. Then, the server 10 transmits the object data received from the user terminal 20A to the other user terminals 20B to 20D via the communication IF 15. Furthermore, the user terminals 20B to 20D change the shape of the object O in the field F expanded in the memory 22 based on the object data received from the server 10 via the communication IF 25. This causes the shapes of the object O to be synchronized in all the user terminals 20A to 20D. The same applies when the shape of the object O is changed in the user terminals 20B to 20D.

[0047] [Details on drawing and display settings] Fig. 10 shows an example of player data (A) and image data (B). Fig. 11 shows an example of a rendering setting screen (A) and a display setting screen (B).

[0048] 10(A) is data that stores drawing settings and display settings for each player. The player data may be stored collectively in the storage 13 of the server 10, for example, or may be stored for each player in the storage 23 of each user terminal 20. The player data includes, for example, a player ID, a target color, a drawing color, a drawing thickness, a display distance, and a display color.

[0049] The player ID is, for example, an identifier that uniquely identifies a player. The target color indicates, for example, a color associated with a player. The target color indicates, for example, a color that a player can draw and display. The target color for each player may be one color or multiple colors. Furthermore, the target color may be set in advance as a fixed color, or may be set by an administrator (for example, the owner) of the group.

[0050] The drawing color indicates, for example, the color of the drawn image drawn by the avatar. The drawing thickness indicates, for example, the thickness of the drawn image (line) drawn by the avatar. The drawing color and drawing thickness are examples of drawing settings. The drawing color and drawing thickness are set by the player at any time via, for example, the drawing setting screen shown in FIG. 11(A). The drawing setting screen includes, for example, a radio button for selecting the drawing color, a radio button for selecting the drawing thickness, a "Settings" icon, and a "Cancel" icon.

[0051] The drawing color is selected, for example, from among the target colors of the player data. In other words, the selectable drawing colors may be different for each player. The drawing thickness is not limited to three levels, but may be two or more levels. The [Set] icon is an icon that accepts an instruction from the player to reflect (set) the selected drawing color and drawing thickness in the player data. The [Cancel] icon is an icon that accepts an instruction from the player not to change the setting values ​​of the drawing color and drawing thickness.

[0052] The display distance is information for determining a threshold value for switching whether or not to display a drawn image on the monitor 31. The display color indicates the color of the drawn image to be displayed on the monitor 31. The display distance and display color are examples of display settings. The display distance and display color are set by the player at any timing, for example, through a display setting screen shown in FIG. 11(B). The display setting screen includes, for example, a radio button for selecting the display distance, a check box for selecting the display color, a "Settings" icon, and a "Cancel" icon.

[0053] The display distance is not limited to four levels, and may be two or more levels. The display color is selected, for example, from among the target colors of the player data. In other words, the selectable display color may be different for each player. Also, the selectable display color is not limited to one color, and may be multiple colors. The [Set] icon is an icon that accepts an instruction from the player to reflect (set) the selected display distance and display color in the player data. The [Cancel] icon is an icon that accepts an instruction from the player not to change the setting values ​​of the display distance and display color.

[0054] 10(B) is data showing a drawn image drawn on the object O. The image data is generated, for example, by one of the user terminals 20 (in this embodiment, the user terminal 20B) and transmitted to the other user terminals 20 (in this embodiment, the user terminals 20A, 20C, and 20D) through the server 10. The image data includes, for example, a player ID, trajectory data, a drawing color, a drawing thickness, and an exclusion flag.

[0055] The trajectory data is data indicating a drawn image drawn on the object O. The trajectory data is, for example, a combination of coordinates (x, y, z) of the start point and end point of the drawn image in the virtual space 90. Note that, for simplification, an example of the drawn image according to the present embodiment will be described in which the drawn image is composed only of straight lines, but the drawn image may have any shape, such as a curved line. The trajectory data may be in any format as long as it can identify (reproduce) the drawn image drawn on the object O.

[0056] The drawing color indicates the color of the drawn image drawn on the object O. The drawing color of the player data at the time when the drawn image is drawn is set to the drawing color. The drawing thickness indicates the thickness of the lines of the drawn image drawn on the object O. The drawing thickness is set to the drawing thickness of the player data at the time when the drawn image is drawn.

[0057] The exclusion flag is a flag indicating whether or not to display a drawn image. The exclusion flag is set to either a first value "OFF" indicating that the drawn image is displayed (i.e., the player is not excluded) or a second value "ON" indicating that the drawn image is not displayed (i.e., the player is excluded). The initial position of the exclusion flag is the first value "OFF". In addition, when a player is excluded from a group, the exclusion flag of all image data drawn by that player is set to the second value "ON". Whether or not to exclude a specific player from a group may be determined, for example, by an administrator (e.g., the owner) of the group.

[0058] [Drawing control processing] FIG. 12 is a flowchart of the drawing control process. FIG. 13 is a diagram of the avatar B and the object O as viewed from the side. FIG. 14 is a diagram of the avatar B as viewed from behind facing the object O. Below, the drawing control process executed by the user terminal 20B will be described, but the drawing control process may be executed in the user terminals 20A, 20C, and 20D in a similar manner. The user terminal 20B starts the drawing control process shown in FIG. 12 when receiving a drawing operation from the player B through the operation device 43. The drawing operation is, for example, an operation of instructing the avatar B (spray can S) to draw a drawing image on the object O facing the avatar B.

[0059] First, the user terminal 20B determines whether or not an object O is present within range of the position of the avatar B (more specifically, the spray can S held by the avatar B) in the field F (S11). The range refers to, for example, the radius of a sphere centered on the position of the avatar B (more specifically, the spray can S held by the avatar B). The range may be, for example, a fixed value, or may vary depending on the type (e.g., performance) of the spray can S.

[0060] Then, when it is determined that an object O exists within the range of the ejection direction of the liquid (ink) from the avatar B (i.e., the orientation of the spray can S) (S11: Yes), as shown in FIG. 13(A), for example, the user terminal 20B starts drawing a drawn image on the object O (S12). That is, the user terminal 20B draws a drawn image (dots) on the object O located in front of the avatar B (spray can S) (hereinafter, referred to as the "drawing position"). The user terminal 20B also draws a drawn image (a line that is a set of dots) on the object O according to a drawing operation that changes the orientation of the avatar B (spray can S). In this way, the player B can draw a drawn image of an arbitrary shape on the surface of the object O by continuing the drawing operation while changing the drawing position, as shown in FIG. 14(A). The program (processor) that executes the process of step S12 is an example of a drawing means.

[0061] Furthermore, the user terminal 20B draws a drawn image in the color indicated by the drawing color and with the thickness indicated by the drawing thickness according to the player data of the player B. The user terminal 20B may also change the thickness and darkness of the drawn image to be drawn according to the distance from the avatar B to the surface of the object O. That is, the user terminal 20B may draw thinner and darker lines as the distance from the avatar B to the surface of the object O is closer. On the other hand, the user terminal 20B may draw thicker and lighter lines as the distance from the avatar B to the surface of the object O is farther.

[0062] Furthermore, the user terminal 20B may perform an effect (display) in which the remaining amount of liquid (ink) inside the spray can S gradually decreases as the drawing operation continues. On the other hand, as shown in Fig. 13(B), if the object O goes out of range during the process of continuing the drawing operation, the user terminal 20B does not draw a drawn image according to the drawing operation during that period. However, the remaining amount of liquid inside the spray can S may gradually decrease during this period as well.

[0063] Then, user terminal 20B continues drawing the drawn image according to the drawing operation until user B stops the drawing operation (S13) or until the time limit has elapsed since the start of the drawing operation (S14). The time limit (e.g., 1 to 2 seconds) is a predetermined time during which the drawing operation can be continuously performed. The time limit is determined, for example, according to the maximum data amount of image data that can be uploaded at one time.

[0064] Next, if the player B stops the drawing operation before the time limit elapses (S13: No & S14: No), or if the player B continues the drawing operation for the time limit (S13: Yes & S14: Yes), the user terminal 20B interrupts the drawing of the drawn image on the object O, uploads the image data to the server 10 via the communication IF 25 (S15), and ends the drawing control process. The program (processor) that executes the process of step S15 is an example of an uploading means. In addition, the user terminal 20B may execute a performance (display) of shaking the spray can S held by the avatar B in parallel with the uploading of the image data, as shown in FIG. 14(B). Such a performance is an example of information that suggests that the drawing of the drawn image has been interrupted.

[0065] In step S15, the user terminal 20B generates trajectory data indicating the trajectory of the drawn image. The user terminal 20B may also compress the trajectory data using a known algorithm such as RDPA (Ramer Douglas Peucker). Furthermore, the user terminal 20B generates image data including the generated trajectory data, the player ID "Player B", the drawing color "red", the drawing thickness "thick", and the exclusion flag "OFF" included in the player data.

[0066] On the other hand, when the user terminal 20B determines that the object O is not present within the range of the avatar B in the ejection direction of the liquid (ink) (i.e., the direction of the spray can S) as shown in Fig. 13(B) at the time when the player B starts the drawing operation (S11: No), the user terminal 20B ends the drawing control process without drawing a drawing image. In this case, the user terminal 20B does not need to reduce the remaining amount of liquid inside the spray can S.

[0067] The player B can draw a drawing image of any shape on the surface of the object O by repeatedly executing the drawing operation (i.e., the user terminal 20B repeatedly executes the drawing control process). In the example of Fig. 10(B) and Fig. 16(A), the player B can draw the letter "A" on the surface of the object O by sequentially drawing a left diagonal line (first drawing operation) from a start point (x1, y1, z1) to an end point (x2, y2, z2), a right diagonal line (second drawing operation) from a start point (x2, y2, z2) to an end point (x3, y3, z3), and a horizontal line (third drawing operation) from a start point (x4, y4, z4) to an end point (x5, y5, z5).

[0068] Moreover, the user terminal 20B generates three pieces of image data in sequence and uploads each time it is generated to the server 10. Moreover, each time the server 10 receives image data from the user terminal 20B, it transmits the image data to the other user terminals 20A, 20C, and 20D. Furthermore, the user terminals 20A, 20C, and 20D execute the display control process shown in FIG. 15 using the image data received from the server 10.

[0069] In step S11, the user terminal 20B may permit drawing on a specific object (e.g., a mountain or a hill) and prohibit drawing on an object other than the specific object (e.g., a tree or a building). Furthermore, the user terminal 20B may accept an operation from the player B to draw a template drawing image of a predetermined shape (e.g., a circle, an X, an emoticon) instead of drawing an arbitrary drawing image. In this case, the user terminal 20B may upload image data including an identifier for identifying the template drawing image instead of the trajectory data.

[0070] [Display control processing] Fig. 15 is a flowchart of the display control process. Fig. 16 is a diagram of the avatar B and the object O viewed from above. The display control process is a process for controlling the display mode of a drawn image drawn on the object O (i.e., a drawn image shown by the received image data). Below, the display control process executed by the user terminal 20C will be described, but the display control process can also be executed in the user terminals 20A, 20B, and 20D in the same manner.

[0071] The user terminal 20C starts the display control process shown in FIG. 15, for example, when avatar data (e.g., movement of avatar C), object data (e.g., change in the shape of object O), player data (e.g., change in display distance or display color), or image data (e.g., addition of image data, change in exclusion flag) is updated.

[0072] First, the user terminal 20C determines whether or not an image exists within the field of view of the avatar C (i.e., the angle of view of the virtual camera 92) based on the trajectory data of the image data (S21). The user terminal 20C also determines the setting value of the exclusion flag of the image data representing the drawn image (S22). The user terminal 20C also determines whether or not a portion of the object O in which the drawn image is drawn exists (S23). Furthermore, the user terminal 20C also determines whether or not the display color of the player data of the player C includes the drawing color of the image data representing the drawn image (S24). Note that the order of execution of steps S21 to S24 is not limited to the example of FIG. 15. Also, some of steps S21 to S24 can be omitted.

[0073] In step S23, if the portion of object O that overlaps with the trajectory data is missing (for example, excavating the slope of a mountain), user terminal 20C determines that the portion of object O where the drawn image is drawn does not exist (S23: No). On the other hand, in step S23, if the missing portion of object O is repaired (for example, by piling up the excavated portion), user terminal 20C determines that the portion of object O where the drawn image is drawn exists (S23: Yes).

[0074] Then, when all the conditions of steps S21 to S24 are satisfied (S21 to S24: Yes), the user terminal 20C measures the distance between the avatar C in the field F and the drawn image (S25). The user terminal 20C also executes a threshold determination process (S26). The threshold determination process is a process for determining the threshold used in step S27. Details of the threshold determination process will be described later with reference to FIG. 17. The program (processor) that executes the process of step S25 is an example of a measuring means, and the program (processor) that executes the process of step S26 is an example of a determining means.

[0075] Next, the user terminal 20C compares the distance measured in step S25 with the threshold determined in step S26 (S27). Then, when the distance is less than the threshold (S27: Yes), the user terminal 20C displays the drawn image "A" on the monitor 31 (S28), as shown in FIG. 16(A). On the other hand, when the distance is equal to or greater than the threshold (S27: No), the user terminal 20C does not display the drawn image "A" on the monitor 31 (S29), as shown in FIG. 16(B). Furthermore, when any of the conditions in steps S21 to S24 is not satisfied, the user terminal 20C does not display the drawn image "A" on the monitor 31 (S29). Switching between displaying and not displaying the drawn image is an example of changing the display mode of the drawn image. The program (processor) that executes the processes in steps S28 to S29 is an example of a display control means.

[0076] FIG. 16 shows an example in which the threshold value is the radius of a sphere (a circle when viewed two-dimensionally) centered on the avatar C (more specifically, the virtual camera 92) in the virtual space 90. That is, the user terminal 20C displays on the monitor 31 a drawn image located inside the sphere centered on the avatar C, superimposed on the captured image 97. On the other hand, the user terminal 20C does not display on the monitor 31 a drawn image located outside the sphere centered on the avatar C. As another example, the threshold value may be the radius of a sphere centered on the drawn image "A" in the virtual space 90. Then, the user terminal 20C may display the drawn image "A" on the monitor 31, superimposed on the captured image 97, when the avatar C enters inside the sphere centered on the drawn image "A", and may not display the drawn image "A" when the avatar C exits outside the sphere.

[0077] [Threshold determination process] 17 is a flowchart of the threshold determination process. The threshold determination process is a process for determining the threshold used in step S27. The user terminal 20C determines the threshold based on, for example, the display distance of the player data and the drawing thickness of the image data. However, the parameters for determining the threshold are not limited to the above example.

[0078] First, the user terminal 20C sets the threshold to an initial value (=0) (S31). Next, if the display distance "off" is set in the player data of the player C (S32: Yes), the user terminal 20C ends the threshold determination process while leaving the threshold set to the initial position. That is, regardless of the distance between the avatar C and the drawn image "A", the drawn image "A" is no longer displayed on the monitor 31 of the user terminal 20C.

[0079] On the other hand, when the display distance "off" is not set (S32: No), the user terminal 20C sets the threshold to values ​​D1 to D3 corresponding to the display distance setting value (S33 to S36). That is, when the display distance "short" is set, the user terminal 20C sets the threshold to D1 (S33: short & S34), when the display distance "medium" is set, the threshold to D2 (S33: medium & S35), and when the display distance "long" is set, the threshold to D3 (S33: long & S36). Note that D1 <D2<D3である。

[0080] Next, the user terminal 20C fine-tunes the threshold value (S38-S39) according to the drawing thickness setting value of the drawing data (S37). That is, when the drawing thickness is set to "thin" (S37: thin), the user terminal 20C subtracts the coefficient m from the threshold value determined in steps S33-S36 (S38). When the drawing thickness is set to "thick" (S37: thick), the user terminal 20C adds the coefficient n to the threshold value determined in steps S33-S36 (S39). When the drawing thickness is set to "medium" (S37: medium), the user terminal 20C ends the threshold value determination process with the threshold value determined in steps S33-S36 unchanged. The coefficients m and n may be the same value or different values. The coefficients m and n may be values ​​sufficiently smaller than the difference between D1, D2, and D3.

[0081] [Effects of the embodiment] According to the above embodiment, a drawn image close to the avatar is displayed (FIG. 16(A)), and a drawn image far from the avatar is hidden (FIG. 16(B)). This saves resources of the user terminal 20 required to display the drawn images, allowing the game to proceed smoothly. As a result, the interest of the game is improved.

[0082] Here, since the threshold is changed based on the display distance (one example of display setting) set for each player, the distance to the drawn image to be displayed can be adjusted according to the performance of the user terminals 20A to 20D. Furthermore, the change in the display mode of the drawn images is not limited to display and non-display. As another example, drawn images close to the avatar may be displayed normally, and drawn images far from the avatar may be displayed simply. Specific examples of the simplified display include displaying with a lower resolution than the normal display, displaying curves as approximations to straight lines, converting to text using OCR, and displaying. However, the threshold may be a fixed value.

[0083] Furthermore, according to the above embodiment, the threshold value is increased or decreased based on the display distance (setting value) set by the player through the display setting screen, allowing the player to select whether to prioritize the display of the drawn image or to allocate resources to the progress of the game. However, the display distance is not limited to being set by the player, and may be set by the terminal program 23P based on the performance of the user terminal 20 (for example, the clock speed of the processor 21, the capacity of the memory 22).

[0084] Furthermore, according to the above embodiment, by increasing or decreasing the threshold value according to the drawing thickness (an example of drawing setting), a drawn image drawn with thick lines can be seen from a distance, and a drawn image drawn with thin lines cannot be seen unless one gets closer. This allows for natural display control close to reality. Also, a player who draws a drawn image can set the distance at which the drawn image is displayed. This allows for different use of drawn images that are desired to be seen by many players playing the game and drawn images that are desired to be seen only by players playing nearby. However, the processes of steps S37 to S39 in FIG. 17 can be omitted.

[0085] According to the above embodiment, the drawn image drawn on the missing part of the object is hidden, and when the missing part of the object is repaired, the drawn image is redisplayed. This makes it possible to switch between displaying and hiding the drawn image while maintaining the worldview of the game. However, the displaying and hiding of the drawn image may be switched in other ways.

[0086] Furthermore, according to the above embodiment, among a plurality of drawn images drawn in different colors on the field F, a drawn image in a display color (one example of a display setting) set for each player is selectively displayed. This allows a player viewing the drawn images to adjust the number of drawn images displayed depending on the color. This allows the display of drawn images to be limited to a range that does not interfere with the progress of the game. Also, a player who has drawn a drawn image can limit the players who he / she wishes to view the drawn image. This allows the use of drawn images in the progress of the game to be increased. However, drawn images of all colors may be displayed to the player, or the drawn images may be drawn in only one color.

[0087] Furthermore, according to the above embodiment, drawn images drawn by players who have been excluded from a group (i.e., drawn images with the exclusion flag set to the second value "ON") are hidden. This makes it possible, for example, to hide drawn images drawn by a player who disrupts the harmony of the group. As one example, when multiple players belonging to a group are working together to draw a piece of art, a player who tries to disrupt the work can be excluded. As another example, a player who draws discriminatory, violent, or sexual images can be excluded. However, these processes can be omitted.

[0088] Furthermore, according to the above embodiment, since the drawn image is drawn only for objects within range, it is possible to prevent unintended drawn images from being drawn on distant objects. Also, by adjusting the thickness and darkness of the drawn image according to the distance between the avatar and the object, it is possible to realize natural drawing by spray. However, these processes can be omitted.

[0089] Furthermore, according to the above embodiment, when a drawing operation continues for the limited time, the drawing of the drawn image is interrupted and the image data is uploaded. This prevents the amount of image data spread to other user terminals 20 via the server 10 from becoming too large, thereby preventing an increase in traffic on the communication network 2. Furthermore, by dividing and transmitting the image data, the drawn images can be synchronized in real time among the multiple user terminals 20A to 20D. However, the interruption of drawing due to the lapse of the limited time (i.e., step S14 in FIG. 12) can be omitted. Furthermore, the multiple user terminals 20A to 20D may transmit and receive data directly without going through the server 10.

[0090] Furthermore, according to the above embodiment, the unnaturalness of interrupting drawing can be reduced by performing an effect of shaking the spray can S in parallel with uploading image data. However, this effect can be omitted.

[0091] [Other variations] The program according to the present invention is not limited to a single program, but may be a collection of multiple programs. Also, the program according to the present invention is not limited to being executed by a single device, but may be executed by multiple devices in a shared manner. Furthermore, the division of roles between the server 10 and the user terminal 20 is not limited to the above example. That is, part of the processing of the server 10 may be executed by the user terminal 20, and part of the processing of the user terminal 20 may be executed by the server 10.

[0092] Furthermore, a part or all of the means realized by the program can be realized by hardware such as an integrated circuit. Furthermore, the program may be provided by being recorded on a non-transitory recording medium that can be read by a computer. Examples of the recording medium include a hard disk, an SD card, a DVD, and a server on the Internet.

[0093] [Note] Some of the features of the present invention are summarized below. [assignment] An object of the present invention is to improve interest. [Solution] (1) In a computer game that takes place in a three-dimensional virtual space, having a player draw an image on an object placed in the virtual space; A program for changing the display mode of the image in accordance with a display setting for each player. (2) In the program according to (1) above, The computer includes: When a distance between an avatar and the image in the virtual space is less than a threshold, displaying the image to a player operating the avatar; a program that makes the image invisible to a player operating the avatar when the distance between the avatar and the image in the virtual space is equal to or greater than the threshold value; (3) In the program according to (2) above, A program that causes the computer to increase or decrease the threshold value based on a setting value set by a player. (4) In the program according to (2) above, A program that causes the computer to increase or decrease the threshold value based on a thickness of a line in the image. (5) In the program according to (1) above, A program that causes the computer to, when the object is lost, not to display the image drawn in the lost portion. (6) In the program according to (5) above, A program that causes the computer to, when the lost object is repaired, re-display the image drawn in the repaired portion. (7) In the program according to (1) above, A program that causes the computer to selectively display an image in a color set for each player from among a plurality of images drawn in different colors. (8) In the program according to (1) above, A program that causes the computer to make the image drawn by a player who has been excluded from a group invisible to other players belonging to the group. (9) In the program according to (1) above, A program that causes the computer to draw the image when a drawing operation on the object within a predetermined range is accepted from a player. (10) In the program according to (9), A program for interrupting the drawing of the image and transmitting image data representing the image to another computer when the drawing operation is performed continuously for a predetermined time limit on the computer. (11) In the program according to (10), A program that causes the computer to display information suggesting that the drawing of the image has been interrupted. (12) In a game that takes place in a three-dimensional virtual space, a drawing means for allowing a player to draw an image for an object arranged in the virtual space; A system comprising: a display control means for changing the display mode of the image in accordance with a display setting for each player. [Effects] According to the above solutions (1) and (12), the computer resources required for displaying images can be saved, so that the game can be played smoothly, and as a result, the interest of the game is improved. According to the above solution (2), an image close to the avatar is displayed and an image far from the avatar is hidden, thereby saving resources while maintaining a natural state close to reality. According to the above solution (3), it is possible to allow the player to select whether to prioritize image display or to allocate resources to the progress of the game. According to the above solution (4), natural display control close to reality can be realized. According to the above solution (5), the drawn images can be deleted while maintaining the worldview of the game. According to the above solution (6), a deleted image can be redisplayed. According to the above solution (7), the number of images to be displayed can be adjusted by color, and players who wish to view the images can be limited. According to the above solution (8), images drawn by a player who disrupts the harmony of the group can be made invisible, so that a decline in interest can be prevented. According to the above solution (9), it is possible to prevent unintended images from being drawn on distant objects. According to the above solution (10), it is possible to prevent the amount of image data from becoming too large, thereby preventing an increase in traffic on the communication network, and also to synchronize images with other players in real time. According to the above-mentioned solution (11), it is possible to reduce the unnaturalness caused by interruption of drawing. [Explanation of symbols]

[0094] 1...system, 2...communication network, 10...server, 11,21...processor, 12,22...memory, 13,23...storage, 13P...server program, 14...input / output interface, 15,25...communication interface, 19,29...communication bus, 20...user terminal, 23P...terminal program, 31...monitor, 33,34...camera, 35...microphone, 36...speaker, 41...motion sensor, 42...position sensor, 43...operation device, 90...virtual space, 91...panoramic image, 92...virtual camera, 93...reference line of sight, 94...visual field of view, 95,96...area, 97...captured image

Claims

1. In a computer game that takes place in a three-dimensional virtual space, having a player draw an image on an object placed in the virtual space; A program for changing the display mode of the image represented by the same image data for each player in accordance with display settings for each player that are stored in advance in a storage before the image is drawn.

2. The program according to claim 1, When the virtual space is viewed from above in a plan view, when a minimum distance between a predetermined point on the avatar and the image is less than a threshold determined for each player based on the display setting, displaying the image to a player operating the avatar; A program that hides the image from a player operating the avatar when the minimum distance is equal to or greater than the threshold value.

3. The program according to claim 2, A program that causes the computer to increase or decrease the threshold value based on a setting value set by a player.

4. The program according to claim 2, The computer includes: When a drawing operation on a drawing position on the object is continued while changing the drawing position, the image is drawn in the form of a line connecting a plurality of the drawing positions; A program that increases or decreases the threshold value based on the thickness of lines in the image.

5. The program according to claim 1, A program that causes the computer to, when the object is lost, not to display the image drawn in the lost portion.

6. The program according to claim 5, A program that causes the computer to, when the lost object is repaired, re-display the image drawn in the repaired portion.

7. The program according to claim 1, A program that causes the computer to selectively display an image in a color set for each player from among a plurality of images drawn in different colors.

8. The program according to claim 1, A program that causes the computer to make the image drawn by a player who has been excluded from a group invisible to other players belonging to the group.

9. The program according to claim 1, A program that causes the computer to draw the image when a drawing operation on the object within a predetermined range is accepted from a player.

10. The program according to claim 9, A program for interrupting the drawing of the image and transmitting image data representing the image to another computer when the drawing operation is performed continuously for a predetermined time limit on the computer.

11. The program according to claim 10, A program that causes the computer to display information suggesting that the drawing of the image has been interrupted.

12. In a game that takes place in a three-dimensional virtual space, a drawing means for allowing a player to draw an image for an object arranged in the virtual space; and a display control means for changing, for each player, the display mode of the image represented by the same image data in accordance with display settings for each player that are stored in advance in a storage before the image is drawn.

Citation Information

Patent Citations

  • Image processing device, shift control method for group character, game device including shift control of group character, calculating method for game score, and recording medium

    JP2001276419A

  • Video game device, its control method, and game program

    JP2003325969A

  • Game program and game apparatus

    JP2005318943A

  • Image processing program and image processor

    JP2012073857A

  • Input system, information processor, information processing program and three-dimensional position calculation method

    JP2012221145A