Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7601358B2 - Information processing device, information processing method, and information processing program - Google Patents
[go: Go Back, main page]

JP7601358B2 - Information processing device, information processing method, and information processing program - Google Patents

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

Info

Publication number
JP7601358B2
JP7601358B2 JP2023120714A JP2023120714A JP7601358B2 JP 7601358 B2 JP7601358 B2 JP 7601358B2 JP 2023120714 A JP2023120714 A JP 2023120714A JP 2023120714 A JP2023120714 A JP 2023120714A JP 7601358 B2 JP7601358 B2 JP 7601358B2
Authority
JP
Japan
Prior art keywords
virtual camera
value
field
axis
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023120714A
Other languages
Japanese (ja)
Other versions
JP2023138554A (en
Inventor
綾佑 西田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GREE Holdings Inc
Original Assignee
GREE Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GREE Inc filed Critical GREE Inc
Priority to JP2023120714A priority Critical patent/JP7601358B2/en
Publication of JP2023138554A publication Critical patent/JP2023138554A/en
Priority to JP2024206267A priority patent/JP7778325B2/en
Application granted granted Critical
Publication of JP7601358B2 publication Critical patent/JP7601358B2/en
Priority to JP2025190426A priority patent/JP2026015440A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Description

本開示は、情報処理装置、情報処理方法、情報処理プログラムに関する。 This disclosure relates to an information processing device, an information processing method, and an information processing program.

3次元の仮想空間内のフィールドオブジェクト上に配置されるオブジェクトを、仮想空間に配置された仮想カメラからの俯瞰視で描画するための情報処理装置が知られている。 An information processing device is known that renders objects placed on a field object in a three-dimensional virtual space from a bird's-eye view from a virtual camera placed in the virtual space.

特開2013-208269号公報JP 2013-208269 A

上記のような従来技術では、仮想カメラから視た仮想空間内のフィールドオブジェクトの多様な表現を生成することが難しい。 With conventional techniques such as those described above, it is difficult to generate diverse representations of field objects in a virtual space viewed from a virtual camera.

そこで、1つの側面では、本発明は、仮想カメラから視た仮想空間内のフィールドオブジェクトの多様な表現を生成することを目的とする。 Therefore, in one aspect, the present invention aims to generate diverse representations of field objects in a virtual space viewed from a virtual camera.

1つの側面では、仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するためのプログラムであって、
前記オブジェクトは、フィールドオブジェクトと、前記フィールドオブジェクトに対して配置される第2オブジェクトとを含み、
前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させる処理と、
前記フィールドオブジェクトに対する前記仮想カメラの位置に基づいて、前記フィールドオブジェクトを変形させる変形処理とを含む複数の処理を、コンピュータに実行させ、
前記変形処理は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記フィールドオブジェクトの変形度合いを異ならせる、プログラムが提供される。
In one aspect, there is provided a program for rendering an object placed in a virtual space as viewed from a virtual camera placed in the virtual space, the program comprising:
the objects include a field object and a second object arranged relative to the field object;
changing a position of the virtual camera relative to the field object;
a transformation process for transforming the field object based on a position of the virtual camera with respect to the field object;
A program is provided in which the transformation process changes the degree of transformation of the field object between when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera.

1つの側面では、本発明によれば、仮想カメラから視た仮想空間内のフィールドオブジェクトの多様な表現を生成することが可能となる。 In one aspect, the present invention makes it possible to generate diverse representations of field objects in a virtual space as viewed from a virtual camera.

本実施形態に係るゲームシステムのブロック図である。1 is a block diagram of a game system according to an embodiment of the present invention. フィールド画像の一例を示す図である。FIG. 13 is a diagram illustrating an example of a field image. フィールドオブジェクトを形成するフィールド面と背景オブジェクトを形成する背景面の全体を示す平面図である。FIG. 2 is a plan view showing an entire field surface forming a field object and an entire background surface forming a background object. フィールド面と背景面の一部を示す斜視図である。FIG. 2 is a perspective view showing a part of a field surface and a background surface. 各種の位置関係を示す説明図である。FIG. 2 is an explanatory diagram showing various positional relationships. 仮想カメラから視た表現で描画して得られたフィールド画像の一例を示す概略図である。1 is a schematic diagram showing an example of a field image obtained by rendering an image seen from a virtual camera. フィールド面の曲げ変形を実現するための変形パラメータの一例の説明図である。11 is an explanatory diagram of an example of deformation parameters for realizing bending deformation of a field surface; FIG. 関数に基づくフィールド面の曲げ変形の説明図である。11A and 11B are explanatory diagrams of bending deformation of a field surface based on a function. フィールド面の曲げ変形の適用場面の説明図である。1A to 1C are explanatory diagrams illustrating scenes in which bending deformation of a field surface is applied. 仮想カメラとフィールド面の曲げ変形との関係を示す説明図(その1)である。FIG. 11 is an explanatory diagram (part 1) showing the relationship between the virtual camera and bending deformation of the field surface. 仮想カメラとフィールド面の曲げ変形との関係を示す説明図(その2)である。FIG. 2 is an explanatory diagram (part 2) showing the relationship between the virtual camera and bending deformation of the field surface. 仮想カメラとフィールド面の曲げ変形との関係を示す説明図(その3)である。FIG. 11 is an explanatory diagram (part 3) showing the relationship between the virtual camera and bending deformation of the field surface. 仮想カメラの位置の変化の自由度の説明図である。FIG. 13 is an explanatory diagram of the degree of freedom of change of the position of the virtual camera. 仮想カメラの視線方向の回転の説明図である。FIG. 11 is an explanatory diagram of the rotation of the line of sight of the virtual camera. カメラパラメータの説明図である。FIG. 2 is an explanatory diagram of camera parameters. サーバ装置の描画機能に関する機能ブロック図の一例である。FIG. 2 is a functional block diagram of a drawing function of the server device; 変形パラメータデータの説明図である。FIG. 4 is an explanatory diagram of deformation parameter data. 距離パラメータデータの説明図である。FIG. 4 is an explanatory diagram of distance parameter data. 向きパラメータデータの説明図である。FIG. 11 is an explanatory diagram of direction parameter data. サーバ制御部により実現される処理の流れを示す概略フローチャートである。10 is a schematic flowchart showing a flow of processing realized by a server control unit. 距離パラメータ算出処理(ステップS1608)の一例を示す概略フローチャートである。16 is a schematic flowchart showing an example of a distance parameter calculation process (step S1608). 補間処理範囲の説明図である。FIG. 13 is an explanatory diagram of an interpolation processing range. 向きパラメータ算出処理(ステップS1610)の一例を示す概略フローチャートである。16 is a schematic flowchart showing an example of a direction parameter calculation process (step S1610). 迎角パラメータ算出処理(ステップS1612)の一例を示す概略フローチャートである。13 is a schematic flowchart showing an example of an attack angle parameter calculation process (step S1612). 所定オブジェクトの移動に伴う変形処理(ステップS1615)の一例を示す概略フローチャートである。16 is a schematic flowchart showing an example of a transformation process (step S1615) accompanying the movement of a predetermined object. 曲げ変形処理の説明図である。FIG. 動作例の適用場面の説明図である。FIG. 11 is an explanatory diagram of an application scene of the operation example. フィールド画像の例を示す図である。FIG. 13 is a diagram showing an example of a field image. フィールド画像の例を示す図である。FIG. 13 is a diagram showing an example of a field image. フィールド画像の例を示す図である。FIG. 13 is a diagram showing an example of a field image. 他のサーバ装置の描画機能に関する機能ブロック図の一例である。FIG. 13 is a functional block diagram of a drawing function of another server device; 補間処理範囲の設定方法の説明図(その1)である。FIG. 11 is an explanatory diagram (part 1) of a method for setting an interpolation processing range. 補間処理範囲の設定方法の説明図(その2)である。FIG. 13 is an explanatory diagram (part 2) of a method for setting an interpolation processing range.

以下、添付図面を参照しながら各実施形態について詳細に説明する。 Each embodiment will be described in detail below with reference to the attached drawings.

(ゲームシステムの概要)
図1を参照して、本発明の一実施形態に係るゲームシステム1の概要について説明する。図1は、本実施形態に係るゲームシステム1のブロック図である。図2は、フィールド画像の一例を示す図である。ゲームシステム1は、サーバ装置10と、1つ以上の端末装置20と、を備える。図1では簡便のため、3つの端末装置20を図示しているが、端末装置20の数は2つ以上であればよい。
(Game System Overview)
An overview of a game system 1 according to an embodiment of the present invention will be described with reference to Fig. 1. Fig. 1 is a block diagram of the game system 1 according to this embodiment. Fig. 2 is a diagram showing an example of a field image. The game system 1 includes a server device 10 and one or more terminal devices 20. For simplicity, three terminal devices 20 are shown in Fig. 1, but the number of terminal devices 20 may be two or more.

サーバ装置10は、例えばゲーム運営者が管理するサーバ等の情報処理装置である。端末装置20は、例えば携帯電話、スマートフォン、タブレット端末、PC(Personal Computer)、又はゲーム装置等の、ユーザによって使用される情報処理装置である。端末装置20は、本実施形態に係るゲームのアプリケーションを実行可能である。ゲームのアプリケーションは、ネットワーク30を介してサーバ装置10や所定のアプリケーション配信サーバから端末装置20に受信されてもよく、あるいは端末装置20に備えられた記憶装置又は端末装置20が読取可能なメモリカード等の記憶媒体に予め記憶されていてもよい。サーバ装置10及び端末装置20は、ネットワーク30を介して通信可能に接続される。例えば、サーバ装置10及び端末装置20が協動して、ゲームに関する多様な処理を実行する。 The server device 10 is an information processing device such as a server managed by a game operator. 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 a game application according to this embodiment. The game application 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 connected to each other so as to be able to communicate with each other via the network 30. For example, the server device 10 and the terminal device 20 cooperate to execute various processes related to the game.

なお、ネットワーク30は、無線通信網や、インターネット、VPN(Virtual Private Network)、WAN(Wide Area Network)、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでよい。 The network 30 may include a wireless communication network, the Internet, a Virtual Private Network (VPN), a Wide Area Network (WAN), a wired network, or any combination of these.

ここで、本実施形態に係るゲームの概要について説明する。本実施形態に係るゲームは、例えばロールプレイングゲーム又はシミュレーションゲーム等であって、ゲームの実行に伴い、ゲーム媒体が用いられる。例えば、本実施形態に係るゲームは、3次元の仮想空間内のフィールド上でゲーム媒体を移動させるゲームである。 Here, an overview 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, and game media is used as the game is executed. For example, the game according to this embodiment is a game in which game media is moved on a field in a three-dimensional virtual space.

ゲーム媒体は、ゲームに使用される電子データであり、例えば、カード、アイテム、ポイント、サービス内通貨(又はゲーム内通貨)、チケット、キャラクタ、アバタ、パラメータ等、任意の媒体を含む。また、ゲーム媒体は、レベル情報、ステータス情報、ゲームパラメータ情報(体力値及び攻撃力等)又は能力情報(スキル、アビリティ、呪文、ジョブ等)のような、ゲーム関連情報であってもよい。また、ゲーム媒体は、ユーザによってゲーム内で取得、所有、使用、管理、交換、合成、強化、売却、廃棄、又は贈与等され得る電子データであるが、ゲーム媒体の利用態様は本明細書で明示されるものに限られない。 Game media is electronic data used in a game, and includes any media, such as cards, items, points, in-service currency (or in-game currency), tickets, characters, avatars, parameters, etc. Game media may also be game-related information, such as level information, status information, game parameter information (stamina value and attack power, etc.), or ability information (skills, abilities, spells, jobs, etc.). Game media is electronic data that can be acquired, owned, used, managed, exchanged, synthesized, strengthened, sold, discarded, or donated by a user in a game, but the manner of use of the game media is not limited to those explicitly stated in this specification.

以下、特に明示した場合を除き、「ユーザが所有するゲーム媒体」とは、ユーザのユーザIDに対応付けられたゲーム媒体を示す。また、「ゲーム媒体をユーザに付与する」とは、ゲーム媒体をユーザIDに対応付けることを示す。また、「ユーザが所有するゲーム媒体を破棄する」とは、ユーザIDとゲーム媒体との対応付けを解消することを示す。また、「ユーザが所有するゲーム媒体を消費する」とは、ユーザIDとゲーム媒体との対応付けの解消に応じて、何らかの効果又は影響をゲーム内で発生させ得ることを示す。また、「ユーザが所有するゲーム媒体を売却する」とは、ユーザIDと当該ゲーム媒体との対応付けを解消し、且つ、ユーザIDに他のゲーム媒体(例えば、仮想通貨又はアイテム等)を対応付けることを示す。また、「あるユーザが所有するゲーム媒体を他のユーザに譲渡する」とは、あるユーザのユーザIDとゲーム媒体との対応付けを解消し、且つ、他のユーザのユーザIDに当該ゲーム媒体を対応付けることを示す。 Unless otherwise specified, "game media owned by a user" refers to game media associated with the user ID of the user. "Giving game media to a user" refers to associating the game media with a user ID. "Discarding game media owned by a user" refers to dissociating the association between a user ID and the game media. "Consuming game media owned by a user" refers to the possibility of causing some effect or influence in the game in response to dissociating the association between a user ID and the game media. "Selling game media owned by a user" refers to dissociating the association between a user ID and the game media, and associating the user ID with other game media (e.g., virtual currency or items, etc.). "Transferring game media owned by a user to another user" refers to dissociating the association between a user ID and the game media, and associating the game media with the user ID of the other user.

本実施形態に係るゲームは、概略として、第1ゲームパートと、第2ゲームパートと、第3ゲームパートと、を含む。 The game according to this embodiment generally includes a first game part, a second game part, and a third game part.

第1ゲームパートにおいて、ユーザは、ユーザキャラクタを操作して、仮想空間内のフィールドを探索しながら、ゲームを進行させる。具体的には、ユーザ操作に応じてユーザキャラクタがフィールド上を移動する。フィールドには、例えば町及びダンジョン等の多様なエリアが設けられており、例えば町の住人キャラクタとの会話、及びダンジョン内で遭遇する敵キャラクタとの対戦等、エリアに応じた多様なイベントが発生する。イベントが実行されることによって、ゲームのメインストーリーが進行する。また第1ゲームパートにおいて、例えば敵キャラクタとの対戦に勝利すると、例えばアイテム、仮想通貨、又はキャラクタ等のゲーム媒体がユーザに付与され得る。付与されたゲーム媒体は、例えば後述する第3ゲームパートにおいて使用可能である。 In the first game part, the user operates a user character to progress through the game while exploring a field in a virtual space. Specifically, the user character moves on the field in response to user operations. Various areas, such as towns and dungeons, are provided in the field, and various events occur according to the area, such as conversations with town resident characters and battles with enemy characters encountered in dungeons. The main story of the game progresses as events are executed. In addition, in the first game part, if the user wins a battle against an enemy character, for example, game media such as items, virtual currency, or characters may be granted to the user. The granted game media can be used, for example, in the third game part described below.

第2ゲームパートにおいて、ユーザは、ゲーム媒体の保有状況を変更する。ユーザは、例えばアイテム、仮想通貨、及びキャラクタ等の多様なゲーム媒体を収集する。具体的には、フィールド上に設けられた採掘場及び釣り堀等の特定のエリアにユーザキャラクタを移動させ、又は特定のキャラクタ等のゲーム媒体を選択(例えば、画面に対するタッチ操作)すると、ゲーム媒体が取得可能なサブイベントが発生する。サブイベントは、例えばサブストーリーの進行、及びミニゲームの実行等を含むが、サブイベントの内容はこれらに限られない。サブイベントの実行結果に応じて、多様なゲーム媒体がユーザに付与され得る。付与されたゲーム媒体は、例えば後述する第3ゲームパートにおいて使用可能である。 In the second game part, the user changes the game media owned. The user collects various game media, such as items, virtual currency, and characters. Specifically, when the user moves the user character to a specific area, such as a mining site or fishing pond, provided on the field, or selects a specific character or other game media (e.g., by touching the screen), a sub-event occurs in which the game media can be acquired. Sub-events include, for example, the progression of a sub-story and the execution of a mini-game, but the content of the sub-event is not limited to these. Depending on the result of the execution of the sub-event, various game media can be granted to the user. The granted game media can be used, for example, in the third game part described below.

第3ゲームパートにおいて、ユーザは、ゲーム媒体に関するパラメータを変更する。ユーザは、例えばユーザキャラクタの強化を行う。具体的には、上述したように第1ゲームパート及び第2ゲームパートにおいてユーザに付与されたゲーム媒体が消費されることによって、ユーザキャラクタの多様なゲームパラメータが変化する。ゲームパラメータは、例えばユーザキャラクタのレベル、HP、攻撃力、防御力、属性、及びスキル等を含むが、これらに限られない。ユーザキャラクタのゲームパラメータの変化に応じて、ユーザキャラクタが強化される。ユーザキャラクタの強化によって、第1ゲームパートにおける敵キャラクタとの対戦でユーザキャラクタが勝利できる蓋然性が高まる。 In the third game part, the user changes parameters related to the game media. For example, the user strengthens the user character. Specifically, as described above, various game parameters of the user character change as the game media granted to the user in the first game part and the second game part are consumed. Game parameters include, but are not limited to, the user character's level, HP, attack power, defense power, attributes, and skills. The user character is strengthened in response to changes in the user character's game parameters. Strengthening the user character increases the likelihood that the user character will win a battle against an enemy character in the first game part.

このように、本実施形態に係るゲームにおいて、ユーザは第1ゲームパート、第2ゲームパート、及び第3ゲームパートを繰り返し行う。 In this way, in the game according to this embodiment, the user repeatedly plays the first game part, the second game part, and the third game part.

(サーバ装置の構成)
サーバ装置10の構成について具体的に説明する。サーバ装置10は、サーバコンピュータにより構成される。サーバ装置10は、複数台のサーバコンピュータにより協動して実現されてもよい。
(Configuration of the server device)
A specific description will be given of the configuration of the server device 10. The server device 10 is configured by a server computer. The server device 10 may be realized by a plurality of server computers working together.

サーバ装置10は、サーバ通信部11と、サーバ記憶部12と、サーバ制御部13と、を備える。 The server device 10 includes a server communication unit 11, a server storage unit 12, and a server control unit 13.

サーバ通信部11は、外部装置と無線又は有線によって通信し、情報の送受信を行うインタフェースを含む。サーバ通信部11は、例えば無線LAN(Local Area Network)通信モジュール又は有線LAN通信モジュール等を含んでもよい。サーバ通信部11は、ネットワーク30を介して、端末装置20との間で情報を送受信可能である。 The server communication unit 11 includes an interface that communicates with an external device wirelessly or wiredly to send and receive 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 send and receive information to and from the terminal device 20 via the network 30.

サーバ記憶部12は、例えば記憶装置であって、ゲームの処理に必要な種々の情報及びプログラムを記憶する。例えばサーバ記憶部12は、ゲームのアプリケーションを記憶する。 The server storage unit 12 is, for example, a storage device, and stores various information and programs necessary for game processing. For example, the server storage unit 12 stores game applications.

また、サーバ記憶部12は、3次元の仮想空間内に配置された種々のオブジェクトに投影(テクスチャマッピング)するための種々の画像(テクスチャ画像)を記憶する。 The server storage unit 12 also stores various images (texture images) for projection (texture mapping) onto various objects placed in the three-dimensional virtual space.

例えば、サーバ記憶部12は、ユーザキャラクタの画像を記憶する。以下、ユーザキャラクタを第1ゲーム媒体と称し、第1ゲーム媒体の画像に基づきフィールドオブジェクト(後述)上に描画(配置)されるオブジェクトを第1オブジェクトとも称する。なお、本実施形態では、仮想空間内では、第1オブジェクトは1つだけ配置されるが、2つ以上の第1オブジェクトが配置されてもよい。なお、第1オブジェクトは、複数の第1ゲーム媒体のグループであってもよい。また、仮想空間内で利用される第1ゲーム媒体(及びそれに基づく第1オブジェクト)は、ユーザにより適宜交換可能とされてもよい。 For example, the server storage unit 12 stores an image of a user character. Hereinafter, the user character is referred to as the first game medium, and an object that is drawn (placed) on a field object (described later) based on the image of the first game medium is also referred to as the first object. Note that in this embodiment, only one first object is placed in the virtual space, but two or more first objects may be placed. Note that the first object may be a group of multiple first game media. Also, the first game medium (and the first object based thereon) used in the virtual space may be interchangeable by the user as appropriate.

また、サーバ記憶部12は、例えば建物、壁、樹木、又はNPC(Non Player Character)等のような、ゲーム媒体に係る画像を記憶する。以下、第1ゲーム媒体とは異なる任意のゲーム媒体(例えば建物、壁、樹木、又はNPC等)であって、後述するフィールドオブジェクトに配置されうるゲーム媒体を第2ゲーム媒体と称し、第2ゲーム媒体が投影されたオブジェクトを第2オブジェクトとも称する。なお、本実施形態では、第2オブジェクトは、後述するフィールドオブジェクトに対して固定されたオブジェクトや、後述するフィールドオブジェクトに対して移動可能なオブジェクト等を含んでもよい。また、第2オブジェクトは、後述するフィールドオブジェクトに常に配置されるオブジェクトや、所定の条件が満たされた場合にだけ配置されるオブジェクト等を含んでもよい。 The server storage unit 12 also stores images related to game media, such as buildings, walls, trees, or NPCs (Non Player Characters). Hereinafter, any game media (e.g., buildings, walls, trees, or NPCs) different from the first game medium that can be placed on a field object described later will be referred to as the second game medium, and an object onto which the second game medium is projected will also be referred to as the second object. Note that in this embodiment, the second object may include an object that is fixed to a field object described later, an object that is movable to a field object described later, etc. Also, the second object may include an object that is always placed on a field object described later, or an object that is placed only when a certain condition is satisfied, etc.

また、サーバ記憶部12は、例えば空又は遠景等の背景の画像(背景画像)を記憶する。以下、背景画像が投影されたオブジェクトを背景オブジェクトともいう。なお、背景画像は複数種類用意され、使い分けられてもよい。 The server storage unit 12 also stores an image of a background (background image), such as the sky or a distant view. Hereinafter, an object onto which a background image is projected is also referred to as a background object. Note that multiple types of background images may be prepared and used differently.

また、サーバ記憶部12は、フィールド(例えば、地面)の画像(フィールド画像)を記憶する。フィールド画像は、後述するフィールド面に投影される。以下、フィールド画像がフィールド面に投影されたオブジェクトを、フィールドオブジェクトとも称する。なお、フィールドオブジェクトは、仮想空間内における仮想のフィールド(地面)として用いられる。 The server storage unit 12 also stores an image (field image) of a field (e.g., the ground). The field image is projected onto a field surface, which will be described later. Hereinafter, an object onto which the field image is projected onto the field surface is also referred to as a field object. Note that the field object is used as a virtual field (ground) in the virtual space.

ここで、フィールド画像には、例えば図2に示すように、互いに直交するu軸及びv軸を有するテクスチャ座標系が設定されている。本実施形態において、フィールド画像には、横通路14と、縦通路15と、カーブ路17とが定められている。横通路14、縦通路15、及びカーブ路17は、フィールドオブジェクトにおける第1オブジェクト等が移動可能な通路を形成する。なお、図2では、特定の通路構成が示されるが、通路構成は任意である。また、図2では、フィールド画像は、矩形であるが、他の形態であってもよい。また、フィールド画像は複数種類用意され、使い分けられてもよい。 Here, a texture coordinate system having mutually orthogonal u-axis and v-axis is set in the field image, for example as shown in FIG. 2. In this embodiment, a horizontal passage 14, a vertical passage 15, and a curved path 17 are defined in the field image. The horizontal passage 14, the vertical passage 15, and the curved path 17 form a path through which the first object in the field object can move. Note that although a specific passage configuration is shown in FIG. 2, the passage configuration is arbitrary. Also, although the field image in FIG. 2 is rectangular, it may be of other shapes. Also, multiple types of field images may be prepared and used differently.

また、サーバ記憶部12は、第2オブジェクトと、フィールド画像のテクスチャ座標と、を対応付けた対応情報を記憶する。対応情報は、第2オブジェクトをフィールドオブジェクト上に配置する処理を実行するサーバ制御部13によって用いられる。 The server storage unit 12 also stores correspondence information that associates the second object with the texture coordinates of the field image. The correspondence information is used by the server control unit 13, which executes the process of placing the second object on the field object.

サーバ制御部13は、専用のマイクロプロセッサ又は特定のプログラムを読み込むことにより特定の機能を実現するCPUである。例えばサーバ制御部13は、表示部23に対するユーザ操作に応じてゲームのアプリケーションを実行する。また、サーバ制御部13は、ゲームに関する多様な処理を実行する。 The server control unit 13 is a dedicated microprocessor or a CPU that realizes specific functions by loading specific programs. For example, the server control unit 13 executes a game application in response to user operations on the display unit 23. The server control unit 13 also executes various processes related to the game.

例えば、サーバ制御部13は、フィールドオブジェクト及び第1オブジェクト等が表示されるフィールド画像を表示部23に表示させる。また、サーバ制御部13は、所定のユーザ操作に応じて、仮想空間内において第1オブジェクトを、フィールドオブジェクトに対して相対的に、フィールドオブジェクト上で移動させる。サーバ制御部13の具体的な処理の詳細は後述する。 For example, the server control unit 13 causes the display unit 23 to display a field image in which the field object, the first object, etc. are displayed. In addition, the server control unit 13 moves the first object on the field object relative to the field object in the virtual space in response to a predetermined user operation. Specific details of the processing by the server control unit 13 will be described later.

(端末装置の構成)
端末装置20の構成について具体的に説明する。図1に示すように、端末装置20は、端末通信部21と、端末記憶部22と、表示部23と、入力部24と、端末制御部25とを備える。
(Configuration of terminal device)
A specific description will be given of the configuration of the terminal device 20. 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.

端末通信部21は、外部装置と無線又は有線によって通信し、情報の送受信を行うインタフェースを含む。端末通信部21は、例えばLTE(Long Term Evolution)(登録商標)等のモバイル通信規格に対応する無線通信モジュール、無線LAN通信モジュール、又は有線LAN通信モジュール等を含んでもよい。端末通信部21は、ネットワーク30を介して、サーバ装置10との間で情報を送受信可能である。 The terminal communication unit 21 includes an interface that communicates with an external device wirelessly or wiredly to send and receive information. The terminal communication unit 21 may include a wireless communication module, a wireless LAN communication module, or a wired LAN communication module that supports a mobile communication standard such as LTE (Long Term Evolution) (registered trademark). The terminal communication unit 21 can send and receive information to and from the server device 10 via the network 30.

端末記憶部22は、例えば一次記憶装置及び二次記憶装置を含む。例えば端末記憶部22は、半導体メモリ、磁気メモリ、又は光メモリ等を含んでもよい。端末記憶部22は、サーバ装置10から受信する、ゲームの処理に用いられる種々の情報及びプログラムを記憶する。ゲームの処理に用いられる情報及びプログラムは、端末通信部21を介して外部装置から取得されてもよい。例えば、ゲームのアプリケーションプログラムが、所定のアプリケーション配信サーバから取得されてもよい。以下、アプリケーションプログラムを、単にアプリケーションともいう。また例えば、上述したユーザに関する情報及び対戦相手であるゲーム媒体に関する情報等の一部又は全部が、サーバ装置10から取得されてもよい。 The terminal storage unit 22 includes, for example, a primary storage device and a secondary storage device. For example, the terminal storage unit 22 may include a semiconductor memory, a magnetic memory, an optical memory, or the like. The terminal storage unit 22 stores various information and programs used in game processing received from the server device 10. The information and programs used in 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 specified application distribution server. Hereinafter, the application program is also simply referred to as an application. Also, for example, some or all of the above-mentioned information about the user and information about the game medium of the opponent may be acquired from the server device 10.

表示部23は、例えば液晶ディスプレイ又は有機EL(Electro-Luminescence)ディスプレイ等の表示デバイスを含む。表示部23は、多様な画像を表示可能である。表示部23は、例えばタッチパネルで構成され、多様なユーザ操作を検出するインタフェースとして機能する。 The display unit 23 includes a display device such as a liquid crystal display or an organic EL (Electro-Luminescence) display. The display unit 23 is capable of displaying a variety of images. The display unit 23 is configured, for example, as a touch panel, and functions as an interface that detects a variety of user operations.

入力部24は、例えば表示部23と一体的に設けられたタッチパネルを含む入力インタフェースを含む。入力部24は、端末装置20に対するユーザ入力を受付可能である。また、入力部24は、物理キーを含んでもよいし、マウス等のようなポインティングデバイスをはじめとする任意の入力インタフェースを更に含んでもよい。 The input unit 24 includes an input interface including, for example, a touch panel that is integral with the display unit 23. The input unit 24 is capable of accepting user input to the terminal device 20. The input unit 24 may also include physical keys, and may further include any input interface including a pointing device such as a mouse.

端末制御部25は、1つ以上のプロセッサを含む。端末制御部25は、端末装置20全体の動作を制御する。 The terminal control unit 25 includes one or more processors. The terminal control unit 25 controls the operation of the entire terminal device 20.

端末制御部25は、端末通信部21を介して情報の送受信を行う。例えば、端末制御部25は、ゲームの処理に用いられる種々の情報及びプログラムを、サーバ装置10及び他の外部サーバの少なくとも一方から受信する。端末制御部25は、受信された情報及びプログラムを、端末記憶部22に記憶する。 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 in 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.

端末制御部25は、ユーザの操作に応じてゲームのアプリケーションを起動する。端末制御部25は、サーバ装置10と協動して、ゲームを実行する。例えば、端末制御部25は、ゲームに用いられる種々の画像(例えば後述する各種のフィールド画像)を表示部23に表示させる。画面上には、例えばユーザ操作を検出するGUI(Graphic User Interface)が表示されてもよい。端末制御部25は、入力部24を介して、画面に対するユーザ操作を検出可能である。例えば端末制御部25は、ユーザのタップ操作、ロングタップ操作、フリック操作、及びスワイプ操作等を検出可能である。タップ操作は、ユーザが指で表示部23に触れ、その後に指を離す操作である。端末制御部25は、操作情報をサーバ装置10に送信する。 The terminal control unit 25 starts a game application in response to a user's operation. The terminal control unit 25 cooperates with the server device 10 to execute the game. For example, the terminal control unit 25 causes the display unit 23 to display various images (for example, various field images described later) used in the game. For example, a GUI (Graphic User Interface) that detects a user operation may be displayed on the screen. The terminal control unit 25 can detect a user operation on the screen via the input unit 24. For example, the terminal control unit 25 can detect a user's tap operation, long tap operation, flick operation, swipe operation, etc. A tap operation is an operation in which a 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.

(ゲームにおける描画機能)
サーバ制御部13は、端末装置20と協動して、表示部23上にフィールド画像を表示し、ゲームの進行に応じてフィールド画像を更新していく。本実施形態では、サーバ制御部13は、端末装置20と協動して、3次元の仮想空間に配置されるオブジェクトを、仮想空間に配置された仮想カメラから視た表現で描画する。
(Game drawing function)
The server control unit 13, in cooperation with the terminal device 20, displays a field image on the display unit 23 and updates the field image as the game progresses. In this embodiment, the server control unit 13, in cooperation with the terminal device 20, renders objects placed in a three-dimensional virtual space as viewed from a virtual camera placed in the virtual space.

なお、以下で説明する描画処理は、サーバ制御部13により実現されるが、他の実施形態では、以下で説明する描画処理の一部又は全部がサーバ制御部13により実現されてもよい。例えば、以下の説明において、端末装置20に表示されるフィールド画像の少なくとも一部を、サーバ装置10が生成したデータに基づいて端末装置20に表示させるウェブ表示とし、画面の少なくとも一部を、端末装置20にインストールされているネイティブアプリケーションによって表示させるネイティブ表示としてもよい。 The drawing process described below is realized by the server control unit 13, but in other embodiments, some 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.

図3及び図4は、フィールドオブジェクトと背景オブジェクトの一例の説明図である。図3は、フィールドオブジェクトを形成するフィールド面70と背景オブジェクトを形成する背景面72の全体を示す平面図であり、図4は、図3の矢印R0の方向成分を含む斜め方向に視たときの、フィールド面70と背景面72の一部を示す斜視図である。図4には、仮想カメラ60についても模式的に図示されている。また、図4では、背景面72は雲や太陽の絵を含む背景画像が投影された背景オブジェクトの形態で示されている。 Figures 3 and 4 are explanatory diagrams of an example of a field object and a background object. Figure 3 is a plan view showing the entire field surface 70 forming the field object and the background surface 72 forming the background object, and Figure 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 directional component of the arrow R0 in Figure 3. Figure 4 also shows a schematic diagram of the virtual camera 60. Also, in Figure 4, the background surface 72 is shown in the form of a background object onto which a background image including pictures of clouds and a sun is projected.

以下の説明において、各種オブジェクトの移動とは、仮想空間内の移動を表す。また、各種オブジェクトの可視範囲とは、仮想カメラ60から視て可視の範囲(すなわち仮想カメラ60の画角62内の範囲)を表す。 In the following description, the movement of various objects refers to movement within the virtual space. Furthermore, the visible range of various objects refers to the range visible from the virtual camera 60 (i.e., the range within the angle of view 62 of the virtual camera 60).

図3には、仮想空間の空間座標系としてのx、y、z座標系(以下、「グローバル座標系」とも称する)が示される。なお、グローバル座標系の原点は、任意の位置に固定されてよい。以下では、z方向の正側を仮想空間の上側とし、負側を仮想空間の下側とする。なお、本実施形態では、x軸は、第1軸の一例であり、y軸は、第2軸の一例であり、z軸は、第3軸の一例である。以下で、x方向、y方向、及びz方向の各用語は、x軸に平行な方向、y軸に平行な方向、及びz軸に平行な方向をそれぞれ意味する。例えば、z方向は、特に言及しない限り、xy平面内の任意の点を通るz軸に平行な方向を表す。 Figure 3 shows an x, y, z coordinate system (hereinafter also referred to as the "global coordinate system") as a spatial coordinate system of the virtual space. The origin of the global coordinate system may be fixed at any position. In the following, the positive side of 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. In the following, the terms 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 any point in the xy plane, unless otherwise specified.

フィールド面70は、仮想空間のxy平面に対応付けて配置される。本実施形態では、一例として、フィールド面70は、投影されたフィールド画像のテクスチャ座標系のu軸、v軸及び原点が、グローバル座標系のx軸、y軸及び原点と一致するように、xy平面に対応付けて配置される。なお、図3では、対応付けられる前の状態として、テクスチャ座標系のu軸、v軸及び原点は、グローバル座標系のx軸、y軸及び原点から離れて示されている。フィールド面70は、x方向、y方向、及びz方向の各方向で、並進移動(直線状に移動)が不能とされる。ただし、他の実施形態では、フィールド面70は、グローバル座標系で並進移動が可能とされてもよい。 The field surface 70 is arranged in correspondence with the xy plane of the virtual space. In this embodiment, as an example, the field surface 70 is arranged in correspondence with the xy plane so that the u-axis, v-axis, and origin of the texture coordinate system of the projected field image coincide with the x-axis, y-axis, and origin of the global coordinate system. Note that in FIG. 3, the u-axis, v-axis, and origin of the texture coordinate system are shown apart from the x-axis, y-axis, and origin of the global coordinate system as a state before the correspondence is established. The field surface 70 is not allowed to move in a translational manner (moving linearly) in each of the x-, y-, and z-directions. However, in other embodiments, the field surface 70 may be allowed to move in a translational manner in the global coordinate system.

フィールド面70は、xy平面に平行な平面を正規の状態としたとき、正規の状態から変形可能である。このように、本実施形態では、フィールドオブジェクトは、変形可能なフィールド面70に基づいて形状付けられる。すなわち、フィールドオブジェクトは、正規の状態から変形したフィールド面70に基づいて形状付けられることで、xy平面に平行な平面に対して変形する。以下、フィールド面70及びフィールドオブジェクトに関する変形とは、特に言及しない限り、xy平面に平行な平面を正規の形状(状態)とした場合の変形を意味する。なお、変形状態のフィールドオブジェクトは、変形状態のフィールド面70にフィールド画像を投影することで実現されてもよいし、正規の状態のフィールド面70にフィールド画像を投影させてからフィールド面70を変形させることで実現されてもよい。 The field surface 70 can be deformed from the normal state when a plane parallel to the xy plane is set as 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 set as the normal shape (state). Note that the deformed 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 field surface 70 in the normal state and then deforming the field surface 70.

なお、フィールド面70は、フィールド画像が投影されると、正規の状態では、投影されたフィールド画像のテクスチャ座標を引き継ぐことができる。すなわち、フィールド画像が投影されたフィールド面70上の各位置は、実質的に、フィールド画像のテクスチャ座標系(図2参照)で特定できる。以下では、フィールド面70上の各位置を特定するための座標系は、当該フィールド面70に投影されたフィールド画像のテクスチャ座標系と一致し、「フィールド座標系」とも称する。 When a field image is projected onto the field surface 70, in a normal state, the field surface 70 can inherit the texture coordinates of the projected field image. In other words, each position on the field surface 70 onto which the field image is projected can essentially be specified by the texture coordinate system of the field image (see FIG. 2). In the following, the coordinate system for specifying each position on the field surface 70 coincides with the texture coordinate system of the field image projected onto the field surface 70, and is also referred to as the "field coordinate system."

背景面72は、背景オブジェクトのz方向に延在する。ただし、他の実施形態では、背景面72は、z方向に対して傾斜して配置されてもよい。図3では、背景面72は、フィールド面70を取り囲むように配置される。この場合、背景面72は、グローバル座標系に対して固定であってもよいし、後述するようにz方向にだけ移動可能であってもよい。ただし、他の実施形態では、背景面72は、フィールド面70の一部だけを取り囲むように配置されてもよい。この場合、背景面72は、後述する仮想カメラ60の回転に応じて回転移動されてもよい。また、更なる他の実施形態では、背景面72は、フィールド面70と同様、変形可能とされてもよい。 The background surface 72 extends in the z direction of the background object. However, in other embodiments, the background surface 72 may be arranged at an angle with respect to the z direction. In FIG. 3, the background surface 72 is arranged to surround the field surface 70. In this case, the background surface 72 may be fixed with respect to the global coordinate system, or may be movable only in the z direction as described below. However, in other embodiments, the background surface 72 may be arranged to surround only a portion of the field surface 70. In this case, the background surface 72 may be rotated and moved in response to the rotation of the virtual camera 60, which will be described later. Furthermore, in still other embodiments, the background surface 72 may be deformable, similar to the field surface 70.

図5は、図4に示した仮想カメラ60の視線方向Vとz方向とを含む平面(以下、「Vz平面」とも称する)を垂直に視たときの、各種の位置関係を示す説明図である。図5には、仮想カメラ60の画角内のフィールドオブジェクトの領域に位置する第1オブジェクト3が模式的に示されている。図6は、仮想カメラ60から視た表現で描画して得られたフィールド画像の一例を示す概略図である。 Figure 5 is an explanatory diagram showing various positional relationships when a plane including the line of sight V and the z direction of the virtual camera 60 shown in Figure 4 (hereinafter also referred to as the "Vz plane") is viewed vertically. Figure 5 shows a schematic diagram of a first object 3 located in the area of a field object within the angle of view of the virtual camera 60. Figure 6 is a schematic diagram showing an example of a field image obtained by drawing an image viewed from the virtual camera 60.

図5には、仮想カメラ60の画角62(z方向に垂直な方向に視た際の画角)が境界線6211、6212の間に模式的に示される。なお、本実施形態では、仮想カメラ60の画角は一定であるが、他の実施形態では、仮想カメラ60の画角が可変とされてもよい。 In FIG. 5, the angle of view 62 of the virtual camera 60 (the angle of view when viewed in a direction perpendicular to the z direction) is shown between the boundaries 6211 and 6212. Note that in this embodiment, the angle of view of the virtual camera 60 is constant, but in other embodiments, the angle of view of the virtual camera 60 may be variable.

図5に示す例では、画角62は、上側の境界線6211が背景面72と交わり(点P2参照)、下側の境界線6212がフィールド面70と交わる(点P1参照)。この場合、図6に示すように、フィールド画像G60は、背景面72(及びそれに伴い背景オブジェクト)と、フィールド面70(及びそれに伴いフィールドオブジェクト)とを含む。なお、図5では、仮想カメラ60の画角内のフィールドオブジェクトの領域に第1オブジェクト3が位置するので、フィールド画像G60は、第1オブジェクト3の表現を含む。 5, the angle of view 62 is such that the upper boundary 6211 intersects with the background surface 72 (see point P2) and the lower boundary 6212 intersects with the field surface 70 (see point P1). In this case, as shown in FIG. 6, the field image G60 includes the background surface 72 (and the associated background object) and the field surface 70 (and the associated field object). Note that in FIG. 5, the first object 3 is located in the area of the field object within the angle of view of the virtual camera 60, so the field image G60 includes a representation of the first object 3.

ここで、本実施形態では、フィールド面70(及びそれに伴いフィールドオブジェクト)により仮想的な地平線HL(図6)が表現されるように、図5に示すように、フィールド面70が曲げ変形される。具体的には、フィールド面70は、視線方向Vで遠方に向かうほど(すなわち背景面72に向かうにつれて)下側に向かう方向で変形する。なお、このような変形は、仮想カメラ60の画角内の範囲内だけで実現されてもよいし、フィールド面70の全体で実現されてもよい。 In this embodiment, the field surface 70 is bent and deformed as shown in FIG. 5 so that the field surface 70 (and therefore the field object) represents a virtual horizon HL (FIG. 6). Specifically, the field surface 70 is deformed in a downward direction as it moves further away in the line of sight direction V (i.e., toward 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 surface 70.

フィールド面70の全体が変形される場合は、Vz平面で切断した際のフィールド面70の形状(図5のような線で表現される形状)がどの断面位置でも略同じであってよい(すなわち略等断面であってよい)。なお、略同じとは、10%以内の誤差を許容する概念である。なお、フィールドオブジェクトは、上述したように、フィールド面70に基づいて形状付けられるので、Vz平面で切断した際のフィールドオブジェクトの形状は、Vz平面で切断した際のフィールド面70の形状と同じであるが、フィールド面70の形状に対してわずかに異なる形状(例えば微細な凹凸等)を有してもよい。 When the entire field surface 70 is deformed, the shape of the field surface 70 when cut in the Vz plane (the shape represented by the lines in FIG. 5) may be approximately the same at any cross-sectional position (i.e., it may be an approximately equal cross-section). Note that approximately the same is a concept that allows for an error of 10% or less. Note that, since the field object is shaped based on the field surface 70 as described above, the shape of the field object when cut in the Vz plane is the same as the shape of the field surface 70 when cut in the Vz plane, but it may have a slightly different shape (e.g., fine irregularities, etc.) compared to the shape of the field surface 70.

このような表現の地平線HLは、図5に示すように、フィールド面70に対する仮想カメラ60からの接線6213(画角62内の接線)の交点P3により形成される。なお、図6では、地平線HLよりも手前に第1オブジェクト3が位置するので、地平線HLの表現の一部が第1オブジェクト3により隠れることになる。逆に、第1オブジェクト3が地平線HLよりも奥側(背景面72に近い側)に位置する場合は、第1オブジェクト3の一部又は全部がフィールドオブジェクトにより隠れることになる。 As shown in FIG. 5, the horizon line HL in this representation is formed by the intersection point P3 of a tangent 6213 (a tangent within the angle of view 62) from the virtual camera 60 to the field surface 70. Note that in FIG. 6, the first object 3 is located in front of the horizon HL, so part of the representation of the horizon HL is hidden by the first object 3. Conversely, if the first object 3 is located behind the horizon HL (closer to the background surface 72), part or all of the first object 3 will be hidden by the field object.

ここで、地平線HLの高さH1(図6参照)は、境界線6212に対する接線6213のなす角度αに依存する。角度αは、フィールド面70の曲げ態様に応じて変化しうる。例えば、図5に一点鎖線で示すフィールド面70’の場合、境界線6212に対する接線6213’のなす角度α’が角度αよりも小さくなり、それ故に、地平線HLの高さH1は小さくなる(図示せず)。このようにしてフィールド面70の曲げ態様を変化させることで、地平線HLの高さを変化させることができることがわかる。なお、地平線HLの高さが変化すると、仮想カメラ60の画角内に収まる背景面72の範囲もそれに伴い変化する。 Here, the height H1 of the horizon HL (see FIG. 6) depends on the angle α of the tangent 6213 with respect to the boundary line 6212. The angle α can change depending on the bending manner of the field surface 70. For example, in the case of the field surface 70' shown by the dashed line in FIG. 5, the angle α' of the tangent 6213' with respect to the boundary line 6212 is smaller than the angle α, and therefore the height H1 of the horizon HL is smaller (not shown). It can be seen that the height of the horizon HL can be changed by changing the bending manner of the field surface 70 in this way. 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.

このようにして本実施形態では、視線方向Vに視てフィールド面70が背景面72に近づくにつれて下方に向かう向きで曲げ変形されることで、地平線HLを適切に表現できる。また、曲げ変形の変形態様(変形度合い等)を変化させることで、地平線HLの高さH1(及びそれに伴いフィールドオブジェクトや背景オブジェクト等の可視範囲)を自由に変化させることができる。以下では、視線方向Vに視てフィールド面70が背景面72に近づくにつれて下方に向かう向きで変形される態様の曲げ変形を、単に「フィールド面70の曲げ変形」とも称する。 In this manner, in this embodiment, the horizon HL can be appropriately represented by bending the field surface 70 downward as it approaches the background surface 72 when viewed in the line of sight V. In addition, by changing the deformation mode (degree of deformation, etc.) of the bending deformation, the height H1 of the horizon HL (and therefore the visible range of the field object, background object, etc.) can be freely changed. Hereinafter, the bending deformation in which the field surface 70 is deformed downward as it approaches the background surface 72 when viewed in the line of sight V is also simply referred to as the "bending deformation of the field surface 70."

図7は、フィールド面70の曲げ変形を実現するための変形パラメータの一例の説明図である。 Figure 7 is an explanatory diagram of an example of deformation parameters for achieving bending deformation of the field surface 70.

図7には、Vz平面内の2次元座標系Xc、Yc(以下、「ローカル座標系」とも称する)が定義されている。XcYc平面は、Vz平面に平行な平面であり、Yc軸は、z軸に平行な軸であり、Yc軸の正側は、仮想空間の上側に対応する。図7では、フィールド面70の変形態様を決める関数F1が示される。 In FIG. 7, a two-dimensional coordinate system Xc, Yc (hereinafter also referred to as a "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 surface 70 is shown.

関数F1は、Xc座標の値の絶対値が大きくなるほどYc座標の値が非線形に単調減少する関数である。また、関数F1は、Yc軸に関して対称である。ただし、他の実施形態では、関数F1は、Xc座標の値の絶対値が大きくなるほどYc座標の値が線形に単調減少してもよいし、及び/又は、Yc軸に関して非対称であってもよい。本実施形態では、一例として、関数F1は、2次関数であり、以下で表される。
yc=-A1×(xc)
ここで、xcは、Xc座標の値であり、ycはYc座標の値であり、A1は、変形度合いを決める係数(以下、「変形パラメータA1」と称する)である。
The function F1 is a function in which the value of the Yc coordinate monotonically decreases nonlinearly as the absolute value of the Xc coordinate value increases. The function F1 is also symmetrical with respect to the Yc axis. However, in other embodiments, the function F1 may be a function in which the value of the Yc coordinate monotonically decreases linearly as the absolute value of the Xc coordinate value increases, and/or may be asymmetrical with respect to the Yc axis. In the present embodiment, as an example, the function F1 is a quadratic function and is expressed as follows.
yc=-A1×(xc) 2
Here, xc is the Xc coordinate value, yc is the Yc coordinate value, and A1 is a coefficient that determines the degree of deformation (hereinafter, referred to as "deformation parameter A1").

なお、上記の関数F1はあくまで一例であり、例えば以下のような異なる関数が利用されてもよい。
xc>aのとき、yc=-A1×(xc-a)
xc≦-aのとき、yc=-A1×(xc+a)
-a≦xc≦aのとき、yc=0
この場合、aは正の定数であり、-a≦xc≦aの範囲では平らな平面が実現される。
Note that the above function F1 is merely an example, and a different function such as the following may be used.
When xc>a, yc=-A1×(xc-a) 2
When xc≦-a, yc=-A1×(xc+a) 2
- when a≦xc≦a, yc=0
In this case, a is a positive constant, and a flat plane is realized in the range of -a≦xc≦a.

あるいは、xc>-a1のとき、yc=-A1×(xc)
xc≦-a1のとき、yc=0
この場合、a1は、正の固定値であってもよく、xc=-a1の位置が、画角62の下側の境界線6212とフィールド面70の交点(図5の点P1)と一致するように設定されてよい。
Or, when xc>-a1, yc=-A1×(xc) 2
When xc≦-a1, yc=0
In this case, a1 may be a positive fixed value, and the position of xc=-a1 may be set to coincide with the intersection of the lower boundary line 6212 of the field of view 62 and the field plane 70 (point P1 in FIG. 5).

また、他の実施形態では、複数種類の関数が用意され、各種条件に応じて異なる関数が選択されてもよい。 In other embodiments, multiple types of functions may be prepared, and different functions may be selected depending on various conditions.

図7Aは、関数F1に基づくフィールド面70の曲げ変形の説明図である。 Figure 7A is an explanatory diagram of the bending deformation of the field surface 70 based on function F1.

フィールド面70は、関数F1にしたがって変形される。従って、変形パラメータA1の値が大きいほどフィールド面70の変形度合いが大きくなる。図7Aでは、フィールド面70は、上述したように、略等断面で曲げ変形される。 The field surface 70 is deformed according to the function F1. Therefore, the greater the value of the deformation parameter A1, the greater the degree of deformation of the field surface 70. In FIG. 7A, the field surface 70 is bent and deformed with a substantially uniform cross section, as described above.

ここで、図8から図8Cを参照して、フィールド面70の曲げ変形の適用場面の一例を説明する。 Here, an example of an application scenario for bending deformation of the field surface 70 will be described with reference to Figures 8 to 8C.

図8は、フィールドオブジェクト77の平面図であり、図8Aは、位置M1に係るフィールド面の曲げ変形の状態の説明図であり、図8Bは、位置M2に係るフィールド面の曲げ変形の状態の説明図であり、図8Cは、位置M3に係るフィールド面の曲げ変形の状態の説明図である。図8では、フィールドオブジェクト77は、フィールド画像が正規状態のフィールド面70に投影された表現で示されている。図8では、位置M1から位置M3が例示されており、位置M2及び位置M3は、カーブ路17の開始位置付近と終了位置付近である。なお、図8Aから図8Cでは、作図の都合上、カーブ路17等がフィールド面70から離れた部分(仮想カメラ60の画角62の外側の部分)を有するが、全体がフィールド面70上に投影されてもよい。 8 is a plan view of the field object 77, FIG. 8A is an explanatory diagram of the state of bending deformation of the field surface at position M1, FIG. 8B is an explanatory diagram of the state of bending deformation of the field surface at position M2, and FIG. 8C is an explanatory diagram of the state of bending deformation of the field surface at position M3. In FIG. 8, the field object 77 is shown with a representation in which the field image is projected onto the field surface 70 in the normal state. In FIG. 8, positions M1 to M3 are illustrated, and positions M2 and M3 are near the start and end positions of the curved road 17. Note that in FIG. 8A to FIG. 8C, for convenience of drawing, the curved road 17 etc. has a part away from the field surface 70 (a part outside the angle of view 62 of the virtual camera 60), but the entire part may be projected onto the field surface 70.

ここでは、位置M1及び位置M3は、それぞれ、仮想カメラ60の視線方向Vとxy平面(又は変形前のフィールド面70)との間の交点位置に対応する。図8には、位置M2であるときの、仮想カメラ60の投影ベクトルV’(視線方向Vのxy平面上の投影ベクトルV’)が示される。また、位置M1及び位置M3は、第1オブジェクト3の位置に対応するものとする。すなわち、第1オブジェクト3が位置M1から位置M3までカーブ路17に沿って移動したときの仮想カメラ60の動きに伴うフィールド面70の曲げ変形を説明する。 Here, positions M1 and M3 respectively correspond to the intersection positions between the line of sight V of the virtual camera 60 and the xy plane (or the field surface 70 before deformation). Figure 8 shows the projection vector V' of the virtual camera 60 (the projection vector V' on the xy plane of the line of sight V) when it is at position M2. Positions M1 and M3 correspond to the position of the first object 3. That is, we will explain the bending deformation of the field surface 70 that accompanies the movement of the virtual camera 60 when the first object 3 moves from position M1 to position M3 along the curved road 17.

仮想カメラ60の視線方向Vとフィールド面70との間の交点位置が位置M1に位置するとき、図8Aに示すようなフィールド面70の曲げ変形が実現される。仮想カメラ60の視線方向Vとフィールド面70との間の交点位置が位置M2に位置するとき、図8Bに示すようなフィールド面70の曲げ変形が実現される。仮想カメラ60の視線方向Vとフィールド面70との間の交点位置が位置M3に位置するとき、図8Cに示すようなフィールド面70の曲げ変形が実現される。 When the intersection position between the line of sight V of the virtual camera 60 and the field surface 70 is located at position M1, the bending deformation of the field surface 70 is realized as shown in FIG. 8A. When the intersection position between the line of sight V of the virtual camera 60 and the field surface 70 is located at position M2, the bending deformation of the field surface 70 is realized as shown in FIG. 8B. When the intersection position between the line of sight V of the virtual camera 60 and the field surface 70 is located at position M3, the bending deformation of the field surface 70 is realized as shown in FIG. 8C.

このようにして、第1オブジェクト3が位置M1から位置M3に移動するのに伴い仮想カメラ60の視線方向Vが変化した場合に、変化した視線方向Vに応じたフィールドオブジェクト77の曲げ変形(仮想カメラ60の視線方向Vに視て同じ変形態様の曲げ変形)が実現される。 In this way, when the line of sight direction V of the virtual camera 60 changes as the first object 3 moves from position M1 to position M3, a bending deformation of the field object 77 in accordance with the changed line of sight direction V (a bending deformation having the same deformation pattern as seen in the line of sight direction V of the virtual camera 60) is realized.

ところで、仮想空間における仮想カメラ60の位置(フィールドオブジェクトに対する位置)が変化すると、仮想空間における仮想カメラ60の画角内の領域(例えばフィールドオブジェクトの領域)が変化するので、フィールド画像の多様化を図ることができる。ただし、この場合でも、仮想カメラ60の位置(フィールドオブジェクトに対する位置)が変化しても、仮想カメラ60の画角内の領域の状態が単調であると、フィールド画像の多様化を図ることができない。従って、仮想空間における仮想カメラ60の位置(フィールドオブジェクトに対する位置)を変化可能としつつ、フィールドオブジェクト上に配置される第2オブジェクトの数や種類等を増やすことで、フィールド画像の多様化を効果的に図ることができる。以下、仮想カメラ60の位置とは、特に言及しない限り、フィールドオブジェクトに対する位置(相対的な位置)を意味する。 When the position of the virtual camera 60 in the virtual space (position relative to the field object) changes, the area within the angle of view of the virtual camera 60 in the virtual space (for example, the area of the field object) changes, so that the field image can be diversified. However, even in this case, if the state of the area within the angle of view of the virtual camera 60 is monotonous even if the position of the virtual camera 60 (position relative to the field object) changes, the field image cannot be diversified. Therefore, by making it possible to change the position of the virtual camera 60 in the virtual space (position relative to the field object) and increasing the number and types of second objects placed on the field object, the field image can be effectively diversified. Hereinafter, the position of the virtual camera 60 means the position (relative position) relative to the field object, unless otherwise specified.

しかしながら、本実施形態では、上述したように、フィールド面70(及びそれに伴いフィールドオブジェクト)は曲げ変形されるが、曲げ変形の際の変形度合いが常に一定であると、仮想カメラ60から視た表現で描画して得られるフィールド画像が単調化しやすい。 However, in this embodiment, as described above, the field surface 70 (and therefore the field object) is bent and deformed, but if the degree of deformation during bending and deformation is always constant, the field image obtained by drawing it as seen from the virtual camera 60 tends to become monotonous.

この点、本実施形態では、仮想カメラ60の位置が変化可能とされるだけなく、フィールド面70(及びそれに伴いフィールドオブジェクト)の曲げ変形に係る変形度合いも変化可能とされる。フィールド面70(及びそれに伴いフィールドオブジェクト)の曲げ変形に係る変形度合いが変化すると、同じフィールドオブジェクトの領域であっても仮想カメラ60から視たときの見え方が異なるので、仮想カメラ60から視た表現で描画して得られるフィールド画像の更なる多様化を図ることができる。 In this regard, in this embodiment, not only is the position of the virtual camera 60 variable, but the degree of deformation associated with the bending deformation of the field surface 70 (and therefore the field object) can also be changed. When the degree of deformation associated with the bending deformation of the field surface 70 (and therefore the field object) changes, the same field object area appears different when viewed from the virtual camera 60, so that it is possible to further diversify the field image obtained by drawing it as viewed from the virtual camera 60.

また、本実施形態では、フィールドオブジェクト用の一の素材(フィールド画像及びフィールド面70)を用いて、フィールド面70の曲げ変形に係る変形度合いを変化させることで、多様な形態のフィールドオブジェクトを実現する。これにより、多様なフィールドオブジェクトを事前に用意しておく場合に比べて、フィールドオブジェクト用の記憶領域の効率化を図ることができる。すなわち、記憶領域を効率的に利用して多様な形態のフィールドオブジェクトを実現できる。 In addition, in this embodiment, a single material for the field object (field image and field surface 70) is used to vary the degree of deformation related to the bending deformation of the field surface 70, thereby realizing field objects of various shapes. This makes it possible to improve the efficiency of the storage area for field objects compared to a case in which a variety of field objects are prepared in advance. In other words, it is possible to realize field objects of various shapes by efficiently using the storage area.

なお、上述のように、フィールド面70の変形度合いが変化されると、地平線HLの高さH1が変化することに起因して、ユーザに違和感を与えるおそれがある。例えば、仮想カメラ60の位置が固定されたまま、フィールド面70の変形度合いが変化されると、違和感を与えやすい。 As described above, when the degree of deformation of the field surface 70 is changed, the height H1 of the horizon HL changes, which may cause the user to feel uncomfortable. For example, if the degree of deformation of the field surface 70 is changed while the position of the virtual camera 60 remains fixed, this is likely to cause the user to feel uncomfortable.

そこで、本実施形態では、フィールドオブジェクトのうちの、仮想カメラ60の画角内に収まる領域が変化する場合に、当該変化に合わせて、フィールド面70の変形度合いが変化される。例えば、仮想カメラ60の位置が変化する場合に、当該変化に合わせて、フィールド面70の変形度合いが変化される。これにより、フィールド面70の変形度合いが変化されることで生じうる不都合(すなわちユーザに与えうる違和感)を低減できる。 Therefore, in this embodiment, when the area of the field object that falls within the angle of view 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. This makes it possible to reduce inconvenience (i.e., discomfort that may be felt by the user) that may occur due to a change in the degree of deformation of the field surface 70.

例えば、仮想カメラ60の位置が1つ以上の特定位置又は特定範囲内にある場合に、そうでない場合よりもフィールド面70の変形度合いが大きくなるようにしてもよい。これにより、仮想カメラ60の位置が特定位置又は特定範囲内にあるときのフィールド画像(すなわち仮想カメラ60の画角内の各種オブジェクトの表現)を、他の位置にあるときのフィールド画像とは異なる態様で表現できる。例えば、特定位置に係るフィールド画像を他の位置に係るフィールド画像よりも目立たせたり、特定位置に係るフィールド画像に特定の意味を持たせたりするといった効果を与えることができる。なお、特定位置又は特定範囲は、例えば第1オブジェクトが移動しながら曲がる位置等(例えば図2に示す横通路14と縦通路15との交差位置)に対応して設定されてもよいし、強調したいオブジェクト(例えば出現確率が低いゲーム媒体に係るオブジェクト)が配置される位置に対応して設定されてもよい。この場合、例えば、特定位置は、当該オブジェクトの位置に対して所定関係を有する位置であってよい。また、特定位置は、動的に変化されてもよい。例えば、1つ以上の特定位置は、出現確率が低いゲーム媒体に係るオブジェクトが配置される場合だけ、当該オブジェクトが配置される位置に対応して設定される特定位置を含んでもよい。 For example, when the position of the virtual camera 60 is in one or more specific positions or within a specific range, the degree of deformation of the field surface 70 may be greater than when the position of the virtual camera 60 is not in that range. This allows the field image when the position of the virtual camera 60 is in a specific position or within a specific range (i.e., the representation of various objects within the angle of view of the virtual camera 60) to be expressed in a manner different from the field image when the position of the virtual camera 60 is in another position. For example, it is possible to give an effect such as making the field image related to the specific position more prominent than the field image related to other positions, or giving a specific meaning to the field image related to the specific position. Note that the specific position or specific range may be set corresponding to, for example, a position where the first object turns while moving (for example, the intersection position of the horizontal passage 14 and the vertical passage 15 shown in FIG. 2), or may be set corresponding to a position where an object to be emphasized (for example, an object related to a game medium with a low appearance probability) is placed. In this case, for example, the specific position may be a position having a predetermined relationship with the position of the object. In addition, the specific position may be dynamically changed. For example, the one or more specific positions may include a specific position set corresponding to the position where an object related to a game medium with a low appearance probability is placed only when the object is placed.

ここで、仮想カメラ60の位置が変化可能とされると、仮想カメラ60の位置の変化に伴い、フィールドオブジェクトにおける仮想カメラ60の画角内の領域が変化する。この場合、フィールドオブジェクト上に多様な第2オブジェクトを多様な態様で配置すれば、ユーザの操作対象の第1オブジェクトの写り方や複数の第2オブジェクトの重なり具合が変化するので、仮想カメラ60から視た表現で描画して得られるフィールド画像を多様化できる。また、第2オブジェクト及び/又は第1オブジェクトの間で重複(重なり)が生じた場合でも、上述したように、フィールド面70の変形度合いを調整することで、重複するオブジェクトは、上下に互いにずれた位置に配置される。したがって、重複するオブジェクトのうちの、個々のオブジェクト又は着目させた1つ以上のオブジェクトの視認性を高めることができる。 Here, if the position of the virtual camera 60 can be changed, the area within the angle of view of the virtual camera 60 in the field object changes with the change in the position of the virtual camera 60. In this case, if various second objects are arranged on the field object in various ways, the way in which the first object operated by the user is reflected and the degree of overlap of the multiple second objects change, so that the field image obtained by drawing it as seen from the virtual camera 60 can be diversified. Also, even if overlap (overlap) occurs between the second object and/or the first object, as described above, the degree of deformation of the field surface 70 is adjusted so that the overlapping objects are arranged at positions shifted from each other vertically. Therefore, the visibility of each object or one or more objects focused on among the overlapping objects can be improved.

また、仮想カメラ60から視た表現で描画して得られるフィールド画像を多様化させることで、かかるフィールド画像の一部を際立たせることが可能になり、ユーザのオブジェクトに対する視認性が向上する。更に、操作対象となるオブジェクトや、操作箇所が明確になることにより操作性が向上する。また、限られた画面内で、複数のオブジェクトが存在したとしても視認性を損なうことなく(情報量を制限することなく)、仮想空間内の状況を表現することができる。このような効果は特にスマートフォンのような狭い画面において顕著である。 In addition, by diversifying the field image obtained by drawing it as seen from the virtual camera 60, it is possible to highlight parts of the field image, improving the user's visibility of the objects. Furthermore, operability is improved by clarifying the objects to be operated and the operation locations. Furthermore, even if multiple objects exist within a limited screen, the situation in the virtual space can be expressed without compromising visibility (without limiting the amount of information). This effect is particularly noticeable on a small screen such as a smartphone.

また、地平線の表現等は、フィールドオブジェクトの曲げ変形という単純な処理で実現することができるため、処理負荷も抑えることができる。また、フィールドオブジェクトにおける仮想カメラ60の画角外の(隠れた)オブジェクトを描画しなくてもよいので、その点でも処理負荷を抑えることができる。 In addition, the expression of the horizon, etc. can be achieved by a simple process of bending and deforming the field object, which reduces the processing load. Also, there is no need to draw objects (hidden objects) outside the angle of view of the virtual camera 60 in the field object, which also reduces the processing load.

図9は、仮想カメラ60の位置の変化の自由度の説明図である。仮想カメラ60の位置の変化は、図9に示すように、視線方向Vに沿った変化V1と、視線方向Vに交差する方向の変化V2、V3と、これらの組み合わせとを含む。変化V2は、Vz平面内の変化であり、V3は、Vz平面に対して垂直な方向の変化である。なお、仮想カメラ60の位置の変化は、グローバル座標系での仮想カメラ60の変位(移動)により実現されてもよいし、グローバル座標系でのフィールドオブジェクトの変位(移動)により実現されてもよいし、これらの組み合わせにより実現されてもよい。 Figure 9 is an explanatory diagram of the degree of freedom of change in the position of the virtual camera 60. As shown in Figure 9, the change in the position of the virtual camera 60 includes a change V1 along the line of sight V, changes V2 and V3 in directions intersecting the line of sight V, and combinations of these. Change V2 is a change within 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 achieved by displacing (moving) the virtual camera 60 in the global coordinate system, by displacing (moving) the field object in the global coordinate system, or by a combination of these.

このように、本実施形態では、仮想カメラ60の位置(相対的な位置)が変化する態様は、視線方向Vに交差する方向(V2、V3)でフィールドオブジェクトに対する位置(相対的な位置)が変化する態様(以下、「第1変化態様」と称する)と、視線方向Vに沿った方向(V1)でフィールドオブジェクトに対する位置(相対的な位置)が変化する態様(以下、「第2変化態様」と称する)と、を含む。 Thus, in this embodiment, the manner in which the position (relative position) of the virtual camera 60 changes includes a manner 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 (hereinafter referred to as the "first change manner"), and a manner in which the position (relative position) with respect to the field object changes in a direction (V1) along the line of sight direction V (hereinafter referred to as the "second change manner").

この点、フィールド面70の変形度合いの変化は、第1変化態様及び第2変化態様のいずれか一方に伴って実現されてもよいし、第1変化態様及び第2変化態様の双方に伴って実現されてもよい。例えば、仮想カメラ60の位置が、視線方向Vに交差する方向に変化しつつ、視線方向Vに沿って変化する。 In this regard, the change in the degree of deformation of the field surface 70 may be realized in association with either the first change mode or the second change mode, or in association with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes along the line of sight V while changing in a direction intersecting the line of sight V.

なお、フィールド面70の変形度合いの変化の際に、同時に実現される変化(すなわち、フィールドオブジェクトのうちの、仮想カメラ60の画角内に収まる領域の変化)は、フィールドオブジェクトに対する位置(相対的な位置)の変化に限らず、仮想カメラ60の視線方向Vの回転(図10参照)によっても実現されてもよい。また、仮想カメラ60の光学パラメータを可変値とし、仮想カメラ60の光学パラメータの値を変化させることで、フィールドオブジェクトのうちの、仮想カメラ60の画角内に収まる領域を変化させることも可能である。かかる光学パラメータは、例えば、焦点距離や画角等のような、仮想カメラ60のズーム量に関連する光学パラメータであってよい。 When the degree of deformation of the field surface 70 changes, the change that is realized at the same time (i.e., the change in the area of the field object that falls within the angle of view of the virtual camera 60) is not limited to a change in position (relative position) with respect to the field object, but may also be realized by rotating the line of sight V of the virtual camera 60 (see FIG. 10). In addition, it is also possible to change the area of the field object that falls within the angle of view of the virtual camera 60 by setting the optical parameters of the virtual camera 60 to variable values and changing the values of the optical parameters of the virtual camera 60. Such optical parameters may be optical parameters related to the zoom amount of the virtual camera 60, such as the focal length and angle of view.

本実施形態では、一例として、仮想カメラ60は、フィールドオブジェクトに対する位置(相対的な位置)が変化可能とされるだけなく、仮想カメラ60の視線方向Vも変化可能とされる。具体的には、仮想カメラ60の視線方向Vは、z方向に平行な軸(以下、「公転軸Pc」と称する)まわりの回転が可能とされる。なお、仮想カメラ60の視線方向Vは、公転軸Pcまわりの回転のみが可能とされてもよいし、他の軸まわりの回転(後述する自転)も可能とされてもよい。例えば、仮想カメラ60の視線方向Vは、Vz平面に垂直な軸まわりの回転が可能とされてもよい。すなわち、仮想カメラ60の迎角(後述する迎角パラメータψ)が変化する態様で、仮想カメラ60の視線方向Vが回転されてもよい。この場合、回転中心は、仮想カメラ60の位置に対して所定関係となる位置であってよく、所定関係は、固定であってもよいし、変化されてもよい。 In this embodiment, as an example, not only is the position (relative position) of the virtual camera 60 variable with respect to the field object, but the line of sight V of the virtual camera 60 is also variable. Specifically, the line of sight V of the virtual camera 60 is rotatable around an axis parallel to the z direction (hereinafter referred to as the "revolution axis Pc"). Note that the line of sight V of the virtual camera 60 may be rotatable only around the revolution axis Pc, or may be rotatable around other axes (rotation, described later). For example, the line of sight V of the virtual camera 60 may be rotatable around an axis perpendicular to the Vz plane. That is, the line of sight 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 may be a position that has a predetermined relationship with the position of the virtual camera 60, and the predetermined relationship may be fixed or may be changed.

以下、仮想カメラ60の回転とは、特に言及しない限り、視線方向Vが公転軸Pcまわりに回転する態様の回転を意味する。仮想カメラ60の向きとは、仮想カメラ60の視線方向Vの向きを意味する。 Hereinafter, unless otherwise specified, the rotation of the virtual camera 60 means the rotation of the line of sight V around the revolution axis Pc. The orientation of the virtual camera 60 means the orientation of the line of sight V of the virtual camera 60.

図10は、仮想カメラ60の視線方向Vの回転(変化)の説明図であり、z方向に視た仮想カメラ60及びその画角62を模式的に示す図である。図10には、回転中における2つの位置で仮想カメラ60が模式的に示されている。 Figure 10 is an explanatory diagram of the rotation (change) of the line of sight direction V of the virtual camera 60, and is a diagram that shows a schematic representation of the virtual camera 60 viewed in the z direction and its angle of view 62. Figure 10 shows a schematic representation of the virtual camera 60 in two positions during rotation.

図10では、仮想カメラ60の視線方向Vに係る公転軸Pcは、z方向に視て、仮想カメラ60の視線方向Vを通りかつ仮想カメラ60から視線方向V後方側にオフセットされている。この場合、仮想カメラ60が360度回転すると、仮想カメラ60は、z方向に視て、公転軸Pcまわりの円形の軌跡C70を描く。ただし、公転軸Pcの位置は、任意であり、仮想カメラ60に対して所定関係となる位置であってよく、所定関係は、固定であってもよいし、変化されてもよい。ただし、本明細書では、公転軸Pcは、仮想カメラ60を通る場合の自転軸とは区別され、従って、自転軸とは異なるように設定される。 In FIG. 10, the revolution axis Pc related to the line of sight V of the virtual camera 60 passes through the line of sight V of the virtual camera 60 and is offset rearward from the virtual camera 60 in the line of sight V when viewed in the z direction. In this case, when the virtual camera 60 rotates 360 degrees, the virtual camera 60 draws a circular trajectory C70 around the revolution axis Pc when viewed in the z direction. However, the position of the revolution axis Pc is arbitrary and may be 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 it passes through the virtual camera 60, and therefore is set to be different from the rotation axis.

なお、図10では、視線方向Vは、z方向に視て、仮想カメラ60の回転中は常に、公転軸Pcを通りかつ公転軸Pcから離れる向きであるが、これに限られない。例えば、視線方向Vは、z方向に視て、仮想カメラ60の回転中は常に、公転軸Pcを通りかつ公転軸Pcに向かう向きであってもよい。すなわち、公転軸Pcは、z方向に視て、仮想カメラ60の視線方向Vを通りかつ仮想カメラ60から視線方向V前方側(遠方側)にオフセットされてもよい。この場合、公転軸Pcは、例えば、全方位からユーザに見せたい所定のオブジェクト(例えば後述する所定オブジェクト)を通るように設定されてもよい。また、他の実施形態では、視線方向Vは、z方向に視て、仮想カメラ60の回転(公転)中に、自転してもよい。すなわち、仮想カメラ60は、自転軸61(z軸に平行な軸まわりに回転(自転)可能とされてもよい。あるいは、視線方向Vは、公転とは独立して自転可能とされてもよい。 10, the line of sight V always passes through the revolution axis Pc and is directed away from the revolution axis Pc when viewed in the z direction during the rotation of the virtual camera 60, but is not limited to this. For example, the line of sight V may always pass through the revolution axis Pc and be directed toward the revolution axis Pc when viewed in the z direction during the rotation of the virtual camera 60. That is, the revolution axis Pc may pass through the line of sight V of the virtual camera 60 when viewed in the z direction and be offset forward (farther) from the virtual camera 60 in the line of sight V. In this case, the revolution axis Pc may be set to pass through a predetermined object (for example, a predetermined object described later) that is to be shown to the user from all directions. In another embodiment, the line of sight V may rotate on its own axis during the rotation (revolution) of the virtual camera 60 when viewed in the z direction. That is, the virtual camera 60 may be able to rotate (spin) around a rotation axis 61 (an axis parallel to the z-axis. Alternatively, the line of sight V may be able to rotate independently of the revolution.

ところで、上述したように、地平線HLは、フィールド面70が曲げ変形されることで、形成される。したがって、仮想カメラ60の回転に伴い視線方向Vが変化すると、それに伴い、フィールド面70の曲げ変形の変形態様が変化される。すなわち、仮想カメラ60の回転に伴い視線方向Vが変化すると、それに伴い、変化後の視線方向Vに基づくVz平面内にローカル座標系のXc軸が位置するようにフィールド面70の曲げ変形の変形態様が変化される。これにより、仮想カメラ60の回転に伴い視線方向Vが変化しても、違和感のない態様で仮想空間内の地平線HLを実現できる。 As described above, the horizon HL is formed by bending the field surface 70. Therefore, when the line of sight V changes as the virtual camera 60 rotates, the deformation mode of the bending deformation of the field surface 70 changes accordingly. In other words, when the line of sight V changes as the virtual camera 60 rotates, the deformation mode of the bending deformation of the field surface 70 changes accordingly so that the Xc axis of the local coordinate system is positioned within the Vz plane based on the changed line of sight V. This makes it possible to realize the horizon HL in the virtual space in a manner that does not feel unnatural, even if the line of sight V changes as the virtual camera 60 rotates.

次に、図11以降を参照して、サーバ装置10の描画機能の更なる詳細を説明する。 Next, the drawing function of the server device 10 will be described in further detail with reference to Figure 11 onwards.

ここでは、まず、図11を参照して、図12以降の説明で用いるカメラパラメータについて説明してから、サーバ装置10の詳細を説明する。 Here, we will first refer to FIG. 11 to explain the camera parameters used in the explanations from FIG. 12 onwards, and then provide a detailed explanation of the server device 10.

図11は、カメラパラメータの説明図である。図11には、グローバル座標系に位置付けられたフィールド面70(正規の状態)が示されている。なお、フィールド面70は、上述のように、曲げ変形が可能であるが、グローバル座標系におけるフィールド面70全体の並進や回転が不能である。従って、フィールド座標系でのフィールド面70の各位置の座標は、所定の変換式で、グローバル座標系の各座標に変換可能であり、また、逆の変換も可能である。なお、以下では、説明上、フィールド座標系の原点は、グローバル座標系の原点と同じであり、フィールド座標系のu軸(=テクスチャ座標系のu軸)は、グローバル座標系のx軸に一致し、フィールド座標系のv軸(=テクスチャ座標系のv軸)は、グローバル座標系のy軸に一致するものとする。なお、以下では、フィールド面70とは、特に言及しない限り、フィールド画像が投影された状態のフィールド面70(フィールドオブジェクトのフィールド面70)を表す。 Figure 11 is an explanatory diagram of camera parameters. In Figure 11, the field surface 70 (normal state) positioned in the global coordinate system is shown. As described above, the field surface 70 can be bent, but the entire field surface 70 in the global coordinate system cannot be translated or rotated. Therefore, the coordinates of each position on the field surface 70 in the field coordinate system can be converted to each coordinate in the global coordinate system using a predetermined conversion formula, and the reverse conversion is also possible. 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, the field surface 70 refers to the field surface 70 (field surface 70 of a field object) in a state where a field image is projected, unless otherwise specified.

本実施形態では、カメラパラメータは、2つの位置パラメータ(X、Y)と、距離パラメータA2と、向きパラメータθと、迎角パラメータψとを含む。これらのすべてのパラメータの値が決まると、グローバル座標系に対して、仮想カメラ60を一意に位置付けることができる。 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 ψ. Once the values of all these parameters are determined, the virtual camera 60 can be uniquely positioned with respect to the global coordinate system.

位置パラメータXは、視線方向Vのxy平面上の交点のx座標であり、位置パラメータYは、視線方向Vのxy平面上の交点のy座標であり、距離パラメータA2は、視線方向Vのxy平面上の交点から仮想カメラ60までの距離(視線方向Vに沿った距離)である。向きパラメータθは、視線方向Vのxy平面上の投影ベクトルV’と、x軸とのなす角度である。迎角パラメータψは、視線方向Vとxy平面とのなす角度である。なお、本実施形態では、迎角パラメータψが利用されるが、迎角パラメータψは省略されてもよい。すなわち、迎角パラメータψは、値が一定値(固定値)であってもよい。 The position parameter X is the x-coordinate of the intersection of the line of sight V on the xy plane, the position parameter Y is the y-coordinate of the intersection of the line of sight V on the xy plane, and the distance parameter A2 is the distance from the intersection of the line of sight V on the xy plane to the virtual camera 60 (the distance along the line of sight V). The orientation parameter θ is the angle between the x-axis and the projection vector V' on the xy plane of the line of sight V. The angle of attack parameter ψ is the angle between the line of sight V and the xy plane. Note that in this embodiment, the angle of attack parameter ψ is used, but the angle of attack parameter ψ may be omitted. In other words, the angle of attack parameter ψ may be a constant value (fixed value).

なお、このようなカメラパラメータは、以下の説明用であり、実際の処理では、異なるパラメータが等価的に使用されてもよい。 Note that these camera parameters are for the purposes of the following explanation, and different parameters may be used equivalently in actual processing.

図12は、サーバ装置10の描画機能に関する機能ブロック図の一例である。図13は、変形パラメータデータの説明図である。なお、図13において、“-”は任意であることを表し、“・・・”は同様の繰り返しを表す。図14は、距離パラメータデータの説明図である。同様に、図14(図15も同様)において、“・・・”は同様の繰り返しを表す。図15は、向きパラメータデータの説明図である。 Figure 12 is an example of a functional block diagram relating to the drawing function of the server device 10. Figure 13 is an explanatory diagram of transformation parameter data. Note that in Figure 13, "-" indicates that it is optional, and "..." indicates the same repetition. Figure 14 is an explanatory diagram of distance parameter data. Similarly, in Figure 14 (similar to Figure 15), "..." indicates the same repetition. Figure 15 is an explanatory diagram of orientation parameter data.

サーバ装置10は、描画情報記憶部130と、操作情報取得部132と、描画データ送信部134と、描画処理部140とを含む。なお、描画情報記憶部130は、図1に示したサーバ記憶部12により実現でき、操作情報取得部132及び描画データ送信部134は、図1に示したサーバ通信部11により実現でき、描画処理部140は、図1に示したサーバ制御部13により実現できる。以下、各部の処理に関して、“算出”とは、データとして記憶された算出値や設定値等を読み出すだけの処理を含む概念である。 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, 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, with regard to the processing of each unit, "calculation" is a concept that includes processing that simply reads out calculated values, setting values, etc. stored as data.

描画情報記憶部130は、描画処理部140により用いられる各種情報及びデータが記憶される。 The drawing information storage unit 130 stores various information and data used by the drawing processing unit 140.

描画情報記憶部130に記憶されるデータは、変形パラメータデータを含む。変形パラメータデータにおいては、特定位置(上述)に係る仮想カメラ60の位置パラメータ(X、Y)の各値に、通常値βとは異なる変形パラメータA1の値が対応付けられる。なお、変形パラメータA1の通常値βは一定値であるが、フィールド画像G60が複数種類用意される場合はフィールド画像ごとに異なりうる可変値であってもよい。また、特定位置に係る仮想カメラ60の位置パラメータ(X、Y)には、更に、向きパラメータθの値が対応付けられてもよい。例えば図13に示す例では、特定位置に係る位置パラメータ(X、Y)の各値(X、Y)、(X、Y)、(X、Y)等に対して、特定位置ごとに、向きパラメータθの値に応じた変形パラメータA1の値が対応付けられている。例えば、図13では、特定位置A=(X、Y)には、仮想カメラ60の向きがどのような向きでも、変形パラメータA1の値βが対応付けられている。他方、特定位置C=(X、Y)には、仮想カメラ60の向きが向きパラメータθ=θC1のときは変形パラメータA1の値βが対応付けられ、仮想カメラ60の向きが向きパラメータθ=θC2のときは変形パラメータA1の値βが対応付けられている。以下では、このように特定位置Cのように、仮想カメラ60の向きに応じて変形パラメータA1の値が変化する特定位置を、「仮想カメラ60の公転中に変形度合いが変化する特定位置」とも称し、変形パラメータデータ上で値βや値βのような、通常値βとは異なる値が対応付けられる向き(向きパラメータθ=θC1やθC2となる向き)を「特定向き」と称する。なお、他の実施形態では、仮想カメラ60の公転中に変形度合いが変化する特定位置は、設定されなくてもよい。また、特定位置Cは、特定向きが2つ設定されているが、1つだけ設定されてもよいし、3つ以上設定されてもよい。 The data stored in the drawing information storage unit 130 includes deformation parameter data. In the deformation parameter data, a value of a deformation parameter A1 different from the normal value β0 is associated with each value of the position parameter (X, Y) of the virtual camera 60 related to the specific position (described above). The normal value β0 of the deformation parameter A1 is a constant value, but may be a variable value that may differ for each field image when multiple types of field images G60 are prepared. In addition, the position parameter (X, Y) of the virtual camera 60 related to the specific position may further be associated with a value of a direction parameter θ. For example, in the example shown in FIG. 13, a value of the deformation parameter A1 according to the value of the direction parameter θ is associated with each value of the position parameter ( X , Y ) related to the specific position ( XA , YA), ( XB , YB ), ( XC , YC), etc. 13, for example, the value β1 of the deformation parameter A1 is associated with the specific position A=( XA , YA ) regardless of the orientation of the virtual camera 60. On the other hand, the value β3 of the deformation parameter A1 is associated with the specific position C=( XC , YC ) when the orientation of the virtual camera 60 is the orientation parameter θ=θC1, and the value β4 of the deformation parameter A1 is associated with the specific position C when the orientation of the virtual camera 60 is the orientation parameter θ= θC2 . Hereinafter, a specific position where the value of the deformation parameter A1 changes depending on the orientation of the virtual camera 60, such as the specific position C, is also referred to as a "specific position where the degree of deformation changes during the revolution of the virtual camera 60," and an orientation associated with a value different from the normal value β0 , such as the value β3 or value β4 in the deformation parameter data (the orientation where the orientation parameter θ= θC1 or θC2 ) is referred to as a "specific orientation." In other embodiments, it is not necessary to set a specific position where the degree of deformation changes during revolution of virtual camera 60. In addition, although two specific orientations are set for specific position C, only one specific orientation may be set, or three or more specific orientations may be set.

また、描画情報記憶部130に記憶されるデータは、距離パラメータデータを含む。距離パラメータデータにおいては、特定位置に係る仮想カメラ60の位置パラメータ(X、Y)の各値に、通常値γとは異なる距離パラメータA2の値が対応付けられる。なお、距離パラメータA2の通常値γは一定値であるが、フィールド画像G60が複数種類用意される場合はフィールド画像ごとに異なりうる可変値であってもよい。ある一の仮想カメラ60の特定位置に係る距離パラメータA2の値は、当該特定位置の仮想カメラ60により、対応する領域(及び当該領域内に位置するオブジェクト)が所望の距離感で捕捉されるように決定されてよい。例えば、特定の第2オブジェクトを近距離でユーザに見せたい場合、当該特定の第2オブジェクトが仮想カメラ60により近距離で捕捉されるような距離パラメータA2の値が、当該特定位置に係る位置パラメータ(X、Y)に対応付けられてもよい。例えば、図14では、特定位置A=(X、Y)には、距離パラメータA2の値γが対応付けられ、特定位置B=(X、Y)には、距離パラメータA2の値γが対応付けられており、以下同様である。なお、本実施形態では、一例として、値γや値γのような、距離パラメータデータで定義される距離パラメータA2の値は、通常値γよりも有意に小さいものとする。なお、距離パラメータA2の値が小さくなるほど、仮想カメラ60とフィールドオブジェクトとの間の距離が短くなる。 The data stored in the drawing information storage unit 130 includes distance parameter data. In the distance parameter data, a value of a distance parameter A2 different from the normal value γ 0 is associated with each value of the position parameter (X, Y) of the virtual camera 60 related to a specific position. The normal value γ 0 of the distance parameter A2 is a constant value, but may be a variable value that may differ for each field image when multiple 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 an object located within the area) is captured by the virtual camera 60 at the specific position at a desired distance. For example, when it is desired to show a specific second object to a user at a close distance, a value of the distance parameter A2 that allows the specific second object to be captured by the virtual camera 60 at a close distance may be associated with the position parameter (X, Y) related to the specific position. 14, for example, a value γ1 of the distance parameter A2 is associated with a specific position A=( XA , YA ), a value γ2 of the distance parameter A2 is associated with a specific position B=( XB , YB ), and so on. Note that in this embodiment, as an example, the value of the distance parameter A2 defined by the distance parameter data, such as the value γ1 or the value γ2 , is 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.

また、描画情報記憶部130に記憶されるデータは、向きパラメータデータを含む。向きパラメータデータにおいては、向き変化位置に係る仮想カメラ60の位置パラメータ(X、Y)の各値に、向きパラメータθの値が対応付けられる。ある一の仮想カメラ60の位置に係る向きパラメータθの値は、当該位置の仮想カメラ60の画角内に所望の領域が収まるように決定されてよい。例えば、特定の第2オブジェクトをユーザに見せたい場合、当該特定の第2オブジェクトが画角内に収まる領域に位置するように向きパラメータθの値が、当該位置に係る位置パラメータ(X、Y)に対応付けられてもよい。向き変化位置は、例えば第1オブジェクトが移動しながら向きを変える位置等(例えば図2に示すカーブ路17の開始位置及び終了位置や、横通路14と縦通路15との交差位置等)に対応して設定されてもよい。例えば、図15では、向き変化位置T1(XP1、YP1)には、向きパラメータθの値θが対応付けられ、向き変化位置T2(XP2、YP2)には、向きパラメータθの値θが対応付けられており、以下同様である。向き変化位置T1、T2は、特定位置A、Bのような、通常値βとは異なる変形パラメータA1の値が対応付けられた位置であってもよいし、及び/又は、通常値γとは異なる距離パラメータA2の値が対応付けられた位置であってもよい。 The data stored in the drawing information storage unit 130 also includes orientation parameter data. In the orientation parameter data, the value of the orientation parameter θ is associated with each value of the position parameter (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 falls within the angle of view of the virtual camera 60 at that position. For example, when a specific second object is to be shown to the user, the value of the orientation parameter θ may be associated with the position parameter (X, Y) related to that position so that the specific second object is located in an area that falls within the angle of view. The orientation change position may be set in correspondence with, for example, a position where the first object changes direction while moving (for example, the start and end positions of the curved road 17 shown in FIG. 2, the intersection position between the horizontal passage 14 and the vertical passage 15, etc.). 15, for example, orientation change position T1 ( Xp1 , Yp1 ) is associated with an orientation parameter θ value θ1 , orientation change position T2 ( Xp2 , Yp2 ) is associated with an orientation parameter θ value θ2 , and so on. The orientation change positions T1 and T2 may be positions, such as specific positions A and B, that are associated with a transformation parameter A1 value different from the normal value β0 , and/or may be positions that are associated with a distance parameter A2 value different from the normal value γ0 .

また、描画情報記憶部130に記憶されるデータは、迎角パラメータデータを含む。迎角パラメータデータにおいては、図示しないが、向きパラメータデータと同様、迎角変化位置に係る仮想カメラ60の位置パラメータ(X、Y)の各値に、迎角パラメータψの値が対応付けられてよい。ある一の仮想カメラ60の位置に係る迎角パラメータψの値は、当該位置の仮想カメラ60の画角内に所望の領域が収まるように決定されてよい。例えば、特定の第2オブジェクトをユーザに見せたい場合、当該特定の第2オブジェクトが画角内に収まる領域に位置するように迎角パラメータψの値が、当該位置に係る位置パラメータ(X、Y)に対応付けられてもよい。 The data stored in the drawing information storage unit 130 also includes angle-of-attack parameter data. In the angle-of-attack parameter data, although not shown, similarly to the orientation parameter data, the value of the angle-of-attack parameter ψ may be associated with each value of the position parameter (X, Y) of the virtual camera 60 relating to the angle-of-attack change position. The value of the angle-of-attack parameter ψ relating to a certain position of the virtual camera 60 may be determined so that a desired area falls within the angle of view 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 position parameter (X, Y) relating to that position so that the specific second object is located in an area that falls within the angle of view.

なお、描画情報記憶部130に記憶されるデータは、図13、図14及び図15に示すような区分けで管理される必要はなく、適宜、統合して管理されてもよい。 The data stored in the drawing information storage unit 130 does not need to be managed in the manner shown in Figures 13, 14, and 15, but may be managed in an integrated manner as appropriate.

操作情報取得部132は、ユーザの操作情報を取得する。なお、ユーザの操作情報は、端末装置20におけるユーザによる各種操作に応じて生成される。なお、操作情報は、ジェスチャーや音声入力等により生成されてもよい。本実施形態では、操作情報は、所定オブジェクトの移動指示、及び、仮想カメラ60の回転指示を含む。所定オブジェクトの移動指示は、フィールドオブジェクトに対する所定オブジェクトの位置(以下、単に「所定オブジェクトの位置」とも称する)を変化させるために指示であり、移動方向や移動量等の指示を含んでもよい。仮想カメラ60の回転指示は、上述した仮想カメラ60の回転を実現するための指示であり、回転の種別(公転軸Pcまわりの回転、即ち公転、又は、自転軸61まわりの回転、すなわち自転、若しくは、迎角パラメータψの値を変化させる回転)、回転方向等の指示を含んでもよい。所定オブジェクトは、任意であるが、本実施形態では、好ましくは、第1オブジェクトである。操作情報は、その他、仮想カメラ60の移動指示等を含んでもよい。 The operation information acquisition unit 132 acquires user operation information. The user operation information is generated in response to various operations by the user on the terminal device 20. The operation information may be generated by gestures, voice input, or the like. In this embodiment, the operation information includes a movement instruction for a specific object and a rotation instruction for the virtual camera 60. The movement instruction for the specific object is an instruction to change the position of the specific object relative to the field object (hereinafter also simply referred to as the "position of the specific object"), and may include an instruction for the movement direction, the movement amount, and the like. The rotation instruction for the virtual camera 60 is an instruction to realize the above-mentioned rotation of the virtual camera 60, and may include an instruction for the type of rotation (rotation around the revolution axis Pc, i.e., revolution, or rotation around the rotation axis 61, i.e., rotation, or rotation that changes the value of the attack angle parameter ψ), the rotation direction, and the like. The specific object is arbitrary, but in this embodiment, it is preferably the first object. The operation information may also include an instruction to move the virtual camera 60, and the like.

描画データ送信部134は、描画処理部140により生成されるフィールド画像用の描画データを端末装置20に送信する。なお、上述したように、他の実施形態では、描画処理部140の描画処理の一部又は全部が端末装置20側で実現されてもよい。例えば、描画処理部140が端末装置20により実現される場合は、描画データ送信部134は省略されてよい。 The drawing data transmission unit 134 transmits 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.

描画処理部140は、描画情報記憶部130内の各種データや端末装置20からの操作情報等に基づいて、フィールド画像用の描画データを生成する。 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.

描画処理部140は、変化処理部142と、第2移動処理部144と、変形処理部145と、投影処理部146と、背景処理部147と、描画データ生成部148とを含む。 The drawing processing unit 140 includes a change processing unit 142, a second movement processing unit 144, a transformation processing unit 145, a projection processing unit 146, a background processing unit 147, and a drawing data generation unit 148.

変化処理部142は、操作情報等に応じて仮想カメラ60の位置パラメータ(X、Y)の各値を変化させるとともに、位置パラメータ(X、Y)の各値を変化させる場合に、当該変化に応じた各種処理を実行する。 The change processing unit 142 changes the values of the position parameters (X, Y) of the virtual camera 60 in response to operation information, etc., and when the values of the position parameters (X, Y) are changed, it executes various processes in response to the changes.

変化処理部142は、第1移動処理部1420と、距離変更部1421と、向き変更部1422と、迎角変更部1423と、更新反映部1424と、回転処理部1425と、を含む。 The change processing unit 142 includes a first movement processing unit 1420, a distance change unit 1421, a direction change unit 1422, an angle of attack change unit 1423, an update reflection unit 1424, and a rotation processing unit 1425.

第1移動処理部1420は、所定の第1移動条件が成立すると、仮想カメラ60の位置パラメータ(X、Y)の各値を更新する。所定の第1移動条件は、任意であるが、例えば操作情報の所定オブジェクトの移動指示に基づく所定オブジェクトの移動により満たされてもよいし、ゲームの進行状況や他の因子に基づいて満たされてもよい。 When a predetermined first movement condition is met, the first movement processing unit 1420 updates the values of the position parameters (X, Y) of the virtual camera 60. The predetermined first movement condition is arbitrary, but may be met, for example, by the movement of a predetermined object based on an instruction to move the predetermined object in the operation information, or may be met based on the progress of the game or other factors.

距離変更部1421は、更新後の位置パラメータ(X、Y)の各値に、距離パラメータA2の値を対応付ける。本実施形態では、距離変更部1421は、描画情報記憶部130内の距離パラメータデータを参照して、更新後の位置パラメータ(X、Y)の各値に応じた距離パラメータA2の値を算出する。この際、距離パラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して距離パラメータA2の値が対応付けられていない場合は、補間値を算出してもよい。この補間値の算出方法の例については、後述する。そして、距離変更部1421は、算出した距離パラメータA2の値を、更新後の位置パラメータ(X、Y)の各値に対応付ける。なお、他の実施形態では、距離パラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して距離パラメータA2の値が対応付けられていない場合、距離変更部1421は、通常値γをそのまま対応付けてもよい。 The distance change unit 1421 associates the value of the distance parameter A2 with each value of the updated position parameter (X, Y). In this 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 corresponding to each value of the updated position parameter (X, Y). At this time, if the value of the distance parameter A2 is not associated with each value of the updated position parameter (X, Y) on the distance parameter data, an interpolated value may be calculated. An example of a calculation method of the interpolated value will be described later. Then, the distance change unit 1421 associates the calculated value of the distance parameter A2 with each value of the updated position parameter (X, Y). Note that in another embodiment, if the value of the distance parameter A2 is not associated with each value of the updated position parameter (X, Y) on the distance parameter data, the distance change unit 1421 may directly associate the normal value γ 0 .

向き変更部1422は、更新後の位置パラメータ(X、Y)の各値に、向きパラメータθの値を対応付ける。本実施形態では、向き変更部1422は、描画情報記憶部130内の向きパラメータデータを参照して、位置パラメータ(X、Y)の各値に応じた向きパラメータθの値を算出する。この際、向きパラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して向きパラメータθの値が対応付けられていない場合は、向き変更部1422は、補間値を算出してもよい。この補間値の算出方法の例については、後述する。そして、向き変更部1422は、算出した向きパラメータθの値を、更新後の位置パラメータ(X、Y)の各値に対応付ける。なお、他の実施形態では、向きパラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して向きパラメータθの値が対応付けられていない場合は、向き変更部1422は、通常値θをそのまま対応付けてもよい。通常値θは、視線方向Vが所定オブジェクトの移動方向に対してz方向視で直角になるように設定されてよい。 The orientation change unit 1422 associates the value of the orientation parameter θ with each value of the updated position parameter (X, Y). In this embodiment, the orientation change unit 1422 refers to the orientation parameter data in the drawing information storage unit 130 and calculates the value of the orientation parameter θ corresponding to each value of the position parameter (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 interpolated value. An example of a calculation method of the interpolated value will be described later. 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 another embodiment, 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 so that the line of sight direction V is perpendicular to the movement direction of the predetermined object when viewed in the z direction.

迎角変更部1423は、更新後の位置パラメータ(X、Y)の各値に、迎角パラメータψの値を対応付ける。本実施形態では、迎角変更部1423は、描画情報記憶部130内の迎角パラメータデータを参照して、位置パラメータ(X、Y)の各値に応じた迎角パラメータψの値を算出する。この際、迎角パラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して迎角パラメータψの値が対応付けられていない場合は、迎角変更部1423は、補間値を算出してもよい。この補間値の算出方法の例については、後述する。そして、迎角変更部1423は、算出した迎角パラメータψの値を、変化後の位置パラメータ(X、Y)の各値に対応付ける。なお、他の実施形態では、迎角パラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して迎角パラメータψの値が対応付けられていない場合は、迎角変更部1423は、通常値ψをそのまま対応付けてもよい。 The angle-of-attack changer 1423 associates the value of the angle-of-attack parameter ψ with each value of the updated position parameter (X, Y). In this embodiment, the angle-of-attack changer 1423 refers to the angle-of-attack parameter data in the drawing information storage unit 130 to calculate the value of the angle-of-attack parameter ψ corresponding to each value of the position parameter (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 changer 1423 may calculate an interpolated value. An example of a method for calculating the interpolated value will be described later. Then, the angle-of-attack changer 1423 associates the calculated value of the angle-of-attack parameter ψ with each value of the changed position parameter (X, Y). Note that in another embodiment, 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 changer 1423 may directly associate the normal value ψ 0 .

更新反映部1424は、更新後の位置パラメータ(X、Y)の各値と、当該更新後の位置パラメータ(X、Y)の各値に対応付けられた各種パラメータ(距離パラメータA2、向きパラメータθ、及び迎角パラメータψ)の各値に基づいて、仮想カメラ60をグローバル座標系に対して位置付ける。これにより、仮想カメラ60が、フィールド面70(及びそれに伴いフィールドオブジェクト)に対して位置付けられる。 The update reflecting unit 1424 positions the virtual camera 60 relative to the global coordinate system based on the updated position parameters (X, Y) and the various parameters (distance parameter A2, orientation parameter θ, and angle of attack parameter ψ) associated with the updated position parameters (X, Y). This positions the virtual camera 60 relative to the field surface 70 (and the field object associated with it).

回転処理部1425は、所定の回転条件が成立すると、仮想カメラ60の回転処理を実行する。所定の回転条件は、例えば操作情報(仮想カメラ60の回転指示)に基づいて判定されてもよいし、ゲームの進行状況や他の因子に基づいて満たされてもよい。 When a predetermined rotation condition is met, the rotation processing unit 1425 executes a rotation process for the virtual camera 60. The predetermined rotation condition may be determined based on, for example, operation information (a command to rotate the virtual camera 60), or may be satisfied based on the progress of the game or other factors.

回転処理部1425は、公転処理部14251と、自転処理部14252と、迎角処理部14253とを含んでよい。なお、他の実施形態では、公転処理部14251、自転処理部14252、及び迎角処理部14253の一部や全部が省略されてもよい。 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, some or all of the revolution processing unit 14251, the rotation processing unit 14252, and the angle of attack processing unit 14253 may be omitted.

公転処理部14251は、仮想カメラ60から離れた公転軸Pc(図10参照)まわりの視線方向Vの回転を実現する。なお、公転処理部14251は、仮想カメラ60の位置や所定オブジェクトの位置等に応じて、公転軸Pcの位置を適宜設定してよい。 The revolution processing unit 14251 realizes rotation of the line of sight V around a revolution axis Pc (see FIG. 10) that is separated from the virtual camera 60. The revolution processing unit 14251 may set the position of the revolution axis Pc as appropriate depending on the position of the virtual camera 60, the position of a specified object, etc.

自転処理部14252は、仮想カメラ60を通るz方向に平行な軸である自転軸61(図10参照)まわりの、視線方向Vの回転を実現する。 The rotation processing unit 14252 realizes the rotation of the line of sight V around the rotation axis 61 (see FIG. 10), which is an axis parallel to the z direction passing through the virtual camera 60.

迎角処理部14253は、仮想カメラ60の視線方向Vの、xy平面とのなす角度である迎角パラメータψ(図5参照)の変化(すなわち仮想カメラ60を通るVz平面に垂直な軸まわりの回転)を実現する。 The angle-of-attack processing unit 14253 realizes a change in the angle-of-attack parameter ψ (see FIG. 5), which is the angle between the line-of-sight direction V of the virtual camera 60 and the xy plane (i.e., a rotation around an axis perpendicular to the Vz plane passing through the virtual camera 60).

なお、一の処理周期で、公転処理部14251、自転処理部14252、及び迎角処理部14253のうちの2つ以上の処理部が同時に処理を実現してもよい。 In addition, 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 perform processing.

第2移動処理部144は、所定の第2移動条件が成立すると、フィールドオブジェクトに対する所定オブジェクトの位置を更新する。なお、所定オブジェクトは、フィールドオブジェクトに対する位置が変化しうるオブジェクトであれば任意であるが、好ましくは、上述したように、第1オブジェクトである。所定の第2移動条件は、任意であるが、例えば操作情報(所定オブジェクトの移動指示)により満たされてもよいし、ゲームの進行状況や他の因子に基づいて満たされてもよい。なお、所定オブジェクトの位置は、例えばフィールド画像のテクスチャ座標系で定義されてよい。 When a predetermined second movement condition is met, the second movement processing unit 144 updates the position of the predetermined object relative to the field object. The predetermined object may be any object whose position relative to the field object can change, but is preferably the first object as described above. The predetermined second movement condition is arbitrary, but may be satisfied, for example, by operation information (a movement instruction for the predetermined object), or may be satisfied based on the progress of the game or other factors. The position of the predetermined object may be defined, for example, in the texture coordinate system of the field image.

変形処理部145は、仮想カメラ60の位置及び向きに基づいて、フィールド面70(及びそれに伴いフィールドオブジェクト)を曲げ変形する曲げ変形処理を実行する。フィールド面70の曲げ変形は、上述したとおりである。図13に示す例では、例えば、位置パラメータ(X、Y)の各値が(X、Y)である場合、変形処理部145は、仮想カメラ60の向きがどのような向きでも、仮想カメラ60の視線方向Vと変形パラメータA1の値βとに基づいて、フィールド面70(及びそれに伴いフィールドオブジェクト)を曲げ変形する。また、位置パラメータ(X、Y)の各値が(X、Y)である場合、変形処理部145は、仮想カメラ60の向きが“θC1”のときは変形パラメータA1の値βと視線方向Vとに基づいて、フィールド面70(及びそれに伴いフィールドオブジェクト)を曲げ変形し、また、仮想カメラ60の向きが“θC2”のときは変形パラメータA1の値βと視線方向Vとに基づいて、フィールド面70(及びそれに伴いフィールドオブジェクト)を曲げ変形する。 The deformation processing unit 145 executes bending deformation processing to bend and deform the field surface 70 (and the field object accordingly) based on the position and orientation of the virtual camera 60. The bending deformation of the field surface 70 is as described above. In the example shown in Fig. 13, for example, when the values of the position parameters (X, Y) are ( XA , YA ), the deformation processing unit 145 bends and deforms the field surface 70 (and the field object accordingly) based on the line of sight V of the virtual camera 60 and the value β1 of the deformation parameter A1, regardless of the orientation of the virtual camera 60. Furthermore, when the values of the position parameters (X, Y) are ( XC , YC ), the deformation processing unit 145 bends and deforms the field surface 70 (and the field object associated therewith) based on the value β3 of the deformation parameter A1 and the line of sight direction V when the orientation of the virtual camera 60 is " θC1 ", and bends and deforms the field surface 70 (and the field object associated therewith) based on the value β4 of the deformation parameter A1 and the line of sight direction V when the orientation of the virtual camera 60 is " θC2 ".

投影処理部146は、変形処理部145により曲げ変形されたフィールド面70に対して、背景オブジェクト以外の各種オブジェクト(第2オブジェクト等)を配置する。各種オブジェクトの配置は、上述した対応情報に基づいて実現できる。この際、投影処理部146は、所定オブジェクトについては、第2移動処理部144により算出された移動後の位置に所定オブジェクトを配置する。なお、フィールド画像は、上述したように、フィールド面70を曲げ変形させた後に投影されてもよい。 The projection processing unit 146 places various objects (second objects, etc.) other than the background object on the field surface 70 that has been bent and deformed by the transformation processing unit 145. The placement of various objects can be realized based on the correspondence information described above. At this time, the projection processing unit 146 places a specific object at the position after movement calculated by the second movement processing unit 144. Note that the field image may be projected after bending and deforming the field surface 70, as described above.

背景処理部147は、変形処理部145により曲げ変形されたフィールド面70に対して、背景オブジェクトを配置する。背景処理部147は、フィールド面70の曲げ変形度合いに基づいて、背景オブジェクトのz方向の位置を決定する。具体的には、背景処理部147は、フィールドオブジェクトで表現される仮想的な地平線HLの高さH1(図6参照)に基づいて、フィールドオブジェクトに対する背景オブジェクトの、z方向に沿った位置を決定する。例えば、背景処理部147は、フィールド面70の曲げ変形度合いの変化に起因して地平線HLの高さH1が小さくなる場合は、背景オブジェクトのz方向の位置を下方に移動させる。例えば図5に示す例では、角度αから角度α’に変化する場合、背景処理部147は、背景オブジェクトのz方向の位置を距離Δ1だけ下方に移動させてよい。距離Δ1は、図5に示すように、フィールド面70に対する仮想カメラ60からの接線6213(画角62内の接線)の、背景面72との交点P4と、接線6213’の同交点P5との間の距離である。この場合、曲げ変形の曲げ変形度合いの変化に起因して地平線HLの高さH1が変化した場合でも、当該変化に起因した違和感が生じがたい態様で背景オブジェクトを配置できる。 The background processing unit 147 places a background object on the field surface 70 that has been bent and deformed by the transformation 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 relative 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 becomes smaller due to a change in the degree of bending deformation of the field surface 70, the background processing unit 147 moves the z direction position of the background object downward. For example, in the example shown in FIG. 5, when the angle changes from α to α', the background processing unit 147 may move the z direction position of the background object downward by a distance Δ1. As shown in FIG. 5, distance Δ1 is the distance between point P4 of intersection P5 of tangent 6213' (a tangent within angle of view 62) with background plane 72 from virtual camera 60 to field plane 70. In this case, even if height H1 of horizon HL changes due to a change in the degree of bending deformation, the background object can be positioned in a manner that is unlikely to cause discomfort due to the change.

なお、背景処理部147は、所定の場合に、フィールドオブジェクトに対する背景オブジェクトの、z方向に沿った位置を変化させないこととしてもよい。例えば、変形処理部145による曲げ変形の曲げ変形度合いの変化量が比較的小さい場合、フィールドオブジェクトに対する背景オブジェクトの、z方向に沿った位置を変化させないこととしてもよい。 In addition, in a certain case, the background processing unit 147 may not change the position of the background object relative to the field object along the z direction. For example, when the amount of change in the degree of bending deformation of the bending deformation by the deformation processing unit 145 is relatively small, the background object may not change the position of the background object relative to the field object along the z direction.

描画データ生成部148は、仮想カメラ60から視た各種オブジェクトの表現を含むフィールド画像(描画データ)を生成する。 The drawing data generation unit 148 generates a field image (drawing data) that includes a representation of various objects viewed from the virtual camera 60.

次に、図16以降を参照して、描画機能に係るサーバ制御部13の動作を更に説明する。以降の処理フロー図(フローチャート)においては、各ステップの入力と出力の関係を損なわない限り、各ステップの処理順序を入れ替えてもよい。 Next, the operation of the server control unit 13 related to the drawing function will be further explained with reference to FIG. 16 onwards. In the process flow diagrams (flowcharts) that follow, the processing order of each step may be changed as long as the relationship between the input and output of each step is not lost.

図16は、サーバ制御部13により実現される処理の流れを示す概略フローチャートである。 Figure 16 is a schematic flowchart showing the process flow realized by the server control unit 13.

図16に示す処理は、所定の処理周期ごとに実行されてよい。所定の処理周期は、フィールド画像のフレーム周期(更新周期)と同じであってよい。なお、以下で、「更新前」の値とは、ある処理周期(k+1)を基準とした前回値(前回の処理周期(k)で導出した値)に対応し、「更新後」の値とは、当該処理周期(k+1)で導出した今回値に対応する。なお、ここでは、一例として、初回の処理周期では、更新後の所定オブジェクトの位置(u(0)、v(0))は、所定の初期位置に設定され、仮想カメラ60の更新後の位置パラメータ(X、Y)の各値(X(0)、Y(0))は、所定オブジェクトの位置(u(0)、v(0))と同じに設定され、カメラパラメータの各値(X(0)、Y(0)、γ(0)、θ(0)、ψ(0))は、それぞれの通常値に設定される。 The process shown in FIG. 16 may be executed at each predetermined processing cycle. The predetermined processing cycle may be the same as the frame cycle (update cycle) of the field image. In the following, 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 "update" value corresponds to the current value derived in the processing cycle (k+1). In this example, in the first processing cycle, the position (u(0), v(0)) of the predetermined object after the update is set to a predetermined initial position, each value (X(0), Y(0)) of the position parameters (X, Y) of the virtual camera 60 after the update is set to the same as the position (u(0), v(0)) of the predetermined object, and each value (X(0), Y(0), γ(0), θ(0), ψ(0)) of the camera parameters is set to the respective normal values.

ステップS1600では、操作情報取得部132は、操作情報を取得する。なお、操作情報は、割り込み処理で端末装置20から受信されて、サーバ記憶部12のうちの所定の記憶部に記憶されてよい。この場合、操作情報取得部132は、順次、操作情報を所定の記憶部から読み出す。 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 of the server storage unit 12. In this case, the operation information acquisition unit 132 sequentially reads out the operation information from the predetermined storage unit.

ステップS1602では、第2移動処理部144は、ステップS1600で得た操作情報に所定オブジェクトの移動指示が含まれているか否かを判定する。判定結果が“YES”の場合、ステップS1604に進み、それ以外の場合は、ステップS1616に進む。 In step S1602, the second movement processing unit 144 determines whether or not the operation information obtained in step S1600 includes an instruction to move a specific object. If the determination result is "YES", the process proceeds to step S1604; otherwise, the process proceeds to step S1616.

ステップS1604では、第2移動処理部144は、ステップS1600で得た操作情報の所定オブジェクトの移動指示に基づいて、移動後の所定オブジェクトの位置を算出する。ここでは、移動後の所定オブジェクトの位置は、フィールド座標で(u(k+1)、v(k+1))であるとする。なお、移動前の所定オブジェクトの位置は、フィールド座標で(u(k)、v(k))であるとする。この場合、フィールド座標系での移動ベクトルは、(u(k+1)-u(k)、v(k+1)-v(k))である。なお、所定オブジェクトの移動指示は、このような移動ベクトル(移動方向)を表す指示であってよい。 In step S1604, the second movement processing unit 144 calculates the position of the specified object after it has been moved, based on the movement instruction of the specified object in the operation information obtained in step S1600. Here, the position of the specified object after it has been moved is assumed to be (u(k+1), v(k+1)) in field coordinates. Note that the position of the specified object before it has been moved is assumed to be (u(k), v(k)) in 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 of the specified object may be an instruction that represents such a movement vector (movement direction).

ステップS1606では、第1移動処理部1420は、ステップS1604で得られた移動後の所定オブジェクトの位置(u(k+1)、v(k+1))に基づいて、仮想カメラ60の更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))を算出する。なお、更新前の位置パラメータ(X、Y)の各値は、(X(k)、Y(k))であるとする。この場合、位置パラメータ(X、Y)の各値の変化ベクトルは、(X(k+1)-X(k)、Y(k+1)-Y(k))である。この場合、(X(k+1)、Y(k+1))は、(X(k+1)-X(k)、Y(k+1)-Y(k))=(u(k+1)-u(k)、v(k+1)-v(k))となるように算出されてよい。 In step S1606, the first movement processing unit 1420 calculates the updated position parameters (X, Y) (X(k+1), Y(k+1)) of the virtual camera 60 based on the position (u(k+1), v(k+1)) of the specific object after the movement obtained in step S1604. Note that the values of the position parameters (X, Y) before the update are (X(k), Y(k)). In this case, the change vector of the values 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)).

ステップS1608では、距離変更部1421は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に基づいて、当該(X(k+1)、Y(k+1))に対応付ける距離パラメータA2の値γ(k+1)を算出する(距離パラメータ算出処理)。この距離パラメータ算出処理の具体例は、図17及び図18を参照して後述する。 In step S1608, the distance change unit 1421 calculates the value γ(k+1) of the distance parameter A2 corresponding to the updated position parameters (X, Y) obtained in step S1606 based on the values (X(k+1), Y(k+1)) (distance parameter calculation process). A specific example of this distance parameter calculation process will be described later with reference to Figures 17 and 18.

ステップS1610では、向き変更部1422は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に基づいて、当該(X(k+1)、Y(k+1))に対応付ける向きパラメータθの値θ(k+1)を算出する(向きパラメータ算出処理)。この向きパラメータ算出処理の具体例は、図19を参照して後述する。 In step S1610, the orientation change unit 1422 calculates the value θ(k+1) of the orientation parameter θ corresponding to (X(k+1), Y(k+1)) based on each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained in step S1606 (orientation parameter calculation process). A specific example of this orientation parameter calculation process will be described later with reference to FIG. 19.

ステップS1612では、迎角変更部1423は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に基づいて、当該(X(k+1)、Y(k+1))に対応付ける迎角パラメータψの値ψ(k+1)を算出する(迎角パラメータ算出処理)。この迎角パラメータ算出処理の具体例は、図20を参照して後で概説する。 In step S1612, the angle-of-attack change unit 1423 calculates the value ψ(k+1) of the angle-of-attack parameter ψ corresponding to the updated position parameters (X, Y) obtained in step S1606 based on the values (X(k+1), Y(k+1)) (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.

ステップS1614では、更新反映部1424は、ステップS1606からステップS1612で得た各種パラメータの更新後の各値(X(k+1)、Y(k+1)、γ(k+1)、θ(k+1)、ψ(k+1))に基づいて、仮想カメラ60をグローバル座標系に位置付ける。 In step S1614, the update reflection unit 1424 positions the virtual camera 60 in the global coordinate system based on the updated values (X(k+1), Y(k+1), γ(k+1), θ(k+1), ψ(k+1)) of the various parameters obtained in steps S1606 to S1612.

ステップS1615では、変形処理部145は、所定オブジェクトの移動に伴う変形処理を実行する。所定オブジェクトの移動に伴う変形処理の具体例は、図21を参照して後述する。 In step S1615, the transformation processing unit 145 executes transformation processing associated with the movement of a predetermined object. A specific example of transformation processing associated with the movement of a predetermined object will be described later with reference to FIG. 21.

ステップS1616では、第2移動処理部144は、更新後の所定オブジェクトの位置(u(k+1)、v(k+1))を、更新前の所定オブジェクトの位置(u(k)、v(k))に設定する。すなわち、今回値は前回値と同じにする。 In step S1616, the second movement processing unit 144 sets the updated position of the specified object (u(k+1), v(k+1)) to the pre-update position of the specified object (u(k), v(k)). In other words, the current value is set to the same as the previous value.

ステップS1617では、回転処理部1425は、ステップS1600で得た操作情報に仮想カメラ60の回転指示が含まれているか否かを判定する。判定結果が“YES”の場合、ステップS1618に進み、それ以外の場合は、今回の処理周期はそのまま終了する。 In step S1617, the rotation processing unit 1425 determines whether or not the operation information obtained in step S1600 includes an instruction to rotate the virtual camera 60. If the determination result is "YES", the process proceeds to step S1618; otherwise, the current processing cycle ends.

ステップS1618では、回転処理部1425は、ステップS1600で得た操作情報に基づいて、仮想カメラ60の回転処理を実行する。回転処理は、上述したとおりである。 In step S1618, the rotation processing unit 1425 executes the rotation processing of the virtual camera 60 based on the operation information obtained in step S1600. The rotation processing is as described above.

ステップS1619では、変形処理部145は、ステップS1618の回転処理後の仮想カメラ60の視線方向Vに基づいて、図7及び図7A等を参照して上述したフィールド面70(及びそれに伴いフィールドオブジェクト)の曲げ変形を実行する。 In step S1619, the deformation processing unit 145 performs the bending deformation of the field surface 70 (and the field object therewith) described above with reference to Figures 7 and 7A, etc., based on the line of sight direction V of the virtual camera 60 after the rotation processing in step S1618.

ステップS1620では、背景処理部147は、今回の処理周期で用いられた変形パラメータA1の今回値β(k+1)が前回値β(k)に対して変化したか否かを判定する。判定結果が“YES”の場合、ステップS1622に進み、それ以外の場合は、ステップS1624に進む。なお、変形例では、ステップS1620において、背景処理部147は、今回の処理周期で用いられた変形パラメータA1の今回値β(k+1)の、前回値β(k)に対する変化量が所定量以上であるか否かを判定してもよい。これにより、変化量が所定量以下である場合にステップS1622をスキップできるので、背景オブジェクトのz方向の位置の算出のための処理負荷を低減できる。また、別の変形例では、ステップS1620において、変形パラメータA1の今回値β(k+1)と前回値β(k)とを直接的に比較しない場合があってもよい。例えば、本実施形態とは異なり、上述した特定位置Cのような、仮想カメラ60の公転中に変形度合いが変化する特定位置が、設定されていない別の実施形態において、今回の処理周期のステップS1619までの処理内容が公転である場合、変形パラメータA1の今回値β(k+1)と前回値β(k)とを直接的に比較せずに、本ステップS1620の判定結果が“否定判定(NO)”とされてもよい。 In step S1620, the background processing unit 147 determines whether the current value β(k+1) of the deformation parameter A1 used in the current processing cycle has changed relative to the previous value β(k). If the determination result is "YES", proceed to step S1622, and otherwise proceed to step S1624. In a modified example, in step S1620, the background processing unit 147 may determine whether the change amount of the current value β(k+1) of the deformation parameter A1 used in the current processing cycle relative to the previous value β(k) is a predetermined amount or more. This allows step S1622 to be skipped if the change amount is equal to or less than the predetermined amount, thereby reducing the processing load for calculating the z-direction position of the background object. In another modified example, in step S1620, the current value β(k+1) of the deformation parameter A1 may not be directly compared with the previous value β(k). For example, in another embodiment in which a specific position where the degree of deformation changes during revolution of the virtual camera 60, such as the specific position C described above, is not set, unlike this embodiment, if the processing content up to step S1619 of the current processing cycle is revolution, the judgment result of this step S1620 may be a "negative judgment (NO)" without directly comparing the current value β(k+1) of the deformation parameter A1 with the previous value β(k).

ステップS1622では、背景処理部147は、変形パラメータA1の今回値β(k+1)と前回値β(k)との間の差分(すなわち曲げ変形の曲げ度合いの差分)に基づいて、背景オブジェクトのz方向の位置を変更する。なお、このような、曲げ変形の曲げ度合いの変化に基づく背景オブジェクトのz方向の位置の変更処理は、上述したとおりであってよい。 In step S1622, the background processing unit 147 changes the z-direction position of the background object based on the difference between the current value β(k+1) and the previous value β(k) of the deformation parameter A1 (i.e., the difference in the bending degree of the bending deformation). Note that this process of changing the z-direction position of the background object based on the change in the bending degree of the bending deformation may be as described above.

ステップS1624では、描画データ生成部148は、今回の処理周期での各種更新後の描画データ(フィールド画像の描画データ)を生成する。 In step S1624, the drawing data generation unit 148 generates drawing data (drawing data of the field image) after various updates for the current processing cycle.

ステップS1626では、描画データ送信部134は、ステップS1624で生成された描画データを端末装置20に送信する。なお、端末装置20は、描画データを受信すると、当該描画データに基づいて、表示部23上にフィールド画像の表示を更新する。 In step S1626, the drawing data transmission unit 134 transmits the drawing data generated in step S1624 to the terminal device 20. Upon receiving the drawing data, the terminal device 20 updates the display of the field image on the display unit 23 based on the drawing data.

このようにして、図16に示す処理によれば、端末装置20から受信される操作情報に基づいて、当該操作情報を反映した描画データを生成し、生成した描画データを端末装置20に送信できる。従って、ゲームの進行に伴うフィールド画像の更新をリアルタイムに実現できる。 In this way, according to the process shown in FIG. 16, drawing data reflecting operation information received from the terminal device 20 can be generated based on the operation information, and the generated drawing data can be transmitted to the terminal device 20. Therefore, it is possible to realize real-time updates of the field image as the game progresses.

図17は、距離パラメータ算出処理(ステップS1608)の一例を示す概略フローチャートである。図18は、補間処理範囲の説明図であり、フィールド面70を示す斜視図である。 Figure 17 is a schematic flow chart showing an example of the distance parameter calculation process (step S1608). Figure 18 is an explanatory diagram of the interpolation processing range, and is a perspective view showing the field surface 70.

ステップS1700では、距離変更部1421は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、距離パラメータデータ(図14参照)に設定された任意の特定位置に対応するか否かを判定する。判定結果が“YES”の場合、ステップS1702に進み、それ以外の場合は、ステップS1704に進む。 In step S1700, the distance change unit 1421 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 distance parameter data (see FIG. 14). If the determination result is "YES", the process proceeds to step S1702, otherwise the process proceeds to step S1704.

ステップS1702では、距離変更部1421は、距離パラメータA2の値γ(k+1)に、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に対応する特定位置に対応付けられた距離パラメータA2の値を設定する。例えば、図14に示す例では、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が特定位置A(X、Y)に対応する場合、距離パラメータA2の値γ(k+1)=γとする。 In step S1702, the distance change unit 1421 sets the value γ(k+1) of the distance parameter A2 to the value of the distance parameter A2 associated with a 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 the specific position A ( XA , YA ), the value of the distance parameter A2 is set to γ(k+1) = γ1 .

ステップS1704では、距離変更部1421は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、距離パラメータデータ(図14参照)に設定された任意の特定位置に対応付けられた補間処理範囲内であるか否かを判定する。補間処理範囲は、特定位置ごとに、テクスチャ座標系(=フィールド座標系)に対応付けて設定されてもよい。本実施形態では、簡易的に、補間処理範囲は、図18に示すように、特定位置を中心として半径rの円形領域内であるとする。この場合、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、特定位置を中心として半径rの円形領域内であるか否かが判定されてよい。ただし、他の実施形態では、補間処理範囲は、他の形態の領域で規定されてもよい。例えば、補間処理範囲は、当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値が位置しかつ距離パラメータA2及び迎角パラメータψの各値が通常値γ、ψである場合に、任意の向きパラメータθの値のときにも、仮想カメラ60の画角内に収まる領域に当該補間処理範囲に係る特定位置が位置するように、設定されてもよい。これは、後述する他の補間処理範囲についても同様である。図18には、フィールド面70上に、3つの特定位置Ps(1)からPs(3)が模式的に示され、それぞれに対応付けられた補間処理範囲Rs(1)からRs(3)が模式的に示されている。なお、図18では、補間処理範囲Rs(2)と補間処理範囲Rs(3)とは、互いに重複しており、重複領域Rs’がハッチング領域で示されている。なお、各特定位置Ps(1)、Ps(2)、Ps(3)は、特定位置A、B等のように、距離パラメータデータ(図14参照)に設定される。また、補間処理範囲(後述する他のパラメータに係る補間処理範囲も同様)についても、距離パラメータデータ等で予め定義されてよい。 In step S1704, the distance change unit 1421 determines whether each value (X(k+1), Y(k+1)) of the updated position parameter (X, Y) obtained in step S1606 is within an interpolation processing range associated with an arbitrary specific position set in the distance parameter data (see FIG. 14). The interpolation processing range may be set in association with a texture coordinate system (=field coordinate system) for each specific position. In this embodiment, for simplicity, the interpolation processing range is assumed to be within a circular area 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 area with a radius r centered on the specific position. However, in other embodiments, the interpolation processing range may be defined as an area of another form. For example, the interpolation processing range may be set so that, when each value of the position parameters (X, Y) of the virtual camera 60 is located within the interpolation processing range and each value of the distance parameter A2 and the angle of attack parameter ψ is the normal value γ 0 , ψ 0 , the specific position related to the interpolation processing range is located within the angle of view of the virtual camera 60 even when the direction parameter θ is any value. This is similar to other interpolation processing ranges described later. In FIG. 18, three specific positions Ps(1) to Ps(3) are shown on the field surface 70, and the corresponding interpolation processing ranges Rs(1) to Rs(3) are shown. In FIG. 18, the interpolation processing range Rs(2) and the interpolation processing range Rs(3) overlap each other, and the overlapping area Rs' is shown by a hatched area. In addition, each specific position Ps(1), Ps(2), and Ps(3) is set in the distance parameter data (see FIG. 14) like specific positions A, B, etc. The interpolation processing range (as well as the interpolation processing ranges relating to other parameters described later) may also be defined in advance using distance parameter data or the like.

ステップS1706では、距離変更部1421は、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))と、当該各値が属する補間処理範囲Rsに係る特定位置との間の距離(補間用の距離)を算出する。例えば、図18に示す例において、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が補間処理範囲Rs(1)内に位置する場合、(X(k+1)、Y(k+1))と、補間処理範囲Rs(1)に係る特定位置Ps(1)との間の距離d(1)を算出する。他方、図18に示す例において、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が重複領域Rs’内に位置する場合、(X(k+1)、Y(k+1))と、補間処理範囲Rs(2)に係る特定位置Ps(2)との間の(2)とともに、(X(k+1)、Y(k+1))と、補間処理範囲Rs(3)に係る特定位置Ps(3)との間の距離d(3)を算出する。 In step S1706, the distance change unit 1421 calculates the distance (interpolation distance) between each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) and a specific position related to the interpolation processing range Rs to which each value belongs. For example, in the example shown in FIG. 18, if 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 the example shown in FIG. 18, if the updated position parameter (X, Y) values (X(k+1), Y(k+1)) are located within the overlapping region Rs', the distance d(3) between (X(k+1), Y(k+1)) and specific position Ps(3) related to the interpolation processing range Rs(3) is calculated, along with (2) between (X(k+1), Y(k+1)) and specific position Ps(2) related to the interpolation processing range Rs(2).

