U.S. Pat. No. 12,145,061
COMPUTER-READABLE NON-TRANSITORY STORAGE MEDIUM HAVING STORED THEREIN GAME PROGRAM, GAME PROCESSING SYSTEM, GAME PROCESSING APPARATUS, AND GAME PROCESSING METHOD
AssigneeNINTENDO CO., LTD.
Issue DateJuly 12, 2022
Illustrative Figure
Abstract
In a virtual space, a virtual camera is set in a direction such that at least a part of a ground is included in the field of view of the virtual camera. Movement of a predetermined object located above the ground in the virtual space is controlled based on game processing. In a rendering process of generating, based on the virtual camera, a game image including the ground and the object, if the height of the object in the virtual space is greater than a predetermined height, the game image is generated such that a contour of the object is rendered.
Description
DETAILED DESCRIPTION OF NON-LIMITING EXAMPLE EMBODIMENTS Hereinafter, one exemplary embodiment will be described. [Hardware Configuration of Information Processing Apparatus] First, an information processing apparatus for executing information processing according to the exemplary embodiment will be described. The information processing apparatus is, for example, a smartphone, a stationary or hand-held game apparatus, a tablet terminal, a mobile phone, a personal computer, a wearable terminal, or the like. The information processing according to the exemplary embodiment can also be applied to a game system including a game apparatus, etc., as described above, and a predetermined server. In the exemplary embodiment, a stationary game apparatus (hereinafter, referred to simply as “game apparatus”) is described as an example of the information processing apparatus. FIG.1is a block diagram showing an example of the internal configuration of a game apparatus2according to the exemplary embodiment. The game apparatus2includes a processor21. The processor21is an information processing section for executing various types of information processing to be executed by the game apparatus2. For example, the processor21may be composed only of a CPU (Central Processing Unit), or may be composed of a SoC (System-on-a-chip) having a plurality of functions such as a CPU function and a GPU (Graphics Processing Unit) function. The processor21performs various types of information processing by executing an information processing program (e.g., a game program) stored in a storage section22. The storage section22may be, for example, an internal storage medium such as a flash memory or a DRAM (Dynamic Random Access Memory), or may be configured to utilize an external storage medium mounted to a slot that is not shown, or the like. The game apparatus2further includes a wireless communication section23for allowing the game apparatus2to perform wireless communication with another game apparatus2or a predetermined server device. Examples of the wireless communication include Internet communication and short-range wireless ...
DETAILED DESCRIPTION OF NON-LIMITING EXAMPLE EMBODIMENTS
Hereinafter, one exemplary embodiment will be described.
[Hardware Configuration of Information Processing Apparatus]
First, an information processing apparatus for executing information processing according to the exemplary embodiment will be described. The information processing apparatus is, for example, a smartphone, a stationary or hand-held game apparatus, a tablet terminal, a mobile phone, a personal computer, a wearable terminal, or the like. The information processing according to the exemplary embodiment can also be applied to a game system including a game apparatus, etc., as described above, and a predetermined server. In the exemplary embodiment, a stationary game apparatus (hereinafter, referred to simply as “game apparatus”) is described as an example of the information processing apparatus.
FIG.1is a block diagram showing an example of the internal configuration of a game apparatus2according to the exemplary embodiment. The game apparatus2includes a processor21. The processor21is an information processing section for executing various types of information processing to be executed by the game apparatus2. For example, the processor21may be composed only of a CPU (Central Processing Unit), or may be composed of a SoC (System-on-a-chip) having a plurality of functions such as a CPU function and a GPU (Graphics Processing Unit) function. The processor21performs various types of information processing by executing an information processing program (e.g., a game program) stored in a storage section22. The storage section22may be, for example, an internal storage medium such as a flash memory or a DRAM (Dynamic Random Access Memory), or may be configured to utilize an external storage medium mounted to a slot that is not shown, or the like.
The game apparatus2further includes a wireless communication section23for allowing the game apparatus2to perform wireless communication with another game apparatus2or a predetermined server device. Examples of the wireless communication include Internet communication and short-range wireless communication.
The game apparatus2further includes a controller communication section24for allowing the game apparatus2to perform wired or wireless communication with a controller4.
A display section5(e.g., a television) is connected to the game apparatus2via an image/sound output section25. The processor21outputs images and sounds generated (by execution of the above-described information processing, for example), to the display section5via the image/sound output section25.
Next, the controller4will be described. The controller4includes at least one analog stick42being an example of a direction input device. The analog stick42can be used as a direction input section with which a direction can be input. A user (player) tilts the analog stick42and thereby can input a direction corresponding to the direction of the tilt (and input a magnitude corresponding to the angle of the tilt). The controller4further includes a button section43including various operation buttons. For example, the controller4may include a plurality of operation buttons (e.g., A button, B button, X button, Y button) on a main surface of a housing of the controller4.
The controller4includes an inertial sensor44. Specifically, the controller4includes, as the inertial sensor44, an acceleration sensor and an angular velocity sensor. In the exemplary embodiment, the acceleration sensor detects the magnitudes of accelerations along predetermined three axial directions. The angular velocity sensor detects angular velocities about the predetermined three axes.
The controller4further includes a communication section41for performing wired or wireless communication with the controller communication section24. The content of a direction input to the analog stick42, information indicating the pressed state of the button section43, and the results of various detections performed by the inertial sensor44are repeatedly output to the communication section41at appropriate timings and are transmitted to the game apparatus2.
[Game Assumed in Exemplary Embodiment]
Next, an outline of game processing (an example of information processing) to be executed in the game apparatus2according to the exemplary embodiment will be described. First, as shown inFIG.2, a game assumed in the exemplary embodiment is a tennis game having a motif of “singles”. Specifically, in this game, two player character objects (sometimes referred to as “characters”) which are virtual human-shaped objects are respectively disposed in an own-side court and an opponent-side court of a tennis court prepared in a virtual space, and a tennis game is performed. The user (player) operates the analog stick42to move the character as an operation target, and operates a predetermined operation button to cause the character to perform an action of swinging a tennis racket, thereby hitting a tennis ball.
This game can be played by two users through a network such as the Internet, or short-range wireless communication. In the exemplary embodiment, it is assumed that one user is in charge of one character and operates the character. If there is no opponent user, an opponent character is automatically operated by a computer.
[Outline of Game Processing of Exemplary Embodiment]
Next, an outline of game processing executed by the game apparatus2according to the exemplary embodiment will be described. As shown inFIG.2, in this game, a ground object (sometimes simply referred to as “ground”)51is disposed in the virtual space. A part of the ground51is a tennis court52, and a court peripheral area53is provided as a ground area around the tennis court52.
The tennis court52has a rectangular shape that has long sides of24m and short sides of 11 m (in the size in the virtual space). The court peripheral area53has a rectangular shape that has long sides of 40 m and short sides of 20 m, including the size of the tennis court52. An area obtained by combining the tennis court52and the court peripheral area53may be regarded as a tennis court. As shown inFIG.2, in the virtual space, the tennis court52is arranged such that the long sides are along a Z-axis direction (depth direction), and the short sides are along an X-axis direction (left-right direction). A height from the ground51is represented by a value along the Y axis.
The tennis court52has a reddish brown color simulating a clay court. The court peripheral area53has a dark gray color. An area of the ground51excluding the tennis court52and the court peripheral area53is lawn having a pale green color. Furthermore, as shown inFIG.2, a plurality of tree objects (sometimes simply referred to as “trees”)70are disposed on the ground51of the lawn behind the tennis court52. The trees70have brown trunks and dark green leaves. In a distant area in the depth direction of the virtual space, a sky background object (sometimes simply referred to as “sky background”) representing a background of blue sky is disposed.
In the tennis court52(and the court peripheral area53), a character61to be operated by the user (sometimes referred to as “player character”) is disposed in the own-side court while a character62of an opponent (sometimes referred to as “opponent character”) is disposed in the opponent-side court. The player character61and the opponent character62hit a ball object (sometimes referred to as “ball”)50back and forth with tennis rackets, whereby the tennis game advances.
The ball50is a bicolor (green and blue) ball (see (A) ofFIG.3) having a diameter of 70 mm. As described above, the tennis court52is reddish brown and the court peripheral area53is dark gray. Therefore, the two colors, green and blue, are used for the ball50to prevent reduction in distinguishability (visibility) of the ball50by the user. The two colors enable the user to visually recognize rotation of the ball50.
A virtual camera disposed in the virtual space captures the virtual space from above and behind the player character61such that an area including the tennis court52and the court peripheral area53is included in a capturing range (rendering range: in other words, the field of view of the virtual camera), thereby generating the game image as shown inFIG.2. Furthermore, the virtual camera moves leftward and rightward in accordance with leftward and rightward movement (movement in the X-axis direction) of the player character61, and captures the virtual space from above and behind the player character61.
As described above, outside the court peripheral area53, the pale green lawn (the area of the ground51outside the court peripheral area53), the trees70including dark green leaves, and the blue sky background71are present. Therefore, when the bicolor (green and blue) ball50overlaps the lawn, the leaves of the trees70, or the sky background71(e.g., when the player character61or the opponent character62hits a lob shot and the ball50goes up high in the air) in the game image, the visibility of the ball50is reduced.
In order to ensure the visibility of the ball50, it is conceivable to render a contour of the ball50. However, the visibility of the ball50is not reduced when the ball50overlaps the reddish-brown tennis court52or the dark-gray court peripheral area53, and it is considered that the contour of the ball50need not be rendered even in such a case. If the contour of the ball50is rendered in the above case, the ball50stands out and looks unnatural.
Therefore, in this game, whether or not to render the contour of the ball50is determined according to the height of the ball50from the ground51(a value along the Y axis shown inFIG.2) and the distance from the virtual camera to the ball50(a distance in the Z-axis direction shown inFIG.2). When it is determined that the contour should be rendered, the contour of the ball50is rendered to ensure the visibility of the ball50. Moreover, in this game, the thickness of the contour with respect to the size of the ball50(diameter of 70 mm) is gradually changed according to the height of the ball50from the ground51and the distance from the virtual camera to the ball50. A specific description will be given below.
FIG.3is a diagram illustrating the thickness of the contour of the ball50(the size of the contour object90) in the virtual space. In this game, a spherical contour object90centering on the center of the spherical ball50having a diameter of 70.00 mm is provided in the virtual space. In addition, in this game, transparency of the contour object90is smoothly changed within a range from 100% to 0% (in other words, opacity of the contour object90is smoothly changed within a range from 0% to 100%), and the diameter of the contour object90is smoothly changed within a range from 70.00 mm to 100.00 mm.
Hereinafter, a specific description will be given with reference toFIG.3. As shown in (A) to (D) ofFIG.3, when the height of the ball50(precisely, the center of the ball50) from the ground51(i.e., the value along the Y axis shown inFIG.2) is 3.00 m or less, the transparency of the contour object 90 is 100% (i.e., the contour object90is not rendered). The ground51is a plane. When the height of the ball50from the ground51has exceeded 3.00 m, the transparency of the contour object90is gradually reduced. When the height is 3.25 m, the transparency of the contour object90is 75% as shown in (E) to (H) inFIG.3. When the height of the ball50from the ground51has exceeded 3.25 m, the transparency of the contour object90is similarly gradually reduced. When the height is 3.50 m, the transparency of the contour object90is 50% as shown in (I) to (L) ofFIG.3. When the height of the ball50from the ground51has exceeded 3.50 m, the transparency of the contour object90is similarly gradually reduced. When the height is 4.00 m or more, the transparency of the contour object90is 0% as shown in (M) to (P) ofFIG.3(i.e., the contour object90becomes dark gray which is its original color).
Moreover, as shown inFIG.3, in a case where the distance from the virtual camera to the ball50(precisely, the distance from the position, on the Z axis, of the virtual camera to the position, on the Z axis, of the center of the ball50) is 25.00 m, the diameter of the contour object90is gradually increased from 70.00 mm when the height of the ball50from the ground51has exceeded 3.00 m (see (A) ofFIG.3), and becomes 77.50 mm when the height is3.25m (see (E) ofFIG.3). The position at which the distance from the virtual camera to the ball50is 25.00 m is indicated by a broken line80inFIG.2. When the height of the ball50from the ground51is 3.00 m or less and when the distance from the virtual camera to the ball50is less than 25.00 m, the diameter of the contour object90is fixed to 70.00 mm. When the height of the ball50from the ground51has exceeded 3.25 m, the diameter of the contour object90is similarly gradually increased, and becomes 85.00 mm when the height is 3.50 m (see (I) ofFIG.3). When the height of the ball50from the ground51has exceeded 3.50 m, the diameter of the contour object90is similarly gradually increased, and becomes 100.00 mm when the height is 4.00 m or more (see (M) ofFIG.3).
In a case where the distance from the virtual camera to the ball50is 27.00 m, the diameter of the contour object90is gradually increased from 70.00 mm when the height of the ball50from the ground51has exceeded 3.00 m (see (B) ofFIG.3), and becomes 80.00 mm when the height is 3.25 m (see (F) ofFIG.3). When the height of the ball50from the ground51has exceeded 3.25 m, the diameter of the contour object90is similarly gradually increased, and becomes 90.00 mm when the height is 3.50 m (see (J) ofFIG.3). When the height of the ball50from the ground51has exceeded 3.50 m, the diameter of the contour object90is similarly gradually increased, and becomes 100.00 mm when the height is 4.00 m or more (see (N) ofFIG.3).
In a case where the distance from the virtual camera to the ball50is 29.00 m, the diameter of the contour object90is gradually increased from 70.00 mm when the height of the ball50from the ground51has exceeded 3.00 m (see (C) ofFIG.3), and becomes 90.00 mm when the height is 3.25 m (see (G) ofFIG.3). When the height of the ball50from the ground51has exceeded 3.25 m, the diameter of the contour object90is similarly gradually increased, and becomes 95.00 mm when the height is 3.50 m (see (K) ofFIG.3). When the height of the ball50from the ground51has exceeded 3.50 m, the diameter of the contour object90is similarly gradually increased, and becomes 100.00 mm when the height is 4.00 m or more (see (O) ofFIG.3).
In a case where the distance from the virtual camera to the ball50is 31.00 m, the diameter of the contour object90is gradually increased from 70.00 mm when the height of the ball50from the ground51has exceeded 3.00 m (see (D) ofFIG.3), and becomes 100.00 mm when the height is 3.25 m or more (see (H), (L), (P) ofFIG.3).
In the above description, the diameter of the contour object90being “gradually (smoothly) increased” with increase in the height of the ball50from the ground51, has been described with reference toFIG.3, but the diameter of the contour object90is also “gradually (smoothly) increased” with increase in the distance from the virtual camera to the ball50. The diameter and the transparency of the contour object90to be changed according to the height and the depth are each determined by interpolation between a maximum value and a minimum value that are set in advance. Various interpolation methods are applicable. For example, linear interpolation or Hermite interpolation may be used.
Here, a method of rendering the contour object90and the ball50will be described. In this game, the contour object90and the ball50are rendered by a rendering method in which a part, of the contour object90, which overlaps the ball50as viewed from the virtual camera (point of view) is not rendered, thereby rendering the contour of the ball50in the game image. A specific description will be given below. First, the surface of a polygon constituting a sphere of each of the contour object90and the ball50is an outer surface of the sphere (i.e., the direction of a normal vector of the polygon faces outward with respect to the surface of the sphere). While the surface of the polygon (the outer surface of the sphere) is rendered, the rear surface of the polygon (the inner surface of the sphere) is not rendered. When rendering is performed by using a Z buffer method, first, a part, of the contour object90, which is visible from the virtual camera is rendered, but a Z-buffer value (Z value) of the rendered part is not updated. Thereafter, a part, of the ball (ball object)50, which is visible from the virtual camera is rendered. Thus, since the Z-buffer value regarding the contour object90rendered first has not been updated, the ball50rendered later is displayed without being hidden behind the contour object90, whereby the contour of the ball50is rendered in the game image as shown inFIG.4described later.
The contour of the ball50may be rendered by another rendering method. In the other rendering method, the surface of the polygon constituting the sphere of the contour object90is an inner surface of the sphere (i.e., the direction of the normal vector of the polygon faces inward with respect to the surface of the sphere). In other words, the rear surface of the polygon constituting the sphere of the contour object90is an outer surface of the sphere. Since the rear surface of the polygon (the outer surface of the contour object90) as viewed from the virtual camera is not rendered, the surface of the ball50is rendered, and the surface (inner surface) of the contour object90is rendered, as the contour, around the surface of the ball50.
FIG.4is a diagram illustrating how the ball50and the contour appear in the game screen (game image) of this game.FIG.4is an enlarged view of an area around the ball50shown inFIG.2.FIG.4shows, for example, a scene in which the ball50with the contour being rendered (displayed) is moving from the near side to the far side of the tennis court52, at a height of 3.5 m from the ground51. The ball50(and the contour object90) shown in (J), (K), (L) ofFIG.4corresponds to the ball50(and the contour object90) shown in (J), (K), (L) ofFIG.3, respectively.
As shown inFIG.4, in the game screen, the ball50and the contour object90in the virtual space are displayed to be gradually reduced in size as they move from the near side to the far side. As described with reference toFIG.3, the contour object90is increased in size with increase in distance from the virtual camera in the virtual space. Therefore, as shown inFIG.4, in the game screen, although the ball50is displayed to be gradually reduced in size, the size of the contour object90(i.e., the thickness of the contour) is not so reduced as the ball50is reduced in size. Therefore, in this game, as shown inFIG.4, the contour of the ball50can be emphasized and highlighted (made conspicuous) as the ball50moves in the depth direction, whereby the visibility of the ball50can be ensured. At this time, the size of the ball50itself is not changed, whereby the visibility can be ensured without deteriorating a sense of perspective.
Moreover, in this game, since the contour of the ball50can be emphasized and highlighted (made conspicuous) in the game screen (game image) by increasing the diameter (or reducing the transparency) of the contour object90according to the height of the ball50(seeFIG.3), the visibility of the ball50can be ensured.
[Details of Information Processing of Exemplary Embodiment]
Next, information processing according to the exemplary embodiment will be described in detail with reference toFIG.5toFIG.7.
[Data to be Used]
Various data used in this game processing will be described.FIG.5shows an example of a program and data stored in the storage section22of the game apparatus2. The storage section22has, stored therein, a game program101, player character data102, opponent character data103, ball data104, contour object data105, polygon data106, operation data107, and the like.
The game program101is a game program for executing game processing according to the exemplary embodiment.
The player character data102is data that defines a player character in the virtual space of this game, and indicates the size, position, direction, posture, moving speed, moving direction, etc., of the player character.
The opponent character data103is data that defines an opponent character in the virtual space of this game, and indicates the size, position, direction, posture, moving speed, moving direction, etc., of the opponent character.
The ball data104is data that defines the size, position, moving direction, moving speed, etc., of the ball50in the virtual space of this game. With this ball data104, movement of the ball50is controlled in the virtual space.
The contour object data105is data that defines the size, position, moving direction, moving speed, etc., of the contour object90in the virtual space of this game. With this contour object data105, movement of the contour object90is controlled together with the ball50in the virtual space. The contour object data105includes data indicating a relationship between the transparency of the contour object90and the distance from the ground51to the center of the ball50(the center of the contour object90). The contour object data105further includes data indicating a relationship between the diameter of the contour object90, and the distance from the virtual camera (point of view) to the center of the ball50(the distance in the Z-axis direction shown inFIG.2) and the distance from the ground51to the center of the ball50.
The polygon data106is data for forming (constituting), in the virtual space, the objects such as the player character61, the opponent character62, the ground51(including the tennis court52, etc.), the ball50, the trees70, the sky background71, etc.
The operation data107is data indicating an operation performed on the game apparatus2.
[Details of Game Processing]
Next, the game processing according to the exemplary embodiment will be described in detail with reference to flowcharts.FIG.6andFIG.7are examples of flowcharts showing the game processing according to the exemplary embodiment in detail.
In step S100inFIG.6, the processor21performs an object operation process. Specifically, the processor21performs: a control for moving, based on the operation data107, the player character61in the virtual space; a control for moving, based on the opponent character data103, the opponent character62which acts based on an operation performed on another game apparatus2; a control for moving the ball50(and the contour object90), based on the ball data104; and the like. Moreover, in the object operation process, a process of causing the player character61to hit the ball50with a tennis racket in the virtual space is also performed based on the operation data107. Thereafter, the process shifts to step S200.
In step S200, the processor21performs a ball contour process.FIG.7is an example of a flowchart of the ball contour process. Hereinafter, the ball contour process will be described with reference toFIG.7.
In step S201inFIG.7, the processor21, based on the contour object data105, determines the transparency of the contour object90disposed in the virtual space. For example, the processor21determines the transparency of the contour object90to be 0% when the distance from the ground51to the center of the ball50(the center of the contour object90) is 4.00 m (see (N) ofFIG.3, for example). Thereafter, the process shifts to step S202.
In step S202, the processor21, based on the contour object data105, determines the diameter of the contour object90arranged in the virtual space. For example, the processor21determines the diameter of the contour object90to be 95.00 mm when the distance from the virtual camera (point of view) to the center of the ball50(the center of the contour object90) is 29.00 m and the distance from the ground51to the center of the ball50is 3.50 m (see (K) ofFIG.3, for example). Thereafter, the process shifts to step S203.
In step S203, the processor21constitutes, in the virtual space, the contour object90by using the transparency and the diameter determined in step S201and step S202. Thereafter, the process shifts to step S300inFIG.6.
In step S300inFIG.6, the processor21generates a game image by causing the virtual camera to capture the virtual space. At this time, the processor21renders the contour object90and the ball50by using the rendering method described with reference toFIG.3, thereby rendering the contour of the ball50in the game image (seeFIG.4). Thereafter, the process shifts to step S400.
In step S400, the processor21performs a display process of outputting, to the display section5, the game image generated in step S300, and causing the display section5to display the game screen. Thereafter, the process shifts to step S500.
In step S500, the processor21determines whether or not to end this game. Specifically, the processor21determines whether or not an end condition for this game (e.g., a condition for ending the match) has been satisfied. When the determination is YES, the game processing is ended. When the determination is NO, the process returns to step S100and steps S100to S400are executed to continue the game.
As described above, according to the exemplary embodiment, in the virtual space, when the height of the ball50from the ground51exceeds a predetermined height (3.00 m), the contour object90is rendered while the transparency of the contour object90is gradually reduced from 100% (seeFIG.3). Thus, when the ball50does not overlap the area outside the tennis court52and the court peripheral area53in the game image as shown inFIG.2, the visibility of the ball50is ensured. Therefore, basically, the contour of the ball50is not rendered. Meanwhile, when the ball50overlaps the area outside the tennis court52and the court peripheral area53, there is a possibility that the visibility of the ball50is not ensured. Therefore, the contour of the ball50is basically rendered, whereby the visibility of the ball50can be ensured. According to the exemplary embodiment, whether or not to render the contour of the ball50is determined according to the height or the like of the ball50in the virtual space. Therefore, the determination can be performed through a simple process.
As described above, according to the exemplary embodiment, rendering is performed such that, in the virtual space, the transparency of the contour object90is gradually reduced to gradually deepen the color of the contour object90with increase in the height of the ball50from the ground51(seeFIG.3). Therefore, according to the exemplary embodiment, in the game image as shown inFIG.2, as the ball50flies high in the air and the visibility of the ball50becomes easily reduced, the contour of the ball50can be deepened in color. Thus, the visibility of the ball50can be effectively ensured in a natural way.
Moreover, as described above, according to the exemplary embodiment, in the virtual space, when the distance from the virtual camera to the ball50(the distance in the Z-axis direction shown inFIG.2) has exceeded a predetermined distance (25.00 m: a broken line denoted by a reference numeral “80” inFIG.2), the contour object90is rendered with the diameter of the contour object90being gradually increased (seeFIG.3). Thus, according to the exemplary embodiment, the thickness of the contour with respect to the size (diameter of 70.00 mm) of the ball50can be changed according to the distance from the virtual camera to the ball50, whereby the visibility of the ball50can be improved.
Moreover, as described above, according to the exemplary embodiment, in the virtual space, when the height of the ball50from the ground51(a distance in the Y-axis direction shown inFIG.2) has exceeded a predetermined height (3.00 m), the contour object90is rendered with the diameter of the contour object90being gradually increased (seeFIG.3). Thus, according to the exemplary embodiment, the thickness of the contour with respect to the size (diameter of 70.00 mm) of the ball50can be changed according to the height of the ball50from the ground51, whereby the visibility of the ball50can be improved.
[Modifications]
In the above exemplary embodiment, the tennis game has been described as an example. However, the present disclosure may be applied to, instead of the tennis game, a golf game, a baseball game, or the like, for example.
In the above exemplary embodiment, the contour of the ball50is rendered in the game image by using the contour object90in the virtual space. However, the contour of the ball50may be rendered in the game image without using (providing) the contour object90. For example, in the process of rendering the ball50by using the Z buffer method, if the Z value of an outer peripheral edge portion of the ball50is significantly different from the Z value of a portion (e.g., the trees70or the sky background71) adjacent to the edge portion (that is, when a difference between the Z values is determined to be a predetermined difference or more), a predetermined number of pixels outside the edge portion are rendered (painted) as a contour, whereby a contour of a width corresponding to the predetermined number of pixels may be rendered in the game image.
In the above exemplary embodiment (seeFIG.4), the diameter of the contour object90is desired to be increased in the virtual space to such an extent that the thickness of the contour (the width of the contour in the game screen) is not reduced even when the ball50moves in the depth direction in the game screen.
In the above exemplary embodiment, the transparency of the contour object90is changed according to the height of the ball50from the ground51, and the diameter of the contour object90is changed according to the height of the ball50from the ground51and the distance (depth) of the ball50from the virtual camera (seeFIG.3). However, as shown in FIG.8, the transparency of the contour object90may always be 0% regardless of the height of the ball50(i.e., may always be displayed in dark gray which is its original color), and the diameter of the contour object90may not necessarily be changed according to the distance from the virtual camera to the ball50. Specifically, as shown inFIG.8, in a case where the distance from the virtual camera to the ball50is 25.00 m or more, the diameter of the contour object90is gradually increased from 70.00 mm when the height of the ball50from the ground51has exceeded 3.00 m (see (A) ofFIG.8), and becomes 80.00 mm when the height is 3.25 m (see (B) ofFIG.8). When the height of the ball50from the ground51has exceeded 3.25 m, the diameter of the contour object90is similarly gradually increased, and becomes 90.00 mm when the height is 3.50 m (see (C) ofFIG.8). When the height of the ball50from the ground51has exceeded 3.50 m, the diameter of the contour object90is similarly gradually increased, and becomes 100.00 mm when the height is 4.00 m or more (see (D) ofFIG.8). As in the case ofFIG.3, when the height of the ball50from the ground51is 3.00 m or less and when the distance from the virtual camera to the ball50is less than 25.00 m, the diameter of the contour object90is fixed to 70.00 mm. The diameter and the transparency of the contour object90to be changed according to the height and the depth are each determined by interpolation between a maximum value and a minimum value that are set in advance. Various interpolation methods are applicable. For example, linear interpolation or Hermite interpolation may be used.
In the above exemplary embodiment, the case where the series of processes regarding the game processing are executed by a single game apparatus2, has been described. However, in another embodiment, the series of processes may be executed in an information processing system that includes a plurality of information processing apparatuses. For example, in an information processing system that includes a terminal side apparatus and a server side apparatus capable of communicating with the terminal side apparatus via a network, a part of the series of processes may be executed by the server side apparatus. Alternatively, in an information processing system that includes a terminal side apparatus and a server side apparatus capable of communicating with the terminal side apparatus via a network, a main process of the series of processes may be executed by the server side apparatus, and a part of the series of the processes may be executed by the terminal side apparatus. Still alternatively, in the information processing system, a server side system may include a plurality of information processing apparatuses, and a process to be executed on the server side may be executed by the plurality of information processing apparatuses in a shared manner. In addition, a so-called cloud gaming configuration may be adopted. For example, the game apparatus2may send operation data indicating a user's operation to a predetermined server, and the server may execute various types of game processing and stream the execution result as video/audio to the game apparatus2.
While the exemplary embodiment has been described in detail, the foregoing description is in all aspects illustrative and not restrictive. It is to be understood that numerous other modifications and variations can be devised without departing from the scope of the exemplary embodiments.
Claims
- A non-transitory computer-readable storage medium having stored therein instructions that, when executed by a processor of an information processing apparatus, cause the information processing apparatus to provide execution comprising: setting, in a virtual space, a virtual camera in a direction such that at least a part of a ground arranged in the virtual space is within a field of view of the virtual camera;controlling, based on game processing, movement of a predetermined object located above the ground in the virtual space;and performing, based on the virtual camera, a rendering process of generating a game image that includes the ground and the object, and when a height of the object in the virtual space is higher than a predetermined height, generating the game image through a rendering process of rendering a contour of at least the object according to the height of the object.
- The non-transitory computer-readable storage medium according to claim 1, wherein in the rendering process, the information processing apparatus is caused to provide execution comprising rendering the contour with opacity according to the height of the object.
- The non-transitory computer-readable storage medium according to claim 1, wherein in the rendering process, the information processing apparatus is caused to provide execution comprising generating the game image through a rendering process of rendering the contour by rendering a contour object larger than the object.
- The non-transitory computer-readable storage medium according to claim 1, wherein in the rendering process, the information processing apparatus is caused to provide execution comprising generating the game image through a rendering process in which the contour is thickly rendered with respect to a size of the rendered object, according to a depth of the object with respect to the virtual camera.
- The non-transitory computer-readable storage medium according to claim 1, wherein in the rendering process, the information processing apparatus is caused to provide execution comprising generating the game image through a rendering process in which the contour is rendered to be thick with respect to a size of the rendered object, according to the height of the object.
- The non-transitory computer-readable storage medium according to claim 3, wherein in the rendering process, the information processing apparatus is caused to provide execution comprising generating the game image through the rendering process such that a size of the contour object is increased according to a depth of the object with respect to the virtual camera.
- The non-transitory computer-readable storage medium according to claim 1, wherein the information processing apparatus is caused to provide execution comprising performing, as the game processing, a process of causing a player character in the virtual space to hit back the object, based on an operation input.
- The non-transitory computer-readable storage medium according to claim 7, wherein the object is a ball object, the at least part of the ground is a court where the player character and an opponent character that is an opponent of the player character are arranged, and the information processing apparatus is caused to provide execution comprising setting the virtual camera, at a position behind and above the player character, in a direction such that the court is within the field of view of the virtual camera, and performing, as the game processing, sport game processing in which the player character is caused to return the ball object hit by the opponent character, based on an operation input.
- The non-transitory computer-readable storage medium according to claim 8, wherein the information processing apparatus is caused to provide execution comprising controlling movement of the player character on the court, based on an operation input, and shifting the position of the virtual camera in accordance with movement of the player character.
- The non-transitory computer-readable storage medium according to claim 8, wherein the court includes a tennis court, and the sport game processing includes tennis game processing.
- A game processing system, comprising: a processor;and a memory configured to store computer readable instructions that, when executed by the processor, cause the game processing system to: set, in a virtual space, a virtual camera in a direction such that at least a part of a ground arranged in the virtual space is within a field of view of the virtual camera;control, based on game processing, movement of a predetermined object located above the ground in the virtual space;and perform, based on the virtual camera, a rendering process of generating a game image that includes the ground and the object, and when a height of the object in the virtual space is higher than a predetermined height, generate the game image through a rendering process of rendering a contour of at least the object according to the height of the object.
- The game processing system according to claim 11, wherein the game processing system is caused to, in the rendering process, render the contour with opacity according to the height of the object.
- The game processing system according to claim 11, wherein the game processing system is caused to, in the rendering process, generate the game image through a rendering process of rendering the contour by rendering a contour object larger than the object.
- The game processing system according to claim 11, wherein the game processing system is caused to, in the rendering process, generate the game image through a rendering process in which the contour is thickly rendered with respect to a size of the rendered object, according to a depth of the object with respect to the virtual camera.
- The game processing system according to claim 11, wherein the game processing system is caused to, in the rendering process, generate the game image through a rendering process in which the contour is thickly rendered with respect to a size of the rendered object, according to the height of the object.
- The game processing system according to claim 13, wherein the game processing system is caused to, in the rendering process, generate the game image by performing the rendering process such that a size of the contour object is increased according to a depth of the object with respect to the virtual camera.
- The game processing system according to claim 11, wherein the game processing system is caused to: perform, as the game processing, a process of causing a player character in the virtual space to hit back the object, based on an operation input, wherein the object is a ball object, the at least part of the ground is a court where the player character and an opponent character that is an opponent of the player character are arranged, and the game processing system is caused to set the virtual camera, at a position behind and above the player character, in a direction such that the court is within the field of view of the virtual camera, and perform, as the game processing, sport game processing in which the player character is caused to return the ball object hit by the opponent character, based on an operation input.
- The game processing system according to claim 17, wherein the game processing system is caused to control movement of the player character on the court, based on an operation input, and shift the position of the virtual camera in accordance with movement of the player character.
- The game processing system according to claim 17, wherein the court includes a tennis court, and the sport game processing includes tennis game processing.
- A game processing apparatus, comprising: a display;and processing circuitry including at least one processor, wherein the processing circuitry is configured to: set, in a virtual space, a virtual camera in a direction such that at least a part of a ground arranged in the virtual space is within a field of view of the virtual camera;control, based on game processing, movement of a predetermined object located above the ground in the virtual space;and perform, based on the virtual camera, a rendering process of generating a game image that includes the ground and the object, and when a height of the object in the virtual space is higher than a predetermined height, generate the game image through a rendering process of rendering a contour of at least the object according to the height of the object.
- A game processing method executed by a computer configured to control a processing system, the game processing method comprising: setting, in a virtual space, a virtual camera in a direction such that at least a part of a ground arranged in the virtual space is within a field of view of the virtual camera;controlling, based on game processing, movement of a predetermined object located above the ground in the virtual space;and performing, based on the virtual camera, a rendering process of generating a game image that includes the ground and the object, and in association with a height of the object in the virtual space is being higher than a predetermined height, generating the game image through a rendering process of rendering a contour of at least the object according to the height of the object.
- The non-transitory computer-readable storage medium according to claim 1, wherein the virtual space includes objects formed by polygons, and the objects formed by polygons are arranged in the virtual space.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.