Information processing device, information processing method, and information processing program

By defining virtual objects with perpendicular axes and applying angle and deformation processing, the method generates diverse visual representations and improves user interaction in 3D virtual spaces, addressing limitations in conventional methods.

JP2025108585AActive Publication Date: 2025-07-23GLEE HOLDINGS CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2025066644
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-04-15
Publication Date
2025-07-23
Estimated Expiration
2040-06-26

AI Technical Summary

Technical Problem

Conventional methods struggle to generate diverse expressions based on the relationship between a virtual camera and specific objects in a 3D virtual space, limiting the variety of visual representations.

Method used

A method involving a three-dimensional virtual object defined by perpendicular axes, associating it with a two-dimensional plane, and using a change processing unit to alter the viewing angle and a deformation processing unit to modify the object based on the presence of specific objects within that angle, enhancing visual diversity.

Benefits of technology

This approach allows for varied visual expressions and improved user interaction by dynamically changing the field object's appearance based on the virtual camera's position and specific object presence, enhancing game engagement and visibility on limited screens.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025108585000001_ABST
    Figure 2025108585000001_ABST
Patent Text Reader

Abstract

To provide an information processing device, an information processing method, and an information processing program for generating various expressions in response to a relation between a virtual camera and a specific object arranged at a field object.SOLUTION: In a game system in which a server device and a plurality of terminal devices are connected in a communicable manner through a network 30, a server device 10 for drawing an object arranged in a three-dimensional virtual space with an expression viewed from a virtual camera includes: a change processing unit for changing an area which is within an angular field of the virtual camera in a field object associated with a two-dimensional plane regulated by a first axis and a second axis; and a deformation processing unit for deforming the field object. The deformation processing unit, when the area is changed by the change processing unit, deforms the field object in different styles between when it is determined that a specific object is positioned in the area after changing and when it is determined that the specific object is not positioned in the area after changing.SELECTED DRAWING: Figure 12
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an information processing device, an information processing method, and an information processing program. [Background technology]

[0002] Objects placed in a 3D virtual space are captured from a virtual camera placed in the virtual space. 2. Description of the Related Art Information processing devices for rendering visual representations are known. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2013-208269 A Summary of the Invention [Problem to be solved by the invention]

[0004] In the above-mentioned conventional technology, the relationship between the virtual camera and a specific object (e.g., the positional relationship ) it is difficult to generate diverse expressions that correspond to the

[0005] Therefore, in one aspect, the present invention provides a method for detecting a virtual camera according to a relationship between a virtual camera and a specific object. The aim is to generate diverse expressions. [Means for solving the problem]

[0006] In one aspect, a three-dimensional virtual object is defined by a first axis, a second axis, and a third axis that are perpendicular to each other. A representation of an object placed in a space as seen from a virtual camera placed in the virtual space. An information processing device for drawing, The object is associated with a two-dimensional plane defined by the first axis and the second axis. A field object to be placed in the field and a specific object to be placed in the field object including Kut, a change processing unit that changes a region that fits within the angle of view of the virtual camera in the field object, and a deformation processing unit that deforms the field object, wherein the deformation processing unit varies the deformation mode of the field object based on the horizontal position of the specific object within the region, and an information processing apparatus is provided.

Advantages of the Invention

[0007] On one aspect, according to the present invention, it becomes possible to generate various expressions according to the relationship between the virtual camera and the specific object.

Brief Description of the Drawings

[0008]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 7A

Figure 8

Figure 8A

Figure 8B

Figure 8C

Figure 9

Figure 10

Figure 11

Figure 11A

Figure 11B

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

Figure 23

Figure 24

Figure 25

Figure 26

Figure 26A

Figure 27

Figure 28

Figure 29A

Figure 29B

Figure 29C

Figure 29D

Figure 29E

Figure 30

Figure 31

Figure 32

Embodiments for Carrying Out the Invention

[0009] Hereinafter, each embodiment will be described in detail with reference to the accompanying drawings.

[0010] (Overview of the game system) With reference to FIG. 1, the overview of the game system 1 according to an embodiment of the present invention will be described. . FIG. 1 is a block diagram of the game system 1 according to the present embodiment. FIG. 2 is a field image showing an example. The game system 1 includes a server device 10 and one or more terminal devices 20. For simplicity, three terminal devices 20 are illustrated in FIG. 1, but the number of terminal devices 20 may be two or more.

[0011] The server device 10 is an information processing device such as a server managed by a game operator, for example. The terminal device 20 is an information processing device used by a user, such as a mobile phone, a smartphone, a tablet terminal, a PC (Personal Computer), or a game device. The terminal device 20 is capable of executing the application of the game according to the present embodiment. The application of the game may be received by the terminal device 20 from the server device 10 or a predetermined application distribution server via the network 30, or may be stored in advance in a storage device provided in the terminal device 20 or a storage medium such as a memory card readable by the terminal device 20. The server device 10 and the terminal device 20 are communicably connected via the network 30. For example, the server device 10 and the terminal device 20 cooperate to execute various processes related to the game.

[0012] Note that the network 30 may include a wireless communication network, the Internet, a VPN (Virtual Private Network), a WAN (Wide Area Network), a wired network, or any combination thereof. ​​​​​​​

[0013] Here, the outline of the game according to this embodiment will be described. The game according to this embodiment is , for example, a role-playing game or a simulation game, etc., and a game medium is used as the game is executed . For example, the game according to this embodiment is a game in which the game medium is moved on a field in a three-dimensional virtual space .

[0014] The game medium is electronic data used in the game, and includes, for example, cards, items, potions, in-service currency (or in-game currency), tickets, characters, avatars, parameters, etc., any medium. Further, the game medium may be game-related information such as level information, status information, game parameter information (such as health and attack power), or ability information (skills, abilities, spells, jobs, etc.). Also, the game medium is electronic data that can be acquired, owned, used, managed, exchanged, synthesized, enhanced, sold, discarded, or gifted, etc. by the user in the game, but the usage mode of the game medium is not limited to those explicitly stated in this specification .

[0015] Hereinafter, unless otherwise specified, "the game medium owned by the user" refers to the game medium associated with the user ID of the user. Also, "granting the game medium to the user" means associating the game medium with the user ID. Also, "discarding the game medium owned by the user" means dissolving the association between the user ID and the game medium. Also "consuming the game medium owned by the user" means that some effect or influence can be generated in the game in response to the dissolution of the association between the user ID and the game medium. Also ​​​​​​​​​"Selling a game medium owned by a user" means eliminating the association between the user ID and the game medium, and associating the user ID with another game medium (e.g., virtual currency or items, etc.). Also, "transferring a game medium owned by a certain user to another user" means eliminating the association between the user ID of a certain user and the game medium, and associating the game medium with the user ID of another user. This indicates eliminating the association between the user ID and the game medium, and associating the user ID with other game media (such as virtual currency or items, etc.). Also, "transferring a game medium owned by a certain user to another user" means eliminating the association between the user ID of a certain user and the game medium, and associating the game medium with the user ID of another user. This indicates eliminating the association between the user ID of a certain user and the game medium, and associating the game medium with the user ID of another user.

[0016] Generally speaking, the game according to this embodiment includes a first game part, a second game part, and a third game part.

[0017] In the first game part, the user operates a user character and progresses the game while exploring a field in the virtual space. Specifically, the user character moves on the field according to the user's operation. The field is provided with various areas such as a town and a dungeon, and various events corresponding to the area occur, such as conversations with the resident characters in the town and battles with the enemy characters encountered in the dungeon. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. This indicates that the user character moves on the field according to the user's operation. The field is provided with various areas such as a town and a dungeon, and various events corresponding to the area occur, such as conversations with the resident characters in the town and battles with the enemy characters encountered in the dungeon. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. The field is provided with various areas such as a town and a dungeon, and various events corresponding to the area occur, such as conversations with the resident characters in the town and battles with the enemy characters encountered in the dungeon. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. This indicates that various events corresponding to the area occur, such as conversations with the resident characters in the town and battles with the enemy characters encountered in the dungeon. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. This indicates that various events corresponding to the area occur, such as conversations with the resident characters in the town and battles with the enemy characters encountered in the dungeon. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. When the events are executed, the main story of the game progresses. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. Also, in the first game part, for example, when winning a battle against an enemy character, game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later. This indicates that game media such as items, virtual currency, or characters can be given to the user. The given game media can be used in the third game part described later.

[0018] In the second game part, the user changes the holding status of the game media. The user collects various game media such as items, virtual currency, and characters. Specifically, This indicates that the user collects various game media such as items, virtual currency, and characters. The user character is moved to a specific area such as a mining site and a fishing pond provided on the field, or a game medium such as a specific character is selected (for example, a touch operation on the screen is performed), and a sub-event in which the game medium can be acquired occurs. The sub-event includes, for example, the progress of the sub-story and the execution of a mini-game, etc., but the content of the sub-event is not limited to these. Depending on the execution result of the sub-event, various game media can be obtained by the user. The obtained game medium can be used, for example, in the third game part described later.

[0019] In the third game part, the user changes the parameters related to the game medium. The user strengthens, for example, the user character. Specifically, as described above, the game medium given to the user in the first game part and the second game part is consumed, and various game parameters of the user character change. The game parameters include, for example, the level, HP, attack power, defense power, attribute, and skill of the user character, etc., but are not limited to these. Depending on the change in the game parameters of the user character, the user character is strengthened. By strengthening the user character, the probability that the user character can win in the battle against the enemy character in the first game part increases.

[0020] In this way, in the game according to this embodiment, the user repeats the first game part, the second game part, and the third game part.

[0021] (Configuration of Server Device) The configuration of the server device 10 will be specifically described. The server device 10 is a server computer ​​It is composed of a server device 10 which is realized by a plurality of server computers cooperating with each other. It may be realized.

[0022] The server device 10 includes a server communication unit 11, a server storage unit 12, and a server control unit 13. It is provided with.

[0023] The server communication unit 11 includes an interface for communicating with an external device wirelessly or by wire and transmitting and receiving information. The server communication unit 11 may include, for example, a wireless LAN (Local Area Network) communication module or a wired LAN communication module. The server communication unit 11 can transmit and receive information to and from the terminal device 20 via the network 30. For example, it may include a wireless LAN (Local Area Network) communication module or a wired LAN communication module. The server communication unit 11 can transmit and receive information to and from the terminal device 20 via the network 30. Network) communication module or a wired LAN communication module. The server communication unit 11 can transmit and receive information to and from the terminal device 20 via the network 30. It is possible to transmit and receive information to and from the terminal device 20 via the network 30. It is.

[0024] The server storage unit 12 is, for example, a storage device that stores various information and programs necessary for game processing. For example, the server storage unit 12 stores game applications. For example, the server storage unit 12 stores game applications. It stores.

[0025] In addition, the server storage unit 12 stores various images (texture images) for projecting (texture mapping) various objects arranged in a three-dimensional virtual space. For example, the server storage unit 12 stores an image of a user character. Hereinafter, the user character is referred to as a first game medium, and an object drawn (arranged) on a field object (described later) based on the image of the first game medium is also referred to as a first object. In this embodiment, in the virtual space, only one first object is represented, but two or more first objects may be represented. The first object is a plurality of first game media.

[0026] For example, the server storage unit 12 stores an image of a user character. Hereinafter, the user character is referred to as a first game medium, and an object drawn (arranged) on a field object (described later) based on the image of the first game medium is also referred to as a first object. For example, the server storage unit 12 stores an image of a user character. Hereinafter, the user character is referred to as a first game medium, and an object drawn (arranged) on a field object (described later) based on the image of the first game medium is also referred to as a first object. (described later) An object drawn (arranged) on the field object is also referred to as a first object. In this embodiment, in the virtual space, only one first object is represented, but two or more first objects may be represented. The first object is a plurality of first game media. In this embodiment, in the virtual space, only one first object is represented, but two or more first objects may be represented. The first object is a plurality of first game media. First objects may be represented. Note that the first object is a plurality of first game media. It may be a group of bodies. Also, the first game medium (and the first object based thereon) used in the virtual space may be appropriately exchangeable by the user.

[0027] Further, the server storage unit 12 stores images related to game media, such as buildings, walls, trees, or NPCs (Non Player Characters), for example. Hereinafter, any game media different from the first game media (for example, buildings, walls, trees, or NPCs, etc.) that can be placed on the field object described later is referred to as the second game media, and the object on which the second game media is projected is also referred to as the second object. In this embodiment, the second object may include an object fixed to the field object described later, an object movable with respect to the field object described later, etc. Further, the second object may include an object that is always placed on the field object described later, an object that is placed only when a predetermined condition is satisfied, etc.

[0028] Further, the server storage unit 12 stores background images (background pictures) such as sky or landscape, for example. Hereinafter, the object on which the background image is projected is also referred to as the background object. Note that a plurality of types of background images are prepared and may be used appropriately.

[0029] Further, the server storage unit 12 stores an image of the field (for example, the ground) (field image). The field image is projected onto the field surface described later. Hereinafter, the object on which the field image is projected onto the field surface is also referred to as the field object. Oh, the field object can be used as a virtual field (ground) in the virtual space. It can be used.

[0030] Here, in the field image, as shown in FIG. 2 for example, a texture coordinate system having u-axis and v-axis orthogonal to each other is set. In this embodiment, in the field image , a horizontal passage 14, a vertical passage 15, and a curved path 17 are defined. The horizontal passage 14, the vertical passage 15, and the curved path 17 form passages through which the first object and the like in the field object can move . Note that in FIG. 2, a specific passage configuration is shown, but the passage configuration is arbitrary . Also, in FIG. 2, the field image is rectangular, but it may be in other forms. Also, a plurality of types of field images may be prepared and used selectively.

[0031] Further, the server storage unit 12 stores correspondence information associating the second object with the texture coordinates of the field image . The correspondence information is used by the server control unit 13 that executes the process of arranging the second object on the field object .

[0032] The server control unit 13 is a CPU that realizes a specific function by reading a dedicated microprocessor or a specific program . For example, the server control unit 13 executes a game application according to a user operation on the display unit 23 . Also, the server control unit 13 executes various processes related to the game.

[0033] For example, the server control unit 13 causes the display unit 23 to display a field image on which the field object and the first object and the like are displayed . Also, the server control unit 13 is a predetermined user In response to a user operation, a first object is moved on a field object relative to the field object within the virtual space. Details of the specific processing of the server control unit 13 will be described later. Move it relative to the field object on the field object. The details of the specific processing will be described later.

[0034] (Configuration of the terminal device) The configuration of the terminal device 20 will be specifically described. As shown in FIG. 1, the terminal device 20 includes a terminal communication unit 21, a terminal storage unit 22, a display unit 23, an input unit 24, and a terminal control unit 25 and is provided with.

[0035] The terminal communication unit 21 communicates with an external device wirelessly or by wire and performs information transmission and reception, including an interface. The terminal communication unit 21 includes, for example, a wireless communication module corresponding to a mobile communication standard such as LTE (Long Term Evolution) (registered trademark), a wireless LAN communication module, or a wired LAN communication module. The terminal communication unit 21 can transmit and receive information to and from the server device 10 via the network 30. tion)(registered trademark), etc., a wireless LAN communication module, or a wired LAN communication module, etc. The terminal communication unit 21 tion)(registered trademark), etc., a wireless LAN communication module, or a wired LAN communication module, etc. The terminal communication unit 21 tion)(registered trademark), etc., a wireless LAN communication module, or a wired LAN communication module, etc. The terminal communication unit 21 can transmit and receive information to and from the server device 10 via the network 30.

[0036] The terminal storage unit 22 includes, for example, a primary storage device and a secondary storage device. For example, the terminal storage unit 2 2 may include a semiconductor memory, a magnetic memory, or an optical memory, etc. The terminal storage unit 22 stores various information and programs used for game processing received from the server device 10. The information and programs used for game processing may be acquired from an external device via the terminal communication unit 21. For example, a game application program may be acquired from a predetermined application distribution server. Hereinafter, the application program will be simply referred to as an application. Also, for example, the above-described information about the user and the opponent in the game device. For example, a game application program may be obtained from a predetermined application distribution server. Hereinafter, the application program will be simply referred to as an application. Also, for example, the above-described information about the user and the opponent in the game simply referred to as an application. Also, for example, the above-described information about the user and the opponent in the game Even if part or all of the information about the game medium that is a hand is acquired from the server device 10 it is okay.

[0037] The display unit 23 includes a display device such as a liquid crystal display or an organic EL (Electro-Lumine scence) display. The display unit 23 can display various images. The display unit 23 is configured by, for example, a touch panel and functions as an interface for detecting various user operations.

[0038] The input unit 24 includes an input interface including, for example, a touch panel provided integrally with the display unit 23. The input unit 24 can receive user input to the terminal device 20. Further, the input unit 24 may include physical keys or may further include any input interface such as a pointing device such as a mouse.

[0039] The terminal control unit 25 includes one or more processors. The terminal control unit 25 controls the operation of the entire terminal device 20.

[0040] The terminal control unit 25 transmits and receives information via the terminal communication unit 21. For example, the terminal control unit 25 receives various information and programs used for game processing from at least one of the server device 10 and other external servers. The terminal control unit 25 stores the received information and programs in the terminal storage unit 22.

[0041] The terminal control unit 25 starts a game application according to a user operation. The terminal control unit 25 cooperates with the server device 10 to execute a game. For example, the terminal control unit 25 displays various images (for example, various field images described later) used for the game on the display unit 2 It is displayed on 3. On the screen, for example, a GUI (Graphic User Interface) that detects user operations may be displayed. The terminal control unit 25 can detect user operations on the screen via the input unit 24. For example, the terminal control unit 25 can detect a tap operation, a long tap operation, a flick operation, a swipe operation, etc. of the user. The tap operation is an operation in which the user touches the display unit 23 with a finger and then releases the finger. The terminal control unit 25 transmits operation information to the server device 10. ser Interface) may be displayed. The terminal control unit 25 can detect user operations on the screen via the input unit 24. For example, the terminal control unit 25 can detect a tap operation, a long tap operation, a flick operation, a swipe operation, etc. of the user. The tap operation is an operation in which the user touches the display unit 23 with a finger and then releases the finger. The terminal control unit 25 can detect a tap operation, a long tap operation, a flick operation, a swipe operation, etc. of the user. The tap operation is an operation in which the user touches the display unit 23 with a finger and then releases the finger. The terminal control unit 25 can detect a tap operation, a long tap operation, a flick operation, a swipe operation, etc. of the user. The tap operation is an operation in which the user touches the display unit 23 with a finger and then releases the finger. The terminal control unit 25 can detect a tap operation, a long tap operation, a flick operation, a swipe operation, etc. of the user. The tap operation is an operation in which the user touches the display unit 23 with a finger and then releases the finger. The terminal control unit

[0042] (Drawing Function in the Game) The server control unit 13 cooperates with the terminal device 20 to display a field image on the display unit 23 and updates the field image according to the progress of the game. In this embodiment, the server control unit 13 cooperates with the terminal device 20 to draw an object arranged in a three-dimensional virtual space in a representation viewed from a virtual camera arranged in the virtual space. unit 13 cooperates with the terminal device 20 to draw an object arranged in a three-dimensional virtual space in a representation viewed from a virtual camera arranged in the virtual space. unit 13 cooperates with the terminal device 20 to draw an object arranged in a three-dimensional virtual space in a representation viewed from a virtual camera arranged in the virtual space.

[0043] Note that the drawing process described below is realized by the server control unit 13, but in other embodiments, part or all of the drawing process described below may be realized by the server control unit 13. For example, in the following description, at least a part of the field image displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the screen may be a native display displayed by a native application installed on the terminal device 20. For example, in the following description, at least a part of the field image displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the screen may be a native display displayed by a native application installed on the terminal device 20. For example, in the following description, at least a part of the field image displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the screen may be a native display displayed by a native application installed on the terminal device 20. For example, in the following description, at least a part of the field image displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the screen may be a native display displayed by a native application installed on the terminal device 20. For example, in the following description, at least a part of the field image displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the screen may be a native display displayed by a native application installed on the terminal device 20.

[0044] FIG. 3 and FIG. 4 are explanatory diagrams of an example of a field object and a background object. FIG. 3 shows a plan view showing the entire field surface 70 forming a field object and a background surface 72 forming a background object, and FIG. 4 is a perspective view showing a part of the field surface 70 and the background surface 72 when viewed in an oblique direction including the direction component of the arrow R0 in FIG. 3. In FIG. 4, the virtual camera 60 is also schematically shown. Further, in FIG. 4, the background surface 72 is shown in the form of a background object on which a background image including pictures of clouds and the sun is projected. In the following description, the movement of various objects represents movement in the virtual space. Also, the visible range of various objects represents the range visible from the virtual camera 60 (that is, the range within the viewing angle 62 of the virtual camera 60). FIG. 3 shows an x, y, z coordinate system (hereinafter also referred to as the "global coordinate system") as the spatial coordinate system of the virtual space. Note that the origin of the global coordinate system may be fixed at an arbitrary position. Hereinafter, the positive side in the z direction is the upper side of the virtual space, and the negative side is the lower side of the virtual space. In the present embodiment, the x-axis is an example of the first axis, the y-axis is an example of the second axis, and the z-axis is an example of the third axis. Hereinafter, the terms in the x direction, y direction, and z direction respectively mean the direction parallel to the x-axis, the direction parallel to the y-axis, and the direction parallel to the z-axis. For example, the z direction represents the direction parallel to the z-axis passing through an arbitrary point in the xy plane unless otherwise specified.

[0045] The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane In the following description, the movement of various objects represents movement in the virtual space. Also, the visible range of various objects represents the range visible from the virtual camera 60 (that is, the range within the viewing angle 62 of the virtual camera 60).

[0046] FIG. 3 shows an x, y, z coordinate system (hereinafter also referred to as the "global coordinate system") as the spatial coordinate system of the virtual space. Note that the origin of the global coordinate system may be fixed at an arbitrary position. Hereinafter, the positive side in the z direction is the upper side of the virtual space, and the negative side is the lower side of the virtual space. In the present embodiment, the x-axis is an example of the first axis, the y-axis is an example of the second axis, and the z-axis is an example of the third axis. Hereinafter, the terms in the x direction, y direction, and z direction respectively mean the direction parallel to the x-axis, the direction parallel to the y-axis, and the direction parallel to the z-axis. For example, the z direction represents the direction parallel to the z-axis passing through an arbitrary point in the xy plane unless otherwise specified. The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane In the present embodiment, the x-axis is an example of the first axis, the y-axis is an example of the second axis, and the z-axis is an example of the third axis. Hereinafter, the terms in the x direction, y direction, and z direction respectively mean the direction parallel to the x-axis, the direction parallel to the y-axis, and the direction parallel to the z-axis. For example, the z direction represents the direction parallel to the z-axis passing through an arbitrary point in the xy plane unless otherwise specified. The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane

[0047] The field surface 70 is arranged in association with the xy plane of the virtual space. In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane In the present embodiment, as an example, the u-axis, v-axis, and origin of the texture coordinate system of the projected field image of the field surface 70 coincide with the x-axis, y-axis, and origin of the global coordinate system, respectively, so that the xy plane It is arranged in association therewith. In FIG. 3, as the state before association, the texture The u-axis, v-axis, and origin of the coordinate system are shown separated from the x-axis, y-axis, and origin of the global coordinate system. The field surface 70 is incapable of translational movement (linear movement) in each of the x-direction, y-direction, and z-direction. However, in other embodiments, the field surface 70 may be capable of translational movement in the global coordinate system. The field surface 70 is deformable from the normal state when the plane parallel to the xy-plane is in the normal state. Thus, in this embodiment, the field object is shaped based on the deformable field surface 70. That is, the field object is deformed with respect to the plane parallel to the xy-plane by being shaped based on the field surface 70 deformed from the normal state. Hereinafter, unless otherwise specified, the deformation of the field surface 70 and the field object means the deformation when the plane parallel to the xy-plane is in the normal shape (state). Note that the field object in the deformed state may be realized by projecting a field image onto the field surface 70 in the deformed state, or may be realized by projecting a field image onto the field surface 70 in the normal state and then deforming the field surface 70.