ステップS1708では、距離変更部1421は、ステップS1706で得た距離に基づいて、距離パラメータA2の補間値を算出する。例えば、上述した距離d(1)に係る距離パラメータA2の補間値γ(1)は、以下の式で算出されてもよい。
γ(1)=(γ-γ)/r×(r-d(1))+γ
値γは、特定位置Ps(1)に対応付けられた値であり、上述のように通常値γより小さい。
他方、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が重複領域Rs’内に位置する場合は、補間値γ(Rs’)は、上述した距離d(2)に係る距離パラメータA2の補間値γ(2)と、上述した距離d(3)に係る距離パラメータA2の補間値γ(3)とに基づいて、以下の式で算出されてもよい。
γ(Rs’)=B0×γ(2)+(1-B0)×γ(3)
ここで、γ(2)、γ(3)は、以下のとおりである
γ(2)=(γ-γ)/r×(r-d(2))+γ
γ(3)=(γ-γ)/r×(r-d(3))+γ
値γ2、γは、特定位置Ps(2)、Ps(3)にそれぞれ対応付けられた値であり、上述のように通常値γより小さい。B0は、0から1の範囲内で変化する係数であり、更新後の位置パラメータ(X、Y)の各値が特定位置Ps(2)に近づくほど1に近づき、重複領域Rs’における特定位置Ps(2)側の境界位置で1となる。また、係数B0は、更新後の位置パラメータ(X、Y)の各値が特定位置Ps(3)に近づくほど0に近づき、重複領域Rs’における特定位置Ps(3)側の境界位置で0となる。例えば、B0は、以下の通りであってよい。
B0=(r-d(2))/{(r-d(2))+(r-d(3))}
ステップS1710では、距離変更部1421は、距離パラメータA2の値γ(k+1)に、ステップS1708で算出した補間値を設定する。
In step S1708, the distance change unit 1421 calculates an interpolated value of the distance parameter A2 based on the distance obtained in step S1706. For example, the interpolated value γ(1) of the distance parameter A2 related to the above-mentioned distance d(1) may be calculated by the following formula.
γ(1)=(γ 1 - γ 0 )/r×(rd(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 parameter (X, Y) is located within the overlap region Rs′, the interpolated value γ(Rs′) may be calculated using the following formula based on the interpolated value γ(2) of the distance parameter A2 related to the above-mentioned distance d(2) and the interpolated value γ(3) of the distance parameter A2 related to the above-mentioned distance d(3).
γ(Rs')=B0×γ(2)+(1-B0)×γ(3)
Here, γ(2) and γ(3) are as follows: γ(2) = (γ 2 - γ 0 )/r x (r - d(2)) + γ 0
γ(3)=(γ 3 - γ 0 )/r×(rd(3))+γ 0
The values γ2 and γ3 are values associated with the specific positions Ps(2) and Ps(3), respectively, and are smaller than the normal value γ0 as described above. B0 is a coefficient that changes within a range from 0 to 1, and approaches 1 as the updated position parameters (X, Y) approach the specific position Ps(2), and becomes 1 at the boundary position on the specific position Ps(2) side in the overlapping region Rs'. The coefficient B0 approaches 0 as the updated position parameters (X, Y) approach the specific position Ps(3), and becomes 0 at the boundary position on the specific position Ps(3) side in the overlapping region Rs'. For example, B0 may be as follows.
B0=(rd(2))/{(rd(2))+(rd(3))}
In step S1710, the distance change unit 1421 sets the value γ(k+1) of the distance parameter A2 to the interpolated value calculated in step S1708.

ステップS1712では、距離変更部1421は、距離パラメータA2の値γ(k+1)に通常値γを設定する。 In step S1712, the distance change unit 1421 sets the value γ(k+1) of the distance parameter A2 to the normal value γ 0 .

このようにして、図17に示す処理によれば、位置パラメータ(X、Y)の各値の所定の処理周期ごとの変化に連動して、距離パラメータA2の値を徐々に変更できるので、例えば、特定位置に至った処理周期で通常値γから値γ等に急変させる場合に比べて、穏やかな距離の変化を実現できる。この結果、ユーザに与えうる違和感を低減しつつ、距離パラメータA2を変化させることができる。 17, the value of the distance parameter A2 can be gradually changed in conjunction with the change in the values of the position parameters (X, Y) for each predetermined processing cycle, so that a gentle change in distance can be achieved compared to, for example, a sudden change from the normal value γ 0 to a value γ 1 in a processing cycle in which a specific position is reached. As a result, the distance parameter A2 can be changed while reducing the sense of discomfort that may be felt by the user.

図19は、向きパラメータ算出処理(ステップS1610)の一例を示す概略フローチャートである。 Figure 19 is a schematic flowchart showing an example of the orientation parameter calculation process (step S1610).

ステップS1900では、向き変更部1422は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、向きパラメータデータ(図15参照)に設定された任意の向き変化位置に対応するか否かを判定する。判定結果が“YES”の場合、ステップS1902に進み、それ以外の場合は、ステップS1904に進む。 In step S1900, 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 corresponds to any orientation change position set in the orientation parameter data (see FIG. 15). If the determination result is "YES", the process proceeds to step S1902, and otherwise the process proceeds to step S1904.

ステップS1902では、向き変更部1422は、向きパラメータθの値θ(k+1)に、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に対応する向き変化位置に対応付けられた向きパラメータθの値を設定する。例えば、図15に示す例では、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が向き変化位置T1(XP1、YP1)に対応する場合、向きパラメータθの値θ(k+1)=θとする。 In step S1902, the orientation change unit 1422 sets the value θ(k+1) of the orientation parameter θ to the value θ(k+1) of the orientation parameter θ associated with the orientation change position corresponding to each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y). For example, in the example shown in Fig. 15, when 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 θ is set to θ(k+1) = θ1 .

ステップS1904では、向き変更部1422は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、向きパラメータデータ(図15参照)に設定された任意の向き変化位置に対応付けられた補間処理範囲内であるか否かを判定する。補間処理範囲は、向き変化位置ごとに設定されてもよい。本実施形態では、補間処理範囲は、距離パラメータA2に係る補間処理範囲と同様、簡易的に、向き変化位置を中心として半径rの円形領域内(図18参照)であるとする。ただし、他の実施形態では、補間処理範囲は、他の形態の領域で規定されてもよい。また、他の実施形態では、向き変化位置の一部又はすべてに対しては、補間処理範囲は設定されなくてもよい。判定結果が“YES”の場合、ステップS1906に進み、それ以外の場合は、ステップS1912に進む。 In step S1904, the orientation change unit 1422 determines whether each value (X(k+1), Y(k+1)) of the updated position parameter (X, Y) obtained in step S1606 is within an 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, the interpolation processing range is simply set to a circular area of 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 an area of another form. 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, and otherwise proceed to step S1912.

ステップS1906では、向き変更部1422は、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))と、当該各値が属する補間処理範囲Rsに係る特定位置との間の距離を算出する。当該距離の算出方法は、上述したステップS1706と同様であってよい。 In step S1906, the orientation change unit 1422 calculates the distance between each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) and a specific position related to the interpolation processing range Rs to which each value belongs. The method of calculating the distance may be the same as in step S1706 described above.

