# US 10,482,657 B2 · Information processing system, non-transitory storage medium having stored information processing program, information processing device, information processing method, game system, non-transitory storage medium having stored game program, game device, and game method

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,482,657 B2
- Document ID: US10482657B2
- Status: Granted
- Kind: B2
- Application number: 15/724,562
- Filed: 2017-10-04
- Published: 2018-07-12
- Granted: 2019-11-19
- Earliest claimed: 2017-01-06
- Assignees: Nintendo Co., Ltd.
- Applicants: Nintendo Co., Ltd.
- Inventors: Yusuke Kitazono
- Web page: https://patentgrep.com/patent/US10482657B2

## CPC

- G06T 19/003: {Navigation within 3D models or images}
- A63F 13/25: Output arrangements for video game devices
- A63F 13/40: Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F 13/5258: by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
- A63F 13/56: Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
- G06T 2210/21: Collision detection, intersection
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR

## Abstract

An information processing system includes: a camera destination calculating unit configured to calculate a position of a destination of a virtual camera in a virtual space, based on predetermined information processing; a camera moving unit configured to move the virtual camera to an avoidance position at which a shielding object is avoided, in a case where a first vector heading from a position of an object to be captured by the virtual camera to the position of the destination, intersects with the shielding object from an outside in the virtual space and a second vector heading from the position of the destination to the position of the object to be captured by the virtual camera, does not intersect with the shielding object from the outside; and an image generating unit configured to generate an image of the virtual space, based on the virtual camera moved by the camera moving unit.

## Claims

### Claim 1

An information processing system comprising:
a processor; and
a memory configured to store computer readable instructions that, when executed by the processor, cause the information processing system to:
calculate a position of a destination of a virtual camera in a virtual space based on predetermined information processing;
move the virtual camera to an avoidance position at which a shielding object is avoided, in a case where (a) a first vector heading from a position of an object to be captured by the virtual camera to the position of the destination, intersects with the shielding object from an outside of the shielding object in the virtual space and (b) a second vector heading from the position of the destination to the position of the object to be captured by the virtual camera, does not intersect with the shielding object from the outside of the shielding object in the virtual space; and
generate an image of the virtual space based on the moved virtual camera.

### Claim 2 (depends on 1)

The information processing system according to claim 1, wherein the virtual camera is moved to the position of the destination in a case where the first vector does not intersect with the shielding object from the outside of the shielding object.

### Claim 3 (depends on 1)

The information processing system according to claim 1, wherein the virtual camera is moved to the position of the destination in a case where the first vector intersects with the shielding object from the outside of the shielding object and the second vector intersects with the shielding object from the outside of the shielding object.

### Claim 4 (depends on 1)

The information processing system according to claim 1, wherein the avoidance position is at a position on a side of the object to be captured from the shielding object.

### Claim 5 (depends on 1)

The information processing system according to claim 1, wherein the position of the destination is calculated based on the predetermined information processing according to an operation of a player.

### Claim 6 (depends on 5)

The information processing system according to claim 5, wherein the information processing is performed to move the virtual camera together with movement of the object to be captured, that moves in the virtual space based on the operation of the player, and the position of the destination is calculated.

### Claim 7 (depends on 5)

The information processing system according to claim 5, wherein the information processing is performed to move the virtual camera in accordance with an instruction of the player for moving the virtual camera, and the position of the destination is calculated.

### Claim 8 (depends on 1)

The information processing system according to claim 1, wherein the image indicating the position of the object to be captured in the virtual space is generated, the object to be captured being shielded by the shielding object.

### Claim 9 (depends on 8)

The information processing system according to claim 8, wherein the image indicating the object to be captured is generated with a silhouette, the object to be captured being shielded by the shielding object.

### Claim 10 (depends on 1)

The information processing system according to claim 1, wherein execution of the computer readable instructions further causes the information processing system to:
perform a first determination of whether the first vector intersects with the shielding object from the outside of the shielding object;
perform a second determination of whether the second vector intersects with the shielding object from the outside of the shielding object; and
move the virtual camera based on a result of the first determination and a result of the second determination.

### Claim 11 (depends on 10)

The information processing system according to claim 10, wherein the second determination is performed in a case where the result of the first determination indicates that the first vector intersects with the shielding object from the outside of the shielding object.

### Claim 12

A game system comprising:
a processor; and
a memory configured to store computer readable instructions that, when executed by the processor, cause the game system to:
move a player character object in a virtual space based on an operation of a player;
calculate a position of a destination of a virtual camera in the virtual space, in accordance with the movement of the player character object;
determine whether a shielding object is present between the position of the destination and the player character object;
determine whether the position of the destination is inside the shielding object;
move the virtual camera to a position on a side of the player character object from the shielding object when the shielding object is present between the position of the destination and the player character object and the position of the destination is inside the shielding object; and
generate an image of the virtual space to display the image indicating, on the shielding object, that the player character object is present, the player character object being shielded by the shielding object, when the shielding object is present between the position of the destination and the player character object and the position of the destination is outside the shielding object.

### Claim 13

A non-transitory storage medium having stored therein an information processing program for causing an information processing device to provide execution comprising:
calculating a position of a destination of a virtual camera in a virtual space, based on predetermined information processing;
moving the virtual camera to an avoidance position at which a shielding object is avoided, in a case where (a) a first vector heading from a position of an object to be captured by the virtual camera to the position of the destination, intersects with the shielding object from an outside of the shielding object in the virtual space and (b) a second vector heading from the position of the destination to the position of the object to be captured by the virtual camera, does not intersect with the shielding object from the outside of the shielding object in the virtual space; and
generating an image of the virtual space, based on the moved virtual camera.