[0048] When the plane parallel to the xy-plane is in the normal state, the field surface 70 is deformable. As described above, in this embodiment, the field object is shaped based on the deformable field surface 70. That is, the field object is deformed with respect to the plane parallel to the xy-plane by being shaped based on the field surface 70 deformed from the normal state. Hereinafter, unless otherwise specified, the deformation of the field surface 70 and the field object means the deformation when the plane parallel to the xy-plane is in the normal shape (state). Note that the field object in the deformed state may be realized by projecting a field image onto the field surface 70 in the deformed state, or may be realized by projecting a field image onto the field surface 70 in the normal state and then deforming the field surface 70. The field object is deformed with respect to the plane parallel to the xy-plane by being shaped based on the field surface 70 deformed from the normal state. Hereinafter, unless otherwise specified, the deformation of the field surface 70 and the field object means the deformation when the plane parallel to the xy-plane is in the normal shape (state). Note that the field object in the deformed state may be realized by projecting a field image onto the field surface 70 in the deformed state, or may be realized by projecting a field image onto the field surface 70 in the normal state and then deforming the field surface 70. When the field surface 70 is in the deformed state, the field object may be realized by projecting a field image onto the deformed field surface 70, or may be realized by projecting a field image onto the normal field surface 70 and then deforming the field surface 70.

[0049] When a field image is projected onto the field surface 70, in the normal state, the field surface 70 can inherit the texture coordinates of the projected field image. That is, each position on the field surface 70 onto which the field image is projected can be substantially specified in the texture coordinate system of the field image (see FIG. 2). Hereinafter, each position on the field surface 70 will be specified. Each position on the field surface 70 onto which the field image is projected can be substantially specified in the texture coordinate system of the field image (see FIG. 2). Hereinafter, each position on the field surface 70 will be specified.​​​​​​​ The coordinate system for the eyes coincides with the texture coordinate system of the field image projected onto the field plane 70, and is also referred to as the "field coordinate system". It coincides with the "field coordinate system" and is also referred to as the "field coordinate system".

[0050] The background plane 72 extends in the z direction of the background object. However, in other embodiments, the background plane 72 may be arranged inclined with respect to the z direction. In FIG. 3, the background plane 72 is arranged so as to surround the field plane 70. In this case, the background plane 72 may be fixed with respect to the global coordinate system, or may be movable only in the z direction as described later. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70. However, in other embodiments, the background plane 72 may be arranged so as to surround only a part of the field plane 70. In this case, the background plane 72 may be rotationally moved according to the rotation of the virtual camera 60 described later. Further, in still other embodiments, the background plane 72 may be deformable like the field plane 70.

[0051] FIG. 5 is an explanatory diagram showing various positional relationships when viewed perpendicularly to a plane (hereinafter also referred to as the "Vz plane") including the line-of-sight direction V of the virtual camera 60 shown in FIG. 4 and the z direction. In FIG. 5, a first object 3 located in the region of the field object within the viewing angle of the virtual camera 60 is schematically shown. FIG. 6 is a schematic diagram showing an example of a field image drawn in a representation viewed from the virtual camera 60. FIG. 6 is a schematic diagram showing an example of a field image drawn in a representation viewed from the virtual camera 60. FIG. 6 is a schematic diagram showing an example of a field image drawn in a representation viewed from the virtual camera 60. FIG. 6 is a schematic diagram showing an example of a field image drawn in a representation viewed from the virtual camera 60.

[0052] In FIG. 5, the viewing angle 62 of the virtual camera 60 (the viewing angle when viewed in a direction perpendicular to the z direction) is schematically shown between the boundary lines 6211 and 6212. In this embodiment, the viewing angle of the virtual camera 60 is constant, but in other embodiments, the viewing angle of the virtual camera 60 may be variable. In FIG. 5, the viewing angle 62 of the virtual camera 60 (the viewing angle when viewed in a direction perpendicular to the z direction) is schematically shown between the boundary lines 6211 and 6212. In this embodiment, the viewing angle of the virtual camera 60 is constant, but in other embodiments, the viewing angle of the virtual camera 60 may be variable. In FIG. 5, the viewing angle 62 of the virtual camera 60 (the viewing angle when viewed in a direction perpendicular to the z direction) is schematically shown between the boundary lines 6211 and 6212. In this embodiment, the viewing angle of the virtual camera 60 is constant, but in other embodiments, the viewing angle of the virtual camera 60 may be variable.

[0053] In the example shown in FIG. 5, the angle of view 62 is such that the upper boundary line 6211 intersects the background surface 72 (point P2 reference), and the lower boundary line 6212 intersects the field surface 70 (point P1 reference). In this case, As shown in FIG. 6, the field image G60 includes the background surface 72 (and the associated background object cts) and the field surface 70 (and the associated field object). Note that , in FIG. 5, since the region of the field object within the angle of view of the virtual camera 60 has the first object t 3 located therein, the field image G60 includes the representation of the first object 3.

[0054] Here, in the present embodiment, the field surface 70 (and the associated field object ) represents a virtual horizon HL (FIG. 6). As shown in FIG. 5, the field plane 70 is bent and deformed. Specifically, the field surface 70 deforms in a downward direction as it goes farther away in the line-of-sight direction V (i.e., as it approaches the background surface 72). Note that such deformation may be realized only within the range of the angle of view of the virtual camera 60, or may be realized over the entire field plane 70. When the entire field surface 70 is deformed, the shape of the field surface 7

[0055] 0 when cut by the Vz plane (the shape represented by the line in FIG. 5) may be substantially the same at any cross-sectional position ( i.e., may be substantially equi-sectional). Note that substantially the same means a concept that allows an error within 10%. Note that, as described above, the field object is shaped based on the field surface 70. Therefore, the shape of the field object when cut by the Vz plane is the same as the shape of the field surface 70 when cut by the Vz plane, but the shape of the field surface 70 ​​It may have a slightly different shape (for example, fine unevenness, etc.).

[0056] Such a horizon HL of this expression is formed by the intersection point P3 of the tangent line 6213 (the tangent line within the angle of view 62) from the virtual camera 60 with respect to the field surface 70, as shown in FIG. 5. Note that in FIG. 6, since the first object 3 is located in front of the horizon HL, a part of the appearance of the horizon HL will be hidden by the first object 3. Conversely, when the first object 3 is located on the back side (the side closer to the background surface 72) of the horizon HL, a part or all of the first object 3 will be hidden by the field object. Here, the height H1 (see FIG. 6) of the horizon HL depends on the angle α formed by the tangent line 6213 with respect to the boundary line 6212. The angle α can vary according to the bending mode of the field surface 70. For example, in the case of the field surface 70' shown by the dashed-dotted line in FIG. 5, the angle α' formed by the tangent line 6213' with respect to the boundary line 6212 is smaller than the angle α, and therefore, the height H1 of the horizon HL becomes smaller (not shown). It can be seen that by changing the bending mode of the field surface 70 in this way, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. In this embodiment, in this way, as the field surface 70 approaches the background surface 72 when viewed in the line-of-sight direction V, it is bent and deformed downward, so that the horizon HL can be appropriately represented. Also, by changing the deformation mode (degree of deformation, etc.) of the bending deformation, the height H of the horizon HL can be adjusted.

[0057] Here, the height H1 (see FIG. 6) of the horizon HL depends on the angle α formed by the tangent line 6213 with respect to the boundary line 6212. The angle α can vary according to the bending mode of the field surface 70. For example, in the case of the field surface 70' shown by the dashed-dotted line in FIG. 5, the angle α' formed by the tangent line 6213' with respect to the boundary line 6212 is smaller than the angle α, and therefore, the height H1 of the horizon HL becomes smaller (not shown). It can be seen that by changing the bending mode of the field surface 70 in this way, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. For example, in the case of the field surface 70' shown by the dashed-dotted line in FIG. 5, the angle α' formed by the tangent line 6213' with respect to the boundary line 6212 is smaller than the angle α, and therefore, the height H1 of the horizon HL becomes smaller (not shown). It can be seen that by changing the bending mode of the field surface 70 in this way, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. For example, in the case of the field surface 70' shown by the dashed-dotted line in FIG. 5, the angle α' formed by the tangent line 6213' with respect to the boundary line 6212 is smaller than the angle α, and therefore, the height H1 of the horizon HL becomes smaller (not shown). It can be seen that by changing the bending mode of the field surface 70 in this way, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. In this way, it can be seen that by changing the bending mode of the field surface 70, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. In this way, it can be seen that by changing the bending mode of the field surface 70, the height of the horizon HL can be changed. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the angle of view of the virtual camera 60 also changes accordingly. In this way, in this embodiment, as the field surface 70 approaches the background surface 72 when viewed in the line-of-sight direction V, it is bent and deformed downward, so that the horizon HL can be appropriately represented. Also, by changing the deformation mode (degree of deformation, etc.) of the bending deformation, the height H of the horizon HL can be adjusted.

[0058] In this way, in this embodiment, as the field surface 70 approaches the background surface 72 when viewed in the line-of-sight direction V, it is bent and deformed downward, so that the horizon HL can be appropriately represented. Also, by changing the deformation mode (degree of deformation, etc.) of the bending deformation, the height H of the horizon HL can be adjusted. 1 (and the visible range such as the field object and the background object accordingly) can be freely changed. In the following, as the field plane 70 approaches the background plane 72 when viewed in the line-of-sight direction V, the bending deformation in the mode of deforming downward is simply referred to as the "bending deformation of the field plane 7 0".

[0059] FIG. 7 is an explanatory diagram of an example of deformation parameters for realizing the bending deformation of the field plane 70 is.

[0060] In FIG. 7, a two-dimensional coordinate system Xc, Yc (hereinafter, also referred to as the "local coordinate system") in the Vz plane is defined. The XcYc plane is a plane parallel to the Vz plane, the Yc axis is an axis parallel to the z axis and the positive side of the Yc axis corresponds to the upper side of the virtual space. In FIG. 7, a function F1 that determines the deformation mode of the field plane 70 is shown. is.

[0061] The function F1 is a function in which the value of the Yc coordinate decreases monotonically non-linearly as the absolute value of the value of the Xc coordinate increases. Also, the function F1 is symmetric with respect to the Yc axis. However, in other embodiments the function F1 may decrease monotonically linearly as the absolute value of the value of the Xc coordinate increases, and / or may be asymmetric with respect to the Yc axis. In the present embodiment, as an example, the function F1 is a quadratic function and is represented as follows. is. yc = -A1×(xc) 2 Here, xc is the value of the Xc coordinate, yc is the value of the Yc coordinate, and A1 is a coefficient that determines the degree of deformation (hereinafter, referred to as the "deformation parameter A1").

[0062] Note that the above function F1 is merely an example, and for example, different functions as follows may be used. may be. When \(x_c > a\), \(y_c = -A_1\times(x_c - a)\) 2 When \(x_c \leq -a\), \(y_c = -A_1\times(x_c + a)\) 2 When \(-a \leq x_c \leq a\), \(y_c = 0\) In this case, \(a\) is a positive constant, and a flat plane is realized in the range of \(-a \leq x_c \leq a\).

[0063] Alternatively, when \(x_c > -a_1\), \(y_c = -A_1\times(x_c)\) 2 When \(x_c \leq -a_1\), \(y_c = 0\) In this case, \(a_1\) may be a positive fixed value, and the position \(x_c = -a_1\) is set to coincide with the intersection point (point \(P_1\) in Fig. 5) of the boundary line 6212 below the viewing angle 62 and the field plane 70. It may be like this.

[0064] Also, in other embodiments, multiple types of functions may be prepared, and different functions may be selected according to various conditions.

[0065] Fig. 7A is an explanatory diagram of the bending deformation of the field plane 70 based on the function F1.

[0066] The field plane 70 is deformed according to the function F1. Therefore, the larger the value of the deformation parameter A1 , the greater the degree of deformation of the field plane 70. In Fig. 7A, the field plane 70 is bent and deformed with a substantially constant cross-section as described above.

[0067] Here, with reference to Figs. 8 to 8C, an example of the application scenario of the bending deformation of the field plane 70 will be described.

[0068] Fig. 8 is a plan view of the field object 77, Fig. 8A is an explanatory diagram of the bending deformation state of the field plane related to the position M1, and Fig. 8B is the bending of the field plane related to the position M2 It is an explanatory diagram of the bending deformation state. FIG. 8C is an explanatory diagram of the bending deformation state of the field surface related to position M3. In FIG. 8, the field object 77 is shown in a representation projected onto the field surface 70 in a normal state of the field image. In FIG. 8, positions M1 to M3 are illustrated. Positions M2 and M3 are near the start position and the end position of the curved path 17. Note that in FIGS. 8A to 8C, for the convenience of drawing, the curved path 17 etc. has a portion separated from the field surface 70 (a portion outside the viewing angle 62 of the virtual camera 60), but the whole may be projected onto the field surface 70. Here, positions M1 and M3 respectively correspond to the intersection positions between the line-of-sight direction V of the virtual camera 60 and the xy plane (or the field surface 70 before deformation). In FIG. 8, the projection vector V' (the projection vector of the line-of-sight direction V on the xy plane) of the virtual camera 60 when it is at position M2 is shown. Also, positions M1 and M3 are assumed to correspond to the positions of the first object 3. That is, the bending deformation of the field surface 70 accompanying the movement of the virtual camera 60 when the first object 3 moves along the curved path 17 from position M1 to position M3 is described. When the intersection position between the line-of-sight direction V of the virtual camera 60 and the field surface 70 is at position M1, the bending deformation of the field surface 70 as shown in FIG. 8A is realized. When the intersection position between the line-of-sight direction V of the virtual camera 60 and the field surface 70 is at position M2, the bending deformation of the field surface 70 as shown in FIG. 8B is realized. When the intersection position between the line-of-sight direction V of the virtual camera 60 and the field surface 70 is at position M3, the bending deformation of the field surface 70 as shown in FIG. 8C is realized.

[0069]

[0070] ​​​​​​​​​​​​The bending deformation of the field plane 70 is realized.

[0071] In this way, as the first object 3 moves from the position M1 to the position M3, the virtual When the viewing direction V of the virtual camera 60 changes, a field of The bending deformation of the object 77 (the bending deformation with the same deformation mode as viewed in the viewing direction V of the virtual camera 60) is realized.

[0072] By the way, when the position of the virtual camera 60 in the virtual space (the position relative to the field object) changes, the area within the viewing angle of the virtual camera 60 in the virtual space (for example, the area of the field object) changes, so the diversification of the field image can be achieved. However, even in this case, if the state of the area within the viewing angle of the virtual camera 60 is monotonous even when the position of the virtual camera 60 (the position relative to the field object) changes, the diversification of the field image cannot be achieved. Therefore, while making the position of the virtual camera 60 in the virtual space (the position relative to the field object) changeable, by increasing the number and types of the second objects arranged on the field object, etc., the diversification of the field image can be effectively achieved. Hereinafter, unless otherwise specified, the position of the virtual camera 60 means the position (relative position) relative to the field object. However, in the present embodiment, as described above, the field plane 70 (and the associated field object) is bent and deformed, but if the degree of deformation during the bending deformation is always constant and drawn in the expression viewed from the virtual camera 60, the resulting field image is likely to be monotonous.

[0073] However, in the present embodiment, as described above, the field plane 70 (and the associated field object) is bent and deformed, but if the degree of deformation during the bending deformation is always constant and drawn in the expression viewed from the virtual camera 60, the resulting field image is likely to be monotonous. .

[0074] Incidentally, when the position of the virtual camera 60 can be changed, as the position of the virtual camera 60 changes, since the area within the viewing angle of the virtual camera 60 in the field object changes, if various second objects are arranged on the field object in various manners, the way the first object to be operated by the user is captured and the overlapping state of the multiple second objects change. Therefore, the field image obtained by drawing in the representation viewed from the virtual camera 60 can be diversified.

[0075] Here, as an advantage of diversifying the game field, a part of the game field can be made prominent, improving the visibility of the user's object, and furthermore, the operability is improved because the object to be operated and the operation location become clear. Also, even if there are multiple objects within the limited screen area, the situation within the virtual space can be represented without sacrificing visibility (without limiting the amount of information). Such effects are particularly prominent on a narrow screen such as a smartphone. (Without limiting the amount of information), the situation within the virtual space can be represented. Such effects are particularly prominent on a narrow screen such as a smartphone.

[0076] Also, the representation of the horizon and the like can be realized by a simple process such as bending deformation of the field object, so the processing load can also be suppressed. Also, since it is not necessary to draw the (hidden) objects outside the viewing angle of the virtual camera 60 in the field object, the processing load can also be suppressed in that regard.

[0077] In this regard, in the present embodiment, not only can the position of the virtual camera 60 be changed, but also the degree of deformation related to the bending deformation of the field surface 70 (and the accompanying field object) can be changed. The degree of bending deformation of the field surface 70 (and the accompanying field object) can be changed. When the degree of deformation related to the shape changes, even in the area of the same field object, the virtual camera Since the appearance when viewed from 60 is different, it is possible to further diversify the field image obtained by rendering in the expression viewed from the virtual camera 60. It can be achieved.

[0078] Also, in the present embodiment, by using one material for the field object (field image and field surface 70) and changing the degree of deformation related to the bending deformation of the field surface 70, field objects in various forms can be realized. As a result, compared with the case where various field objects (field objects in a fixed form that cannot be deformed) are prepared in advance, the efficiency of the storage area for the field object can be improved. That is, it is possible to realize field objects in various forms by efficiently using the storage area. .

[0079] Note that, as described above, when the degree of deformation of the field surface 70 changes, due to the change in the height H1 of the horizon HL, there is a possibility of giving the user a sense of discomfort. For example, when the position of the virtual camera 60 is fixed and the degree of deformation of the field surface 70 changes, it is easy to give a sense of discomfort.

[0080] Therefore, in the present embodiment, when the area of the field object that fits within the viewing angle of the virtual camera 60 changes, the degree of deformation of the field surface 70 is changed in accordance with the change. For example, when the position of the virtual camera 60 changes, the degree of deformation of the field surface 70 is changed in accordance with the change. As a result, the inconvenience that may occur due to the change in the degree of deformation of the field surface 70 (that is, the sense of discomfort that may be given to the user) can be reduced. ​​​​