ステップS1908では、向き変更部1422は、ステップS1906で得た距離に基づいて、向きパラメータθの補間値を算出する。補間値の算出方法は、上述したステップS1708と同様であってよい。 In step S1908, the orientation change unit 1422 calculates an interpolated value of the orientation parameter θ based on the distance obtained in step S1906. The method of calculating the interpolated value may be the same as that in step S1708 described above.

ステップS1910では、向き変更部1422は、向きパラメータθの値θ(k+1)に、ステップS1908で算出した補間値を設定する。 In step S1910, the orientation change unit 1422 sets the value θ(k+1) of the orientation parameter θ to the interpolated value calculated in step S1908.

ステップS1912では、向き変更部1422は、向きパラメータθの値θ(k+1)に通常値θを設定する。通常値θは、所定オブジェクトの移動ベクトル(u(k+1)-u(k)、v(k+1)-v(k))に投影ベクトルV’が垂直をなすように設定されてよい。 In step S1912, the orientation change unit 1422 sets the value θ(k+1) of the orientation parameter θ to a normal value θ 0. The normal value θ 0 may be set so that the projection vector V′ is perpendicular to the movement vector (u(k+1)-u(k), v(k+1)-v(k)) of the predetermined object.

このようにして、図19に示す処理によれば、位置パラメータ(X、Y)の各値の所定の処理周期ごとの変化に連動して、向きパラメータθの値を徐々に変更できるので、例えば、向き変化位置に至った処理周期で通常値θから値θ等に急変させる場合に比べて、ユーザに与えうる違和感を低減できる穏やかな向きの変化を実現できる。 In this manner, according to the process shown in FIG. 19 , the value of the orientation parameter θ can be gradually changed in conjunction with changes in the values of the position parameters (X, Y) for each predetermined processing cycle. This makes it possible to realize a gentle change in orientation that can reduce the sense of discomfort that may be felt by the user, as compared to, for example, a sudden change from the normal value θ 0 to a value θ 1 , etc., in a processing cycle in which an orientation change position is reached.