### Claim 14 (depends on 13)

The non-transitory storage medium according to claim 13, wherein the virtual camera is moved to the position of the destination in a case where the first vector does not intersect with the shielding object from the outside of the shielding object.

### Claim 15 (depends on 13)

The non-transitory storage medium according to claim 13, wherein the virtual camera is moved to the position of the destination in a case where the first vector intersects with the shielding object from the outside of the shielding object and the second vector intersects with the shielding object from the outside of the shielding object.

### Claim 16 (depends on 13)

The non-transitory storage medium according to claim 13, wherein the avoidance position is at a position on a side of the object to be captured from the shielding object.

### Claim 17 (depends on 13)

The non-transitory storage medium according to claim 13, wherein the position of the destination is calculated based on the predetermined information processing according to an operation of a player.

### Claim 18 (depends on 17)

The non-transitory storage medium according to claim 17, wherein the information processing is performed to move the virtual camera together with movement of a player character object, that moves in the virtual space based on the operation of the player, and the position of the destination is calculated.

### Claim 19 (depends on 17)

The non-transitory storage medium according to claim 17, wherein the information processing is performed to move the virtual camera in accordance with an instruction of the player for moving the virtual camera, and the position of the destination is calculated.

### Claim 20 (depends on 13)

The non-transitory storage medium according to claim 13, wherein the image indicating the position of the object to be captured in the virtual space is generated, the object to be captured being shielded by the shielding object.

### Claim 21 (depends on 20)

The non-transitory storage medium according to claim 20, wherein the image indicating the object to be captured is generated with a silhouette, the object to be captured being shielded by the shielding object.

### Claim 22 (depends on 13)

The non-transitory storage medium according to claim 13 causing the information processing device to provide further execution comprising:
performing a first determination of whether the first vector intersects with the shielding object from the outside of the shielding object;
performing a second determination of whether the second vector intersects with the shielding object from the outside of the shielding object; and
moving the virtual camera based on a result of the first determination and a result of the second determination.

### Claim 23 (depends on 22)

The non-transitory storage medium according to claim 22, wherein the second determination is performed in a case where the result of the first determination indicates that the first vector intersects with the shielding object from the outside of the shielding object.

### Claim 24

A non-transitory storage medium having stored therein a game program for causing an information processing device to provide execution comprising:
moving a player character object in a virtual space based on an operation of a player;
calculating a position of a destination of a virtual camera in the virtual space, in accordance with the movement of the player character object;
determining whether a shielding object is present between the position of the destination and the player character object;
determining whether the position of the destination is inside the shielding object;
moving the virtual camera to a position on a side of the player character object from the shielding object when the shielding object is present between the position of the destination and the player character object and the position of the destination is inside the shielding object; and
generating an image of the virtual space to display the image indicating, on the shielding object, that the player character object is present, the player character object being shielded by the shielding object, when the shielding object is present between the position of the destination and the player character object and the position of the destination is outside the shielding object.

### Claim 25

An information processing device comprising:
a display device; and
processing circuitry including at least one processor, the processing circuitry configured to:
calculate a position of a destination of a virtual camera in a virtual space, based on predetermined information processing;
move the virtual camera to an avoidance position at which a shielding object is avoided, in a case where (a) a first vector heading from a position of an object to be captured by the virtual camera to the position of the destination, intersects with the shielding object from an outside of the shielding object in the virtual space and (b) a second vector heading from the position of the destination to the position of the object to be captured by the virtual camera, does not intersect with the shielding object from the outside of the shielding object in the virtual space; and
generate an image of the virtual space for display on the display device based on the moved virtual camera.

### Claim 26

A game device comprising:
a display device; and
processing circuitry including at least one processor, the processing circuitry configured to:
move a player character object in a virtual space based on an operation of a player;
calculate a position of a destination of a virtual camera in the virtual space in accordance with the movement of the player character object;
determine whether a shielding object is present between the position of the destination and the player character object;
determine whether the position of the destination is inside the shielding object;
move the virtual camera to a position on a side of the player character object from the shielding object when the shielding object is present between the position of the destination and the player character object and the position of the destination is inside the shielding object; and
generate an image of the virtual space to display the image, on the display device, indicating, on the shielding object, that the player character object is present, the player character object being shielded by the shielding object, when the shielding object is present between the position of the destination and the player character object and the position of the destination is outside the shielding object.

### Claim 27

An information processing method comprising:
calculating a position of a destination of a virtual camera in a virtual space, based on predetermined information processing;
moving the virtual camera to an avoidance position at which a shielding object is avoided, in a case where (a) a first vector heading from a position of an object to be captured by the virtual camera to the position of the destination, intersects with the shielding object from an outside of the shielding object in the virtual space and (b) a second vector heading from the position of the destination to the position of the object to be captured by the virtual camera, does not intersect with the shielding object from the outside of the shielding object in the virtual space; and
generating an image of the virtual space, based on the moved virtual camera.

### Claim 28

A game method comprising:
moving a player character object in a virtual space, based on an operation of a player;
calculating a position of a destination of a virtual camera in the virtual space, in accordance with the movement of the player character object;
determining whether a shielding object is present between the position of the destination and the player character object;
determining whether the position of the destination is inside the shielding object;
moving the virtual camera to a position on a side of the player character object from the shielding object when the shielding object is present between the position of the destination and the player character object and the position of the destination is inside the shielding object; and
generating an image of the virtual space to display the image indicating, on the shielding object, that the player character object is present, the player character object being shielded by the shielding object, when the shielding object is present between the position of the destination and the player character object and the position of the destination is outside the shielding object.