[0081] For example, when the position of the virtual camera 60 is within one or more specific positions or a specific range, the degree of deformation of the field plane 70 may be made larger than when it is not. In this way, the field image (that is, the representation of various objects within the viewing angle of the virtual camera 60) when the position of the virtual camera 60 is within the specific position or the specific range can be represented in a different manner from the field image when it is at other positions. For example, effects such as making the field image related to the specific position more prominent than the field images related to other positions, or giving a specific meaning to the field image related to the specific position can be achieved. Note that the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, one or more specific positions may include specific positions set corresponding to the position where an object related to a game medium with a low appearance probability is arranged only when such an object is arranged. than it would be otherwise. This enables the field image ( i.e., the representation of various objects within the viewing angle of the virtual camera 60) when the position of the virtual camera 60 is within the specific position or the specific range to be represented in a different manner from the field image when it is at other positions. For example, the field image related to the specific position can be made more prominent than the field images related to other positions, or a specific meaning can be given to the field image related to the specific position. Note that the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, when the position of the virtual camera 60 is within a specific position or a specific range, the field image can be represented in a different way from when it is at other positions. For example, the field image related to the specific position can be made more prominent than the field images related to other positions, or a specific meaning can be given to the field image related to the specific position. Note that the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the field image related to the specific position can be made more prominent than the field images related to other positions, or a specific meaning can be given to the field image related to the specific position. Note that the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, one or more specific positions may include specific positions set corresponding to the position where an object related to a game medium with a low appearance probability is arranged only when such an object is arranged. Note that the specific position or the specific range may be set corresponding to, for example, the position where the first object turns while moving (such as the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or the position where an object to be emphasized (such as an object related to a game medium with a low appearance probability) is arranged. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. Also, the specific position may be changed dynamically. For example, Yes.

[0082] Here, when the position of the virtual camera 60 is made changeable, as the position of the virtual camera 60 changes, the area within the viewing angle of the virtual camera 60 in the field object changes. In this case, if various second objects are arranged on the field object in various manners, The way the first object that the user is controlling is reflected and the degree to which multiple second objects overlap Since the field image is changed, the field image obtained by drawing the image as seen from the virtual camera 60 is diversified. Also, overlapping may occur between the second object and / or the first object. Even if the overlapping occurs, the degree of deformation of the field surface 70 can be adjusted as described above. Objects that overlap are offset vertically from one another. The visibility of an individual object or one or more focused objects among the objects can be increased.

[0083] In addition, the field images obtained by drawing the images as seen from the virtual camera 60 are diversified. This makes it possible to highlight a part of the field image, and to enhance the user's object. This improves the visibility of the object. Furthermore, the object to be operated and the operation location are clearly displayed. This improves operability. Also, when multiple objects exist within a limited screen, Even if a certain object is present, the situation in the virtual space can be displayed without compromising visibility (without limiting the amount of information). This effect is especially useful on small screens such as smartphones. This is particularly evident.

[0084] In addition, the expression of the horizon etc. is realized by a simple process of bending and deforming the field object. This reduces the processing load. Since there is no need to render (hidden) objects outside the angle of view of the virtual camera 60 in This also helps reduce the processing load.

[0085] 9 is a diagram illustrating the degree of freedom of change in the position of the virtual camera 60. The change, as shown in FIG. 9, includes a change V1 along the line-of-sight direction V, changes V2 and V3 in a direction intersecting the line-of-sight direction V, and combinations thereof. The change V2 is a change in the Vz plane, and V3 is a change in a direction perpendicular to the Vz plane. Note that the change in the position of the virtual camera 60 may be realized by the displacement (movement) of the virtual camera 60 in the global coordinate system, may be realized by the displacement (movement) of the field object in the global coordinate system, or may be realized by a combination of these. That is, the change in the position of the virtual camera 60 may be realized by the displacement (movement) of the virtual camera 60 in the global coordinate system, may be realized by the displacement (movement) of the field object in the global coordinate system, or may be realized by a combination of these. In this way, in the present embodiment, the modes in which the position (relative position) of the virtual camera 60 changes include a mode (hereinafter referred to as the "first change mode") in which the position (relative position) with respect to the field object changes in a direction (V2, V3) intersecting the line-of-sight direction V, and a mode (hereinafter referred to as the "second change mode") in which the position (relative position) with respect to the field object changes in the direction (V1) along the line-of-sight direction V. That is, the change in the position of the virtual camera 60 may be realized by the displacement (movement) of the virtual camera 60 in the global coordinate system, may be realized by the displacement (movement) of the field object in the global coordinate system, or may be realized by a combination of these. That is, the change in the position of the virtual camera 60 may be realized by the displacement (movement) of the virtual camera 60 in the global coordinate system, may be realized by the displacement (movement) of the field object in the global coordinate system, or may be realized by a combination of these. That is, the change in the position of the virtual camera 60 may be realized by the displacement (movement) of the virtual camera 60 in the global coordinate system, may be realized by the displacement (movement) of the field object in the global coordinate system, or may be realized by a combination of these.

[0086] In this way, in the present embodiment, the modes in which the position (relative position) of the virtual camera 60 changes include a mode (hereinafter referred to as the "first change mode") in which the position (relative position) with respect to the field object changes in a direction (V2, V3) intersecting the line-of-sight direction V, and a mode (hereinafter referred to as the "second change mode") in which the position (relative position) with respect to the field object changes in the direction (V1) along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V.

[0087] In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V. In this regard, the change in the degree of deformation of the field plane 70 may be realized along with either one of the first change mode and the second change mode, or may be realized along with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line-of-sight direction V while changing along the line-of-sight direction V.

[0088] Note that when the degree of deformation of the field plane 70 changes, the change that is simultaneously realized (that is, the change in the region of the field object that falls within the viewing angle of the virtual camera 60) is not limited to the change in the position (relative position) with respect to the field object, but also includes the change in the virtual camera 60 Note that when the degree of deformation of the field plane 70 changes, the change that is simultaneously realized (that is, the change in the region of the field object that falls within the viewing angle of the virtual camera 60) is not limited to the change in the position (relative position) with respect to the field object, but also includes the change in the virtual camera 60 Note that when the degree of deformation of the field plane 70 changes, the change that is simultaneously realized (that is, the change in the region of the field object that falls within the viewing angle of the virtual camera 60) is not limited to the change in the position (relative position) with respect to the field object, but also includes the change in the virtual camera 60 It may also be realized by the rotation of the line-of-sight direction V (see FIG. 10). Further, the optical parameters of the virtual camera 60 are variable values, and by changing the values of the optical parameters of the virtual camera 60 it is also possible to change the region of the field object that falls within the angle of view of the virtual camera 60. Such optical parameters may be, for example, optical parameters related to the zoom amount of the virtual camera 60, such as the focal length and the angle of view.

[0089] In this embodiment, as an example, not only is the position (relative position) of the virtual camera 60 with respect to the field object changeable, but also the line-of-sight direction V of the virtual camera 60 is changeable. Specifically, the line-of-sight direction V of the virtual camera 60 is capable of rotating around an axis parallel to the z direction (hereinafter referred to as the "revolution axis Pc"). Note that the line-of-sight direction V of the virtual camera 60 may be capable of rotating only around the revolution axis Pc, or may also be capable of rotating around other axes (rotation about the self-axis described later). For example, the line-of-sight direction V of the virtual camera 60 may be capable of rotating around an axis perpendicular to the Vz plane. That is, the line-of-sight direction V of the virtual camera 60 may be rotated in such a manner that the angle of attack (angle-of-attack parameter ψ described later) of the virtual camera 60 changes. In this case, the center of rotation is a position having a predetermined relationship with respect to the position of the virtual camera 60, and the predetermined relationship may be fixed or may be changed.

[0090] Hereinafter, unless otherwise specified, the rotation of the virtual camera 60 means the rotation in such a manner that the line-of-sight direction V rotates around the revolution axis Pc. The orientation of the virtual camera 60 means the orientation of the line-of-sight direction V of the virtual camera 60.

[0091] ​​​​​​​​FIG. 10 is an explanatory diagram of the rotation (change) of the line-of-sight direction V of the virtual camera 60, viewed in the z direction and schematically shows the virtual camera 60 and its viewing angle 62. In FIG. 10, during rotation the virtual camera 60 is schematically shown at two positions.

[0092] In FIG. 10, the revolution axis Pc related to the line-of-sight direction V of the virtual camera 60, when viewed in the z direction, passes through the line-of-sight direction V of the virtual camera 60 and is offset to the rear side of the line-of-sight direction V from the virtual camera 60 and is offset. In this case, when the virtual camera 60 rotates 360 degrees, the virtual camera 60, when viewed in the z direction draws a circular locus C70 around the revolution axis Pc. However, the position of the revolution axis Pc is arbitrary and may be in a position that has a predetermined relationship with the virtual camera 60, and the predetermined relationship may be fixed or may be changed. However, in this specification, the revolution axis Pc is distinguished from the rotation axis when the virtual camera 60 passes through, and thus is set to be different from the rotation axis. Note that in FIG. 10, the line-of-sight direction V, when viewed in the z direction, always passes through the revolution axis Pc and is away from the revolution axis Pc during the rotation of the virtual camera 60, but is not limited to this. For example, the line-of-sight direction V, when viewed in the z direction, may always pass through the revolution axis Pc and be toward the revolution axis Pc during the rotation of the virtual camera 60

[0093] That is, the revolution axis Pc, when viewed in the z direction, passes through the line-of-sight direction V of the virtual camera 60 and may be offset to the front side (distant side) of the line-of-sight direction V from the virtual camera 60 and be offset. In this case, the revolution axis Pc may be set to pass through, for example, a predetermined object (for example, a predetermined object described later) that the user wants to show from all directions or may be offset. Also, in other embodiments, the line-of-sight direction V, when viewed in the z direction, during the rotation (revolution) of the virtual camera 60 or may be offset to the front side (distant side) of the line-of-sight direction V from the virtual camera 60. In this case, the revolution axis Pc may be set to pass through, for example, a predetermined object (for example, a predetermined object described later) that the user wants to show from all directions object (for example, a predetermined object described later). Also, in other embodiments, the line-of-sight direction V, when viewed in the z direction, during the rotation (revolution) of the virtual camera 60 or may be offset to the front side (distant side) of the line-of-sight direction V from the virtual camera 60. In this case, the revolution axis Pc may be set to pass through, for example, a predetermined It may rotate. That is, the virtual camera 60 may be rotatable (spin) around the rotation axis 61. Alternatively, it may be rotatable independently of the revolution. .

[0094] By the way, as described above, the horizon HL is formed by the bending deformation of the field plane 70. Therefore, when the line-of-sight direction V changes with the rotation of the virtual camera 60, the deformation mode of the bending deformation of the field plane 70 changes accordingly. That is, when the line-of-sight direction V changes with the rotation of the virtual camera 60, the deformation mode of the bending deformation of the field plane 70 changes so that the Xc axis of the local coordinate system is located in the Vz plane based on the changed line-of-sight direction V. As a result, even when the line-of-sight direction V changes with the rotation of the virtual camera 60, the horizon HL in the virtual space can be realized in a non-awkward manner.

[0095] Next, with reference to FIG. 11 and subsequent figures, further details of the rendering function of the server device 10 will be described.

[0096] Here, first, with reference to FIG. 11, the camera parameters used in the description of FIG. 12 and subsequent figures will be described, and then the details of the server device 10 will be described.

[0097] FIG. 11 is an explanatory diagram of camera parameters. FIG. 11 shows a field plane 70 (in a normal state) positioned in a global coordinate system. Note that the field plane 70 can be bent and deformed as described above, but the entire field plane 70 in the global coordinate system cannot be translated or rotated. Therefore, the coordinates of each position of the field plane 70 in the field coordinate system can be converted into the coordinates of the global coordinate system by a predetermined conversion formula, and vice versa. It is also possible to change. In the following, for the sake of explanation, the origin of the field coordinate system is the same as the origin of the global coordinate system, the u-axis of the field coordinate system (= the u-axis of the texture coordinate system) coincides with the x-axis of the global coordinate system, and the v-axis of the field coordinate system (= the v-axis of the texture coordinate system) coincides with the y-axis of the global coordinate system. In the following, unless otherwise specified, the field plane 70 refers to the field plane 70 in the state where the field image is projected (the field plane 70 of the field object). system, and the u-axis of the field coordinate system (= the u-axis of the texture coordinate system) coincides with the x-axis of the global coordinate system, and the v-axis of the field coordinate system (= the v-axis of the texture coordinate system) coincides with the y-axis of the global coordinate system. In the following, unless otherwise specified, the field plane 70 and refer to the field plane 70 in the state where the field image is projected (the field plane 70 of the field object). is the field plane 70 in the state where the field image is projected (the field plane 70 of the field object) unless otherwise specified.

[0098] In this embodiment, the camera parameters include two position parameters (X, Y), a distance parameter A2, an orientation parameter θ, and an angle of attack parameter ψ. When the values of all these parameters are determined, the virtual camera 60 can be uniquely positioned with respect to the global coordinate system. The position parameter X is the x-coordinate of the intersection point of the line of sight direction V on the xy plane, the position parameter Y is the y-coordinate of the intersection point of the line of sight direction V on the xy plane, and the distance parameter A2 is the distance from the intersection point of the line of sight direction V on the xy plane to the virtual camera 60 (the distance along the line of sight direction V).

[0099] The orientation parameter θ is the angle in degrees between the projection vector V' of the line of sight direction V on the xy plane and the x-axis. The angle of attack parameter ψ is the angle between the line of sight direction V and the xy plane. In this embodiment, the angle of attack parameter ψ is used, but the angle of attack parameter ψ may be omitted. That is, the value of the angle of attack parameter ψ may be a constant value (fixed value). In addition, such camera parameters are for the following explanation, and in actual processing, different parameters may be equivalently used.

[0100] Note that such camera parameters are for the following explanation, and in actual processing, different parameters may be equivalently used. ​​​​​​​

[0101] FIG. 12 is an example of a functional block diagram related to the drawing function of the server device 10. FIG. 13 is , an explanatory diagram of the deformation parameter data. In FIG. 13, "-" is optional and represents the like, and "···" represents the same repetition. FIG. 14 is an explanatory diagram of the distance parameter data . Similarly, in FIG. 14 (and FIG. 15 as well), "···" represents the same repetition . FIG. 15 is an explanatory diagram of the orientation parameter data.

[0102] The server device 10 includes a drawing information storage unit 130, an operation information acquisition unit 132, a drawing data transmission unit 134, and a drawing processing unit 140. The drawing information storage unit 130 can be realized by the server storage unit 12 shown in FIG. 1, and the operation information acquisition unit 132 and the drawing data transmission unit 134 can be realized by the server communication unit 11 shown in FIG. 1, and the drawing processing unit 140 can be realized by the server control unit 13 shown in FIG. 1. Hereinafter, regarding the processing of each unit, "calculation" includes the concept of only reading out the calculated value, set value, etc. stored as data . The drawing information storage unit 130 stores various information and data used by the drawing processing unit 140.

[0103] The data stored in the drawing information storage unit 130 includes the deformation parameter data 13A related to the above-described specific position. Hereinafter, it is assumed that the specific position is a position where a predetermined object described later can be located. That is, it is assumed that the specific position can coincide with the position of the predetermined object described later.

[0104] The data stored in the drawing information storage unit 130 includes the deformation parameter data 13A related to the above-described specific position. In the deformation parameter data 13A, the position of the virtual camera 60 related to the above-described specific position is as follows.

[0105] In the deformation parameter data 13A, the position of the virtual camera 60 related to the above-described specific position Each value of the position parameter (X, Y) corresponds to a value of the transformation parameter A1 that is different from the normal value β0. The normal value β0 of the transformation parameter A1 is a constant value, but the field image If multiple types of G60 are prepared, it may be a variable value that may differ for each field image. In addition, the position parameters (X, Y) of the virtual camera 60 relating to the specific position further include a direction For example, in the example shown in FIG. Each value of the position parameter (X, Y) (X A , Y A ), (X B , Y B ), (X C , Y C ) etc. For each specific position, the value of the transformation parameter A1 corresponds to the value of the orientation parameter θ. For example, in the deformation parameter data 13A of FIG. 13, a specific position A=(X A , Y A ) is the value of the deformation parameter A1 regardless of the orientation of the virtual camera 60. On the other hand, the specific position C=(X C , Y C ) includes the virtual camera 60 The orientation is the orientation parameter θ=θ C1 When , the value β3 of the deformation parameter A1 is associated, The orientation of the virtual camera 60 is the orientation parameter θ=θ C2 When the value of the deformation parameter A1 is β4 In the following, when the direction of the virtual camera 60 is changed to a specific position C, The specific position where the value of the transformation parameter A1 changes depending on the rotation of the virtual camera 60 is called “the specific position during the revolution of the virtual camera 60.” The specific position where the degree of deformation changes is also called a "specific position where the degree of deformation changes". The direction to which a value different from the normal value β0, such as β4, is assigned (the direction parameter θ = θ C 1 and θ C2 The direction in which it becomes (is referred to as the "specific direction"). The specific direction is fixed, but it may be changed Also, in other embodiments, the degree of deformation may change during the revolution of the virtual camera 60. The specific position may not be set. In addition, for the specific position C, two specific directions are set, but only one may be set, or three or more may be set.

[0106] In addition, the data stored in the drawing information storage unit 130 includes deformation parameter data 13B related to the specific object. In the deformation parameter data 13B, a value of the deformation parameter A1 different from the normal value β0 is associated with the specific object . The specific object is an arbitrary object different from the predetermined object described later. For example, the specific object is preferably an object among the second objects that the user is desired to gaze at. For example, the specific object may be an object related to a moving object (e.g., a character), or may be an object related to a stationary object. In the deformation parameter data 13B of FIG. 13, the value β of the deformation parameter A1 is associated with the specific object G1 , and the value β of the deformation parameter A1 is associated with the specific object G2 G1 . On the other hand, for the specific object G3, when the direction of the virtual camera 60 is the direction parameter θ G2 = θ , the value β of the deformation parameter A1 is associated, and when the direction of the virtual camera 60 is the direction parameter θ = θ C3 , the value β of the deformation parameter A1 is associated G3 . Similar to the case of the deformation parameter data 13A, hereinafter, such a specific object is the direction parameter θ = θ C4 , the value β of the deformation parameter A1 is associated G4 . In the case of the deformation parameter data 13A, the value β of the deformation parameter A1 is associated with the specific object G1 . As in G3, for a specific object where the value of the deformation parameter A1 changes according to the orientation of the virtual camera 60 is also referred to as "a specific object whose degree of deformation changes during the revolution of the virtual camera 60", and on the deformation parameter data 13B, values β and values β G3 such as G4 are associated with values different from the normal value β0 in orientations (orientation parameters θ = θ or θ C3 and θ C4 ). Such orientations are referred to as "specific orientations". The specific orientation is fixed but may be changed. For example, when the specific object G3 has a front direction, the specific orientation may be changed according to the change in the front direction of the specific object G3 .

[0107] In addition, the data stored in the drawing information storage unit 130 includes the distance parameter data 14A related to the above-mentioned specific position. In the distance parameter data 14A, values of the distance parameter A2 different from the normal value γ0 are associated with the respective values of the position parameters (X, Y) of the virtual camera 60 related to the specific position. Note that although the normal value γ0 of the distance parameter A2 is a constant value, it may be a variable value that can be different for each field image when a plurality of types of field images G60 are prepared. The value of the distance parameter A2 related to a specific position of a certain virtual camera 60 may be determined so that the corresponding area (and the object located within the area) is captured with a desired sense of distance by the virtual camera 60 positioned at the specific position. For example , when it is desired to show a specific second object to the user at a short distance, a value of the distance parameter A2 such that the specific second object is captured at a short distance by the virtual camera 60 may be associated with the respective values of the position parameters (X, Y) related to the specific position. For example, in FIG. 14 At a specific position A = (X A , Y A ), a value γ1 of the distance parameter A2 is associated. At a specific position B = (X B , Y B ), a value γ2 of the distance parameter A2 is associated. The same applies hereinafter. In this embodiment, as an example, values such as the value γ1 and the value γ2, which are the values of the distance parameter A2 defined by the distance parameter data 14A, are significantly smaller than the normal value γ0. Note that the smaller the value of the distance parameter A2, the shorter the distance between the virtual camera 60 and the field object.

[0108] Also, the data stored in the drawing information storage unit 130 includes distance parameter data 14B related to a specific object. In the distance parameter data 14B, a value of the distance parameter A2 smaller than the normal value γ0 is associated with each specific object t. In the distance parameter data 14B in FIG. 14, a value γ G 1 of the distance parameter A2 is associated with the specific object G1, and a value γ G2 of the distance parameter A2 is associated with the specific object G2 .

[0109] Note that in this embodiment, in the distance parameter data 14A related to a specific position, no specific position is defined such that the value of the distance parameter A2 changes according to the value of the orientation parameter θ. However, similar to the above-described deformation parameter data 13A, a specific position may be defined such that the value of the distance parameter A2 changes according to the value of the orientation parameter θ. That is, a specific position where the value of the distance parameter A2 changes during the revolution of the virtual camera 60 may be defined. Yes. In this case, preferably, for a specific position where the degree of deformation changes during the revolution of the virtual camera 60 the value of the distance parameter A2 is associated with a specific direction related to the specific position . For example, for a specific position C = (X C , Y C ), when the orientation of the virtual camera 60 is the orientation parameter θ = θ C1 the value γ 31 of the distance parameter A2 is associated, and when the orientation of the virtual camera 60 is the orientation parameter θ = θ C2 the value γ 32 of the distance parameter A2 may also be associated. Thus, the value of the distance parameter A2 can be changed when the degree of bending deformation changes during the revolution of the virtual camera 60.

[0110] Also, similarly, in this embodiment, in the distance parameter data 14B related to the specific object, a specific object such that the value of the distance parameter A2 changes according to the value of the orientation parameter θ is not defined, but like the deformation parameter data 13B described above, a specific object such that the value of the distance parameter A2 changes according to the value of the orientation parameter θ may be defined. That is, a specific object for which the value of the distance parameter A2 changes during the revolution of the virtual camera 60 may be defined. Also in this case, preferably, for a specific object where the degree of deformation changes during the revolution of the virtual camera 6 0, the value of the distance parameter A2 is associated with a specific direction related to the specific object. For example, for a specific object G3, when the orientation of the virtual camera 60 is the orientation parameter θ = θ the value γ C3 of the distance parameter A2 is associated, and when the orientation of the virtual camera 60 is the orientation parameter θ = θ G31 the value γ C4 When there is, the value γ of the distance parameter A2 G32 may be associated. Thereby, during the revolution of the virtual camera 60 when the degree of bending deformation changes, the value of the distance parameter A2 can be changed .

[0111] In addition, the data stored in the drawing information storage unit 130 includes orientation parameter data. In the orientation parameter data, the value of the orientation parameter θ is associated with each value of the position parameters ( X, Y) of the virtual camera 60 related to the orientation change position. The value of the orientation parameter θ related to the position of a certain virtual camera 60 may be determined so that a desired area fits within the viewing angle of the virtual camera 60 at that position. For example, when it is desired to show a specific second object to the user , the value of the orientation parameter θ may be associated with each value of the position parameters (X, Y) related to that position so that the specific second object is located in an area that fits within the viewing angle. The orientation change position may be set corresponding to, for example, a position where the first object changes its orientation while moving (such as the start position and end position of the curved path 17 shown in FIG. 2 ), or the intersection position of the horizontal passage 14 and the vertical passage 15, etc.) . For example, in FIG. 15, at the orientation change position T1 (XP1, YP1 ), the value θ1 of the orientation parameter θ is associated, and at the orientation change position T2 (XP2, YP2 ), the value θ2 of the orientation parameter θ is associated, and so on. The orientation change positions T1, T2 may be positions associated with values of the deformation parameter A1 that are different from the normal value β0, such as specific positions A, B ), and / or positions associated with values of the distance parameter A2 that are different from the normal value γ0 ). ). The orientation change positions T1, T2 may be positions where values of the deformation parameter A1 different from the normal value β0 are associated, such as specific positions A, B ), and / or positions where values of the distance parameter A2 different from the normal value γ0 are associated .

[0112] In addition, the data stored in the drawing information storage unit 130 includes angle of attack parameter data. In the angle of attack parameter data, although not shown in the figure, similar to the orientation parameter data, the values of the position parameters (X, Y) of the virtual camera 60 related to the angle of attack change position may be associated with the value of the angle of attack parameter ψ. The value of the angle of attack parameter ψ related to the position of a certain virtual camera 60 may be determined so that a desired region fits within the viewing angle of the virtual camera 60 at that position. For example , when it is desired to show a specific second object to the user, the value of the angle of attack parameter ψ may be associated with the respective values of the position parameters (X, Y) related to that position so that the specific second object is located within the region that fits within the viewing angle.

[0113] Note that the data stored in the drawing information storage unit 130 does not necessarily need to be managed in the classification shown in FIGS. 13, 14, and 15, and may be integrated and managed as appropriate.

[0114] The operation information acquisition unit 132 acquires the operation information of the user. The operation information of the user is generated according to various operations by the user on the terminal device 20. Note that the operation information may be generated by gestures, voice input, or the like. In the present embodiment, the operation information includes a movement instruction for a predetermined object and a rotation instruction for the virtual camera 60. The movement instruction for the predetermined object is an instruction for changing the position of the predetermined object with respect to the field object (hereinafter, also simply referred to as "the position of the predetermined object"), and may include instructions such as the movement direction and the movement amount. The rotation instruction for the virtual camera 60 is an instruction for realizing the rotation of the virtual camera 60 described above, and the type of rotation (rotation around the revolution axis Pc, that is, revolution, or rotation around the self-axis, that is, self-rotation) and the like. rotation around the self-axis, that is, self-rotation) and the like. Rotation around the rotation axis 61, i.e., self-rotation, or rotation that changes the value of the angle of attack parameter ψ ), and may include instructions such as the rotation direction. The predetermined object is arbitrary, but in this embodiment it is preferably the first object. The operation information may also include, among other things, movement instructions for the virtual camera 60 and the like.

[0115] The drawing data transmission unit 134 transmits the drawing data for the field image generated by the drawing processing unit 140 to the terminal device 20. As described above, in other embodiments, part or all of the drawing processing of the drawing processing unit 140 may be realized on the terminal device 20 side. For example, when the drawing processing unit 140 is realized by the terminal device 20, the drawing data transmission unit 134 may be omitted

[0116] The drawing processing unit 140 generates drawing data for the field image based on various data in the drawing information storage unit 130 and operation information from the terminal device 20 and the like.

[0117] The drawing processing unit 140 includes a change processing unit 142, a second movement processing unit 144, a deformation processing unit 14 5, a projection processing unit 146, a background processing unit 147, and a drawing data generation unit 148.

[0118] The change processing unit 142 changes the area that fits within the viewing angle of the virtual camera 60 in the field object according to operation information and the like. For example, the change processing unit 142 changes each value of the position parameters (X, Y) of the virtual camera 60 and, when changing each value of the position parameters (X, Y) executes various processes corresponding to the change.

[0119] In this embodiment, since a specific object is arranged in the field object 77 ​​​​​​​When the area within the viewing angle of the virtual camera 60 in the field object is changed , it may happen that a specific object is located within the area. In other words, the area within the viewing angle 62 of the virtual camera 60 in the field object has substantially all combinations of possible values of the camera parameters, and among them, there are areas where a specific object is located (hereinafter also referred to as the "specific object area"), and there are also areas such as the area around the specific object area (an example of a predetermined object area). Also, in this embodiment , since the values of the camera parameters can change with relatively low resolution, the specific object area includes a first object area where the specific object is located at the center and a second object area where the specific object is located at the edge. Here, referring to FIG. 11A, the specific object and the like will be described. In FIG. 11A, areas R1, R2, and R3 within the viewing angle 62 of the virtual camera 60 in the field object 77 when each of three different types of camera parameters (here, camera parameters 1, 2, and 3) are used are shown. The camera parameters 1, 2, and 3 have at least one different value among the respective elements (X, Y, A2, θ, ψ) of the camera parameters described above. Therefore, the three areas shown in FIG. 11A are different areas. And among the three areas R1, R2, and R3 shown in FIG. 11A, specific objects G5 and G7 are arranged in areas R1 and R3. Therefore, in this case, areas R1 and R3 are examples of specific object areas. On the other hand, no specific object is arranged in area R2. Therefore, in this case, area R2 is a predetermined object area where no specific object is located. This is an example. When the specific object is a moving object, at a certain point in time the area that was the specific object area may not be the specific object area at other points in time. For example, in the case of area R2, when the specific object G6, which was located outside the viewing angle 62 at that time, moves and comes to be located in area R2, area R2 becomes the specific object area.