図20は、迎角パラメータ算出処理(ステップS1612)の一例を示す概略フローチャートである。図20に示す処理は、上述した図19に示す向きパラメータ算出処理とパラメータが異なるだけで実質的に同一であるので、説明は省略する。 Figure 20 is a schematic flowchart showing an example of the attack angle parameter calculation process (step S1612). The process shown in Figure 20 is substantially the same as the orientation parameter calculation process shown in Figure 19 described above, except for the parameters, so a description of the process will be omitted.

図21は、所定オブジェクトの移動に伴う変形処理(ステップS1615)の一例を示す概略フローチャートである。図22は、曲げ変形処理の説明図であり、図2に示したフィールド画像が投影されたフィールド面70上に、ローカル座標系を対応付けた斜視図である。 Figure 21 is a schematic flow chart showing an example of the deformation process (step S1615) accompanying the movement of a specified object. Figure 22 is an explanatory diagram of the bending deformation process, and is a perspective view in which a local coordinate system is associated with the field surface 70 onto which the field image shown in Figure 2 is projected.

ステップS2100では、変形処理部145は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、変形パラメータデータ(図13参照)に設定された任意の特定位置に対応するか否かを判定する。判定結果が“YES”の場合、ステップS2102に進み、それ以外の場合は、ステップS2104に進む。 In step S2100, the transformation processing unit 145 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 transformation parameter data (see FIG. 13). If the determination result is "YES", the process proceeds to step S2102, otherwise the process proceeds to step S2104.