[0120] The change processing unit 142 includes a first movement processing unit 1420, a distance change unit 1421, an orientation change unit 1422, an angle of attack change unit 1423, an update reflection unit 1424, and a rotation processing unit 1425.

[0121] When a predetermined first movement condition is satisfied, the first movement processing unit 1420 updates each value of the position parameters (X, Y) of the virtual camera 60. The predetermined first movement condition is arbitrary. For example, it may be satisfied by the movement of a predetermined object based on a movement instruction of the predetermined object in the operation information, or it may be satisfied based on the progress of the game and other factors.

[0122] The distance change unit 1421 associates the value of the distance parameter A2 with each value of the updated position parameters (X, Y). In the present embodiment, the distance change unit 1421 refers to the distance parameter data in the drawing information storage unit 130 and calculates the value of the distance parameter A2 to be associated with each value of the updated position parameters (X, Y). At this time, if the value of the distance parameter A2 is not associated with each value of the updated position parameters (X, Y) on the distance parameter data 14A, an interpolation value may be associated with each value of the updated position parameters (X, Y). An example of the calculation method of this interpolation value will be described later. In other embodiments ​​​​​​​​​​​ On the distance parameter data, for each value of the updated position parameter (X, Y), the distance If the value of the distance parameter A2 is not associated, the distance change unit 1421 may directly associate the normal value γ0 instead of the interpolation value.

[0123] The distance change unit 1421 includes a first distance change unit 14211 and a second distance change unit 14212. In other embodiments where no specific position is set, different from the example shown in FIG. 14, the first distance change unit 14211 may be omitted.

[0124] The first distance change unit 14211 calculates the value of the distance parameter A2 based on the relationship between the position of the virtual camera 60 and the specific position (first distance parameter calculation process). In this embodiment, the first distance change unit 14211 refers to the distance parameter data 14A related to the specific position as described above with reference to FIG. 14, and calculates the value of the distance parameter A2 based on the position of the virtual camera 60. An example of the first distance parameter calculation process by the first distance change unit 14211 will be described later with reference to FIG. 17.

[0125] The second distance change unit 14212 associates the value of the distance parameter A2 associated with the specific object with each value of the updated position parameter (X, Y) (second distance parameter calculation process). In this embodiment, when the specific object is located in the region within the viewing angle 62 of the virtual camera 60 in the field object, the second distance change unit 14212 refers to the distance parameter data 14B related to the specific position as described above with reference to FIG. 14, and for the region within the viewing angle of the virtual camera 60 in the field object where the specific object is located, ​​​​​​​​Based on the fixed object, calculate the value of the distance parameter A2.

[0126] In addition, when the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the second distance changing unit 14212 may calculate the value of the distance parameter A2 according to the position of the specific object in the area. In this case, the second distance changing unit 14212 may change the value of the distance parameter A2 depending on whether the specific object is located at the center of the area within the viewing angle of the virtual camera 60 in the field object or at both ends on its both sides. Specifically, when the specific object is located at the center of the area within the viewing angle of the virtual camera 60 in the field object, the second distance changing unit 14212 may make the value of the distance parameter A2 smaller than when the specific object is located at both ends on its both sides. Thereby, when the specific object is located near the center within the viewing angle of the virtual camera 60, the specific object can be effectively made prominent. Note that, in the area within the viewing angle of the virtual camera 60 in the field object, the center part may be, for example, in the range 771 within the distance L0 centered on the center line CT in the upper specific object area of FIG. 11A. In this case, the distance L0 may be arbitrary as long as it is significantly smaller than the overall distance L1 of the specific object area, and may be, for example, about L1 / 2. In this case, the portions related to the ranges 772 and 773 on both sides of the range 771 correspond to the ends of the central area. An example of the second distance parameter calculation process will be described later with reference to FIG. 27.

[0127] The orientation change unit 1422 associates the value of the orientation parameter θ with each value of the updated position parameters (X, Y). In this embodiment, the orientation change unit 1422 refers to the orientation parameter data within the drawing information storage unit 130 and calculates the value of the orientation parameter θ corresponding to each value of the position parameters (X, Y). At this time, if the value of the orientation parameter θ is not associated with each value of the updated position parameter (X, Y) on the orientation parameter data, the orientation change unit 1422 may calculate an interpolation value. An example of the method for calculating this interpolation value will be described later (X, Y). Then, the orientation change unit 1422 associates the calculated value of the orientation parameter θ with each value of the updated position parameter (X, Y). Note that in other embodiments, if the value of the orientation parameter θ is not associated with each value of the updated position parameter (X, Y) on the orientation parameter data, the orientation change unit 1422 may directly associate the normal value θ0 . The normal value θ0 may be set such that the line of sight direction V is perpendicular in the z - direction view to the moving direction of a predetermined object . The angle of attack change unit 1423 associates the value of the angle of attack parameter ψ with each value of the updated position parameters (X, Y). In this embodiment, the angle of attack change unit 1423 refers to the angle of attack parameter data within the drawing information storage unit 130 and calculates the value of the angle of attack parameter ψ corresponding to each value of the position parameters (X, Y). At this time, if the value of the angle of attack parameter ψ is not associated with each value of the updated position parameter (X, Y) on the angle of attack parameter data, the angle of attack change unit 1423 may calculate an interpolation value. An example of the method for calculating this interpolation value will be described later

[0128] . Then, the angle of attack change unit 1423 associates the calculated value of the angle of attack parameter ψ with the changed position . In this embodiment, the angle of attack change unit 1423 refers to the angle of attack parameter data within the drawing information storage unit 130 and calculates the value of the angle of attack parameter ψ corresponding to each value of the position parameters (X, Y). At this time, if the value of the angle of attack parameter ψ is not associated with each value of the updated position parameter (X, Y) on the angle of attack parameter data, the angle of attack change unit 1423 may calculate an interpolation value. An example of the method for calculating this interpolation value will be described later (X, Y). Then, the angle of attack change unit 1423 associates the calculated value of the angle of attack parameter ψ with the changed position . An example of the method for calculating this interpolation value will be described later . Associate with each value of the parameters (X, Y). In other embodiments, on the angle of attack parameter data if the value of the angle of attack parameter ψ is not associated with each value of the updated position parameters (X, Y), the angle of attack change unit 1423 may directly associate the normal value ψ0. That's fine.

[0129] The update reflection unit 1424 positions the virtual camera 60 with respect to the global coordinate system based on each value of the updated position parameters (X, Y) and each value of various parameters (distance parameter A2, orientation parameter θ, and angle of attack parameter ψ) associated with each value of the updated position parameters (X, Y). Thereby, the virtual camera 60 is positioned with respect to the field surface 70 (and the field object associated therewith).

[0130] When a predetermined rotation condition is satisfied, the rotation processing unit 1425 performs the rotation processing of the virtual camera 60. The predetermined rotation condition may be determined based on, for example, operation information (rotation instruction of the virtual camera 60), or may be satisfied based on the progress of the game and other factors.

[0131] The rotation processing unit 1425 may include a revolution processing unit 14251, a rotation processing unit 14252, and an angle of attack processing unit 14253. In other embodiments, part or all of the revolution processing unit 14251, the rotation processing unit 14252, and the angle of attack processing unit 14253 may be omitted.

[0132] The revolution processing unit 14251 realizes the rotation of the line of sight direction V around the revolution axis Pc (see FIG. 10) away from the virtual camera 60. Note that the revolution processing unit 14251 may appropriately set the position of the revolution axis Pc according to the position of the virtual camera 60, the position of a predetermined object, and the like. ​​​​​​​​​​

[0133] The rotation processing unit 14252 realizes the rotation of the line-of-sight direction V around the rotation axis 61 ( see Fig. 10), which is an axis parallel to the z direction passing through the virtual camera 60.

[0134] The angle-of-attack processing unit 14253 realizes the change in the angle-of-attack parameter ψ (see Fig. 5) formed between the line-of-sight direction V of the virtual camera 60 and the xy plane (i.e., the rotation around the axis perpendicular to the Vz plane passing through the virtual camera 60). see Fig. 5), which is an axis parallel to the z direction passing through the virtual camera 60. see Fig. 5), which is an axis parallel to the z direction passing through the virtual camera 60.

[0135] Note that in one processing cycle, two or more of the revolution processing unit 14251, the rotation processing unit 14252, and the angle-of-attack processing unit 14253 may simultaneously realize the processing. Note that in one processing cycle, two or more of the revolution processing unit 14251, the rotation processing unit 14252, and the angle-of-attack processing unit 14253 may simultaneously realize the processing.

[0136] When a predetermined second movement condition is satisfied, the second movement processing unit 144 updates the position of a predetermined object with respect to the field object. Note that the predetermined object may be arbitrary as long as it is an object whose position with respect to the field object can change, but preferably, as described above, it is the first object. The predetermined second movement condition is arbitrary, but for example, it may be satisfied by operation information (a movement instruction for the predetermined object), or may be satisfied based on the progress of the game and other factors. Note that the position of the predetermined object may be defined, for example, in the texture coordinate system of the field image. in the texture coordinate system of the field image. in the texture coordinate system of the field image. in the texture coordinate system of the field image.

[0137] Based on the position and orientation of the virtual camera 60, the deformation processing unit 145 executes a bending deformation process for bending and deforming the field plane 70 ( and the field object associated therewith). The bending deformation of the field plane 70 is as described above. The deformation parameter data shown in Fig. 13 and the field object associated therewith). The bending deformation of the field plane 70 is as described above. The deformation parameter data shown in Fig. 13 In 13A, for example, each value of the position parameters (X, Y) is a specific position A (X A , Y A ) In this case, the transformation processing unit 145 performs the transformation processing regardless of the orientation of the virtual camera 60. Based on the value β1 of the parameter A1, the field surface 70 (and therefore the field object) Also, each value of the position parameters (X, Y) is bent at a specific position C(X C , Y C ), the transformation processor 145 determines whether the orientation of the virtual camera 60 corresponds to “θ C1 "When Based on the value β3 of the deformation parameter A1, the field surface 70 (and therefore the field The virtual camera 60 is rotated in a direction of “θ C2 " is transformed Based on the value β4 of the parameter A1, the field surface 70 (and therefore the field object Bend and deform the object.

[0138] In this embodiment, the transformation processing unit 145 includes a first transformation parameter calculation unit 1451 and a second transformation parameter calculation unit 1452. A shape parameter calculation unit 1452, a transformation parameter adjustment unit 1453, and an origin setting processing unit 14 54 and a modification function application unit 1455. Note that, unlike the example shown in FIG. In another embodiment in which the first deformation parameter calculation unit 1451 and the deformation parameter calculation unit 1452 are not set, The timing adjustment unit 1453 may be omitted.

[0139] The first deformation parameter calculation unit 1451 calculates the deformation parameter related to the specific position as described above with reference to FIG. Based on the position and orientation of the virtual camera 60, The value of the transformation parameter A1 is calculated (first transformation parameter calculation process). An example of the first deformation parameter calculation process by the t calculation unit 1451 will be described later with reference to FIG. 23. will be described.

[0140] The second deformation parameter calculation unit 1452 refers to the deformation parameter data 13B related to the specific object as described above with reference to FIG. 13, and based on the position and orientation of the virtual camera 60, calculates the value of the deformation parameter A1 (second deformation parameter calculation process). An example of the second deformation parameter calculation process by the second deformation parameter calculation unit 1452 will be described later with reference to FIG. 24. subsequently calculates the value of the deformation parameter A1. An example of the second deformation parameter calculation process by the second deformation parameter calculation unit 1452 will be described later with reference to FIG. 24. subsequently calculates the value of the deformation parameter A1. An example of the second deformation parameter calculation process by the second deformation parameter calculation unit 1452 will be described later with reference to FIG. 24. will be described later.

[0141] When the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, the deformation parameter adjustment unit 1453 calculates an interpolation value by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 and the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, if they do not match, the interpolation value is calculated by interpolation processing. An example of the interpolation processing related to the deformation parameter will be described later. In other embodiments, when the value of the deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used. the value of the deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be preferentially used.

[0142] Based on the position and orientation of the virtual camera 60, the origin setting processing unit 1454 sets the position (hereinafter also referred to as the "origin position") corresponding to the origin O of the local coordinate system in the field object. The origin setting processing unit 1454 sets the origin position in two or more setting modes. In the present embodiment, as an example, the origin setting processing unit 1454 sets the origin position in the first type of setting. Based on the position and orientation of the virtual camera 60, the origin setting processing unit 1454 sets the position (hereinafter also referred to as the "origin position") corresponding to the origin O of the local coordinate system in the field object. The origin setting processing unit 1454 sets the origin position in two or more setting modes. In the present embodiment, as an example, the origin setting processing unit 1454 sets the origin position in the first type of setting. Based on the position and orientation of the virtual camera 60, the origin setting processing unit 1454 sets the position (hereinafter also referred to as the "origin position") corresponding to the origin O of the local coordinate system in the field object. The origin setting processing unit 1454 sets the origin position in two or more setting modes. In the present embodiment, as an example, the origin setting processing unit 1454 sets the origin position in the first type of setting. Based on the position and orientation of the virtual camera 60, the origin setting processing unit 1454 sets the position (hereinafter also referred to as the "origin position") corresponding to the origin O of the local coordinate system in the field object. The origin setting processing unit 1454 sets the origin position in two or more setting modes. In the present embodiment, as an example, the origin setting processing unit 1454 sets the origin position in the first type of setting. As a stationary mode, the origin position is set based on the position of a predetermined object, and as a second type of setting mode, the origin position is set based on the position of a specific object different from the predetermined object. For example, the origin setting processing unit 1454 determines whether a predetermined object is located in an area within the viewing angle of the virtual camera 60, and if it is determined that a specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the specific object. On the other hand, when the origin setting processing unit 1454 determines that no specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the predetermined object. In other embodiments, the origin setting processing unit 1454 may set the origin position based on the position of the predetermined object or other factors regardless of whether a specific object is located in the area within the viewing angle of the virtual camera 60, or may set the origin position based on other factors. As a second type of setting mode, the origin position is set based on the position of a specific object different from the predetermined object. For example, the origin setting processing unit 1454 determines whether a predetermined object is located in an area within the viewing angle of the virtual camera 60. If it is determined that a specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the specific object. On the other hand, when the origin setting processing unit 1454 determines that no specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the predetermined object. In other embodiments, the origin setting processing unit 1454 may set the origin position based on the position of the predetermined object or other factors regardless of whether a specific object is located in the area within the viewing angle of the virtual camera 60, or may set the origin position based on other factors. If it is determined that a specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the specific object. On the other hand, when the origin setting processing unit 1454 determines that no specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the predetermined object. In other embodiments, the origin setting processing unit 1454 may set the origin position based on the position of the predetermined object or other factors regardless of whether a specific object is located in the area within the viewing angle of the virtual camera 60, or may set the origin position based on other factors. If it is determined that a specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the specific object. On the other hand, when the origin setting processing unit 1454 determines that no specific object is located in the area within the viewing angle of the virtual camera 60, the origin position is set based on the position of the predetermined object.

[0143] The deformation function application unit 1455 bends and deforms the field surface 70 based on the function F1 described above with reference to FIG. 7 based on the origin position set by the origin setting processing unit 1454, the value of the deformation parameter A1 calculated (set) by the deformation parameter adjustment unit 1453, and the orientation of the virtual camera 60. The deformation function application unit 1455 bends and deforms the field surface 70 based on the function F1 described above with reference to FIG. 7 based on the origin position set by the origin setting processing unit 1454, the value of the deformation parameter A1 calculated (set) by the deformation parameter adjustment unit 1453, and the orientation of the virtual camera 60. The deformation function application unit 1455 bends and deforms the field surface 70 based on the function F1 described above with reference to FIG. 7 based on the origin position set by the origin setting processing unit 1454, the value of the deformation parameter A1 calculated (set) by the deformation parameter adjustment unit 1453, and the orientation of the virtual camera 60. The deformation function application unit 1455 bends and deforms the field surface 70 based on the function F1 described above with reference to FIG. 7 based on the origin position set by the origin setting processing unit 1454, the value of the deformation parameter A1 calculated (set) by the deformation parameter adjustment unit 1453, and the orientation of the virtual camera 60.

[0144] The projection processing unit 146 arranges various objects (such as the second object) other than the background object on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The arrangement of the various objects can be realized based on the correspondence information described above. At this time, for the predetermined object, the projection processing unit 146 uses the moved position calculated by the second movement processing unit 144. The projection processing unit 146 arranges various objects (such as the second object) other than the background object on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The arrangement of the various objects can be realized based on the correspondence information described above. At this time, for the predetermined object, the projection processing unit 146 uses the moved position calculated by the second movement processing unit 144. The projection processing unit 146 arranges various objects (such as the second object) other than the background object on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The arrangement of the various objects can be realized based on the correspondence information described above. At this time, for the predetermined object, the projection processing unit 146 uses the moved position calculated by the second movement processing unit 144. The projection processing unit 146 arranges various objects (such as the second object) other than the background object on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The arrangement of the various objects can be realized based on the correspondence information described above. At this time, for the predetermined object, the projection processing unit 146 uses the moved position calculated by the second movement processing unit 144. Place a predetermined object at the position. Note that, as described above, the field image may be projected after the field surface 70 is bent and deformed.

[0145] The background processing unit 147 places background objects on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The background processing unit 147 determines the position of the background object in the z direction based on the degree of bending deformation of the field surface 70. Specifically, the background processing unit 147 determines the position of the background object along the z direction with respect to the field object based on the height H1 (see FIG. 6) of the virtual horizon HL represented by the field object. For example, when the height H1 of the horizon HL decreases due to a change in the degree of bending deformation of the field surface 70, the background processing unit moves the position of the background object downward in the z direction. For example, in the example shown in FIG. 5, when changing from the angle α to the angle α', the background processing unit 147 may move the position of the background object downward by a distance Δ1. As shown in FIG. 5, the distance Δ1 is the distance between the intersection point P4 of the tangent line 6213 (the tangent line within the angle of view 62) from the virtual camera 60 to the field surface 70 and the background surface 72, and the same intersection point P5 of the tangent line 6213'. In this case, even when the height H1 of the horizon HL changes due to a change in the degree of bending deformation of the bending deformation, the background object can be placed in a manner that hardly causes a sense of discomfort due to the change.

[0146] Note that the background processing unit 147 may not change the position of the background object along the z direction with respect to the field object in a predetermined case. For example, the deformation processing unit ​​​​​​​​​When the amount of change in the degree of bending deformation by 145 is relatively small, the position of the background object with respect to the field object along the z-direction may not be changed. It may be.

[0147] The drawing data generation unit 148 generates a field image (drawing data) including the representation of various objects viewed from the virtual camera 60.

[0148] Next, with reference to FIG. 16 and later, the operation of the server control unit 13 related to the drawing function will be further described. In the following processing flowcharts, the processing order of each step may be changed as long as the input-output relationship of each step is not impaired.

[0149] FIG. 16 is a schematic flowchart showing the flow of processing realized by the server control unit 13.

[0150] The processing shown in FIG. 16 may be executed at each predetermined processing cycle. The predetermined processing cycle may be the same as the frame period (update period) of the field image. Hereinafter, the "pre-update" value corresponds to the previous value (the value derived in the previous processing cycle (k)) based on a certain processing cycle (k + 1), and the "post-update" value corresponds to the current value derived in the current processing cycle (k + 1). Here, as an example, in the first processing cycle, the position (u(0), v(0)) of the predetermined object after update is set to a predetermined initial position, and the respective values (X(0), Y(0)) of the position parameters (X, Y) of the virtual camera 60 after update are set to the same as the position ( u(0), v(0)) of the predetermined object, and the respective values (X(0), Y(0) of the camera parameters, γ(0), θ(0), ψ(0)) are set to their respective normal values. u(0), v(0)) and the respective values (X(0), Y(0) of the camera parameters, γ(0), θ(0), ψ(0)) are set to their respective normal values.

[0151] In step S1600, the operation information acquisition unit 132 acquires operation information. Note that the operation information may be received from the terminal device 20 by interrupt processing and stored in a predetermined storage unit in the server storage unit 12. In this case, the operation information acquisition unit 132 sequentially reads the operation information from the predetermined storage unit.

[0152] In step S1602, the second movement processing unit 144 determines whether a movement instruction for a predetermined object is included in the operation information obtained in step S1600. If the determination result is "YES" ", the process proceeds to step S1604; otherwise, the process proceeds to step S1616.

[0153] In step S1604, the second movement processing unit 144 calculates the position of the predetermined object after movement based on the movement instruction for the predetermined object in the operation information obtained in step S1600. Here, it is assumed that the position of the predetermined object after movement is (u(k + 1), v(k + 1)) in the field coordinates. Note that the position of the predetermined object before movement is (u(k), v(k)) in the field coordinates. In this case, the movement vector in the field coordinate system is (u(k + 1) - u(k), v(k + 1) - v(k)). Note that the movement instruction for the predetermined object may be an instruction representing such a movement vector (movement direction).

[0154] In step S1606, the first movement processing unit 1420 calculates each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) of the virtual camera 60 based on the position (u(k + 1), v(k + 1)) of the predetermined object after movement obtained in step S1604. Output. Note that each value of the position parameters (X, Y) before update is (X(k), Y(k)). Assume that there is. In this case, the change vector of each value of the position parameters (X, Y) is (X(k + 1) - X(k), Y(k + 1) - Y(k)). In this case, (X(k + 1), Y(k + 1)) may be calculated so that (X(k + 1) - X(k), Y(k + 1) - Y(k)) = (u(k + 1) - u(k), v(k + 1) - v(k)).

[0155] In step S1608, the first distance change unit 14211 of the distance change unit 1421 calculates the updated distance parameter A2 value γ(k + 1) associated with the obtained updated position parameters (X, Y) values (X(k + 1), Y(k + 1)) (first distance parameter calculation process). A specific example of this first distance parameter calculation process will be described later with reference to FIGS. 17 and 18.

[0156] In step S1610, the direction change unit 1422 calculates the value θ(k + 1) of the direction parameter θ associated with the obtained updated position parameters (X, Y) values (X(k + 1), Y(k + 1)) based on the (X (k + 1), Y(k + 1)) (direction parameter calculation process). A specific example of this direction parameter calculation process will be described later with reference to FIG. 19.

[0157] In step S1612, the angle of attack change unit 1423 calculates the value ψ(k + 1) of the angle of attack parameter ψ associated with the obtained updated position parameters (X, Y) values (X(k + 1), Y(k + 1)) based on the (X (k + 1), Y(k + 1)) (angle of attack parameter calculation process). ​​​(Angle of attack parameter calculation process). A specific example of this angle of attack parameter calculation process will be outlined later with reference to FIG. 20 and is described later.

[0158] In step S1615, the deformation processing unit 145 executes deformation processing associated with the movement of a predetermined object. A specific example of the deformation processing associated with the movement of a predetermined object will be described later with reference to FIG. 21 and is described later. and is described later.

[0159] In step S1616, the second movement processing unit 144 sets the position (u(k + 1), v(k + 1)) of the updated predetermined object to the position (u(k), v( k)) of the predetermined object before update. That is, the current value is made the same as the previous value. and is described later.

[0160] In step S1617, the rotation processing unit 1425 determines whether the operation information obtained in step S1600 includes a rotation instruction for the virtual camera 60. If the determination result is "YES", the process proceeds to step S1618; otherwise, the current processing cycle ends as it is. and is described later. and is described later.

[0161] In step S1618, the rotation processing unit 1425 executes rotation processing of the virtual camera 60 based on the operation information obtained in step S1600. The rotation processing is as described above. and is described later. and is described later.

[0162] In step S1619, the deformation processing unit 145, based on the line-of-sight direction V of the virtual camera 60 after the rotation processing in step S1618, executes bending deformation of the field plane 70 (and the associated field object) as described above with reference to FIGS. 7 and 7A, etc. and is described later. and is described later.

[0163] In step S1620, the background processing unit 147 uses the deformation parameters used in the current processing cycle It is determined whether the current value β(k+1) of the meter A1 has changed from the previous value β(k). If the determination result is "YES", proceed to step S1622; otherwise, In the modified example, in step S1620, the background processing unit 147 is the previous value β(k+1) of the deformation parameter A1 used in the current processing cycle. It may be determined whether the amount of change in (k) is equal to or greater than a predetermined amount. is equal to or smaller than the predetermined amount, step S1622 can be skipped. In another modified example, the processing load for calculating the position in the z direction can be reduced. In S1620, the current value β(k+1) of the transformation parameter A1 is directly compared with the previous value β(k). For example, unlike the present embodiment, the above-mentioned specific position may not be compared. A specific position where the degree of deformation changes during the revolution of the virtual camera 60, such as position C, is set. In another embodiment, the process contents up to step S1619 of the current process cycle are disclosed. In the case of rotation, the current value β(k+1) of the transformation parameter A1 and the previous value β(k) are directly The determination result in step S1620 may be a "negative determination (NO)" without making a comparison.

[0164] In step S1623, the second distance change unit 14212 of the distance change unit 1421 changes the second distance A specific example of the second distance parameter calculation process is shown in FIG. This will be discussed in more detail below.

[0165] In step S1624, the update reflection unit 1424 performs the process of steps S1606 to S The updated values of the various parameters obtained in 1612 (X(k+1), Y(k+1), γ(k+ 1), θ(k + 1), ψ(k + 1)), or steps S1606, S1610 From the various parameter values after update obtained in steps S1612 and S1623 (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)), based on this, the virtual camera 60 is positioned in the global coordinate system.

[0166] In step S1625, the rendering data generation unit 148 generates various updated rendering data (rendering data of the field image) in the current processing cycle. In step S1626, the rendering data transmission unit 134 transmits the rendering data generated in step S1625 to the terminal communication unit 21. When the terminal communication unit 21 receives the rendering data, it updates the display of the field image on the display unit 23 based on the received rendering data.

[0167] In step S1626, the rendering data transmission unit 134 transmits the rendering data generated in step S1625 to the terminal communication unit 21. When the terminal communication unit 21 receives the rendering data, it updates the display of the field image on the display unit 23 based on the received rendering data. For example, when the terminal communication unit 21 receives the rendering data, it updates the display of the field image on the display unit 23 based on the received rendering data. For example, when the terminal communication unit 21 receives the rendering data, it updates the display of the field image on the display unit 23 based on the received rendering data.

[0168] In this way, according to the process shown in FIG. 16, based on the operation information received from the terminal device 20, rendering data reflecting the operation information can be generated, and the generated rendering data can be transmitted to the terminal device 20. Therefore, the update of the field image accompanying the progress of the game can be realized in real time. Based on the operation information received from the terminal device 20, rendering data reflecting the operation information can be generated, and the generated rendering data can be transmitted to the terminal device 20. Therefore, the update of the field image accompanying the progress of the game can be realized in real time. Based on the operation information received from the terminal device 20, rendering data reflecting the operation information can be generated, and the generated rendering data can be transmitted to the terminal device 20. Therefore, the update of the field image accompanying the progress of the game can be realized in real time. Based on the operation information received from the terminal device 20, rendering data reflecting the operation information can be generated, and the generated rendering data can be transmitted to the terminal device 20. Therefore, the update of the field image accompanying the progress of the game can be realized in real time.

[0169] FIG. 17 is a schematic flowchart showing an example of the first distance parameter calculation process (step S1608). FIG. 18 is an explanatory diagram of the interpolation processing range and is a perspective view showing the field surface 70. FIG. 17 is a schematic flowchart showing an example of the first distance parameter calculation process (step S1608). FIG. 18 is an explanatory diagram of the interpolation processing range and is a perspective view showing the field surface 70. FIG. 17 is a schematic flowchart showing an example of the first distance parameter calculation process (step S1608). FIG. 18 is an explanatory diagram of the interpolation processing range and is a perspective view showing the field surface 70.

[0170] In step S1700, the first distance change unit 14211 determines whether each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in step S1606 is within the distance parameter range. If each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in step S1606 is within the distance parameter Determine whether it corresponds to any specific position set in the - data data 14A (see FIG. 14). If the determination result is "YES", proceed to step S1702; otherwise, proceed to step S1704. If the determination result is "YES", proceed to step S1702; otherwise, proceed to step S1704. Proceed to step S1704.

[0171] In step S1702, the first distance change unit 14211 associates the value γ(k + 1) of the updated distance parameter A2 with the value of the distance parameter A2 associated with the specific position corresponding to each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y). For example, in the example shown in FIG. 14, when each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) corresponds to a specific position A(X , Y , Y ), the value of the distance parameter A2 A , Y A ) corresponding to the specific position, let γ(k + 1)=γ1. Set γ(k + 1)=γ1.

[0172] In step S1704, the first distance change unit 14211 determines whether each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) obtained in step S1606 is within the interpolation processing range associated with any specific position set in the distance parameter data 14A (see FIG. 14). The interpolation processing range may be set in association with the texture coordinate system (= field coordinate system) for each specific position. In this embodiment, simply, the interpolation processing range is within a circular region with a radius r centered on the specific position, as shown in FIG. 18. In this case, it may be determined whether each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) is within a circular region with a radius r centered on the specific position. However, in other embodiments, the interpolation processing range may be defined by a region of other forms. For example, the interpolation For example, in the example shown in FIG. 14, when each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) corresponds to a specific position A(X , Y ), the value of the distance parameter A2 = field coordinate system) is set in association with each specific position. In this embodiment, simply, the interpolation processing range is within a circular region with a radius r centered on the specific position, as shown in FIG. 18. In this case, it may be determined whether each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) is within a circular region with a radius r centered on the specific position. However, in other embodiments, the interpolation processing range may be defined by a region of other forms. For example, the interpolation processing range is within a circular region with a radius r centered on the specific position, as shown in FIG. 18. In this case, it may be determined whether each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) is within a circular region with a radius r centered on the specific position. However, in other embodiments, the interpolation processing range may be defined by a region of other forms. For example, the interpolation ) is determined to be within a circular region with a radius r centered on the specific position. However, in other embodiments, the interpolation processing range may be defined by a region of other forms. For example, the interpolation The interpolation processing range is such that each value of the position parameters (X, Y) of the virtual camera 60 is located within the interpolation processing range and the values of the distance parameter A2 and the angle of attack parameter are the normal values γ0, ψ0, and when the value of any orientation parameter θ is also within the viewing angle of the virtual camera 60 the specific position related to the interpolation processing range may be set to be located within the area that fits within the viewing angle of the virtual camera 60. This also applies to other interpolation processing ranges described later. In FIG. 18, on the field surface 70, three specific positions Ps(1) to Ps(3) are schematically shown, and the interpolation processing ranges Rs(1) to Rs(3) associated with each of them are schematically shown. Note that in FIG. 18, the interpolation processing range Rs(2) and the interpolation processing range Rs(3) overlap each other, and the overlapping region Rs’ is shown by the hatched area. Each of the specific positions Ps(1), Ps(2), Ps(3) is set in the distance parameter data 14A (see FIG. 14) like the specific positions A, B, etc. Note that the interpolation processing range (similarly for the interpolation processing ranges related to other parameters described later) may also be defined in advance by the distance parameter data 14A or the like. In step S1706, the first distance changing unit 14211 calculates the distance (distance for interpolation) between each value (X(k + 1), Y(k + 1)) of the updated position parameters (X , Y) and the specific position related to the interpolation processing range Rs to which each value belongs. For example, in the example shown in FIG. 18 when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the interpolation processing range Rs(1), the distance d(1) between (X(k + 1), Y(k + 1)) and the specific position Ps(1) related to the interpolation processing range Rs(1) is calculated. On the other hand, in FIG. 18 Rs(1) is calculated.

[0173] In step S1706, the first distance changing unit 14211 calculates the distance (distance for interpolation) between each value (X , Y) of the updated position parameters (X(k + 1), Y(k + 1)) and the specific position related to the interpolation processing range Rs to which each value belongs. For example, in the example shown in FIG. 18 when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the interpolation processing range Rs(1), the distance d(1) between (X(k + 1), Y(k + 1)) and the specific position Ps(1) related to the interpolation processing range Rs(1) is calculated. On the other hand, in FIG. 18 when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the interpolation processing range Rs(1), the distance d(1) between (X(k + 1), Y(k + 1)) and the specific position Ps(1) related to the interpolation processing range Rs(1) is calculated. On the other hand, in FIG. 18 In the example shown, when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the overlapping region Rs’, together with the distance d(2) between (X(k + 1), Y(k + 1)) and the specific position Ps(2) related to the interpolation processing range Rs(2), the distance d( (3) between (X(k + 1), Y(k + 1)) and the specific position Ps(3) related to the interpolation processing range Rs(3) is calculated.

[0174] In step S1708, the first distance change unit 14211 calculates an interpolation value of the distance parameter A2 based on the distance obtained in step S1706. For example, the interpolation value γ(1) of the distance parameter A2 related to the above-described distance d(1) may be calculated by the following formula. γ(1) = (γ1 - γ0) / r × (r - d(1)) + γ0 The value γ1 is a value associated with the specific position Ps(1) and is smaller than the normal value γ0 as described above. On the other hand, when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the overlapping region Rs’, the interpolation value γ(Rs’) may be calculated by the following formula based on the interpolation value γ(2) of the distance parameter A2 related to the above-described distance d(2) and the interpolation value γ(3) of the distance parameter A2 related to the above-described distance d(3). γ(Rs’) = B0 × γ(2) + (1 - B0) × γ(3) Here, γ(2) and γ(3) are as follows γ(2) = (γ2 - γ0) / r × (r - d(2)) + γ0 γ(3) = (γ3 - γ0) / r × (r - d(3)) + γ0 The value γ 2、 γ3 are values respectively associated with the specific positions Ps(2) and Ps(3) and are smaller than the normal value γ0 as described above. B0 is a coefficient that varies within the range from 0 to 1, ​​​​​​​The closer each value of the updated position parameters (X, Y) gets to the specific position Ps(2), the closer it gets to 1. , and it becomes 1 at the boundary position on the specific position Ps(2) side in the overlapping region Rs’. Also, the coefficient B0 is such that the closer each value of the updated position parameters (X, Y) gets to the specific position Ps(3), the closer it gets to 0. and it becomes 0 at the boundary position on the specific position Ps(3) side in the overlapping region Rs’. For example, B 0 may be as follows. B0 = (r - d(2)) / {(r - d(2)) + (r - d(3))} In step S1710, the first distance changing unit 14211 sets the interpolation value calculated in step S1708 to the value γ(k + 1) of the updated distance parameter A2.

[0175] In step S1712, the first distance changing unit 14211 sets the normal value γ0 to the value γ(k + 1) of the updated distance parameter A2.

[0176] In this way, according to the process shown in FIG. 17, the value of the distance parameter A2 can be gradually changed in conjunction with the change of each value of the position parameters (X, Y) for each predetermined processing cycle. Therefore, for example, compared with the case of suddenly changing from the normal value γ0 to the value γ1 etc. at the processing cycle when reaching the specific position, a gentle change in distance can be realized. As a result, while reducing the sense of discomfort that can be given to the user, the value of the distance parameter A2 can be changed.

[0177] FIG. 19 is a schematic flowchart showing an example of the orientation parameter calculation process (step S1610).

[0178] In step S1900, the orientation changing unit 1422 determines whether each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in step S1606 is the orientation parameter data It is determined whether it corresponds to an arbitrary orientation change position set in the data (see FIG. 15). The determination If the result is "YES", proceed to step S1902; otherwise, proceed to step S1 904.

[0179] In step S1902, the orientation change unit 1422 sets the value of the orientation parameter θ(k + 1) to the value of the orientation parameter θ corresponding to the orientation change position associated with each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y). For example, in the example shown in FIG. 15 if each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) corresponds to the orientation change position T1(XP1, YP1), the value of the orientation parameter θ(k + 1 ) = θ1.

[0180] In step S1904, the orientation change unit 1422 determines whether each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in step S1606 is within the interpolation processing range associated with an arbitrary orientation change position set in the orientation parameter data (see FIG. 15). The interpolation processing range may be set for each orientation change position. In this embodiment it is simply assumed that the interpolation processing range is within a circular region with a radius r centered on the orientation change position (see FIG. 18), similar to the interpolation processing range related to the distance parameter A2. However, in other embodiments the interpolation processing range may be defined by a region of other forms. Also, in other embodiments the interpolation processing range may not be set for some or all of the orientation change positions. If the determination result is "YES", proceed to step S1906; otherwise, proceed to step S 1912.

[0181] ​​​​​In step S1906, the orientation changing unit 1422 calculates the distance between each value (X(k + 1), Y(k + 1)) of the updated position parameter (X, Y) and the specified position related to the interpolation processing range Rs to which each value belongs. The method for calculating the distance may be the same as that in step S1706 described above.

[0182] In step S1908, the orientation changing unit 1422 calculates an interpolation value of the orientation parameter θ based on the distance obtained in step S1906. The method for calculating the interpolation value may be the same as that in step S1708 described above.

[0183] In step S1910, the orientation changing unit 1422 sets the interpolation value calculated in step S1908 to the value θ(k + 1) of the orientation parameter θ.

[0184] In step S1912, the orientation changing unit 1422 sets the normal value θ0 to the value θ(k + 1) of the orientation parameter θ. The normal value θ0 may be set such that the projection vector V' is perpendicular to the movement vector (u(k + 1) - u(k), v(k + 1) - v(k)) of a predetermined object.

[0185] In this way, according to the process shown in FIG. 19, the value of the orientation parameter θ can be gradually changed in conjunction with the change of each value of the position parameter (X, Y) for each predetermined processing cycle. Therefore, for example, compared with the case of suddenly changing from the normal value θ0 to the value θ1 etc. at the processing cycle when reaching the orientation change position, a gentle change in orientation that can reduce the sense of discomfort that can be given to the user can be realized.

[0186] FIG. 20 shows a schematic flowchart of an example of the angle of attack parameter calculation process (step S1612). ​​​​​​​​​​​​It is a chart. The process shown in FIG. 20 is substantially the same as the orientation parameter calculation process shown in FIG. 19 described above, except for the parameters, so the description is omitted. Since they are substantially the same except for the parameters, the description is omitted.

[0187] FIG. 21 is a schematic flowchart showing an example of deformation processing (step S1615) accompanying the movement of a predetermined object. FIG. 22 is an explanatory diagram of bending deformation processing, and is a perspective view in which a local coordinate system is associated with a field surface 70 on which the filled image shown in FIG. 2 is projected. It is.

[0188] In step S2102, the first deformation parameter calculation unit 1451 refers to the deformation parameter data 13A (FIG. 13) related to the specific position, and calculates the value β(k + 1) of the updated deformation parameter A1 (first deformation parameter calculation process). Hereinafter, the value β(k + 1) of the updated deformation parameter A1 obtained in the first deformation parameter calculation process will be referred to as the first value β'(k + 1) of the updated deformation parameter A1 for distinction. The specific example of the first deformation parameter calculation process will be described later with reference to FIG. 23.

[0189] In step S2104, the second deformation parameter calculation unit 1452 refers to the deformation parameter data 13B (FIG. 13) related to the specific object, and calculates the value β(k + 1) of the updated deformation parameter A1 (second deformation parameter calculation process). Hereinafter, the value β(k + 1) of the updated deformation parameter A1 obtained in the second deformation parameter calculation process will be referred to as the second value β''(k + 1) of the updated deformation parameter A1 for distinction. The specific example of the second deformation parameter calculation process will be described later with reference to FIG. 24.

[0190] ​​​​​​​​​​​In step S2106, the deformation parameter adjustment unit 1453 obtains the first value β’(k + 1) of the updated deformation parameter A1 obtained in step S2102 and the second value β”(k + 1) of the updated deformation parameter A1 obtained in step S2104, and based on these, sets the value β(k + 1) of the finally updated deformation parameter A1 (deformation parameter adjustment process). A specific example of this deformation parameter adjustment process will be described later with reference to FIG. 25.

[0191] In step S2108, the origin setting processing unit 1454 executes an origin setting process for setting the origin position (the position associated with the origin O of the local coordinate system in the field of object) (an example of a predetermined position). A specific example of the origin setting process will be outlined later with reference to FIG. 26.

[0192] In step S2110, the deformation function application unit 1455 associates a local coordinate system (see FIGS. 7 and 22) with the field coordinate system (the texture coordinate system of the field image) of the field surface 70 based on the origin O associated with the origin position set in step S2108 and the value θ(k + 1) of the orientation parameter θ. Specifically, an axis passing through the origin set in step S2108 and having the value θ(k + 1) of the orientation parameter θ with respect to the x - direction is defined as the Xc - axis. In the example shown in FIG. 22, a state where the local coordinate system is associated with (u(k + 1), v(k + 1)) on the field surface 70 as the origin position is shown.

[0193] In step S2112, the deformation function application unit 1455 uses the value β(k + 1) of the updated deformation parameter A1 set in step S2106 and the field surface 7 Based on the local coordinate system associated with the field coordinate system of 0, the field surface 70 is bent and deformed. In this case, for example, the deformation function application unit 1455 can bend and deform the field surface 70 based on the function F1 described above with reference to FIG. 7.

[0194] FIG. 23 is a schematic flowchart showing the first deformation parameter calculation process (step S2102) by the first deformation parameter calculation unit 1451.

[0195] In step S2300, the first deformation parameter calculation unit 1451 determines whether each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in step S1606 corresponds to any specific position set in the deformation parameter data 13A (see FIG. 13). If the determination result is "YES", the process proceeds to step S2302; otherwise, the process proceeds to step S2304. In step S2302, the first deformation parameter calculation unit 1451 sets the value of the deformation parameter A1 corresponding to the specific position associated with each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) to the first value β'(k + 1) of the updated deformation parameter A1. For example, in the deformation parameter data 13A shown in FIG. 13, when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) corresponds to a specific position A(X

[0196] In step S2304, the first deformation parameter calculation unit 1451 performs the process of step S1606

[0197] A Y A ), the value of the updated deformation parameter A1 is set to β(k + 1) = β1. corresponding. For example, in the deformation parameter data 13A shown in FIG. 13, when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) corresponds to a specific position A(X

[0197] In step S2304, the first deformation parameter calculation unit 1451 performs the process of step S1606 Each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) obtained in is associated with an interpolation process within the range corresponding to any specific position set in the deformation parameter data (see FIG. 13). It is determined whether it is within the range. The interpolation process range may be set for each specific position. In this embodiment, the interpolation process range is associated with the specific position related to the distance parameter A2. Similar to the interpolation process range, it is simply assumed to be within a circular region with a radius r centered on the specific position (see FIG. 18). However, in other embodiments, the interpolation process range may be defined by a region in other forms as described above. In step S2306, the first deformation parameter calculation unit 1451 calculates the distance d(k + 1) between each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) and the specific position related to the interpolation process range to which each value belongs. The method for calculating the distance may be the same as that in step S1706 described above. In step S2308, the first deformation parameter calculation unit 1451 calculates an interpolation value of the deformation parameter A1 based on the distance d(k + 1) obtained in step S2306. The method for calculating the interpolation value may be the same as that in step S1708 described above. However, in the case of a specific position where the degree of deformation changes during the revolution of the virtual camera 60, such as the specific position C of the deformation parameter data 13A in FIG. 13, it may be calculated as follows based on the value θ(k + 1) of the orientation parameter θ. Here, the specific position C will be described.

[0198] First, the value β(C0) of the deformation parameter A1 associated with the specific position C is θ - Δθ 1 ≦ θ(k + 1) ≦ θ when

[0199] In step S2306, the first deformation parameter calculation unit 1451 calculates the distance d(k + 1) between each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) and the specific position related to the interpolation process range to which each value belongs. The method for calculating the distance may be the same as that in step S1706 described above. In step S2308, the first deformation parameter calculation unit 1451 calculates an interpolation value of the deformation parameter A1 based on the distance d(k + 1) obtained in step S2306. The method for calculating the interpolation value may be the same as that in step S1708 described above. However, in the case of a specific position where the degree of deformation changes during the revolution of the virtual camera 60, such as the specific position C of the deformation parameter data 13A in FIG. 13, it may be calculated as follows based on the value θ(k + 1) of the orientation parameter θ. Here, the specific position C will be described.

[0200] First, the value β(C0) of the deformation parameter A1 associated with the specific position C is θ - Δθ when 1 ≦ θ(k + 1) ≦ θ First, the value β(C0) of the deformation parameter A1 associated with the specific position C is C1 θ - Δθ when 1 ≦ θ(k + 1) ≦ θC1 When it is +Δθ1, according to the following formula (1), θ C2 -Δθ1 ≤ θ(k + 1) ≤ θ C2 When it is +Δθ1, it may be calculated according to the following formula (2), and in other ranges, the value β(C0) may be set to the normal value β0. β(C0) = -(β3 - β0) / Δθ1 × |(θ(k + 1) - θ C1 )| + β3 Formula ( 1) β(C0) = -(β4 - β0) / Δθ1 × |(θ(k + 1) - θ C2 )| + β4 Formula ( 2) For example, in Formula (1), the value obtained by multiplying the absolute value of (θ(k + 1) - θ C1 ) by (β3 - β0) / Δθ1 and subtracting the result from β3 is β(C0). Here, Δθ1 is the value that determines the interpolation angle range, and β3 and β4 are the values of the deformation parameter A1 associated with a specific direction at a specific position C, and as described above, they are larger than the normal value β0. Note that here, although the same Δθ1 is used in Formula (1 ) and Formula (2), different Δθ1 may also be used. And when the distance between the specific position C and (X(k + 1), Y(k + 1)) is defined as the distance d (d ), then, the interpolation value β(d ) of the deformation parameter A1 related to the distance d (d C ) may be calculated by the following formula using the above-mentioned β( )). C ) C ) = (β(C0) - β0) / r × (r - d(d )) + β0 β(d C ) C )) + β0 Also, for example, when the interpolation processing ranges related to the specific positions A and B respectively have an overlapping area Rs’ , it is the same as the case of the distance parameter A2. Specifically, the updated position pa When each value (X(k + 1), Y(k + 1)) of the rameter (X, Y) is located within the overlapping region Rs’, if so, the distance between the specific position A and (X(k + 1), Y(k + 1)) is defined as distance d (d A ) and the distance between the specific position B and (X(k + 1), Y(k + 1)) is defined as distance d (d B ). Then, the interpolation value β(Rs’) may be calculated by the following formula based on the interpolation value β(d A ) of the deformation parameter A1 corresponding to the distance d (d A ) and the interpolation value β(d B ) of the deformation parameter A1 corresponding to the distance d (d B ). β(Rs’)=B1×β(d )+(1 - B1)×β(d A ) B ) Here, β(d A ), β(d B ) are as follows β(d A )=(β1 - β0) / r×(r - d(d A ))+β0 β(d B )=(β2 - β0) / r×(r - d(d B ))+β0 B1 is a coefficient that varies within the range from 0 to 1. As each value of the updated position parameter (X, Y) approaches the specific position A, it approaches 1, and becomes 1 at the boundary position on the specific position A side in the overlapping region Rs’. Also, as each value of the updated position parameter (X, Y) approaches the specific position B, the coefficient B1 approaches 0 and becomes 0 at the boundary position on the specific position B side in the overlapping region Rs’. For example, B1 may be as follows B1=(r - d(d )) / {(r - d(d ))+(r - d(d ))} In step S2310, the first deformation parameter calculation unit 1451 calculates the updated deformation parameter A )) / {(r - d(d A ))+(r - d(d B ))} In step S2310, the first deformation parameter calculation unit 1451 calculates the updated deformation parameter Set the interpolation value calculated in step S2308 as the first value β’(k + 1) of the parameter A1.