ステップS2102では、変形処理部145は、更新後の変形パラメータA1の値β(k+1)に、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))に対応する特定位置に対応付けられた変形パラメータA1の値を設定する。例えば、図13に示す例では、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が特定位置A(X、Y)に対応する場合、更新後の変形パラメータA1の値β(k+1)=βとする。 In step S2102, the transformation processing unit 145 sets the value of the transformation parameter A1 associated with a specific position corresponding to each value (X(k+1), Y(k+1)) of the updated position parameter (X, Y) to the value β(k+1) of the updated transformation parameter A1. For example, in the example shown in Fig. 13, when each value (X(k+1), Y(k+1)) of the updated position parameter (X, Y) corresponds to the specific position A( XA , YA ), the value of the updated transformation parameter A1 is set to β(k+1) = β1 .

ステップS2104では、変形処理部145は、ステップS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、変形パラメータデータ(図13参照)に設定された任意の特定位置に対応付けられた補間処理範囲内であるか否かを判定する。補間処理範囲は、特定位置ごとに設定されてもよい。本実施形態では、補間処理範囲は、距離パラメータA2に係る特定位置に対応付けられた補間処理範囲と同様、簡易的に、特定位置を中心として半径rの円形領域内(図18参照)であるとする。ただし、他の実施形態では、補間処理範囲は、上述したように、他の形態の領域で規定されてもよい。 In step S2104, the transformation processing unit 145 determines whether each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained in step S1606 is within an interpolation processing range associated with an arbitrary specific position set in the transformation parameter data (see FIG. 13). The interpolation processing range may be set for each specific position. In this embodiment, the interpolation processing range is simply set to be within a circular area of radius r centered on the specific position (see FIG. 18), similar to the interpolation processing range associated with the specific position related to the distance parameter A2. However, in other embodiments, the interpolation processing range may be defined as an area of another form, as described above.