[0201] In step S2312, the first deformation parameter calculation unit 1451 sets the normal value β0 as the first value β’(k + 1) of the updated deformation parameter A1. Set the normal value β0 as the first value β’(k + 1) of the parameter A1.

[0202] FIG. 24 is a schematic flowchart showing the second deformation parameter calculation process (step S2104) by the second deformation parameter calculation unit 1452. It is a schematic flowchart showing the second deformation parameter calculation process (step S2104) by the second deformation parameter calculation unit 1452.

[0203] In step S2400, the second deformation parameter calculation unit 1452 determines whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612 in the region of the field object (hereinafter simply referred to as "the region within the viewing angle of the virtual camera 60 in the field object" or simply "the region within the viewing angle"). Note that the region within the viewing angle of the virtual camera 60 in the field object is uniquely determined based on each value of the camera parameters. In the region of the field object, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612. Based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system in the region of the field object (hereinafter simply referred to as "the region within the viewing angle of the virtual camera 60 in the field object" or simply "the region within the viewing angle"). Based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system in the region of the field object (hereinafter simply referred to as "the region within the viewing angle of the virtual camera 60 in the field object" or simply "the region within the viewing angle"). In the region of the field object, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612. In the region of the field object, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612. In the region of the field object, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612. In the region of the field object, determine whether a specific object is located in the region within the viewing angle of the virtual camera 60 positioned in the absolute coordinate system based on the updated values (X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1)) of the camera parameters obtained from step S1608 to step S1612.

[0204] Note that the horizontal distance (for example, the distance in the field coordinate system) of the region within the viewing angle of the virtual camera 60 in the normal state of the field object is determined according to the value of the distance parameter A2. Therefore, for example, if the horizontal distance of the region within the viewing angle of the virtual camera 60 in the field object is L1, the distance d in the direction perpendicular to the projection vector V’ between the projection vector V’ of the virtual camera 60 and the specific object (hereinafter simply referred to as "the horizontal direction") The horizontal distance (for example, the distance in the field coordinate system) of the region within the viewing angle of the virtual camera 60 in the normal state of the field object is determined according to the value of the distance parameter A2. Therefore, for example, if the horizontal distance of the region within the viewing angle of the virtual camera 60 in the field object is L1, the distance d in the direction perpendicular to the projection vector V’ between the projection vector V’ of the virtual camera 60 and the specific object (hereinafter simply referred to as "the horizontal direction") Therefore, for example, if the horizontal distance of the region within the viewing angle of the virtual camera 60 in the field object is L1, the distance d in the direction perpendicular to the projection vector V’ between the projection vector V’ of the virtual camera 60 and the specific object (hereinafter simply referred to as "the horizontal direction") Therefore, for example, if the horizontal distance of the region within the viewing angle of the virtual camera 60 in the field object is L1, the distance d in the direction perpendicular to the projection vector V’ between the projection vector V’ of the virtual camera 60 and the specific object (hereinafter simply referred to as "the horizontal direction") L Based on (k + 1), L1 / 2 ≤ d L It may be determined whether it is (k + 1). This In this case, L1 / 2 ≤ d L If it is (k + 1), it may be determined that the specific object is located in the angular field area of the virtual camera 60 in the field object in the field object.

[0205] In this embodiment, when each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is located within the interpolation processing range associated with the specific object in the field object, it is determined that the specific object is located in the angular field area of the virtual camera 60 in the field object object. In this case, the interpolation processing range associated with one specific object may be set as described above such that when each value of the position parameters (X, Y) of the virtual camera 60 is located within the interpolation processing range, the one specific object is located in the area that fits within the angular field of the virtual camera 60 as described above.

[0206] In this step S2400, if the determination result is "YES", proceed to step S2402 otherwise, proceed to step S2410.

[0207] In step S2402, the second deformation parameter calculation unit 1452 determines whether the specific object is located at the center in the angular field area of the virtual camera 60 in the field object object. For example, the second deformation parameter calculation unit 1452 calculates the horizontal distance d between the projection vector V' of the virtual camera 60 and the specific object If (k + 1) is 0 L In this case, among the angular field area of the virtual camera 60 in the field object, at the center in the field object. It may be determined that a specific object is located. Alternatively, the second deformation parameter calculation unit 1 452 is the horizontal distance d L (k + 1) is a distance significantly smaller than the predetermined distance (e.g., L1 / 4) and is less than or equal to the predetermined distance (L1 / 2). In this case, it may be determined that the specific object is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object. Note that the projection vector V' of the virtual camera 60 can be derived based on the updated values (X(k + 1), Y(k + 1), θ( (k + 1))) of the position parameter and the orientation parameter obtained in step S1608 and step S1610. If the determination result is "YES", the process proceeds to step S2404; otherwise, the process proceeds to step S2406. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2406, the second deformation parameter calculation unit 1452 calculates an interpolation value of the deformation parameter A1 based on the horizontal distance d (k + 1) between the projection vector V' of the virtual camera 60 and the specific object. For example, for the above-described horizontal distance d (k + 1). If the determination result is "YES", the process proceeds to step S2404; otherwise, the process proceeds to step S2406. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1.

[0208] In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. In step S2404, the second deformation parameter calculation unit 1452 sets the value of the deformation parameter A1 associated with the specific object located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object to the second value β”(k + 1) of the updated deformation parameter A1. For example, in the case of the deformation parameter data 13B shown in FIG. 13, when the specific object G1 is located in the central portion of the in-field-of-view region of the virtual camera 60 in the field object, the value β of the deformation parameter A1 associated with the specific object G1 is associated with the second value β”(k + 1) of the updated deformation parameter A1. G1 is associated.

[0209] In step S2406, the second deformation parameter calculation unit 1452 calculates an interpolation value of the deformation parameter A1 based on the horizontal distance d (k + 1) between the projection vector V' of the virtual camera 60 and the specific object. For example, for the above-described horizontal distance d L (k + 1) between the projection vector V' of the virtual camera 60 and the specific object. For example, for the above-described horizontal distance d (k + 1) between the projection vector V' of the virtual camera 60 and the specific object. For example, for the above-described horizontal distance dL (k + 1) is used to interpolate the value β(d L ) may be calculated by the following formula. β(d L ) = (β G* - β0) / L1 / 2 × (L1 / 2 - d(d L )) + β0 The value β G* is the value of the deformation parameter A1 associated with the specified object located within the angular field region of the virtual camera 60 in the field object. In the case of the specified object G1 , the value is β . L1 / 2 is half of the horizontal distance L1 of the angular field region of the virtual camera 60 in the field object. G1

[0210] In step S2408, the second deformation parameter calculation unit 1452 sets the interpolation value of the deformation parameter A1 obtained in step S2406 to the second value β”(k + 1) of the updated deformation parameter A1.

[0211]

[0212] In step S2410, the second deformation parameter calculation unit 1452 sets the normal value β0 to the second value β”(k + 1) of the updated deformation parameter A1.

[0213] Figure 25 is a schematic flowchart showing the deformation parameter adjustment process (step S 2106) by the deformation parameter adjustment unit 1453.

[0214] In step S2500, the deformation parameter adjustment unit 1453 determines whether both the first value β’(k + 1) obtained in step S2102 and the second value β”(k + 1) obtained in step S2104 are the normal value β0. If the determination result is “YES”, it proceeds to step S2502; otherwise, it proceeds to step S2506.

[0214] ​​​​​​ In step S2502, the deformation parameter adjustment unit 1453 sets the parameter state to "normal state". The normal state corresponds to the state where the value of the deformation parameter A1 is the normal value β0 .

[0215] In step S2504, the deformation parameter adjustment unit 1453 associates the normal value β0 with the value β(k + 1) of the updated deformation parameter A1. In this case, the adjustment by the deformation parameter adjustment unit 1 453 is not realized.

[0216] In step S2506, the deformation parameter adjustment unit 1453 determines whether the second value β”(k + 1) obtained in step S2104 is the normal value β0. If the determination result is "YES", it proceeds to step S2508, and otherwise, it proceeds to step S2512.

[0217] In step S2508, the deformation parameter adjustment unit 1453 sets the parameter state to "first state". The first state corresponds to the state where the value of the deformation parameter A1 is the first value β’(k + 1) .

[0218] In step S2510, the deformation parameter adjustment unit 1453 associates the first value β’(k + 1) obtained in step S2102 with the value β(k + 1) of the updated deformation parameter A1.

[0219] In step S2512, the deformation parameter adjustment unit 1453 determines whether the first value β’(k + 1) obtained in step S2102 is the normal value β0. If the determination result is "YES", it proceeds to step S2514, and otherwise (that is, when neither is the normal value ), it proceeds to step S2518.

[0220] In step S2514, the deformation parameter adjustment unit 1453 sets the parameter state to the "second state". The second state corresponds to the state where the value of the deformation parameter A1 is the second value β”(k + 1). Hereinafter, in this second state, the specific object related to the second value β”(k + 1) is also referred to as the "specific object of the fixation target".

[0221] In step S2516, the deformation parameter adjustment unit 1453 associates the value β(k + 1) of the updated deformation parameter A1 with the second value β”(k + 1) obtained in step S2104.

[0222] In step S2518, the deformation parameter adjustment unit 1453 determines whether d (k + 1), the horizontal distance between the projection vector V’ of the virtual camera 60 and the specific object, is greater than d L (k + 1) obtained in step S23 06 based on the interpolation distance d(k + 1). Note that when the first value β’(k + 1) obtained in step S2102 is the value of the deformation parameter A1 associated with the specific position (see step S2302), the interpolation distance d(k + 1) is set to 0. Similarly, when the second value β”( L (k + 1) obtained in step S2104 is the value of the deformation parameter A1 associated with the specific object (see step S2 404), the horizontal distance d (k + 1) is set to 0. If the determination result is "YE S", the process proceeds to step S2508; otherwise, the process proceeds to step S2514. L (k + 1) In this way, according to the process shown in FIG. 25, the first value β’(k obtained in step S2102

[0223] ​​​​​​If both the first value β′(k + 1) obtained in step S2102 and the second value β″(k + 1) obtained in step S2104 are not the normal value β0 (for example, when the specific position and the position of the specific object simultaneously belong to the in-angle region), in the case (for example, when the specific position and the position of the specific object simultaneously belong to the in-angle region), the smaller of the above-described distance d(k + 1) and the lateral distance d L (k + 1) is prioritized. In this aspect, one of the first value β′(k + 1) and the second value β″(k + 1) is selected. Therefore, when the specific object is located at the center of the in-angle region of the virtual camera 60 in the field object, the value of the deformation parameter A1 associated with the specific object is preferentially used. However, in the modification, when both the first value β′(k + 1) obtained in step S2102 and the second value β″(k + 1) obtained in step S2

[0224] 104 are not the normal value β0 (for example, when the specific position and the position of the specific object simultaneously belong to the in-angle region), an average value or a weighted composite value may be used. In the case of weighting, for example, using weighting coefficients w1 and w2, the updated composite value β (k + 1) may be calculated as follows. β com (k + 1) = {w1 × β′(k + 1) + w2 × β″(k + 1)} / (w1 + w2 β com (k + 1) = {w1 × β′(k + 1) + w2 × β″(k + 1)} / (w1 + w2 ) In this case, for example, the weighting coefficients w1 and w2 may be as follows. w1 = 1 / d(k + 1), provided that when d(k + 1) = 0, β com (k + 1) = β ′(k + 1) w2 = 1 / d L (k + 1), provided that when d L (k + 1) = 0, β com (k + 1) = β″(k + 1) FIG. 26 shows an example of the origin setting process (step S2108) by the origin setting processing unit 1454 and is a schematic flowchart. FIG. 26A is an explanatory diagram of the in-point Pi. In step S2600, the origin setting processing unit 1454 determines whether a specific object is located within the angular field region of the virtual camera 60 in the field object . Note that the determination method may be the same as that in step S2400 of FIG. 24 described above. If the determination result is " YES", the process proceeds to step S2602; otherwise, the process proceeds to step S2610 . Hereinafter, the specific object refers to the specific object determined to be located within the angular field region of the virtual camera 60 in the field object in step S2600 .

[0225] In step S2602, the origin setting processing unit 1454 determines whether the specific object is located at the center of the angular field region of the virtual camera 60 in the field object . Note that the determination method may be the same as that in step S2402 of FIG. 24 described above . If the determination result is "YES", the process proceeds to step S2604; otherwise, the process proceeds to step S2606 .

[0226] In step S2604, the origin setting processing unit 1454 sets the position of the specific object as the origin position. That is, the origin setting processing unit 1454 associates the origin O of the local coordinate system with the position of the specific object on the field surface 70 (the field surface 70 on which the field image is projected) . Therefore, in this case, the origin O of the function F1 used for bending deformation is associated with the position of the specific object. However, the origin of the function F1 used for bending deformation ​​​​​O does not have to exactly match the position of the specific object and may be in its vicinity.

[0227] In step S2606, the origin setting processing unit 1454 calculates the horizontal distance d between the projection vector L (k + 1) of the virtual camera 60 and the specific object, and based on this, the updated position parameters (X, Y) of each value (X(k + 1), Y(k + 1)), and the position of the internal division point Pi (X Pi (k + 1), Y Pi (k + 1)) between the specific object's position. The internal division point Pi is, as shown in FIG. 26A, the position obtained by internally dividing the values (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) and the position of the specific object at a ratio of m:(1 - m). At this time, m approaches 0 as the horizontal distance d (k + 1) increases, and m = 0 when the horizontal distance d L (k + 1) = L1 / 2. When m = 0, the internal division point Pi coincides with the values (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y). L1 is as described above, which is the maximum value of the horizontal distance d L (k + 1) that can be taken when the specific object is located within the angular field region of the virtual camera 60 in the field object. Also, m approaches 1 as the horizontal distance d (k + 1) decreases, and m = 1 when the horizontal distance d (k + 1) = 0. When m = 1, the internal division point Pi coincides with the position of the specific object. L (k + 1). L (k + 1) approaches 1 as it decreases, and m = 1 when the horizontal distance d (k + 1) = 0. When m = 1, the internal division point Pi coincides with the position of the specific object. L (k + 1) = 0. When m = 1, the internal division point Pi coincides with the position of the specific object. At this time, the internal division point Pi coincides with the position of the specific object.

[0228] In step S2608, the origin setting processing unit 1454 sets the origin position to the value obtained in step S260 Set the position of the internal division point Pi obtained in 6. That is, the origin setting processing unit 1454 sets the field On the plane 70 (field plane 70 on which the field image is projected), in step S260 Set the position (X Pi (k + 1), Y Pi (k + 1)) of the internal division point Pi obtained in 6 to the origin O of the local coordinate system . Therefore, in this case, the origin O of the function F1 used for bending deformation corresponds to the position (X (k + 1), Y Pi (k + 1)) of the internal division point Pi. However, the origin O of the function F1 used for bending Pi deformation does not necessarily exactly match the position (X (k + 1), Y Pi (k + 1), Y Pi (k + 1)) of the internal division point Pi, and it may be in its vicinity.

[0229] In step S2610, the origin setting processing unit 1454 sets the position (u(k + 1), v(k + 1)) of the predetermined object after movement at the origin position. That is, the origin setting processing unit 1454 associates the origin O of the local coordinate system with the position (u(k + 1), v(k + 1)) of the predetermined object after movement on the field plane 70 (field plane 70 on which the field image is projected). Therefore, in this case, the origin O of the function F1 used for bending deformation corresponds to the position (u(k + 1), v(k + 1)) of the predetermined object after movement. However, the origin O of the function F1 used for bending deformation does not necessarily exactly match the position (u(k + 1), v(k + 1)) of the predetermined object after movement, and it may be in its vicinity. 1), v(k + 1)) of the predetermined object after movement, and it may be in its vicinity. 1), v(k + 1)) of the predetermined object after movement, and it may be in its vicinity.

[0230] According to the process shown in FIG. 26 in this way, when it is determined that a specific object is located in the angular field region of the virtual camera 6 0 in the field object, if the specific object The origin position is set based on the position of the kurt. As a result, the entire specific object becomes visible and it becomes easier to make the specific object effectively emphasized. Therefore, the specific object is preferably an object that the user wants to focus on.

[0231] Also, according to the process shown in FIG. 26, when it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position is set based on the position (u(k + 1), v(k + 1)) of the predetermined object. As a result, the entire predetermined object becomes visible and the predetermined object can be effectively emphasized. When it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position is set based on the position (u(k + 1), v(k + 1)) of the predetermined object. As a result, the entire predetermined object becomes visible and the predetermined object can be effectively emphasized. When it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position is set based on the position (u(k + 1), v(k + 1)) of the predetermined object. As a result, the entire predetermined object becomes visible and the predetermined object can be effectively emphasized. When it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position is set based on the position (u(k + 1), v(k + 1)) of the predetermined object. As a result, the entire predetermined object becomes visible and the predetermined object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized. Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position changes from the position of the predetermined object toward the position of the specific object, so that a change (effect) in the appearance of the field image caused by this change can be produced. As a result, the specific object can be effectively emphasized.

[0232] Also, according to the process shown in FIG. 26, during the processing cycle in which the state changes from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, the origin position does not change suddenly from the position of the predetermined object to the position of the specific object. That is, in the field object, the virtual camera Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, during the processing cycle in which the state changes, the origin position does not change suddenly from the position of the predetermined object to the position of the specific object. That is, in the field object, the virtual camera Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, during the processing cycle in which the state changes, the origin position does not change suddenly from the position of the predetermined object to the position of the specific object. That is, in the field object, the virtual camera Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, during the processing cycle in which the state changes, the origin position does not change suddenly from the position of the predetermined object to the position of the specific object. That is, in the field object, the virtual camera Also, from the state where it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object to the state where it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object, during the processing cycle in which the state changes, the origin position does not change suddenly from the position of the predetermined object to the position of the specific object. That is, in the field object, the virtual camera When it is determined that a specific object is located within the viewing angle range of the camera 60, then, as the interpolation distance d(k + 1) decreases, the origin position gradually changes from the position of the predetermined object to the position of the specific object (see step S2608). As a result, compared with the case where the change in the origin position as described above is realized in a relatively small number of processing cycles (for example, one processing cycle), the sense of discomfort that can be given to the user due to the change can be reduced. As the distance d(k + 1) for interpolation decreases, the origin position gradually changes from the position of the predetermined object to the position of the specific object (see step S2608). This enables the reduction of the discomfort that may be felt by the user due to this change, as compared with the case where such a change in the origin position is achieved in a relatively small number of processing cycles (e.g., one processing cycle). is realized, the discomfort that can be given to the user due to the change can be reduced. When it is determined that a specific object is located within the viewing angle range of the camera 60, then, as the interpolation distance d(k + 1) decreases, the origin position gradually changes from the position of the predetermined object to the position of the specific object (see step S2608). As a result, compared with the case where the change in the origin position as described above is realized in a relatively small number of processing cycles (for example, one processing cycle), the sense of discomfort that can be given to the user due to the change can be reduced.

[0233] FIG. 27 is a schematic flowchart showing an example of the second distance parameter calculation process (step S1623). FIG. 27 is a schematic flowchart showing an example of the second distance parameter calculation process (step S1623).

[0234] In step S2700, the second distance change unit 14212 determines whether the parameter state is in the second state. As described above, the second state corresponds to the state where the value β(k + 1) of the updated deformation parameter A1 is the second value β”(k + 1). If the determination result is “YES”, the process proceeds to step S2702; otherwise, the process ends as it is. When the process ends as it is, the value of the distance parameter A2 is determined by the value calculated by the first distance change unit 14211 as described above (step S1608). In step S2700, the second distance change unit 14212 determines whether the parameter state is in the second state. As described above, the second state corresponds to the state where the value β(k + 1) of the updated deformation parameter A1 is the second value β”(k + 1). If the determination result is “YES”, the process proceeds to step S2702; otherwise, the process ends as it is. When the process ends as it is, the value of the distance parameter A2 is determined by the value calculated by the first distance change unit 14211 as described above (step S1608). If the determination result is “YES”, the process proceeds to step S2702; otherwise, the process ends as it is. When the process ends as it is, the value of the distance parameter A2 is determined by the value calculated by the first distance change unit 14211 as described above (step S1608). When the process ends as it is, the value of the distance parameter A2 is determined by the value calculated by the first distance change unit 14211 as described above (step S1608). In step S2700, the second distance change unit 14212 determines whether the parameter state is in the second state. As described above, the second state corresponds to the state where the value β(k + 1) of the updated deformation parameter A1 is the second value β”(k + 1). If the determination result is “YES”, the process proceeds to step S2702; otherwise, the process ends as it is. When the process ends as it is, the value of the distance parameter A2 is determined by the value calculated by the first distance change unit 14211 as described above (step S1608).

[0235] In step S2702, the second distance change unit 14212 determines whether the second value β”(k + 1) is the interpolation value calculated using the value of the deformation parameter A1 associated with the specific object to be gazed at (the interpolation value associated in step S2408). If the determination result is “YES”, the process proceeds to step S2704; otherwise (that is, when the second value β”(k + 1) is the value of the deformation parameter A1 associated with the specific object to be gazed at), the process proceeds to step S2703. In step S2702, the second distance change unit 14212 determines whether the second value β”(k + 1) is the interpolation value calculated using the value of the deformation parameter A1 associated with the specific object to be gazed at (the interpolation value associated in step S2408). If the determination result is “YES”, the process proceeds to step S2704; otherwise (that is, when the second value β”(k + 1) is the value of the deformation parameter A1 associated with the specific object to be gazed at), the process proceeds to step S2703. If the determination result is “YES”, the process proceeds to step S2704; otherwise (that is, when the second value β”(k + 1) is the value of the deformation parameter A1 associated with the specific object to be gazed at), the process proceeds to step S2703. In step S2702, the second distance change unit 14212 determines whether the second value β”(k + 1) is the interpolation value calculated using the value of the deformation parameter A1 associated with the specific object to be gazed at (the interpolation value associated in step S2408). If the determination result is “YES”, the process proceeds to step S2704; otherwise (that is, when the second value β”(k + 1) is the value of the deformation parameter A1 associated with the specific object to be gazed at), the process proceeds to step S2703. If the determination result is “YES”, the process proceeds to step S2704; otherwise (that is, when the second value β”(k + 1) is the value of the deformation parameter A1 associated with the specific object to be gazed at), the process proceeds to step S2703.

[0236] In step S2703, the second distance change unit 14212 updates the distance parameter A2 The distance parameter A2 associated with the specific object to be gazed upon is The value of γ G* In this case, the updated value of the distance parameter A2, γ In (k+1), the value calculated by the first distance change unit 14211 described above (step S1 608), the distance parameter A2 associated with the specific object to be gazed upon is Value (normal value) γ G* In this case, the update reflection unit 1424 Step S1606, steps S1610 to S1612, and step S16 The updated values of the various parameters obtained in 23 (X(k+1), Y(k+1), γ(k+1) , θ(k+1), ψ(k+1)) to position the virtual camera 60 in the global coordinate system. (see step S1624).

[0237] In step S2704, the second distance change unit 14212 calculates the second value β″(k+1) and A ratio to the value of the transformation parameter A1 associated with the specific object to be viewed is calculated. That is, the value of the deformation parameter A1 associated with the specific object to be gazed upon is set as β G * Then, the ratio = β”(k+1) / β G* The deformation parameters in Fig. 13 are calculated. In the data 13B, when the specific object to be gazed upon is the specific object G1, the ratio = β”(k+1) / β G1 is calculated.

[0238] Here, ratio = β”(k+1) / β G*represents the proximity of the position of the specific object to be fixated to the center of the inner region within the viewing angle. When β”(k + 1) / β = 1, it corresponds to the state where the specific object to be fixated is located at the center of the inner region within the viewing angle. As β”(k + 1) / β G* becomes smaller, the specific object to be fixated approaches the edge (lateral edge of the inner region within the viewing angle). G * In step S2706, the second distance changing unit 14212 calculates an interpolation value γ’ based on the ratio

[0239] obtained in step S2704, which is β”(k + 1) / β = β”(k + 1) / β G* . Specifically, if the value (normalized value) of the distance parameter A2 associated with the specific object to be fixated is γ G* , then the interpolation value γ’ can be as follows. G* and the interpolation value γ’ G* is as follows. γ’ G* = β”(k + 1) / β G* × γ G* In this case, the interpolation value γ’ G* approaches the value γ G* associated with the specific object to be fixated as β”(k + 1) / β approaches 1 (i.e., as the specific object to be fixated approaches the center of the inner region within the viewing angle). Note that in the distance parameter data 14B in FIG. 14, when the specific object to be fixated is the specific object G1, the value γ G* = γ . G* = γ G1 .

[0240] In step S2708, the second distance changing unit 14212 associates the interpolation value γ’ obtained in step S2706 with the value γ(k + 1) of the updated distance parameter A2 G* . In this case The value of the distance parameter A2 is replaced by the value calculated by the above-described first distance changing unit 14211 ( step S1608), and the value calculated by the second distance changing unit 14212 will be associated . In this case, the update reflection unit 1424 updates the various parameters obtained in step S1606, step S1610 to step S1612, and step S1623 (the updated values of X(k + 1), Y(k + 1), γ(k + 1), θ(k + 1), ψ(k + 1) ), and positions the virtual camera 60 in the global coordinate system based on these values (see step S1624). ) .

[0241] Note that in the process shown in FIG. 27, the interpolation value γ' G* is calculated from the normal value γ Gr depending on the ratio = β”(k + 1) / β , but it is not limited to this. For example, the interpolation value γ' G* may be calculated from the normal value γ depending on the ratio of the above-described lateral distance L d G* (k + 1) to L1 / 2. Specifically, it is as follows. G* That is, γ' G* = d L (k + 1) / L1 / 2 × γ G* Also, in the process shown in FIG. 27, when it is determined in step S2700 that the parameter state is in the second state, the process proceeds to step S2702, but it is not limited to this. For example, in step S2700, it is determined whether a specific object of the attention target is located in the in-angle region, and when it is determined that a specific object of the attention target is located in the in-angle region, the process may proceed to step S2702.

[0242] ​​In the process shown in FIG. 27, for example, when a specific position and the position of a specific object simultaneously belong to the area within the angle of view, when the parameter state transitions from the first state to the second state, the value of the distance parameter A2 can change relatively greatly. Such a relatively large change may be corrected as appropriate (it may be filtered so that the change becomes smaller). As a result, it is possible to reduce the discomfort that may be given to the user due to such a relatively large change (and the accompanying sudden change in the field image). For example, when the parameter state transitions from the first state to the second state, if the difference between the value γ(k + 1) of the updated distance parameter A2 and the value γ(k) of the distance parameter A2 before the update exceeds a predetermined threshold, the value γ(k + 1) of the updated distance parameter A2 may be further corrected in a direction approaching the value γ(k) of the distance parameter A2 before the update. Also, if the value γ(k + 1) of the updated distance parameter A2 is greater than the value γ(k) of the distance parameter A2 before the update, the value γ(k) of the distance parameter A2 before the update may be maintained so that the value γ(k + 1) of the updated distance parameter A2 does not become larger than the value γ(k) of the distance parameter A2 before the update. In this case, it is possible to reduce the discomfort that may be given to the user due to an unstable mode in which the value of the distance parameter becomes small, then large, and then small again (and the accompanying unstable change in the field image). When a specific position and the position of a specific object simultaneously belong to the area within the angle of view, when the parameter state transitions from the first state to the second state, the value of the distance parameter A2 can change relatively greatly. Such a relatively large change may be corrected as appropriate (it may be filtered so that the change becomes smaller). As a result, it is possible to reduce the discomfort that may be given to the user due to such a relatively large change (and the accompanying sudden change in the field image). For example, when the parameter state transitions from the first state to the second state, if the difference between the value γ(k + 1) of the updated distance parameter A2 and the value γ(k) of the distance parameter A2 before the update exceeds a predetermined threshold, the value γ(k + 1) of the updated distance parameter A2 may be further corrected in a direction approaching the value γ(k) of the distance parameter A2 before the update. Also, if the value γ(k + 1) of the updated distance parameter A2 is greater than the value γ(k) of the distance parameter A2 before the update, the value γ(k) of the distance parameter A2 before the update may be maintained so that the value γ(k + 1) of the updated distance parameter A2 does not become larger than the value γ(k) of the distance parameter A2 before the update. In this case, it is possible to reduce the discomfort that may be given to the user due to an unstable mode in which the value of the distance parameter becomes small, then large, and then small again (and the accompanying unstable change in the field image). For example, when the parameter state transitions from the first state to the second state, if the difference between the value γ(k + 1) of the updated distance parameter A2 and the value γ(k) of the distance parameter A2 before the update exceeds a predetermined threshold, the value γ(k + 1) of the updated distance parameter A2 may be further corrected in a direction approaching the value γ(k) of the distance parameter A2 before the update. Also, if the value γ(k + 1) of the updated distance parameter A2 is greater than the value γ(k) of the distance parameter A2 before the update, the value γ(k) of the distance parameter A2 before the update may be maintained so that the value γ(k + 1) of the updated distance parameter A2 does not become larger than the value γ(k) of the distance parameter A2 before the update. In this case, it is possible to reduce the discomfort that may be given to the user due to an unstable mode in which the value of the distance parameter becomes small, then large, and then small again (and the accompanying unstable change in the field image). For example, when the parameter state transitions from the first state to the second state, if the difference between the value γ(k + 1) of the updated distance parameter A2 and the value γ(k) of the distance parameter A2 before the update exceeds a predetermined threshold, the value γ(k + 1) of the updated distance parameter A2 may be further corrected in a direction approaching the value γ(k) of the distance parameter A2 before the update.

[0243] Next, with reference to FIGS. 28 to 29C, an example of an application scenario of the operation example described with reference to FIGS. 16 to 27 will be described. An example of an application scenario of the operation example described with reference to FIGS. 16 to 27 will be described.

[0244] FIGS. 28 to 29C are an explanation of an application scenario of the operation example described with reference to FIGS. 16 to 28. It is a figure. Figure 28 is a plan view of the field object 77, and Figure 29A shows an example of the field image G24A related to position E 1, and Figure 29B shows an example of the field image G24B related to position E2. Figure 29C shows an example of the field image G24C related to position E3 . In Figure 28, the field object 77 is shown in a representation projected onto the field plane 70 where the field image is in a normal state. In Figure 28, positions E1 to E3 are shown as examples , and position E3 corresponds to the position where the horizontal passage 14 and the vertical passage 15 intersect. On both sides of the vertical passage 15, a plurality of street tree objects 16, which are the second objects, are arranged. The plurality of street tree objects 16 are erected on the field object 77 and extend in the z direction . Also, in the vertical passage 15, a floating object 19 such as a balloon is arranged . Here, it is assumed that the floating object 19 is the specific object G2. In Figure 28 , the floating object 19 is arranged on the side farther from position E3 than the street tree object 16 in the v direction . Position E2 corresponds to a position in front of the position from position E1 to position E3, and the horizontal distance d between the projection vector V’ of the virtual camera 60 and the specific object is less than or equal to L1 / 2 as described above but significantly greater than 0. Note that L1 is the horizontal distance of the region within the viewing angle of the virtual camera 60 in the field object 77 as described above L . Note that in Figure 28, as an example, the plurality of street tree objects 16 are arranged linearly along the v direction , but they may be arranged in a staggered pattern with a slight offset in the u direction, or may be arranged on only one side of the vertical passage 15, or may be arranged in two or more rows . Note that in Figure 28, as an example, the plurality of street tree objects 16 are arranged linearly along the v direction , but they may be arranged in a staggered pattern with a slight offset in the u direction, or may be arranged on only one side of the vertical passage 15, or may be arranged in two or more rows .

[0245] Here, the drawing function when the first object 3 moves from the position E1 to the position E 3 on the field object 77 will be described. Note that this type of movement may be realized by the operation of the user or may be realized as the output of a demonstration image . Note that the positions E1 and E2 are not specific positions, and there are no specific positions between the position E1 and the position E3. The positions E1 and E2 are not located within the interpolation processing range related to other specific positions or specific objects. Also, for the floating object 19 (specific object G2 ), as shown in FIGS. 13 and 14, the value β of the deformation parameter A1 , the value γ of the distance parameter A2 are respectively associated. G2 , distance parameter A2 value γ G2 are respectively associated.

[0246] In the state where the first object 3 is located at the position E1, the values of the position parameters (X, Y ) of the virtual camera 60 correspond to the position of the first object 3, and the value of the orientation parameter θ of the virtual camera 60 is the normal value θ0, that is, the projection vector V' (see FIG. 11) is perpendicular to the moving direction of the first object 3 (in this case, the u direction). At this time, the first object 3 is located in the angular field region of the virtual camera 60 in the field object 77, and the field image G24A shown in FIG. 29A may be drawn. Note that in this case , the horizon HL has a height corresponding to the normal value β0 of the deformation parameter A1, and the first object 3 etc. have a display size corresponding to the normal value β0 of the distance parameter A2. When the first object 3 moves by the movement amount Δu along the horizontal passage 14 (u direction) from the position E1 to the position E3 at each processing cycle, the position parameters (X, Y ) of the virtual camera 60

[0247] of the virtual camera 60 ) Each value is moved by a movement amount Δu for each processing cycle along the u direction. During this period, The value of the orientation parameter θ of the virtual camera 60 is fixed.

[0248] In the state where the first object 3 has reached the position E2, the position parameters (X, Y) of the virtual camera 60 correspond to the position of the first object 3 that has reached the position E2, and the orientation parameter θ has the same value as in the state where the first object 3 is located at the position E1. At this time, in the end portion (right end portion ) of the region within the viewing angle of the virtual camera 60 in the field object 77, the floating object 19 is located, and the field image G24B shown in FIG. 29B may be drawn. In this case, the horizon HL has a height corresponding to the second value β” of the deformation parameter A1 (the updated deformation parameter A1 obtained in the second deformation parameter calculation process (step S2104)), and the first object 3 and the like have a distance parameter A2 value γ’ calculated by the second distance changing unit 14212 G* (interpolation value γ’ G* ) and has a display size corresponding thereto. Note that since the interpolation value γ’ G* is smaller than the normal value γ0, as shown in FIG. 29B , the display size of the first object 3 is larger than the field image G24A shown in FIG. 29A.

[0249] In the state where the first object 3 has reached the position E3, the position parameters (X, Y) of the virtual camera 60 correspond to the position of the first object 3 that has reached the position E3, and the orientation parameter θ has the same value as in the state where the first object 3 is located at the position E1. At this time, in the central portion of the region within the viewing angle of the virtual camera 60 in the field object 77, there is a floating ​​The floating object 19 is located, and the field image G24C shown in FIG. 29C may be drawn. In this case, the horizon HL has a height corresponding to the value β of the deformation parameter A1 G2 (the value of the deformation parameter A1 associated with the floating object 19), and has a display size adjusted according to the value γ of the distance parameter A2 (the value of the distance parameter A2 associated with the floating object 19). G2

[0250] Here, as described above, the value β of the deformation parameter A1 is larger than the normal value β0. G2 Therefore, in the field image G24C, the degree of bending deformation of the field object 77 is greater than that in the field image G24A. For this reason, as schematically shown in FIGS. 29A and 29C, the position of the horizon HL within the image changes significantly. Also, the value γ of the distance parameter A2 is larger than the normal value γ0. Therefore, in the field image G24C, the display size of the floating object 19 becomes larger. G2

[0251] Here, FIG. 29D shows an example of the field image G24D related to the position E3 in another operation example. In the other operation example shown in FIG. 29D, different from the above-described operation example, the value of the distance parameter A2 associated with the position E3 is the same normal value γ0 as the value of the distance parameter A2 associated with the position E1. In this case, although the height H1 of the horizon HL changes between the field image G24A and the field image G24D, the display sizes of the first object 3 and the like remain the same. Therefore, the floating object 19 located behind the street tree object 16 has a relatively small display size and is not conspicuous.

[0252] On the other hand, according to the operation example described with reference to FIGS. 16 to 28, as described above , in the field image G24C, since the display size of the floating object 19 becomes relatively large , the floating object 19 can be effectively made prominent. Thereby , the user's interest in the floating object 19 can be attracted.

[0253] Also, another operation example of drawing a field image G24D as shown in FIG. 29D, compared with an operation example (not shown) according to a comparative example in which the value of the deformation parameter A1 is always constant , although various expressions in the virtual space viewed from the virtual camera 60 can be realized, when the amount of change in the degree of deformation (the amount of change in the height H1 of the horizon HL) becomes relatively large, there is a possibility of giving the user a sense of discomfort

[0254] . On the other hand, according to the operation example described with reference to FIGS. 16 to 28, between the field image G24A and the field image G24B, while the height H1 of the horizon HL changes, the display size of the first object 3 or the like also changes. Thereby, the sense of discomfort that can be given to the user due to the change in the degree of deformation (the change in the height H1 of the horizon HL) can be reduced. That is, by making the change in the display size of the first object 3 or the like easy to catch the user's eye and impressive, the sense of discomfort that may occur due to the change in the height H1 of the horizon HL is canceled out. In this way, while making the value of the deformation parameter A1 to be associated different between the position E1 and the position E3 and also making the value of the distance parameter A2 to be associated different, while realizing various expressions in the virtual space viewed from the virtual camera 60, the change in the degree of deformation (the change in the height H1 of the horizon HL) ​​​​​It is possible to reduce the discomfort that may occur due to this. In relation to such an effect, by establishing a predetermined relationship between the change in the value of the distance parameter A 2 and the change in the value of the deformation parameter A1, it is also possible to further eliminate discomfort. For example, if the change in the value of the distance parameter A2 is steep , even if the change in the value of the deformation parameter A1 is steep, the discomfort can be reduced, for example .

[0255] Also, by varying the value of the deformation parameter A1 to be associated between the position E1 and the position E3 and also varying the value of the distance parameter A2 to be associated, the transition mode of the field image becomes novel and the interest of the game can be enhanced. In addition, the presence of the vertical passage 15 can be emphasized, and together with the floating object 19 which is a specific object, the second object (for example, the street tree object 16) arranged in the vertical passage 15 and its surroundings can be made prominent. This effect is particularly remarkable when the field image is output to a relatively small screen such as the screen of a smartphone for the terminal device 20 . Also, restrictions such as not arranging other second objects for the specific object to be made prominent are relaxed , so the degree of freedom in arranging the second object on the field object increases. Also , for the same reason, the degree of freedom of the movable area of the first object on the field object may also increase.

[0256] Also, for example, as shown in FIG. 28, when a second object such as the street tree object 1 6 that overlaps along the line-of-sight direction V is arranged, by increasing the degree of bending of the bending deformation of the field object 77 , the sense of depth can be enhanced and an impressive expression can be realized. To this ​​​​​Therefore, it may also be possible to give the user an incentive to move the first object 3, for example, along the vertical passage 15. Such an incentive may be given.

[0257] Here, FIG. 29E shows an example of a field image G24E related to a position E3 according to still another operation example. In still another operation example, different from the operation example described above (the operation example described with reference to FIGS. 16 to 28), the origin position (the position where the origin O of the local coordinate system in the field object 77 is associated) is set to the position of the first object 3. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous. In contrast, according to the operation example described with reference to FIGS. 16 to 28, instead of the position of the first object 3, the origin position is set to the position of the floating object 19 which is a specific object. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. Also, when the range of the central part of the area within the angle of view of the virtual camera 60 in the field object 77 is made relatively wide, the state where the origin position is set to the position of the floating object 19 is likely to continue relatively long, so that the floating object 19 to be focused on can be effectively made conspicuous. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. On the other hand, for the floating object 19, a part (lower part) is hidden behind the horizon HL. That is, the floating object 19 is not entirely visible and is relatively inconspicuous.

[0258] In contrast, according to the operation example described with reference to FIGS. 16 to 28, instead of the position of the first object 3, the origin position is set to the position of the floating object 19 which is a specific object. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible. In this case, the first object 3 is located at the highest position of the field object 77, and the whole is visible. Thereby, the floating object 19 which is a specific object can be effectively made conspicuous, and the whole of the floating object 19 (for example, in a floating state) can be made visible.

[0259] Also, for example, when a specific object is located at the center of the area within the viewing angle, virtual camera 6 at a viewing direction V of 0, between the specific object and the first object and / or the second object even if an overlap (overlay) may occur, as described above, since the origin position is set to the position of the floating object 19, each object that may overlap is likely to be separated from each other vertically and become. That is, the overlapping first object and / or the second object slide downward within the viewing angle relative to the specific object, so that the number of objects overlapping with the specific object can be reduced. As a result, the floating object 19 that is desired to be noticed can be effectively made prominent. And, when the specific object is emphasized, if the specific object is an object related to the user's operation (for example, a movement target), the input to the specific object becomes easier, improving the operability. Also, since the influence of the presence of the second object before and after the specific object can be reduced to some extent, the degree of freedom in arranging the second object increases, and various field images can be realized.

[0260] And, by emphasizing the specific object, when the specific object is an object related to the user's operation (for example, a movement target), the input to the specific object becomes easier, improving the operability. Also, since the influence of the presence of the second object before and after the specific object can be reduced to some extent, the degree of freedom in arranging the second object increases, and various field images can be realized. Also, the influence of the presence of the second object before and after the specific object can be reduced to some extent, so the degree of freedom in arranging the second object increases, and various field images can be realized.

[0261] According to the operation example described with reference to FIGS. 16 to 28 in this way, when it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object 77, and when it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object 77, by changing the value of the deformation parameter A1 and the setting mode of the origin position, the deformation mode of the field object 77 can be made different. is determined, and when it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object 77, by changing the value of the deformation parameter A1 and the setting mode of the origin position, the deformation mode of the field object 77 can be made different. Also, when it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object 77, and when it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object 77, by changing the value of the deformation parameter A1 and the setting mode of the origin position, the deformation mode of the field object 77 can be made different. Also, when it is determined that the specific object is not located in the area within the viewing angle of the virtual camera 60 in the field object 77, and when it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object 77, by changing the value of the deformation parameter A1 and the setting mode of the origin position, the deformation mode of the field object 77 can be made different. is determined, and when it is determined that the specific object is located in the area within the viewing angle of the virtual camera 60 in the field object 77, by changing the value of the deformation parameter A1 and the setting mode of the origin position, the deformation mode of the field object 77 can be made different. ​This makes it possible to diversify the field image while effectively emphasizing a specific object, such as making the specific object stand out. Thus, an expression can be realized that can effectively emphasize a specific object, such as making the specific object stand out while diversifying the field image.

[0262] Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range), and when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range), the value of the deformation parameter A1 is changed. This makes it possible to produce a display effect such as changing the appearance of the floating object 19 by changing the degree of deformation of the field object 77 while the floating object 19 is located within the angle of view of the virtual camera 60 in the field object 77. Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range) (for the center part, refer to the range 771 in FIG. 11A), the value of the deformation parameter A1 is made larger than when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range) (for the end part, refer to the ranges 772 and 773 in FIG. 11A). Thus, when the floating object 19 reaches a relatively visible position (center part) on the field image, the degree of bending deformation of the field object 77 can be increased to make the floating object 19 stand out more effectively. This makes it possible to diversify the field image while effectively emphasizing a specific object, such as making the specific object stand out. Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range) (for the center part, refer to the range 771 in FIG. 11A), the value of the deformation parameter A1 is made larger than when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range) (for the end part, refer to the ranges 772 and 773 in FIG. 11A). This makes it possible to produce a display effect such as changing the appearance of the floating object 19 by changing the degree of deformation of the field object 77 while the floating object 19 is located within the angle of view of the virtual camera 60 in the field object 77. Thus, when the floating object 19 reaches a relatively visible position (center part) on the field image, the degree of bending deformation of the field object 77 can be increased to make the floating object 19 stand out more effectively.

[0263] Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range) (for the center part, refer to the range 771 in FIG. 11A), the value of the deformation parameter A1 is made larger than when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range) (for the end part, refer to the ranges 772 and 773 in FIG. 11A). This makes it possible to produce a display effect such as changing the appearance of the floating object 19 by changing the degree of deformation of the field object 77 while the floating object 19 is located within the angle of view of the virtual camera 60 in the field object 77. Thus, when the floating object 19 reaches a relatively visible position (center part) on the field image, the degree of bending deformation of the field object 77 can be increased to make the floating object 19 stand out more effectively. Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range) (for the center part, refer to the range 771 in FIG. 11A), the value of the deformation parameter A1 is made larger than when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range) (for the end part, refer to the ranges 772 and 773 in FIG. 11A). This makes it possible to produce a display effect such as changing the appearance of the floating object 19 by changing the degree of deformation of the field object 77 while the floating object 19 is located within the angle of view of the virtual camera 60 in the field object 77. Thus, when the floating object 19 reaches a relatively visible position (center part) on the field image, the degree of bending deformation of the field object 77 can be increased to make the floating object 19 stand out more effectively. Also, according to the operation example described with reference to FIGS. 16 to 28, when the floating object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the first range) (for the center part, refer to the range 771 in FIG. 11A), the value of the deformation parameter A1 is made larger than when the floating object 19 is located at the end of the area within the angle of view of the virtual camera 60 in the field object 77 (an example of the second range) (for the end part, refer to the ranges 772 and 773 in FIG. 11A). This makes it possible to produce a display effect such as changing the appearance of the floating object 19 by changing the degree of deformation of the field object 77 while the floating object 19 is located within the angle of view of the virtual camera 60 in the field object 77. Thus, when the floating object 19 reaches a relatively visible position (center part) on the field image, the degree of bending deformation of the field object 77 can be increased to make the floating object 19 stand out more effectively.