ステップS2106では、変形処理部145は、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))と、当該各値が属する補間処理範囲Rsに係る特定位置との間の距離を算出する。当該距離の算出方法は、上述したステップS1706と同様であってよい。 In step S2106, the transformation processing unit 145 calculates the distance between each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) and a specific position related to the interpolation processing range Rs to which each value belongs. The method of calculating the distance may be the same as that of step S1706 described above.

ステップS2108では、変形処理部145は、ステップS2106で得た距離に基づいて、変形パラメータA1の補間値を算出する。補間値の算出方法は、上述したステップS1708と同様であってよい。 In step S2108, the transformation processing unit 145 calculates an interpolated value of the transformation parameter A1 based on the distance obtained in step S2106. The method of calculating the interpolated value may be the same as that in step S1708 described above.

ただし、図13の特定位置Cのような、仮想カメラ60の公転中に変形度合いが変化する特定位置の場合は、向きパラメータθの値θ(k+1)に基づいて、次のようにして算出されてよい。ここでは、特定位置Cに関して説明する。まず、特定位置Cに対応付けられる変形パラメータA1の値β(C)は、θC1-Δθ1≦θ(k+1)≦θC1+Δθ1のときは、以下の式(1)により、θC2-Δθ1≦θ(k+1)≦θC2+Δθ1のときは、以下の式(2)により、算出されてよく、それ以外の範囲では、値β(C)=通常値βとされてよい。
β(C)=-(β3-β)/Δθ1×|(θ(k+1)-θC1)|+β3 式(1)
β(C)=-(β4-β)/Δθ1×|(θ(k+1)-θC2)|+β4 式(2)
例えば、式(1)では、(θ(k+1)-θC1)の絶対値に(β3-β)/Δθ1を乗算した値を、β3から引いた値が、β(C)とされる。ここで、Δθ1は、補間角度範囲を定める値であり、β3、β4は、通常値βよりも大きいものとする。なお、ここで、式(1)及び式(2)において、同じΔθ1が使用されているが、異なるΔθ1が使用されてもよい。
そして、特定位置Cと(X(k+1)、Y(k+1))との間の距離を距離d(d)とすると、距離d(d)に係る変形パラメータA1の補間値β(d)は、上述したβ(C)を用いて、以下の式で算出されてもよい。
β(d)=(β(C)-β)/r×(r-d(d))+β
また、例えば特定位置Aと特定位置Bのそれぞれに係る補間処理範囲が重複領域Rs’を有する場合も、距離パラメータA2の場合と同様である。具体的には、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が重複領域Rs’内に位置する場合は、特定位置Aと(X(k+1)、Y(k+1))との間の距離を距離d(d)とし、特定位置Bと(X(k+1)、Y(k+1))との間の距離を距離d(d)とすると、補間値β(Rs’)は、距離d(d)に係る変形パラメータA1の補間値β(d)と、距離d(d)に係る変形パラメータA1の補間値β(d)とに基づいて、以下の式で算出されてもよい。
β(Rs’)=B1×β(d)+(1-B1)×β(d
ここで、β(d)、β(d)は、以下のとおりである
β(d)=(β-β)/r×(r-d(d))+β
β(d)=(β-β)/r×(r-d(d))+β
B1は、0から1の範囲内で変化する係数であり、更新後の位置パラメータ(X、Y)の各値が特定位置Aに近づくほど1に近づき、重複領域Rs’における特定位置A側の境界位置で1となる。また、係数B1は、更新後の位置パラメータ(X、Y)の各値が特定位置Bに近づくほど0に近づき、重複領域Rs’における特定位置B側の境界位置で0となる。例えば、B1は、以下の通りであってよい。
B1=(r-d(d))/{(r-d(d))+(r-d(d))}
ステップS2110では、変形処理部145は、更新後の変形パラメータA1の値β(k+1)に、ステップS2108で算出した補間値を設定する。
13, where the degree of deformation changes during the revolution of the virtual camera 60, the value β(C 0 ) may be calculated as follows based on the value θ(k+1) of the orientation parameter θ. Here, a description will be given of the specific position C. First, the value β(C 0 ) of the deformation parameter A1 associated with the specific position C may be calculated by the following formula (1) when θ C1 -Δθ1≦θ(k+1)≦θ C1 +Δθ1, and by the following formula (2) when θ C2 -Δθ1≦θ(k+1)≦θ C2 +Δθ1. In other ranges, the value β(C 0 ) may be set to be the normal value β0 .
β(C 0 )=-(β3-β 0 )/Δθ1×|(θ(k+1)-θ C1 )|+β3 Formula (1)
β(C 0 )=-(β4-β 0 )/Δθ1×|(θ(k+1)-θ C2 )|+β4 Formula (2)
For example, in equation (1), β(C 0 ) is obtained by multiplying the absolute value of (θ(k+1)-θ C1 ) by (β3-β 0 )/Δθ1 and subtracting the result from β3. Here, Δθ1 is a value that determines the interpolation angle range, and β3 and β4 are greater than the normal value β 0. Note that although the same Δθ1 is used in equations (1) and (2), a different Δθ1 may be used.
Then, if the distance between a specific position C and (X(k+1), Y(k+1)) is distance d( dC ), the interpolated value β( dC ) of the deformation parameter A1 related to the distance d( dC ) may be calculated using the above-mentioned β( C0 ) according to the following formula:
β(d C )=(β(C 0 )−β 0 )/r×(rd(d C ))+β 0
The same applies to the case where the interpolation processing ranges for each of the specific positions A and B have an overlapping region Rs', for example, as in the case of the distance parameter A2. Specifically, when each value (X(k+1), Y(k+1)) of the updated position parameter (X, Y) is located within the overlapping region Rs', if the distance between the specific position A and (X(k+1), Y(k+1)) is distance d(d A ) and the distance between the specific position B and (X(k+1), Y(k+1)) is distance d(d B ), the interpolated value β(Rs') may be calculated by the following formula based on the interpolated value β(d A ) of the deformation parameter A1 related to the distance d(d A ) and the interpolated value β(d B ) of the deformation parameter A1 related to the distance d(d B ).
β(Rs')=B1×β(d A )+(1−B1)×β(d B )
Here, β(d A ) and β(d B ) are as follows: β(d A )=(β 10 )/r×(r−d(d A ))+β 0
β(d B )=(β 20 )/r×(rd(d B ))+β 0
B1 is a coefficient that varies within a range from 0 to 1, and approaches 1 as each updated value of the position parameter (X, Y) approaches specific position A, and is 1 at the boundary position on the specific position A side in the overlap region Rs'. Moreover, coefficient B1 approaches 0 as each updated value of the position parameter (X, Y) approaches specific position B, and is 0 at the boundary position on the specific position B side in the overlap region Rs'. For example, B1 may be as follows.
B1=(rd(d A ))/{(rd(d A ))+(rd(d B ))}
In step S2110, the transformation processing unit 145 sets the value β(k+1) of the updated transformation parameter A1 to the interpolated value calculated in step S2108.

ステップS2112では、変形処理部145は、更新後の変形パラメータA1の値β(k+1)に通常値βを設定する。 In step S2112, the transformation processing unit 145 sets the value β(k+1) of the updated transformation parameter A1 to the normal value β0 .

ステップS2114では、変形処理部145は、フィールド面70(フィールド画像が投影されたフィールド面70)において、移動後の所定オブジェクトの位置(u(k+1)、v(k+1))(所定位置の一例)に、ローカル座標系の原点Oを対応付ける。すなわち、曲げ変形に用いる関数F1の原点Oは、移動後の所定オブジェクトの位置(u(k+1)、v(k+1))に対応付けられる。図22に示す例では、フィールド面70上の(u(k+1)、v(k+1))にローカル座標系の原点Oが対応付けられている状態が示される。なお、他の実施形態では、ローカル座標系の原点Oを対応付ける位置(フィールド面70上の位置)は、移動後の所定オブジェクトの位置(u(k+1)、v(k+1))以外の位置であってもよい。また、ローカル座標系の原点Oを対応付ける位置(フィールド面70上の位置)は、移動後の所定オブジェクトの位置(u(k+1)、v(k+1))に厳密に一致する必要はなく、その近傍であってもよい。 In step S2114, the deformation processing unit 145 associates the origin O of the local coordinate system with the position (u(k+1), v(k+1)) (an example of a predetermined position) of the specified object after the movement on the field surface 70 (the field surface 70 on which the field image is projected). That is, the origin O of the function F1 used for bending deformation is associated with the position (u(k+1), v(k+1)) of the specified object after the movement. The example shown in FIG. 22 shows a state in which the origin O of the local coordinate system is associated with (u(k+1), v(k+1)) on the field surface 70. Note that in other embodiments, the position (position on the field surface 70) to which the origin O of the local coordinate system is associated may be a position other than the position (u(k+1), v(k+1)) of the specified object after the movement. Furthermore, the position to which the origin O of the local coordinate system is associated (the position on the field surface 70) does not need to exactly match the position (u(k+1), v(k+1)) of the specified object after it has been moved, but may be in the vicinity of it.

ステップS2116では、変形処理部145は、ステップS2114で設定した原点Oと、向きパラメータθの値θ(k+1)とに基づいて、フィールド面70のフィールド座標系(フィールド画像のテクスチャ座標系)にローカル座標系(図7、図22参照)を対応付ける。具体的には、ステップS2114で設定した原点Oを通り、x方向に対して向きパラメータθの値θ(k+1)をなす軸を、Xc軸とする。 In step S2116, the transformation processing unit 145 associates a local coordinate system (see Figures 7 and 22) with the field coordinate system of the field surface 70 (texture coordinate system of the field image) based on the origin O set in step S2114 and the value θ(k+1) of the orientation parameter θ. Specifically, the axis that passes through the origin O set in step S2114 and has the value θ(k+1) of the orientation parameter θ in the x direction is set as the Xc axis.

ステップS2118では、変形処理部145は、ステップS2102、ステップS2110、又はステップS2112で設定した更新後の変形パラメータA1の値β(k+1)と、ステップS2116でフィールド面70のフィールド座標系に対応付けたローカル座標系とに基づいて、フィールド面70を曲げ変形させる。この場合、例えば、変形処理部145は、図7を参照して上述した関数F1に基づいて、フィールド面70を曲げ変形させることができる。 In step S2118, the transformation processing unit 145 bends and deforms the field surface 70 based on the value β(k+1) of the updated transformation parameter A1 set in step S2102, step S2110, or step S2112, and the local coordinate system associated with the field coordinate system of the field surface 70 in step S2116. In this case, for example, the transformation processing unit 145 can bend and deform the field surface 70 based on the function F1 described above with reference to FIG. 7.

図21に示す例によれば、フィールドオブジェクトの全体のうちの、仮想カメラ60の画角内に収まる領域とは無関係に、フィールド面70全体が略等断面で曲げ変形される。この場合、フィールドオブジェクトの全体のうちの、仮想カメラ60の画角内に収まる領域に応じて曲げ変形する範囲を可変する場合に比べて、処理負荷を低減できる。 According to the example shown in FIG. 21, the entire field surface 70 is bent and deformed with a substantially equal cross section, regardless of the area of the entire field object that falls within the angle of view of the virtual camera 60. In this case, the processing load can be reduced compared to when the range of bending and deformation is changed depending on the area of the entire field object that falls within the angle of view of the virtual camera 60.

次に、図23から図24Cを参照して、図16から図22を参照して説明した動作例の適用場面の一例を説明する。 Next, with reference to Figures 23 to 24C, an example of an application scenario of the operational example described with reference to Figures 16 to 22 will be described.

図23から図24Bは、図16から図22を参照して説明した動作例の適用場面の説明図であり、図23は、フィールドオブジェクト77の平面図であり、図24Aは、特定位置Aに係るフィールド画像G24Aの一例を示し、図24Bは、特定位置Bに係るフィールド画像G24Bの一例を示す。図24Cは、他の動作例に係る特定位置Bに係るフィールド画像G24Cの一例を示す。図23では、フィールドオブジェクト77は、フィールド画像が正規状態のフィールド面70に投影された表現で示されている。図23では、特定位置A、Bが例示されており、特定位置Bは、横通路14と縦通路15とが交差する位置に対応し、縦通路15の両側には、第2オブジェクトである複数の街路樹オブジェクト16が配置される。複数の街路樹オブジェクト16は、フィールドオブジェクトに立設され、z方向に延在する。なお、図23では、一例として、複数の街路樹オブジェクト16は、v方向に沿って直線状に配置されているが、u方向にわずかにオフセットする態様で千鳥配置されてもよいし、縦通路15の片側だけに配置されてもよいし、2列以上で配置されてもよい。 23 to 24B are explanatory diagrams of application scenes of the operation example described with reference to FIG. 16 to FIG. 22, FIG. 23 is a plan view of a field object 77, FIG. 24A shows an example of a field image G24A relating to a specific position A, and FIG. 24B shows an example of a field image G24B relating to a specific position B. FIG. 24C shows an example of a field image G24C relating to a specific position B relating to another operation example. In FIG. 23, the field object 77 is shown in a representation in which the field image is projected onto the field surface 70 in the normal state. In FIG. 23, specific positions A and B are illustrated, and specific position B corresponds to the position where the horizontal passage 14 and the vertical passage 15 intersect, and a plurality of roadside tree objects 16, which are second objects, are arranged on both sides of the vertical passage 15. The plurality of roadside tree objects 16 are erected in the field object and extend in the z direction. In FIG. 23, as an example, multiple roadside tree objects 16 are arranged in a straight line along the v direction, but they may also be arranged in a staggered manner with a slight offset in the u direction, or they may be arranged on only one side of the vertical passage 15, or they may be arranged in two or more rows.

ここでは、第1オブジェクト3がフィールドオブジェクト77上の特定位置Aから特定位置Bへと移動する際の描画機能について説明する。なお、この種の移動は、ユーザによる操作により実現されてもよいし、デモンストレーション画像の出力として実現されてもよい。なお、特定位置A、Bには、図13及び図14に示すように、変形パラメータA1の値β1、βと、距離パラメータA2の値γ1、γとがそれぞれ対応付けられている。ここでは、値βは、値βよりも小さく、値γは、値γよりも大きいものとする。 Here, a description will be given of a drawing function when the first object 3 moves from a specific position A to a specific position B on the field object 77. This type of movement may be realized by a user operation or may be realized as an output of a demonstration image. As shown in Figs. 13 and 14, the specific positions A and B are associated with values β1 and β2 of a deformation parameter A1 and values γ1 and γ2 of a distance parameter A2, respectively. Here, the value β1 is smaller than the value β2 , and the value γ1 is larger than the value γ2 .

第1オブジェクト3が特定位置Aに位置する状態における仮想カメラ60の位置パラメータ(X、Y)の各値(第1位置の一例)は、第1オブジェクト3の位置に対応し、仮想カメラ60の向きパラメータθの値は、通常値θ、すなわち投影ベクトルV’(図11参照)が第1オブジェクト3の移動方向(この場合、u方向)に垂直になるように設定される。このとき、仮想カメラ60の画角内に収まる領域には、第1オブジェクト3が位置し、図24Aに示すフィールド画像G24Aが描画されてよい。なお、この場合、地平線HLは、変形パラメータA1の値βに応じた高さを有し、第1オブジェクト3等は、距離パラメータA2の値γに応じた表示サイズを有する。 The values of the position parameters (X, Y) of the virtual camera 60 when the first object 3 is located at the specific position A (an example of the first position) correspond to the position of the first object 3, and the value of the orientation parameter θ of the virtual camera 60 is set to a normal value θ 0 , that is, so that the projection vector V′ (see FIG. 11 ) is perpendicular to the moving direction (the u direction in this case) of the first object 3. At this time, the first object 3 is located in an area that falls within the angle of view of the virtual camera 60, and a field image G24A shown in FIG. 24A may be drawn. In this case, the horizon HL has a height according to the value β 1 of the deformation parameter A1, and the first object 3 and the like have a display size according to the value γ 1 of the distance parameter A2.

第1オブジェクト3が特定位置Aから特定位置Bに向かって横通路14(u方向)に沿って処理周期ごとに移動量Δuだけ移動されると、仮想カメラ60の位置パラメータ(X、Y)の各値は、u方向に沿って処理周期ごとに移動量Δuだけ移動される。なお、この間、仮想カメラ60の向きパラメータθの値は固定される。 When the first object 3 is moved from specific position A to specific position B along the side passage 14 (u direction) by a movement amount Δu for each processing cycle, each value of the position parameters (X, Y) of the virtual camera 60 is moved along the u direction by the movement amount Δu for each processing cycle. During this time, the value of the orientation parameter θ of the virtual camera 60 is fixed.

第1オブジェクト3が特定位置Bに到達した状態における仮想カメラ60の位置パラメータ(X、Y)の各値(第2位置の一例)は、特定位置Bに到達した第1オブジェクト3の位置に対応し、向きパラメータθの値は、第1オブジェクト3が特定位置Aに位置する状態と同じである。このとき、仮想カメラ60の画角内に収まる領域には、第1オブジェクト3や街路樹オブジェクト16が位置し、図24Bに示すフィールド画像G24Bが描画されてよい。なお、この場合、地平線HLは、変形パラメータA1の値βに応じた高さを有し、第1オブジェクト3等は、距離パラメータA2の値γに応じた表示サイズを有する。 The values of the position parameters (X, Y) of the virtual camera 60 when the first object 3 has reached the specific position B (an example of the second position) correspond to the position of the first object 3 when it has reached the specific position B, and the value of the orientation parameter θ is the same as when the first object 3 is located at the specific position A. At this time, the first object 3 and roadside tree objects 16 may be located in an area that falls within the angle of view of the virtual camera 60, and a field image G24B shown in Fig. 24B may be drawn. In this case, the horizon HL has a height according to the value β2 of the transformation parameter A1, and the first object 3 and the like have a display size according to the value γ2 of the distance parameter A2.

ここでは、上述したように、値βは、値βよりも小さく、値γは、値γよりも大きい。従って、フィールド画像G24Bにおいては、フィールド画像G24Aにおいてよりも、フィールドオブジェクト77の曲げ変形の変形度合いが大きくなる。このため、図24A及び図24Bに模式的に示すように、地平線HLの画像内の位置が有意に変化する。 Here, as described above, the value β1 is smaller than the value β2 , and the value γ1 is larger than the value γ2 . Therefore, the degree of bending deformation of the field object 77 is larger in the field image G24B than in the field image G24A. Therefore, as shown typically in Figures 24A and 24B, the position of the horizon HL in the image changes significantly.

ここで、図24Cは、他の動作例に係る特定位置Bに係るフィールド画像G24Cの一例を示す。他の動作例では、上述した動作例とは異なり、特定位置Bに対応付けられた距離パラメータA2の値が特定位置Aに対応付けられた距離パラメータA2の値と同じである。この場合は、フィールド画像G24Aとフィールド画像G24Cとの間で、地平線HLの位置が変化するものの、第1オブジェクト3等の表示サイズは同じままである。このような他の動作例は、変形パラメータA1の値を常に一定とする比較例による動作例(図示せず)に比べると、仮想カメラ60から視た仮想空間内の多様な表現を実現できるものの、変形度合いの変化量(地平線HLの高さH1の変化量)が比較的大きくなると、ユーザに違和感を与える可能性がある。 Here, FIG. 24C shows an example of a field image G24C relating to a specific position B in another operation example. In the other operation example, unlike the above-mentioned operation example, the value of the distance parameter A2 associated with the specific position B is the same as the value of the distance parameter A2 associated with the specific position A. In this case, although the position of the horizon HL changes between the field image G24A and the field image G24C, the display size of the first object 3 and the like remains the same. Compared to the operation example (not shown) according to the comparative example in which the value of the deformation parameter A1 is always constant, such other operation example can realize a variety of expressions in the virtual space viewed from the virtual camera 60, but if the amount of change in the degree of deformation (the amount of change in the height H1 of the horizon HL) becomes relatively large, it may cause a sense of discomfort to the user.

これに対して、図16から図22を参照して説明した動作例によれば、フィールド画像G24Aとフィールド画像G24Bとの間では、地平線HLの位置が変化しつつ、第1オブジェクト3等の表示サイズも変化する。これにより、変形度合いの変化(地平線HLの高さH1の変化)に起因してユーザに与えうる違和感を低減できる。すなわち、第1オブジェクト3等の表示サイズの変化がユーザの目を引きやすく印象的となることで、地平線HLの高さH1の変化に起因して生じうる違和感がかき消される。このようにして、特定位置Aと特定位置Bとの間で、対応付ける変形パラメータA1の値を異ならせるとともに、対応付ける距離パラメータA2の値をも異ならせることで、仮想カメラ60から視た仮想空間内の多様な表現を実現しつつ、変形度合いの変化(地平線HLの高さH1の変化)に起因して生じうる違和感を低減できる。このような効果に関連して、距離パラメータA2の値の変化と、変形パラメータA1の値の変化の間に所定の関係をもたせることで、より違和感をなくすこともできる。例えば、距離パラメータA2の値の変化が比較的急峻であれば、変形パラメータA1の値の変化が比較的急峻であっても違和感を低減できるといった具合である。 In contrast, according to the operation example described with reference to FIG. 16 to FIG. 22, the position of the horizon HL changes between the field image G24A and the field image G24B, and the display size of the first object 3 and the like also changes. This reduces the sense of incongruity that may be caused to the user due to the change in the degree of deformation (the change in the height H1 of the horizon HL). That is, the change in the display size of the first object 3 and the like is likely to attract the user's attention and is impressive, thereby erasing the sense of incongruity that may be caused due to the change in the height H1 of the horizon HL. In this way, by making the values of the deformation parameter A1 to be associated between the specific position A and the specific position B different and also making the value of the distance parameter A2 to be associated different, it is possible to reduce the sense of incongruity that may be caused due to the change in the degree of deformation (the change in the height H1 of the horizon HL) while realizing various expressions in the virtual space viewed from the virtual camera 60. In relation to such an effect, it is also possible to eliminate the sense of incongruity by providing a predetermined relationship between the change in the value of the distance parameter A2 and the change in the value of the deformation parameter A1. For example, if the change in the value of the distance parameter A2 is relatively steep, the sense of discomfort can be reduced even if the change in the value of the deformation parameter A1 is relatively steep.

また、特定位置Aと特定位置Bとの間で、対応付ける変形パラメータA1の値を異ならせるとともに、対応付ける距離パラメータA2の値をも異ならせることで、フィールド画像の遷移態様が斬新となり、ゲームの興趣も高めることができる。また、縦通路15の存在を強調することもでき、縦通路15やその周辺に配置される第2オブジェクト(例えば街路樹オブジェクト16)を目立たせることができる。この効果は、特に、端末装置20が例えばスマートフォンの画面のような、比較的小さい画面にフィールド画像が出力される場合に顕著である。また、目立たせる第2オブジェクトのために他の第2オブジェクトを配置しないなどの制限が緩和されるので、フィールドオブジェクト上における第2オブジェクト配置の自由度が増す。また、同様の理由から、フィールドオブジェクト上の第1オブジェクトの移動可能な領域の自由度も増しうる。 In addition, by varying the value of the associated transformation parameter A1 between specific position A and specific position B and also varying the value of the associated distance parameter A2, the transition mode of the field image becomes novel and the interest of the game can be increased. In addition, the presence of the vertical passage 15 can be emphasized, and the second object (e.g., roadside tree object 16) placed in the vertical passage 15 or its periphery can be made to stand out. This effect is particularly noticeable when the terminal device 20 outputs the field image on a relatively small screen, such as the screen of a smartphone. In addition, since the restriction that other second objects cannot be placed in order to highlight a second object is relaxed, the degree of freedom in placing the second object on the field object increases. For the same reason, the degree of freedom in the area in which the first object can move on the field object can also be increased.

また、例えば図23に示すように、視線方向Vに沿って重複する街路樹オブジェクト16のような第2オブジェクトが配置される場合、フィールドオブジェクト77の曲げ変形の曲げ度合いを大きくすることで、奥行き感を高め、印象的な表現を実現できる。これにより、ユーザに、例えば縦通路15に沿って第1オブジェクト3を移動させたくなるような動機付けを与えることも可能となりうる。 In addition, for example, as shown in FIG. 23, when a second object such as a roadside tree object 16 that overlaps with the line of sight V is placed, the sense of depth can be enhanced and an impressive expression can be achieved by increasing the degree of bending of the bending deformation of the field object 77. This may motivate the user to want to move the first object 3, for example, along the vertical passage 15.

ところで、ここでは、街路樹オブジェクト16が固定であるので、街路樹オブジェクト16が視線方向Vに沿って重複するときの仮想カメラ60の位置パラメータ(X、Y)の各値の範囲はあらかじめ既知である。しかしながら、多様な第2オブジェクト(移動可能な第2オブジェクトを含んでよい)が配置される場合、複数の第2オブジェクトが視線方向Vに沿って重複するようなカメラパラメータの各値は、ゲームの進行状況や他の因子に応じて変化しうる。従って、このような場合、フィールドオブジェクトにおける仮想カメラ60の画角内の領域に配置される複数の第2オブジェクトについて、視線方向に沿って重複するか否かが判定されてもよい。そして、重複する場合は、そうでない場合に比べて、曲げ変形度合いを大きくすることとしてもよい。なお、このような変形例は、カメラパラメータの各値が多様に変化できる場合にも好適である。これは、複数の第2オブジェクトが視線方向Vで重複するか否かは、仮想カメラ60の位置パラメータ(X、Y)の各値が同一であっても、迎角パラメータψの値や向きパラメータθの値に応じて変化しうるためである。 Here, since the roadside tree object 16 is fixed, the range of values of the position parameters (X, Y) of the virtual camera 60 when the roadside tree object 16 overlaps along the line of sight V is known in advance. However, when various second objects (which may include movable second objects) are arranged, the values of the camera parameters that cause the multiple second objects to overlap along the line of sight V may change depending on the progress of the game and other factors. Therefore, in such a case, it may be determined whether or not the multiple second objects arranged in the area within the angle of view of the virtual camera 60 in the field object overlap along the line of sight. If they overlap, the degree of bending deformation may be made larger than when they do not. Note that such a modified example is also suitable when the values of the camera parameters can be varied in various ways. This is because whether or not the multiple second objects overlap in the line of sight V may change depending on the value of the angle of attack parameter ψ and the value of the orientation parameter θ even if the values of the position parameters (X, Y) of the virtual camera 60 are the same.

また、図16から図22を参照して説明した動作例によれば、変形パラメータA1の値は、値βから値βへと、1つ以上の補間値(中間値の一例)を介して変化する。これにより、第1オブジェクト3が特定位置Bに到達した処理周期で、変形パラメータA1の値βから値βの変化が実現される場合に比べて、穏やかな変化が実現され、変形度合いの変化に起因してユーザに与えうる違和感を効果的に低減できる。これは、距離パラメータA2の値γから値γへの変化についても同様である。また、仮に、上記の補間を用いない場合、急激な変化を避けるため特定位置を近接させないなどの制限が生じやすくなる。この点、上記の補間を用いることで、特定位置の配置の自由度を高めることができる。この結果、フィールド画像の更なる多様化を図ることができる。 Also, according to the operation example described with reference to FIG. 16 to FIG. 22, the value of the deformation parameter A1 changes from the value β1 to the value β2 via one or more interpolated values (an example of intermediate values). As a result, a gentle change is realized compared to the case where the deformation parameter A1 changes from the value β1 to the value β2 in the processing cycle in which the first object 3 reaches the specific position B, and the sense of incongruity that may be caused to the user due to the change in the deformation degree can be effectively reduced. The same applies to the change of the distance parameter A2 from the value γ1 to the value γ2 . Furthermore, if the above-mentioned interpolation is not used, restrictions such as not placing specific positions close to each other to avoid abrupt changes are likely to occur. In this regard, by using the above-mentioned interpolation, the degree of freedom in arranging the specific positions can be increased. As a result, the field image can be further diversified.

また、図16から図22を参照して説明した動作例によれば、例えば特定位置Aと特定位置Bとの間の各位置に、補間により適切な変形パラメータA1の値を対応付けることができるので、当該各位置に変形パラメータデータ上で変形パラメータA1の各値を対応付ける場合に比べて、変形パラメータデータ用の記憶容量の効率的な利用を図ることができる。これは、距離パラメータのような他のパラメータについても同様である。 In addition, according to the operational example described with reference to Figs. 16 to 22, for example, an appropriate value of the transformation parameter A1 can be associated with each position between specific position A and specific position B by interpolation, so that the storage capacity for the transformation parameter data can be used more efficiently than when each value of the transformation parameter A1 is associated with each of the positions on the transformation parameter data. This also applies to other parameters such as the distance parameter.

また、図16から図22を参照して説明した動作例は、フィールドオブジェクト用の一の素材(フィールド画像及びフィールド面70)を用いて、フィールド面70の曲げ変形に係る変形度合いを変化させることで、多様な形態のフィールドオブジェクトを実現する。これにより、多様なフィールドオブジェクト(変形不能な固定の形態のフィールドオブジェクト)を事前に用意しておく場合に比べて、記憶容量の削減や、読み込み処理の低減を図ることができる。 The operation example described with reference to Figures 16 to 22 uses one material for the field object (field image and field surface 70) and changes the degree of deformation related to the bending deformation of the field surface 70 to realize field objects of various shapes. This makes it possible to reduce storage capacity and load processing compared to the case where various field objects (field objects of fixed shapes that cannot be deformed) are prepared in advance.

なお、図23では、特定位置Aから特定位置Bへの第1オブジェクト3の移動について説明したが、特定位置Bから特定位置Aへの第1オブジェクト3の移動についてはその逆が実現されてもよい。また、図23では、特定位置Aから特定位置Bへの第1オブジェクト3の移動について説明したが、通常位置のような他の属性の位置から特定位置Bへの第1オブジェクト3の移動についても同様に実現されてもよい。この場合、通常位置とは、変形パラメータA1の通常値βが設定され、かつ、距離パラメータA2の通常値γが設定される位置である。また、特定位置Aから特定位置Bへの距離が比較的長いことで、特定位置Aと特定位置Bとの間に、通常位置が実現されてもよい。 23 has been described regarding the movement of the first object 3 from the specific position A to the specific position B, but the reverse may be realized regarding the movement of the first object 3 from the specific position B to the specific position A. Also, in FIG. 23, the movement of the first object 3 from the specific position A to the specific position B has been described regarding the movement of the first object 3 from the specific position A to the specific position B, but the movement of the first object 3 from a position having another attribute, such as a normal position, to the specific position B may be similarly realized. In this case, the normal position is a position where the normal value β 0 of the transformation parameter A1 is set and the normal value γ 0 of the distance parameter A2 is set. Also, the normal position may be realized between the specific position A and the specific position B by the distance from the specific position A to the specific position B being relatively long.

次に、図25を参照して、上述した実施形態に対する変形例について説明する。 Next, a variation of the above embodiment will be described with reference to FIG.

図25は、変形例によるサーバ装置10Aの描画機能に関する機能ブロック図の一例である。変形例によるサーバ装置10Aは、上述した実施形態によるサーバ装置10に対して、描画処理部140が描画処理部140Aで置換された点が異なる。 Figure 25 is an example of a functional block diagram relating to the drawing function of a server device 10A according to a modified example. The server device 10A according to the modified example differs 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.

本変形例による描画処理部140Aは、上述した実施形態による描画処理部140に対して、距離変更部1421がズーム量変更部1421A(パラメータ値変化部の一例)で置換された点が異なる。 The rendering processing unit 140A of this modified example differs from the rendering processing unit 140 of the above-described embodiment in that the distance change unit 1421 is replaced with a zoom amount change unit 1421A (an example of a parameter value change unit).

ズーム量変更部1421Aは、焦点距離や画角等のような、仮想カメラ60のズーム量に関連する光学パラメータの値を変更する。ズーム量変更部1421Aは、距離変更部1421と同様の効果が実現されるように、光学パラメータの値を変更してよい。例えば、距離変更部1421が距離パラメータA2の値を低減させることで得られる効果は、ズーム量変更部1421Aが、ズーム量が大きくなるように光学パラメータの値を変化させることで実現されてもよい。同様に、距離変更部1421が距離パラメータA2の値を増加させることで得られる効果は、ズーム量変更部1421Aが、ズーム量が小さくなるように光学パラメータの値を変化させることで実現されてもよい。このようにして、距離変更部1421による機能を、ズーム量変更部1421Aにより実現できる。 The zoom amount change unit 1421A changes the values of optical parameters related to the zoom amount of the virtual camera 60, such as the focal length and the angle of view. The zoom amount change unit 1421A may change the values of the optical parameters so as to achieve the same effect as that of the distance change unit 1421. For example, the effect obtained by the distance change unit 1421 reducing the value of the distance parameter A2 may be achieved by the zoom amount change unit 1421A 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 achieved 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 achieved by the zoom amount change unit 1421A.

なお、他の変形例では、距離変更部1421とズーム量変更部1421Aとが同時に機能してもよい。 In another variation, the distance change unit 1421 and the zoom amount change unit 1421A may function simultaneously.

以上、各実施形態について詳述したが、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施形態の構成要素を全部又は複数を組み合わせることも可能である。 Although each embodiment has been described in detail above, it is not limited to a specific embodiment, and various modifications and changes are possible within the scope of the claims. It is also possible to combine all or some of the components of the above-mentioned embodiments.

例えば、上述した実施形態では、フィールドオブジェクトの曲げ変形は、フィールドオブジェクトの全体を曲げ変形することで実現されるが、これに限られない。例えば、フィールドオブジェクトの曲げ変形は、フィールドオブジェクトの全体のうちの、仮想カメラ60の画角内に収まる領域だけ又は当該領域を包含する一部領域だけに対して実行されてもよい。 For example, in the above-described embodiment, the bending deformation of the field object is realized by bending the entire field object, but this is not limited to this. For example, the bending deformation of the field object may be performed only on the area of the entire field object that falls within the angle of view of the virtual camera 60, or only on a partial area that includes that area.

また、上述した実施形態では、フィールドオブジェクトにおけるローカル座標系の原点Oが対応付けられる位置は、基本的に、第1オブジェクトの位置に対応するが、これに限られない。所定条件が成立した場合に、フィールドオブジェクトにおけるローカル座標系の原点Oが対応付けられる位置は、特定オブジェクトの位置に対応するように変更されてもよい。この場合、特定オブジェクトは、第1オブジェクトのような、フィールドオブジェクトに対して位置が変化しうるオブジェクトであってもよいし、第2オブジェクトのような、フィールドオブジェクトに対して位置が固定されたオブジェクトであってもよい。 In the above-described embodiment, the position to which the origin O of the local coordinate system in the field object corresponds basically corresponds to the position of the first object, but is not limited to this. When a predetermined condition is met, the position to which the origin O of the local coordinate system in the field object corresponds may be changed to correspond to the position of a specific object. In this case, the specific object may be an object such as the first object whose position can change relative to the field object, or an object such as the second object whose position is fixed relative to the field object.

また、上述した実施形態では、所定オブジェクトの移動の際に仮想カメラ60の位置パラメータ(X、Y)の各値に対応付けられる各種パラメータ(例えば、距離パラメータA2、向きパラメータθ、迎角パラメータψ等)の値は、位置パラメータ(X、Y)の各値が同じであるときは、毎回、同じである。例えば、所定オブジェクトの移動の際に、所定オブジェクトがある一の位置に位置するとき、当該一の位置に対しては同一の各種パラメータ(例えば、距離パラメータA2、向きパラメータθ、迎角パラメータψ等)の値が実現される。しかしながら、これに限られない。例えば、所定オブジェクトの移動の際に仮想カメラ60の位置パラメータ(X、Y)の各値に対応付けられる各種パラメータ(例えば、距離パラメータA2、向きパラメータθ、迎角パラメータψ等)の値は、位置パラメータ(X、Y)の各値が同じであるときでも、ゲームの進行状況や他の因子(例えば所定オブジェクトの移動方向等)に応じて変化されてもよい。例えば、特定位置Aに対応付けられる変形パラメータA1の値は、ゲームの進行状況や他の因子に基づき所定条件が成立した場合に値βに設定され、それ以外の場合は、通常値βに設定されてもよい。また、このような変化は、例えば、所定のイベントの発生や、移動する第2オブジェクトが、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に入った(画面内に配置された)場合や、ユーザによる画角変更のための手動操作に応じて実行されてもよい。 In the above-described embodiment, the values of various parameters (e.g., distance parameter A2, orientation parameter θ, attack angle parameter ψ, etc.) associated with each value of the position parameter (X, Y) of the virtual camera 60 during the movement of the predetermined object are the same every time when the values of the position parameter (X, Y) are the same. For example, when the predetermined object is located at a certain position during the movement of the predetermined object, the values of the same various parameters (e.g., distance parameter A2, orientation parameter θ, attack angle parameter ψ, etc.) are realized for the certain position. However, this is not limited to this. For example, the values of various parameters (e.g., distance parameter A2, orientation parameter θ, attack angle parameter ψ, etc.) associated with each value of the position parameter (X, Y) of the virtual camera 60 during the movement of the predetermined object may be changed according to the progress of the game or other factors (e.g., the moving direction of the predetermined object, etc.) even when the values of the position parameter (X, Y) are the same. For example, the value of the transformation parameter A1 associated with the specific position A may be set to a value β 1 when a predetermined condition is established based on the progress of the game or other factors, and may be set to a normal value β 0 otherwise. Furthermore, such a change may be performed, for example, in response to the occurrence of a specified event, when a moving second object enters an area that falls within the angle of view of the virtual camera 60 in the field object (is placed on the screen), or in response to a manual operation by the user to change the angle of view.

また、上述した実施形態では、特定位置A、Bのような各特定位置は、フィールドオブジェクト上の固定位置であったが、フィールドオブジェクト上で移動可能な位置であってよい。例えば、特定位置の一部は、第2オブジェクトのうちの、移動する所定の第2オブジェクトの位置に対応して設定されてもよい。この場合、一の特定位置は、移動する所定の一の第2オブジェクトの位置に対して所定関係を有する位置であってよい。 In the above-described embodiment, each specific position such as specific positions A and B was a fixed position on the field object, but may be a movable position on the field object. For example, some of the specific positions may be set to correspond to the position of a specific second object that moves among the second objects. In this case, one specific position may be a position that has a specified relationship to the position of one specific second object that moves.

また、上述した実施形態において、補間処理範囲が動的に変化されずに固定される場合として、当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値が位置しかつ距離パラメータA2及び迎角パラメータψの各値が通常値γ、ψである場合に、任意の向きパラメータθの値のときにも、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に当該補間処理範囲に係る特定位置が位置するように、設定されてもよい点は、上述した。例えば、図26には、特定位置Aに関する補間処理範囲Rs(A)が平面視で示され、図27には、図26のラインJ1-J1に沿った断面視とラインJ2-J2に沿った断面視とが重ねて示されている。この場合、仮想カメラ60の位置パラメータ(X、Y)の各値が位置P260に対応し、かつ距離パラメータA2及び迎角パラメータψの各値が通常値γ、ψである場合に、図27に示すように、パラメータθの値が図26に示すようなθ(P260)であるとき、特定位置Aは、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に位置する。なお、図27における境界線6211は、仮想カメラ60の画角62(z方向に垂直な方向に視た際の画角)(図5参照)の上側の境界線である。従って、この場合、位置P260は、補間処理範囲Rs(A)内に属する。他方、仮想カメラ60の位置パラメータ(X、Y)の各値が位置P261に対応し、かつ距離パラメータA2及び迎角パラメータψの各値が通常値γ、ψである場合に、図27に示すように、パラメータθの値が図26に示すようなθ(P261)であるときでも、特定位置Aは、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に位置しない。従って、この場合、位置P260は、補間処理範囲Rs(A)内に属さない。しかしながら、更なる別の設定態様として、補間処理範囲は、そのときのカメラパラメータの各値に基づいて、動的に変化するように設定されてもよい。例えば、一の特定位置に係る補間処理範囲は、当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値が位置しかつ更新後(又は更新前)の距離パラメータA2及び迎角パラメータψの各値(通常値γ、ψとは異なる値であるうる)が適用される場合に、任意の向きパラメータθの値のときにも、仮想カメラ60の画角内に収まる領域に当該一の特定位置が位置するように、動的に設定されてもよい。これは、仮想カメラ60の位置パラメータ(X、Y)の各値が、ある一の補間処理範囲外である場合でも、他の一の補間処理範囲内に位置することにより、距離パラメータA2等の値が通常値でない補間値である可能性があるためである。なお、ここでは、仮想カメラ60の公転や自転が任意の位置で可能である仕様を想定しているが、仮想カメラ60の公転や自転が、限定された位置でのみ可能である仕様や公転や自転自体が不能である仕様では、上述した説明における“任意の向きパラメータθの値のときにも”は、“その時点の向きパラメータθの値のときに”と読み替えて適用されてよい。 As described above, in the above-described embodiment, when the interpolation processing range is fixed and not dynamically changed, the specific position related to the interpolation processing range may be set to be located in an area that falls within the angle of view of the virtual camera 60 in the field object even when the direction parameter θ is any value when each value of the position parameters ( X , Y ) of the virtual camera 60 is located within the interpolation processing range and each value of the distance parameter A2 and the angle of attack parameter ψ is normal value γ 0, ψ 0. For example, Fig. 26 shows the interpolation processing range Rs(A) related to the specific position A in a plan view, and Fig. 27 shows a cross-sectional view along the line J1-J1 of Fig. 26 superimposed on a cross-sectional view along the line J2-J2. In this case, when the values of the position parameters (X, Y) of the virtual camera 60 correspond to position P260 and the values of the distance parameter A2 and the angle of attack parameter ψ are normal values γ 0 and ψ 0 , as shown in Fig. 27, when the value of the parameter θ is θ(P260) as shown in Fig. 26, the specific position A is located in an area that falls within the angle of view of the virtual camera 60 in the field object. Note that the boundary line 6211 in Fig. 27 is the upper boundary line of the angle of view 62 (the angle of view when viewed in a direction perpendicular to the z direction) (see Fig. 5) of the virtual camera 60. Therefore, in this case, position P260 belongs to the interpolation processing range Rs(A). On the other hand, when the values of the position parameters (X, Y) of the virtual camera 60 correspond to the position P261 and the values of the distance parameter A2 and the angle of attack parameter ψ are normal values γ 0 and ψ 0 , as shown in Fig. 27, even when the value of the parameter θ is θ(P261) as shown in Fig. 26, the specific position A is not located in an area that falls within the angle of view of the virtual camera 60 in the field object. Therefore, in this case, the position P260 does not belong to the interpolation processing range Rs(A). However, as yet another setting mode, the interpolation processing range may be set to change dynamically based on the values of the camera parameters at that time. For example, the interpolation processing range for one specific position may be dynamically set so that, when each value of the position parameters (X, Y) of the virtual camera 60 is located within the interpolation processing range and each value of the distance parameter A2 and the angle of attack parameter ψ after (or before) the update (which may be values different from the normal values γ 0 , ψ 0 ) is applied, the one specific position is located within an area that falls within the angle of view of the virtual camera 60 even for any value of the orientation parameter θ. This is because, even if each value of the position parameters (X, Y) of the virtual camera 60 is outside a certain interpolation processing range, it may be located within another interpolation processing range, and thus the values of the distance parameter A2, etc. may be interpolated values that are not normal values. Note that, here, a specification is assumed in which virtual camera 60 is capable of revolution or rotation at any position; however, in a specification in which virtual camera 60 is capable of revolution or rotation only at limited positions, or in a specification in which revolution or rotation is not possible at all, “even at any value of the orientation parameter θ” in the above explanation may be read as “at the value of the orientation parameter θ at that time.”

また、仮想カメラ60の位置パラメータ(X、Y)の各値の変化速度(時間あたりの変化量)が大きいほど補間処理範囲が広くなる態様で、当該変化速度に応じて補間処理範囲の広さが動的に変化されてもよい。あるいは、同様の考え方に基づいて、変化速度とは無関係に、所定のマージンを補間処理範囲に対して設定してもよい。これにより、例えば、仮想カメラ60の位置パラメータ(X、Y)の各値の変化速度(時間あたりの変化量)が大きいまま仮想カメラ60の位置パラメータ(X、Y)の各値が特定位置(又は特定オブジェクト)に対応する各値へと変化する場合に生じうる不都合(フィールド画像の比較的急激な変化に起因してユーザに与えうる違和感)を低減できる。 The width of the interpolation processing range may be dynamically changed according to the rate of change (amount of change per time) of each value of the position parameters (X, Y) of the virtual camera 60, such that the interpolation processing range is wider as the rate of change (amount of change per time) of the values is greater. Alternatively, based on a similar concept, a predetermined margin may be set for the interpolation processing range regardless of the rate of change. This can reduce inconvenience (a feeling of discomfort that may be felt by the user due to a relatively sudden change in the field image) that may occur when each value of the position parameters (X, Y) of the virtual camera 60 changes to a value corresponding to a specific position (or specific object) while the rate of change (amount of change per time) of each value of the position parameters (X, Y) of the virtual camera 60 remains large.

また、仮想カメラ60の画角が可変である場合、画角が小さいほど補間処理範囲が広くなる態様で、仮想カメラ60の画角に応じて補間処理範囲の広さが動的に変化されてもよい。これにより、例えば、仮想カメラ60の画角が小さいまま仮想カメラ60の位置パラメータ(X、Y)の各値が特定位置(特定オブジェクト)に対応する各値へと変化する場合に生じうる不都合(フィールド画像の比較的急激な変化に起因してユーザに与えうる違和感)を低減できる。 In addition, if the angle of view of the virtual camera 60 is variable, the width of the interpolation processing range may be dynamically changed according to the angle of view of the virtual camera 60, such that the smaller the angle of view, the wider the interpolation processing range. This can reduce inconvenience (a feeling of discomfort that may be felt by the user due to a relatively sudden change in the field image) that may occur when, for example, the values of the position parameters (X, Y) of the virtual camera 60 change to values corresponding to a specific position (specific object) while the angle of view of the virtual camera 60 remains small.

また、上述した実施形態では、補間処理範囲に更新後の位置パラメータ(X、Y)の各値が位置するか否かに基づいて、補間処理を実行するか否かが決定されているが、これに限られない。例えば、等価的に、更新後の仮想カメラ60の位置パラメータ(X、Y)の各値が位置しかつ更新後の距離パラメータA2及び迎角パラメータψの各値に基づいて、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域を導出し、当該領域に、特定位置が位置するか否かが判定されてもよい。この場合、当該領域に、特定位置が位置するが、更新後の仮想カメラ60の位置パラメータ(X、Y)の各値が特定位置に対応しない場合に、補間処理が実行されてもよい。 In the above-described embodiment, whether or not to perform the interpolation process is determined based on whether or not the values of the updated position parameters (X, Y) are located within the interpolation process range, but this is not limited to the above. For example, equivalently, an area in which the values of the updated position parameters (X, Y) of the virtual camera 60 are located and which falls within the angle of view of the virtual camera 60 in the field object is derived based on the values of the updated distance parameter A2 and the angle of attack parameter ψ, and it may be determined whether or not the specific position is located in that area. In this case, if the specific position is located in that area but the values of the updated position parameters (X, Y) of the virtual camera 60 do not correspond to the specific position, the interpolation process may be performed.

また、上述した各実施形態において、第1移動処理部1420は省略されてもよい。この場合、上述したように、距離変更部1421又はズーム量変更部1421Aにより距離パラメータA2又は光学パラメータの値が変化される場合に、当該変化に連動して曲げ変形処理が実行されてもよい。 In addition, in each of the above-described embodiments, the first movement processing unit 1420 may be omitted. In this case, as described above, when the value of the distance parameter A2 or the optical parameter is changed by the distance change unit 1421 or the zoom amount change unit 1421A, the bending deformation process may be performed in conjunction with the change.

なお、以上の実施形態に関し、さらに以下の付記を開示する。 The following additional notes are provided regarding the above embodiment.

[付記1]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情報処理装置であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを含み、
前記仮想カメラの視線方向に交差する方向で、前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させる第1移動処理部と、
前記フィールドオブジェクトに対する前記仮想カメラの位置に基づいて、前記フィールドオブジェクトを変形させる変形処理部とを含み、
前記変形処理部は、前記フィールドオブジェクトに対する前記仮想カメラの位置が第1位置にあるときと、前記フィールドオブジェクトに対する前記仮想カメラの位置が、前記仮想カメラの視線方向に交差する方向で前記第1位置とは異なる第2位置にあるときとで、前記フィールドオブジェクトの変形度合いを異ならせる、情報処理装置。
[Appendix 1]
An information processing device for rendering an object disposed in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis perpendicular to each other, as viewed from a virtual camera disposed in the virtual space, comprising:
the objects include a field object associated with a two-dimensional plane defined by the first axis and the second axis;
a first movement processing unit that changes a position of the virtual camera relative to the field object in a direction intersecting a line of sight direction of the virtual camera;
a transformation processing unit that transforms the field object based on a position of the virtual camera with respect to the field object,
The information processing device, wherein the deformation processing unit changes the degree of deformation of the field object between when the position of the virtual camera with respect to the field object is at a first position and when the position of the virtual camera with respect to the field object is at a second position different from the first position in a direction intersecting the line of sight direction of the virtual camera.

[付記2]
前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置である場合と、前記第2位置である場合とで、前記仮想カメラの視線方向での前記仮想カメラと前記フィールドオブジェクトとの間の距離を異ならせる距離変更部を更に含む、付記1に記載の情報処理装置。
[Appendix 2]
The information processing device described in Appendix 1, further including a distance change unit that changes the distance between the virtual camera and the field object in the line of sight direction of the virtual camera when the position of the virtual camera relative to the field object is the first position and when the position is the second position.

[付記3]
前記距離変更部は、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置から前記第2位置に変化する場合に、前記距離を小さくする、付記2に記載の情報処理装置。
[Appendix 3]
The information processing device according to claim 2, wherein the distance change unit decreases the distance when a position of the virtual camera with respect to the field object changes from the first position to the second position.

[付記4]
前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置と前記第2位置との間で変化する場合に、前記仮想カメラのズーム量に関連する光学パラメータの値を変化させるパラメータ値変化部を更に含む、付記1から3のうちのいずれか1項に記載の情報処理装置。
[Appendix 4]
An information processing device described in any one of Appendix 1 to 3, further including a parameter value change unit that changes a value of an optical parameter related to the zoom amount of the virtual camera when the position of the virtual camera relative to the field object changes between the first position and the second position.

[付記5]
前記フィールドオブジェクトは、変形可能な基本面に基づいて形状付けられ、
前記変形処理部は、前記仮想カメラの視線方向と前記第3軸を含む平面で切断した際の前記基本面の形状が、前記平面に垂直な方向に沿って略同じとなるように、前記基本面を変形させる、付記1から4のうちのいずれか1項に記載の情報処理装置。
[Appendix 5]
the field object is shaped based on a deformable base surface;
The information processing device according to any one of claims 1 to 4, wherein the transformation processing unit deforms the basic surface so that a shape of the basic surface when cut by a plane including the line of sight direction of the virtual camera and the third axis is approximately the same along a direction perpendicular to the plane.

[付記6]
前記フィールドオブジェクトは、変形可能な基本面に基づいて形状付けられ、
前記仮想カメラの視線方向と前記第3軸を含む平面上において、所定位置を原点とし、前記原点を通り前記第3軸に平行な軸をY軸とし、前記フィールドオブジェクトに対して上側に向かう向きをY軸の正側とし、かつ、前記原点を通り前記Y軸に垂直な軸をX軸とした場合に、前記変形処理部は、X座標の値の絶対値が大きくなるほどY座標の値が線形又は非線形に単調減少する関数にしたがって、前記基本面を変形させる、付記1から4のうちのいずれか1項に記載の情報処理装置。
[Appendix 6]
the field object is shaped based on a deformable base surface;
5. The information processing device according to any one of claims 1 to 4, wherein, on a plane including the line of sight of the virtual camera and the third axis, a predetermined position is defined as the origin, an axis passing through the origin and parallel to the third axis is defined as the Y axis, a direction toward the upper side with respect to the field object is defined as the positive side of the Y axis, and an axis passing through the origin and perpendicular to the Y axis is defined as the X axis, the transformation processing unit deforms the basic surface according to a function in which the Y coordinate value monotonically decreases linearly or nonlinearly as the absolute value of the X coordinate value increases.

[付記7]
前記変形処理部は、前記フィールドオブジェクトに対する前記仮想カメラの位置に対応付けられた変形パラメータであって、前記フィールドオブジェクトの変形度合いを定める変形パラメータの値に基づいて、前記基本面を変形させ、
前記変形パラメータは、前記関数において、前記X座標の値に係る項に割り当てられる係数を含む、付記6に記載の情報処理装置。
[Appendix 7]
the transformation processing unit transforms the base surface based on a value of a transformation parameter that is associated with a position of the virtual camera with respect to the field object and that determines a degree of transformation of the field object;
The information processing device according to claim 6, wherein the transformation parameters include a coefficient assigned to a term relating to the value of the X coordinate in the function.

[付記8]
前記変形パラメータの値は、前記第1位置に対応付けられた第1の値と、前記第2位置に対応付けられた第2の値とを含み、
前記変形処理部は、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置と前記第2位置との間で変化する場合に、前記変形パラメータの値を、前記第1の値と前記第2の値との間の1つ以上の中間値を介して、前記第1の値又は前記第2の値へと変化させる、付記7に記載の情報処理装置。
[Appendix 8]
the value of the transformation parameter includes a first value associated with the first position and a second value associated with the second position;
The information processing device described in Appendix 7, wherein the transformation processing unit changes the value of the transformation parameter to the first value or the second value via one or more intermediate values between the first value and the second value when the position of the virtual camera relative to the field object changes between the first position and the second position.

[付記9]
前記オブジェクトは、前記フィールドオブジェクトに対して配置される第1オブジェクトを更に含み、
前記フィールドオブジェクトに対する前記第1オブジェクトの位置を相対的に変化させる第2移動処理部を更に含み、
前記第1移動処理部は、前記フィールドオブジェクトに対する前記仮想カメラの位置を、前記フィールドオブジェクトに対する前記第1オブジェクトの位置の変化に連動して変化させる、付記6から8のうちのいずれか1項に記載の情報処理装置。
[Appendix 9]
The objects further include a first object positioned relative to the field object;
a second movement processing unit that changes a position of the first object relative to the field object,
The information processing device according to any one of appendices 6 to 8, wherein the first movement processing unit changes a position of the virtual camera relative to the field object in conjunction with a change in a position of the first object relative to the field object.

[付記10]
前記変形処理部は、前記関数に係る前記所定位置を、前記フィールドオブジェクトに対する前記第1オブジェクトの位置に基づいて決定する、付記9に記載の情報処理装置。
[Appendix 10]
The information processing device according to claim 9, wherein the transformation processing unit determines the predetermined position related to the function based on a position of the first object with respect to the field object.

[付記11]
前記フィールドオブジェクトの変形度合いは、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置にあるときよりも、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第2位置にあるときのほうが大きい、付記1から10のうちのいずれか1項に記載の情報処理装置。
[Appendix 11]
An information processing device described in any one of Appendix 1 to 10, wherein the degree of deformation of the field object is greater when the position of the virtual camera relative to the field object is at the second position than when the position of the virtual camera relative to the field object is at the first position.

[付記12]
前記オブジェクトは、前記フィールドオブジェクトに対して配置される複数の第2オブジェクトを更に含み、
前記複数の第2オブジェクトは、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第2位置にあるときに前記仮想カメラの画角内に位置する、付記11記載の情報処理装置。
[Appendix 12]
the object further includes a plurality of second objects arranged relative to the field object;
12. The information processing device according to claim 11, wherein the second objects are located within an angle of view of the virtual camera when the position of the virtual camera with respect to the field object is at the second position.

[付記13]
前記複数の第2オブジェクトは、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第2位置にあるときに前記仮想カメラの視線方向で互いに重複する、付記12に記載の情報処理装置。
[Appendix 13]
The information processing device according to claim 12, wherein the second objects overlap each other in a line of sight direction of the virtual camera when the position of the virtual camera with respect to the field object is at the second position.

[付記14]
前記オブジェクトは、背景オブジェクトを更に含み、
前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置にあるときと、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第2位置にあるときとで、前記フィールドオブジェクトに対する前記背景オブジェクトの、前記第3軸の方向に沿った位置を異ならせる背景処理部を更に含む、付記1から13のうちのいずれか1項に記載の情報処理装置。
[Appendix 14]
The objects further include a background object;
An information processing device described in any one of Appendix 1 to 13, further including a background processing unit that makes the position of the background object relative to the field object along the direction of the third axis different when the position of the virtual camera relative to the field object is at the first position and when the position of the virtual camera relative to the field object is at the second position.

[付記15]
前記背景処理部は、前記フィールドオブジェクトで表現される仮想的な地平線の高さに基づいて、前記フィールドオブジェクトに対する前記背景オブジェクトの、前記第3軸の方向に沿った位置を決定する、付記14に記載の情報処理装置。
[Appendix 15]
The information processing device according to claim 14, wherein the background processing unit determines a position of the background object relative to the field object along the direction of the third axis based on the height of a virtual horizon represented by the field object.

[付記16]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情報処理方法であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを含み、
前記仮想カメラの視線方向に交差する方向で、前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させ、
前記フィールドオブジェクトに対する前記仮想カメラの位置が第1位置にある場合に、第1の変形度合いで前記フィールドオブジェクトを変形させ、
前記フィールドオブジェクトに対する前記仮想カメラの位置が、前記仮想カメラの視線方向に交差する方向で前記第1位置とは異なる第2位置にある場合に、前記第1の変形度合いとは異なる第2の変形度合いで前記フィールドオブジェクトを変形させることを含む、コンピュータにより実行される情報処理方法。
[Appendix 16]
1. An information processing method for rendering an object disposed in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis perpendicular to each other, as viewed from a virtual camera disposed in the virtual space, comprising:
the objects include a field object associated with a two-dimensional plane defined by the first axis and the second axis;
changing a position of the virtual camera relative to the field object in a direction intersecting a line of sight direction of the virtual camera;
deforming the field object with a first deformation degree when the position of the virtual camera with respect to the field object is at a first position;
An information processing method executed by a computer, comprising: when a position of the virtual camera relative to the field object is at a second position different from the first position in a direction intersecting the line of sight direction of the virtual camera, deforming the field object with a second deformation degree different from the first deformation degree.

[付記17]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情報処理プログラムであって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを含み、
前記仮想カメラの視線方向に交差する方向で、前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させ、
前記フィールドオブジェクトに対する前記仮想カメラの位置が第1位置にある場合に、第1の変形度合いで前記フィールドオブジェクトを変形させ、
前記フィールドオブジェクトに対する前記仮想カメラの位置が、前記仮想カメラの視線方向に交差する方向で前記第1位置とは異なる第2位置にある場合に、前記第1の変形度合いとは異なる第2の変形度合いで前記フィールドオブジェクトを変形させる、
処理をコンピュータに実行させる情報処理プログラム。
[Appendix 17]
1. An information processing program for rendering an object disposed in a three-dimensional virtual space defined by a first axis, a second axis, and a third axis perpendicular to each other, as viewed from a virtual camera disposed in the virtual space,
the objects include a field object associated with a two-dimensional plane defined by the first axis and the second axis;
changing a position of the virtual camera relative to the field object in a direction intersecting a line of sight direction of the virtual camera;
deforming the field object with a first deformation degree when the position of the virtual camera with respect to the field object is at a first position;
When a position of the virtual camera with respect to the field object is at a second position different from the first position in a direction intersecting a line of sight direction of the virtual camera, the field object is deformed with a second deformation degree different from the first deformation degree.
An information processing program that causes a computer to execute processing.

1 ゲームシステム
3 第1オブジェクト
10 サーバ装置
11 サーバ通信部
12 サーバ記憶部
13 サーバ制御部
14 横通路
15 縦通路
16 街路樹オブジェクト
20 端末装置
21 端末通信部
22 端末記憶部
23 表示部
24 入力部
25 端末制御部
30 ネットワーク
60 仮想カメラ
62 画角
70 フィールド面
72 背景面
77 フィールドオブジェクト
130 描画情報記憶部
132 操作情報取得部
134 描画データ送信部
140 描画処理部
142 変化処理部
1420 第1移動処理部
1421 距離変更部
1421A ズーム量変更部
1422 向き変更部
1423 迎角変更部
1424 更新反映部
1425 回転処理部
14251 公転処理部
14252 自転処理部
14253 迎角処理部
144 第2移動処理部
145 変形処理部
146 投影処理部
147 背景処理部
148 描画データ生成部
1 Game system 3 First object 10 Server device 11 Server communication unit 12 Server memory unit 13 Server control unit 14 Horizontal passage 15 Vertical passage 16 Roadside tree object 20 Terminal device 21 Terminal communication unit 22 Terminal memory unit 23 Display unit 24 Input unit 25 Terminal control unit 30 Network 60 Virtual camera 62 View angle 70 Field surface 72 Background surface 77 Field object 130 Drawing information storage unit 132 Operation information acquisition unit 134 Drawing data transmission unit 140 Drawing processing unit 142 Change processing unit 1420 First movement processing unit 1421 Distance change unit 1421A Zoom amount change unit 1422 Orientation change unit 1423 Angle of attack change unit 1424 Update reflection unit 1425 Rotation processing unit 14251 Revolution processing unit 14252 Rotation processing unit 14253 Angle of attack processing unit 144 Second movement processing unit 145 Transformation processing unit 146 Projection processing unit 147 Background processing unit 148 Drawing data generation unit

Claims (14)

仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するためのプログラムであって、
前記オブジェクトは、フィールドオブジェクトと、前記フィールドオブジェクトに対して配置される第2オブジェクトとを含み、
前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させる処理と、
前記フィールドオブジェクトに対する前記仮想カメラの位置に基づいて、前記フィールドオブジェクトを変形させる変形処理とを含む複数の処理を、コンピュータに実行させ、
前記変形処理は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記フィールドオブジェクトの変形度合いを異ならせる、プログラム。
A program for rendering an object placed in a virtual space as viewed from a virtual camera placed in the virtual space, comprising:
the objects include a field object and a second object arranged relative to the field object;
changing a position of the virtual camera relative to the field object;
a transformation process for transforming the field object based on a position of the virtual camera with respect to the field object;
The transformation process varies a degree of transformation of the field object between when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera.
前記複数の処理は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記仮想カメラの視線方向での前記仮想カメラと前記フィールドオブジェクトとの間の距離を異ならせる距離変更処理を更に含む、請求項1に記載のプログラム。 The program according to claim 1, wherein the plurality of processes further includes a distance change process that changes the distance between the virtual camera and the field object in the line of sight of the virtual camera when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera. 前記距離変更処理は、前記仮想カメラの画角内に前記第2オブジェクトが入った場合に、前記距離を小さくする、請求項2に記載のプログラム。 The program according to claim 2, wherein the distance change process reduces the distance when the second object comes within the angle of view of the virtual camera. 前記複数の処理は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記仮想カメラのズーム量に関連する光学パラメータの値を変化させるパラメータ値変化処理を更に含む、請求項1から3のうちのいずれか1項に記載のプログラム。 The program according to any one of claims 1 to 3, wherein the plurality of processes further includes a parameter value change process that changes a value of an optical parameter related to the zoom amount of the virtual camera when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera. 前記オブジェクトは、互いに直交する第1軸、第2軸及び第3軸で規定される3次元の前記仮想空間に配置され、
前記フィールドオブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられ、かつ、変形可能な基本面に基づいて形状付けられ、
前記変形処理は、前記仮想カメラの視線方向と前記第3軸を含む平面で切断した際の前記基本面の形状が、前記平面に垂直な方向に沿って略同じとなるように、前記基本面を変形させる、請求項1から4のうちのいずれか1項に記載のプログラム。
the object is placed in the three-dimensional virtual space defined by a first axis, a second axis, and a third axis that are perpendicular to each other;
the field object is associated with a two-dimensional plane defined by the first axis and the second axis, and is shaped based on a deformable basic surface;
5. The program according to claim 1, wherein the transformation process transforms the basic surface so that a shape of the basic surface when cut by a plane including the line of sight of the virtual camera and the third axis is approximately the same along a direction perpendicular to the plane.
前記オブジェクトは、互いに直交する第1軸、第2軸及び第3軸で規定される3次元の前記仮想空間に配置され、
前記フィールドオブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられ、かつ、変形可能な基本面に基づいて形状付けられ、
前記仮想カメラの視線方向と前記第3軸を含む平面上において、所定位置を原点とし、前記原点を通り前記第3軸に平行な軸をY軸とし、前記フィールドオブジェクトに対して上側に向かう向きをY軸の正側とし、かつ、前記原点を通り前記Y軸に垂直な軸をX軸とした場合に、前記変形処理は、X座標の値の絶対値が大きくなるほどY座標の値が線形又は非線形に単調減少する関数にしたがって、前記基本面を変形させる、請求項1から4のうちのいずれか1項に記載のプログラム。
the object is placed in the three-dimensional virtual space defined by a first axis, a second axis, and a third axis that are perpendicular to each other;
the field object is associated with a two-dimensional plane defined by the first axis and the second axis, and is shaped based on a deformable basic surface;
5. The program according to claim 1, wherein, on a plane including the line of sight of the virtual camera and the third axis, a predetermined position is defined as the origin, an axis passing through the origin and parallel to the third axis is defined as the Y axis, a direction toward the upper side with respect to the field object is defined as the positive side of the Y axis, and an axis passing through the origin and perpendicular to the Y axis is defined as the X axis, the transformation process deforms the basic surface according to a function in which the Y coordinate value monotonically decreases linearly or nonlinearly as the absolute value of the X coordinate value increases.
前記変形処理は、前記フィールドオブジェクトに対する前記仮想カメラの位置に対応付けられた変形パラメータであって、前記フィールドオブジェクトの変形度合いを定める変形パラメータの値に基づいて、前記基本面を変形させ、
前記変形パラメータは、前記関数において、前記X座標の値に係る項に割り当てられる係数を含む、請求項6に記載のプログラム。
the transformation process transforms the base surface based on a value of a transformation parameter that is associated with a position of the virtual camera with respect to the field object and that determines a degree of transformation of the field object;
The program according to claim 6 , wherein the transformation parameters include a coefficient assigned to a term related to the value of the X coordinate in the function.
前記変形パラメータの値は、前記仮想カメラの画角内に前記第2オブジェクトが位置しない第1位置に対応付けられた第1の値と、前記仮想カメラの画角内に前記第2オブジェクトが位置する第2位置に対応付けられた第2の値とを含み、
前記変形処理は、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置と前記第2位置との間で変化する場合に、前記変形パラメータの値を、前記第1の値と前記第2の値との間の1つ以上の中間値を介して、前記第1の値又は前記第2の値へと変化させる、請求項7に記載のプログラム。
the value of the deformation parameter includes a first value associated with a first position where the second object is not located within an angle of view of the virtual camera, and a second value associated with a second position where the second object is located within an angle of view of the virtual camera;
The program of claim 7, wherein the transformation process changes the value of the transformation parameter to the first value or the second value via one or more intermediate values between the first value and the second value when the position of the virtual camera relative to the field object changes between the first position and the second position.
前記フィールドオブジェクトの変形度合いは、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときよりも、前記仮想カメラの画角内に前記第2オブジェクトが位置するときのほうが大きい、請求項1から8のうちのいずれか1項に記載のプログラム。 The program according to any one of claims 1 to 8, wherein the degree of deformation of the field object is greater when the second object is located within the angle of view of the virtual camera than when the second object is not located within the angle of view of the virtual camera. 前記複数の第2オブジェクトは、前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第2位置にあるときに前記仮想カメラの視線方向で互いに重複する、請求項に記載のプログラム。 The program according to claim 8 , wherein the second objects overlap one another in a line of sight direction of the virtual camera when the position of the virtual camera with respect to the field object is at the second position. 前記オブジェクトは、互いに直交する第1軸、第2軸及び第3軸で規定される3次元の前記仮想空間に配置され、かつ、背景オブジェクトを更に含み、
前記フィールドオブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられ、
前記複数の処理は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記フィールドオブジェクトに対する前記背景オブジェクトの、前記第3軸の方向に沿った位置を異ならせる背景処理を更に含む、請求項1から10のうちのいずれか1項に記載のプログラム。
the object is disposed in the three-dimensional virtual space defined by a first axis, a second axis, and a third axis that are orthogonal to each other, and further includes a background object;
the field object is associated with a two-dimensional plane defined by the first axis and the second axis;
11. The program according to claim 1, wherein the plurality of processes further include background processing that changes the position of the background object relative to the field object along the direction of the third axis between when the second object is located within the field of view of the virtual camera and when the second object is not located within the field of view of the virtual camera.
前記背景処理は、前記フィールドオブジェクトで表現される仮想的な地平線の高さに基づいて、前記フィールドオブジェクトに対する前記背景オブジェクトの、前記第3軸の方向に沿った位置を決定する、請求項11に記載のプログラム。 The program according to claim 11, wherein the background processing determines the position of the background object relative to the field object along the direction of the third axis based on the height of a virtual horizon represented by the field object. 仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情報処理方法であって、
前記オブジェクトは、フィールドオブジェクトと、前記フィールドオブジェクトに対して配置される第2オブジェクトとを含み、
前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させるステップと、
前記フィールドオブジェクトに対する前記仮想カメラの位置に基づいて、前記フィールドオブジェクトを変形させる変形ステップとを含み、
前記変形ステップは、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記フィールドオブジェクトの変形度合いを異ならせることを含む、コンピュータにより実行される情報処理方法。
1. An information processing method for rendering an object placed in a virtual space as viewed from a virtual camera placed in the virtual space, comprising:
the objects include a field object and a second object arranged relative to the field object;
changing a position of the virtual camera relative to the field object;
and transforming the field object based on a position of the virtual camera relative to the field object,
An information processing method executed by a computer, wherein the deformation step includes varying the degree of deformation of the field object when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera.
仮想空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情報処理装置であって、
前記オブジェクトは、フィールドオブジェクトと、前記フィールドオブジェクトに対して配置される第2オブジェクトとを含み、
前記フィールドオブジェクトに対する前記仮想カメラの位置を相対的に変化させる第1移動処理部と、
前記フィールドオブジェクトに対する前記仮想カメラの位置に基づいて、前記フィールドオブジェクトを変形させる変形処理部とを含み、
前記変形処理部は、前記仮想カメラの画角内に前記第2オブジェクトが位置するときと、前記仮想カメラの画角内に前記第2オブジェクトが位置しないときとで、前記フィールドオブジェクトの変形度合いを異ならせる、情報処理装置。

An information processing device for rendering an object placed in a virtual space as viewed from a virtual camera placed in the virtual space, comprising:
the objects include a field object and a second object arranged relative to the field object;
a first movement processing unit that changes a position of the virtual camera relatively to the field object;
a transformation processing unit that transforms the field object based on a position of the virtual camera with respect to the field object,
The information processing device, wherein the transformation processing unit changes the degree of transformation of the field object between when the second object is located within the angle of view of the virtual camera and when the second object is not located within the angle of view of the virtual camera.

JP2023120714A 2020-06-26 2023-07-25 Information processing device, information processing method, and information processing program Active JP7601358B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2023120714A JP7601358B2 (en) 2020-06-26 2023-07-25 Information processing device, information processing method, and information processing program
JP2024206267A JP7778325B2 (en) 2020-06-26 2024-11-27 Information processing device, information processing method, and information processing program
JP2025190426A JP2026015440A (en) 2020-06-26 2025-11-11 Information processing device, information processing method, and information processing program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020110753A JP7325758B2 (en) 2020-06-26 2020-06-26 Information processing device, information processing method, information processing program
JP2023120714A JP7601358B2 (en) 2020-06-26 2023-07-25 Information processing device, information processing method, and information processing program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020110753A Division JP7325758B2 (en) 2020-06-26 2020-06-26 Information processing device, information processing method, information processing program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024206267A Division JP7778325B2 (en) 2020-06-26 2024-11-27 Information processing device, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP2023138554A JP2023138554A (en) 2023-10-02
JP7601358B2 true JP7601358B2 (en) 2024-12-17

Family

ID=80109957

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2020110753A Active JP7325758B2 (en) 2020-06-26 2020-06-26 Information processing device, information processing method, information processing program
JP2023120714A Active JP7601358B2 (en) 2020-06-26 2023-07-25 Information processing device, information processing method, and information processing program
JP2024206267A Active JP7778325B2 (en) 2020-06-26 2024-11-27 Information processing device, information processing method, and information processing program
JP2025190426A Pending JP2026015440A (en) 2020-06-26 2025-11-11 Information processing device, information processing method, and information processing program

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2020110753A Active JP7325758B2 (en) 2020-06-26 2020-06-26 Information processing device, information processing method, information processing program

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2024206267A Active JP7778325B2 (en) 2020-06-26 2024-11-27 Information processing device, information processing method, and information processing program
JP2025190426A Pending JP2026015440A (en) 2020-06-26 2025-11-11 Information processing device, information processing method, and information processing program

Country Status (1)

Country Link
JP (4) JP7325758B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017131523A (en) 2016-01-29 2017-08-03 グリー株式会社 Program, game control method, and information processor
JP2018171136A (en) 2017-03-31 2018-11-08 グリー株式会社 Program, information processing device, and control method
JP2019209115A (en) 2018-06-04 2019-12-12 任天堂株式会社 Game program, information processing system, information processor, and information processing method
JP2020080008A (en) 2018-11-12 2020-05-28 任天堂株式会社 Information processing apparatus, information processing program, information processing system, and information processing method
JP2020080007A (en) 2018-11-12 2020-05-28 任天堂株式会社 Information processor, information processing program, information processing system, and information processing method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3990543B2 (en) 2001-03-16 2007-10-17 株式会社バンダイナムコゲームス Program, information storage medium, and game device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017131523A (en) 2016-01-29 2017-08-03 グリー株式会社 Program, game control method, and information processor
JP2018171136A (en) 2017-03-31 2018-11-08 グリー株式会社 Program, information processing device, and control method
JP2019209115A (en) 2018-06-04 2019-12-12 任天堂株式会社 Game program, information processing system, information processor, and information processing method
JP2020080008A (en) 2018-11-12 2020-05-28 任天堂株式会社 Information processing apparatus, information processing program, information processing system, and information processing method
JP2020080007A (en) 2018-11-12 2020-05-28 任天堂株式会社 Information processor, information processing program, information processing system, and information processing method

Also Published As

Publication number Publication date
JP2022007662A (en) 2022-01-13
JP7778325B2 (en) 2025-12-02
JP2025023030A (en) 2025-02-14
JP2023138554A (en) 2023-10-02
JP7325758B2 (en) 2023-08-15
JP2026015440A (en) 2026-01-29

Similar Documents

Publication Publication Date Title
JP7238143B2 (en) MOVEMENT CONTROL METHOD AND APPARATUS THEREOF, TERMINAL AND COMPUTER PROGRAM FOR VIRTUAL OBJECT
EP2466445B1 (en) Input direction determination terminal, method and computer program product
JP6185123B1 (en) Program, control method, and information processing apparatus
US12100094B2 (en) Information processing device, information processing method, and information processing program
JP2023549753A (en) Mark processing method and device, computer equipment, and computer program
JP5942031B1 (en) Program, game control method, and information processing apparatus
JP2018166943A (en) Game system and program
CN113041616B (en) Method, device, electronic equipment and storage medium for controlling skip word display in game
JP6928060B2 (en) Input processing device and program
JP5977878B1 (en) Program, game control method, and information processing apparatus
JP2025176148A (en) Computer program, virtual space display device, and virtual space display method
JP7601358B2 (en) Information processing device, information processing method, and information processing program
JP6807732B2 (en) Programs, game control methods, and information processing equipment
JP7672183B2 (en) Information processing device, information processing method, and information processing program
JP7507458B2 (en) Information processing device, information processing method, and information processing program
CN115634450B (en) A method, control device, equipment, and medium for controlling a virtual character.
JP2019117634A (en) Display control program, display control method, and display control system
CN115708956A (en) Game picture updating method and device, computer equipment and medium
JP6480520B2 (en) Program, control method, and information processing apparatus
JP6960214B2 (en) Programs, game control methods, and information processing equipment
JP2020072943A (en) Display control program, display control method, and display control system
JP6030258B1 (en) Program, game control method, and information processing apparatus
WO2026001240A1 (en) Control layout method and apparatus, and computer device and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240913

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241127

R150 Certificate of patent or registration of utility model

Ref document number: 7601358

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350