[0264] Also, according to the operation example described with reference to FIGS. 16 to 28, the floating object 19 moves from the end portion to the central portion within the angle-of-view area of the virtual camera 60 in the field object 77. As the position of the floating object 19 changes, the value of the deformation parameter A1 changes (increases) from an interpolation value (an example of a second setting value) greater than the normal value β0 (an example of a predetermined setting value ) to the value β (an example of a first setting value) through one or more interpolation values (an example of a second setting value). As a result, compared to the case where the change from the normal value β0 to the value β of the deformation parameter A1 is realized in the processing cycle when the floating object 19 reaches the central portion within the angle-of-view area of the virtual camera 60 in the field object G2 77, a gentle change is realized. Thereby, the sense of discomfort that can be given to the user due to such a change in the degree of deformation can be effectively reduced. This also applies to the change from the normal value γ0 to the value γ of the distance parameter A 2 and the change in the origin position. Also, if the above-mentioned interpolation is not used, restrictions such as not approaching a specific position or a specific object are likely to occur in order to avoid a sudden change. In this regard, by using the above-mentioned interpolation, the degree of freedom in arranging a specific position or a specific object can be increased. As a result, further diversification of the field image G2 can be achieved. Also, according to the operation example described with reference to FIGS. 16 to 28, for example, appropriate values of the deformation parameter A1 can be associated with each position between the position E2 and the position E 3 by interpolation. Therefore, compared to the case where each value of the deformation parameter A1 is associated with each of these positions in the deformation parameter data, efficient use of the storage capacity for the deformation parameter data can be achieved. G2 Further, if the above-mentioned interpolation is not used, restrictions such as not approaching a specific position or a specific object are likely to occur in order to avoid a sudden change. In this regard, by using the above-mentioned interpolation, the degree of freedom in arranging a specific position or a specific object can be increased. As a result, further diversification of the field image can be achieved. can be achieved.

[0265] Also, according to the operation example described with reference to FIGS. 16 to 28, for example, appropriate values of the deformation parameter A1 can be associated with each position between the position E2 and the position E 3 by interpolation. Therefore, compared to the case where each value of the deformation parameter A1 is associated with each of these positions in the deformation parameter data, efficient use of the storage capacity for the deformation parameter data can be achieved. ​ The same applies to other parameters such as the distance parameter.

[0266] In addition, in FIG. 28, the movement of the first object 3 from position E1 to position E3 will be described. Therefore, the reverse may be realized for the movement of the first object 3 from position E3 to position E1. In addition, in FIG. 28, the movement of the first object 3 from position E1 to position E3 has been described. However, the movement of the first object 3 from a specific position to position E3 may be realized in the same manner.

[0267] In addition, when the specific position and position E3 (the position of the virtual camera 60 when the floating object object 19 is located at the center of the area within the angle of view of the virtual camera 60 in the field object 77) are relatively close, according to the operation example described with reference to FIGS. 16 to 28, as described above, the interpolation value of the parameter calculated based on the value of the deformation parameter A1 and the distance parameter A2 associated with the specific position, and the same parameter calculated based on the value of the deformation parameter A1 and the distance parameter A2 associated with the specific object related to the position E3 will be adjusted according to whether d (k + 1)>d(k + 1) (see step S2518). The interpolation value of the parameter will be adjusted according to whether d (k + 1)>d(k + 1) (see step S2518). L (k + 1)>d(k + 1) is adjusted according to whether it is true or not. This will be the case (see step S2518).

[0268] In addition, in the present embodiment, even when two or more specific objects are located in the angle-of-view area of the virtual camera 60 in the field object 77, the same concept as when the specific position and the specific object are relatively close may be used for processing. For example, here, the specific object includes a first specific object and a second specific object, and the specific object described above may be processed in the same way as when the specific position and the specific object are relatively close. For example, here, the specific object includes a first specific object and a second specific object, and the specific object described above ​Assume a case where the object region includes both the first specific object and the second specific object. At this time, the object region includes a first object region where the first specific object is located at the center, a second object region where neither the first specific object nor the second specific object is located at the center, and a third object region where the second specific object is located at the center. Here, referring to FIG. 11B, the first to third specific object regions will be described. FIG. 11B shows regions R4, R5, and R6 within the viewing angle 62 of the virtual camera 60 in the field object 77 when each of three different types of camera parameters (here, referred to as camera parameters 4, 5, and 6) is used. The camera parameters 4, 5, and 6 have at least one different value among the elements (X, Y, A2, θ, ψ) of the above-described camera parameters. Therefore, the three regions shown in FIG. 11B are different regions. And, in region R4 of the three regions R4, R5, and R6 shown in FIG. 11B, the first specific object G11 is arranged at the center thereof (see range 771). Therefore, in this case, region R4 is an example of the first object region. On the other hand, neither the first specific object nor the second object is arranged at the center of region R5 (see range 771). That is, the first specific object and the second object are arranged at the end portions on both sides of the center of region R5 (see ranges 772 and 773). Therefore, in this case, region R5 is an example of the second object region.

[0269] Here, referring to FIG. 11B, the first to third specific object regions will be described. In FIG. 11B, regions R4, R5, and R6 within the viewing angle 62 of the virtual camera 60 in the field object 77 are shown when each of three different types of camera parameters (here, referred to as camera parameters 4, 5, and 6) is used. The camera parameters 4, 5, and 6 have at least one different value among the elements (X, Y, A2, θ, ψ) of the above-described camera parameters. Therefore, the three regions shown in FIG. 11B are different regions. And, in region R4 of the three regions R4, R5, and R6 shown in FIG. 11B, the first specific object G11 is arranged at the center thereof (see range 771). Therefore, in this case, region R4 is an example of the first object region. On the other hand, neither the first specific object nor the second object is arranged at the center of region R5 (see range 771). That is, the first specific object and the second object are arranged at the end portions on both sides of the center of region R5 (see ranges 772 and 773). Therefore, in this case, region R5 is an example of the second object region. In region R6, the second specific object G12 is arranged at the center thereof (see range 771). Therefore, in this case, region R6 is an example of the third object region. Here, referring to FIG. 11B, the first to third specific object regions will be described. In FIG. 11B, regions R4, R5, and R6 within the viewing angle 62 of the virtual camera 60 in the field object 77 are shown when each of three different types of camera parameters (here, referred to as camera parameters 4, 5, and 6) is used. The camera parameters 4, 5, and 6 have at least one different value among the elements (X, Y, A2, θ, ψ) of the above-described camera parameters. Therefore, the three regions shown in FIG. 11B are different regions. And, in region R4 of the three regions R4, R5, and R6 shown in FIG. 11B, the first specific object G11 is arranged at the center thereof (see range 771). Therefore, in this case, region R4 is an example of the first object region. On the other hand, neither the first specific object nor the second object is arranged at the center of region R5 (see range 771). That is, the first specific object and the second object are arranged at the end portions on both sides of the center of region R5 (see ranges 772 and 773). Therefore, in this case, region R5 is an example of the second object region. In region R6, the second specific object G12 is arranged at the center thereof (see range 771). Therefore, in this case, region R6 is an example of the third object region. Here, referring to FIG. 11B, the first to third specific object regions will be described. In FIG. 11B, regions R4, R5, and R6 within the viewing angle 62 of the virtual camera 60 in the field object 77 are shown when each of three different types of camera parameters (here, referred to as camera parameters 4, 5, and 6) is used. The camera parameters 4, 5, and 6 have at least one different value among the elements (X, Y, A2, θ, ψ) of the above-described camera parameters. Therefore, the three regions shown in FIG. 11B are different regions. And, in region R4 of the three regions R4, R5, and R6 shown in FIG. 11B, the first specific object G11 is arranged at the center thereof (see range 771). Therefore, in this case, region R4 is an example of the first object region. The second specific object G12 is arranged in (refer to range 771). Therefore, in this case , the region R6 is an example of a third object region.

[0270] In this case, based on the value of the deformation parameter A1 (an example of a first setting value) and the value of the distance parameter A2 associated with the first specific object (and accordingly the first object region) , the interpolation value of the parameter calculated based on the value of the deformation parameter A1 (an example of a first setting value) and the value of the distance parameter A2 associated with the second specific object (and accordingly the third object region) and the interpolation value of the parameter calculated based on the value of the deformation parameter A1 (an example of a first setting value) and the value of the distance parameter A2 associated with the second specific object (and accordingly the third object region) will be adjusted according to whether d (k + 1)>d L1 (k + 1) L 2(k + 1). In this case, d L1 (k + 1) is the lateral distance related to the first specific object, and d L2 (k + 1) is the lateral distance related to the second specific object . Specifically, when d L1 (k + 1)>d L2 (k + 1 ) is the case, the interpolation value of the parameter calculated based on the value of the deformation parameter A1 and the value of the distance parameter A2 associated with the second specific object (an example of a second setting value) is adopted . When d (k + 1)≦d L1 (k + 1) is the case, the interpolation value of the parameter calculated based on the value of the deformation parameter A1 and the value of the distance parameter A2 associated with the first specific object (an example of a second setting value) may be adopted. This is the same for the origin setting process shown in FIG. 26 and the second distance parameter calculation process shown in FIG. 27. Specifically, d L2 (k + 1)>d The interpolation value of the parameter calculated based on the value of the deformation parameter A1 and the value of the distance parameter A2 associated with the first specific object (an example of a second setting value) may be adopted. This is the same for the origin setting process shown in FIG. 26 and the second distance parameter calculation process shown in FIG. 27. Specifically, d The interpolation value of the parameter calculated based on the value of the deformation parameter A1 and the value of the distance parameter A2 associated with the first specific object (an example of a second setting value) may be adopted. This is the same for the origin setting process shown in FIG. 26 and the second distance parameter calculation process shown in FIG. 27. Specifically, d L1 L1 (k + 1)>d L2When it is (k + 1), the second specific object is treated as the "specific object" described in FIGS. 26 and 27, and d L1 (k + 1) ≤ d L2 (k + 1 ), when it is, the first specific object is treated as the "specific object" described in FIGS. 26 and 27, and the same effect can be realized while adjusting between the two specific objects. Note that such a modification example is also suitable when the specific object moves. For example, when the first specific object and / or the second specific object is an object that moves, the distance between the first specific object and the second specific object changes, and the above-described second object region may occur. Also, in this case as well, when the positions of the first specific object and the second specific object simultaneously belong to the region within the viewing angle, an average value or a weighted composite value may be used. In the case of weighting, for example, using weighting coefficients w3 and w4, the updated composite value β ’( k + 1) may be calculated as follows when the value β of the deformation parameter A1 calculated based on the first specific object is β 1’(k + 1), and the value β of the deformation parameter A1 calculated based on the second specific object is β ”(k + 1). com ’(k + 1) = {w3 × β ’(k + 1) + w4 × β A ”(k + 1)} / ( w3 + w4) A2 In this case, for example, the weighting coefficients w3 and w4 may be as follows. β com ’(k + 1) = {w3 × β A1 ’(k + 1) + w4 × β A2 ”(k + 1)} / ( w3 + w4) In this case, for example, the weighting coefficients w3 and w4 may be as follows. w3 = 1 / d L1 (k + 1), provided that when d L1 (k + 1) = 0, then β com ’(k +1)=β A1 ’(k + 1) w4 = 1 / d L2 (k + 1), provided that d L2 When (k + 1) = 0, then β com ’(k +1)=β A2 ”(k + 1) Also, according to the operation example described with reference to FIGS. 16 to 28, the virtual camera 60 in the field object It is determined that no specific object is located in the angular field region of the virtual camera 60 in 77 Even in this case, based on the relationship between the specific position and each value (X, Y) of the position parameters of the virtual camera 60 The value of the deformation parameter A1 and / or the value of the distance parameter A2 are changed. That is Specifically, the position of the virtual camera 60 such that each value (X, Y) of the position parameters corresponds to the specific position (an example of the first position), when it is determined (for example, “YE” in step S1700 of FIG. 17 S” and / or “YES” in step S2300 of FIG. 23), and each value of the position parameters( X, Y) is not in the position of the virtual camera 60 (an example of the second position) corresponding to the specific position When it is determined (for example, “NO” in step S1700 of FIG. 17 and / or step S23 of FIG. 23 p S2300 “NO”), the value of the deformation parameter A1 and / or the distance parameter A 2 are made different. Thereby, even when no specific object is located in the angular field region of the virtual camera 60 in the field object 77 It is possible to achieve further diversification of the field image. Note that when it is determined that each value (X(k + 1), Y(k + 1)) of the updated position parameters (X, Y) is in the position of the virtual camera 60 (an example of the first position) corresponding to the specific position (for example, “YES” in step S1700 of FIG. 17), the updated The value γ(k + 1) of the distance parameter A2 is set to the value associated with the specific position After that, the value γ(k + 1) of the distance parameter A2 is set to the value associated with the specific position For (step S1702), if the values (X(k +1), Y(k + 1)) of the updated position parameters (X, Y) do not correspond to a specific position, and it is determined that the virtual camera 60 is at a position (an example of the second position ) as shown in, for example, “NO” in step S1700 of FIG. 17, then the value γ(k + 1) of the updated distance parameter A2 is set to the normal value γ0 or the interpolated value (steps S1712, step S1710). Therefore, equivalently, in the case of a specific position where both the value of the deformation parameter A1 and the value of the distance parameter A2 are associated, such as the specific positions A, B, etc. shown in FIGS. 13 and 14, the value β(k + 1) of the updated deformation parameter A1 may be set based on the value γ(k + 1) of the updated distance parameter A2. For example, if the value γ(k + 1) of the updated distance parameter A2 corresponds to a relatively large distance (an example of the first distance), the value β(k + 1) of the updated deformation parameter A1 may be set so that the degree of deformation is smaller compared to the case where it corresponds to a relatively small distance (an example of the second distance). Also, as another embodiment, the value of the deformation parameter A1 may be linked according to the value of the distance parameter A2. For example, the value β(k + 1) of the updated deformation parameter A1 = normal value β0 × normal value γ0 / value γ(k + 1) of the updated distance parameter A2, and the value β (k + 1) of the updated deformation parameter A1 corresponding to the value γ(k + 1) of the updated distance parameter A2 may be calculated. In this case, if the value γ(k + 1 ) of the updated distance parameter A2 corresponds to a relatively large distance (an example of the first distance), the degree of deformation is made smaller compared to the case where it corresponds to a relatively small distance (an example of the second distance). For example, if the value γ(k + 1) of the updated distance parameter A2 corresponds to a relatively large distance (an example of the first distance), the value β(k + 1) of the updated deformation parameter A1 may be set so that the degree of deformation is smaller compared to the case where it corresponds to a relatively small distance (an example of the second distance). Also, as another embodiment, the value of the deformation parameter A1 may be linked according to the value of the distance parameter A2. For example, the value β(k + 1) of the updated deformation parameter A1 = normal value β0 × normal value γ0 / value γ(k + 1) of the updated distance parameter A2, and the value β (k + 1) of the updated deformation parameter A1 corresponding to the value γ(k + 1) of the updated distance parameter A2 may be calculated. In this case, if the value γ(k + 1 ) of the updated distance parameter A2 corresponds to a relatively large distance (an example of the first distance), the degree of deformation is made smaller compared to the case where it corresponds to a relatively small distance (an example of the second distance). = normal value β0 × normal value γ0 / value γ(k + 1) of the updated distance parameter A2, and the value β (k + 1) of the updated deformation parameter A1 corresponding to the value γ(k + 1) of the updated distance parameter A2 may be calculated. In this case, if the value γ(k + 1 ) of the updated distance parameter A2 corresponds to a relatively large distance (an example of the first distance), the degree of deformation is made smaller compared to the case where it corresponds to a relatively small distance ) (an example of the second distance). (an example of the second distance). The value β(k + 1) of the new deformation parameter A1 is interlocked. Thereby, compared with the case where each value of the deformation parameter A1 and each value of the distance parameter A2 are stored individually, the memory area can be saved. Also, the value of the distance parameter A2 is changed between the normal value γ0 and the value of the distance parameter A2 (for example, value γ1, etc.) defined by the distance parameter data 14A through the interpolation value as described above, so that the value of the deformation parameter A1 can also be changed in the same way. Therefore, it is possible to reduce the discomfort caused by the sudden change in the values of both these parameters at the same time. As compared with the case where each value of the deformation parameter A1 and each value of the distance parameter A2 are stored individually, the memory area can be saved. Also, the value of the distance parameter A2 is changed between the normal value γ0 and the value of the distance parameter A2 (for example, value γ1, etc.) defined by the distance parameter data 14A through the interpolation value as described above, so that the value of the deformation parameter A1 can also be changed in the same way. Therefore, it is possible to reduce the discomfort caused by the sudden change in the values of both these parameters at the same time. As compared with the case where each value of the deformation parameter A1 and each value of the distance parameter A2 are stored individually, the memory area can be saved. Also, the value of the distance parameter A2 is changed between the normal value γ0 and the value of the distance parameter A2 (for example, value γ1, etc.) defined by the distance parameter data 14A through the interpolation value as described above, so that the value of the deformation parameter A1 can also be changed in the same way. Therefore, it is possible to reduce the discomfort caused by the sudden change in the values of both these parameters at the same time.

[0271] Next, with reference to FIG. 30, a modification of the above-described embodiment will be described.

[0272] FIG. 30 is an example of a functional block diagram related to the drawing function of the server device 10A according to the modification. The server device 10A according to the modification is different from the server device 10 according to the above-described embodiment in that the drawing processing unit 140 is replaced with a drawing processing unit 140A. The server device 10A according to the modification is different from the server device 10 according to the above-described embodiment in that the drawing processing unit 140 is replaced with a drawing processing unit 140A. The drawing processing unit 140A according to this modification is different from the drawing processing unit 140 according to the above-described embodiment in that the distance changing unit 1421 is replaced with a zoom amount changing unit 1421A (an example of a parameter value changing unit).

[0273] The drawing processing unit 140A according to this modification is different from the drawing processing unit 140 according to the above-described embodiment in that the distance changing unit 1421 is replaced with a zoom amount changing unit 1421A (an example of a parameter value changing unit). The zoom amount changing unit 1421A changes the value of an optical parameter related to the zoom amount of the virtual camera 60, such as the focal length or the field angle. The zoom amount changing unit 1421A may change the value of the optical parameter so that the same effect as that of the distance changing unit 1421 is realized. For example, the effect obtained by the distance changing unit 1421 reducing the value of the distance parameter A2 is that the zoom The drawing processing unit 140A according to this modification is different from the drawing processing unit 140 according to the above-described embodiment in that the distance changing unit 1421 is replaced with a zoom amount changing unit 1421A (an example of a parameter value changing unit).

[0274] The zoom amount changing unit 1421A changes the value of an optical parameter related to the zoom amount of the virtual camera 60, such as the focal length or the field angle. The zoom amount changing unit 1421A may change the value of the optical parameter so that the same effect as that of the distance changing unit 1421 is realized. For example, the effect obtained by the distance changing unit 1421 reducing the value of the distance parameter A2 is that the zoom The zoom amount changing unit 1421A changes the value of an optical parameter related to the zoom amount of the virtual camera 60, such as the focal length or the field angle. The zoom amount changing unit 1421A may change the value of the optical parameter so that the same effect as that of the distance changing unit 1421 is realized. For example, the effect obtained by the distance changing unit 1421 reducing the value of the distance parameter A2 is that the zoom The effect obtained by the distance changing unit 1421 reducing the value of the distance parameter A2 is that the zoom The zoom amount change unit 1421A may be implemented by changing the value of the optical parameter so that the zoom amount increases. Similarly, the effect obtained by the distance change unit 1421 increasing the value of the distance parameter A2 may be implemented by the zoom amount change unit 1421A changing the value of the optical parameter so that the zoom amount decreases. In this way, the function of the distance change unit 1421 can be realized by the zoom amount change unit 1421A.

[0275] In other modification examples, the distance change unit 1421 and the zoom amount change unit 1421A may function simultaneously. Also, in the above-described embodiment, only one of the first distance change unit 14211 and the second distance change unit 14212 of the distance change unit 1421 may be realized by the zoom amount change unit 1421A.

[0276] As described above in detail for each embodiment, the present invention is not limited to specific embodiments, and various modifications and changes are possible within the scope described in the claims. Also, it is possible to combine all or a plurality of

[0277] the components of the above-described embodiments. For example, in the above-described embodiment, based on the positional relationship between the virtual camera 60 in the field object and the specific object, the value of the deformation parameter A1, the value of the distance parameter A2, and the process of setting the origin position are executed in the deformation process (step S1615 in FIG. 16) accompanying the movement of the predetermined object. Instead of or in addition to this, it may be executed in the bending deformation process (step S1619 in FIG. 16) of the field object after the rotation process. In this case, the virtual in the field object after the rotation process ​​​​​Based on the positional relationship between the area within the viewing angle of the imaging camera 60 and the specific object, the deformation parameter The value of A1, the value of the distance parameter A2, and the origin position may be set in the same way.

[0278] Specifically, for example, in the rotation process related to revolution and / or rotation, every processing cycle, the virtual camera 60 is rotated by a predetermined angle. When the area within the viewing angle of the virtual camera 6 0 in the field object fits within the viewing angle, the area that fits within the viewing angle of the virtual camera 6 0 in the field object has a number for one revolution for each predetermined angle (in the case of the rotation process related to the angle of attack it is the number corresponding to the variable range), and hereinafter, it is referred to as a predetermined area. Among the multiple predetermined areas for one revolution the...

Claims

1. An information processing apparatus for rendering an object arranged in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis orthogonal to each other in a representation as viewed from a virtual camera arranged in the virtual space, comprising: At least a deformation processing unit that deforms a field object associated with a two-dimensional plane defined by the first axis and the second axis based on whether or not a specific object is included in a region (hereinafter referred to as "in-field-of-view region") that fits within the field of view of the virtual camera.

2. The information processing apparatus according to claim 1, wherein the deformation processing unit does not deform the field object when the specific object is not included in the in-field-of-view region.

3. The information processing apparatus according to claim 1 or 2, wherein the deformation processing unit deforms the field object according to at least one of the type, orientation, and position of the specific object.

4. The information processing apparatus according to any one of claims 1 to 3, wherein the deformation processing unit changes the field object when the orientation of the specific object is a first value, and does not change the field object when the orientation of the specific object is a second value.

5. The information processing apparatus according to any one of claims 1 to 4, wherein the deformation processing unit deforms the field object according to whether or not the specific object is located at the center of the in-field-of-view region.

6. The information processing apparatus according to any one of claims 1 to 5, wherein the deformation processing unit deforms the field object according to the distance between a vector obtained by projecting the line-of-sight direction of the virtual camera onto a plane including the first axis and the second axis and the specific object.

7. The information processing apparatus according to claim 6, wherein the smaller the distance, the greater the deformation of the field object.

8. The information processing apparatus according to any one of claims 1 to 7, wherein the specific object is an object that the user is intended to gaze at.

9. The information processing apparatus according to any one of claims 1 to 8, wherein the deformation processing unit deforms the field object based also on the position of the virtual camera.

10. The information processing apparatus according to any one of claims 1 to 9, wherein the deformation processing unit deforms the field object based also on the orientation of the virtual camera.

11. An information processing method for rendering an object arranged in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis that are orthogonal to each other, in a representation viewed from a virtual camera arranged in the virtual space, comprising: at least deforming a field object associated with a two-dimensional plane defined by the first axis and the second axis, based on whether or not a specific object is included in a region (hereinafter referred to as "in-field-of-view region") that fits within the field of view of the virtual camera.

12. An information processing program for rendering an object arranged in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis that are orthogonal to each other, in a representation viewed from a virtual camera arranged in the virtual space, the information processing program causing an information processing apparatus to: function as a deformation processing unit that at least deforms a field object associated with a two-dimensional plane defined by the first axis and the second axis, based on whether or not a specific object is included in a region (hereinafter referred to as "in-field-of-view region") that fits within the field of view of the virtual camera.

Citation Information

Patent Citations

  • Program, game control method, and information processor

    JP2017131523A

  • Program, information processing device, and control method

    JP2018171136A

  • Game program, information processing system, information processor, and information processing method

    JP2019209115A

  • Information processor, information processing program, information processing system, and information processing method

    JP2020080007A

  • Information processor, information processing program, information processing system, and information processing method

    JP2020080008A