JP7844064B2 - Information processing device, information processing method, information processing program - Google Patents
Information processing device, information processing method, information processing programInfo
- Publication number
- JP7844064B2 JP7844064B2 JP2025066644A JP2025066644A JP7844064B2 JP 7844064 B2 JP7844064 B2 JP 7844064B2 JP 2025066644 A JP2025066644 A JP 2025066644A JP 2025066644 A JP2025066644 A JP 2025066644A JP 7844064 B2 JP7844064 B2 JP 7844064B2
- Authority
- JP
- Japan
- Prior art keywords
- field
- value
- virtual camera
- parameter
- deformation
- 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
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次元の仮想空間に配置されるオブジェクトを、仮想空間に配置された仮想カメラから
視た表現で描画するための情報処理装置が知られている。
Information processing devices are known for rendering objects placed in a three-dimensional virtual space using a representation as seen from a virtual camera placed in that virtual space.
上記のような従来技術では、仮想カメラと特定オブジェクトとの関係(例えば位置関係
)に応じた多様な表現を生成することが難しい。
With conventional technologies like those described above, it is difficult to generate diverse representations that depend on the relationship (e.g., positional relationship) between the virtual camera and a specific object.
そこで、1つの側面では、本発明は、仮想カメラと特定オブジェクトとの関係に応じた
多様な表現を生成することを目的とする。
Therefore, in one aspect, the present invention aims to generate diverse representations depending on the relationship between a virtual camera and a specific object.
1つの側面では、互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想
空間に配置されるオブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で
描画するための情報処理装置であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けら
れるフィールドオブジェクトと、前記フィールドオブジェクトに配置される特定オブジェ
クトとを含み、
前記フィールドオブジェクトにおける前記仮想カメラの画角内に収まる領域を変化させ
る変化処理部と、
前記フィールドオブジェクトを変形させる変形処理部とを含み、
前記変形処理部は、前記領域内における前記特定オブジェクトの横方向の位置に基づい
て、前記フィールドオブジェクトの変形態様を異ならせる、情報処理装置が提供される。
In one aspect, an information processing device for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, as viewed from a virtual camera placed in the virtual space,
The object includes a field object associated with a two-dimensional plane defined by the first and second axes, and a specific object placed on the field object.
A change processing unit that changes the area within the field object that falls within the field of view of the virtual camera,
Includes a deformation processing unit that deforms the field object,
The deformation processing unit is provided as an information processing device that causes the deformation pattern of the field object to differ based on the lateral position of the specific object within the region.
1つの側面では、本発明によれば、仮想カメラと特定オブジェクトとの関係に応じた多
様な表現を生成することが可能となる。
In one respect, the present invention makes it possible to generate diverse representations depending on the relationship between the virtual camera and a specific object.
以下、添付図面を参照しながら各実施例について詳細に説明する。 The following describes each embodiment in detail, referring to the attached drawings.
(ゲームシステムの概要)
図1を参照して、本発明の一実施形態に係るゲームシステム1の概要について説明する
。図1は、本実施形態に係るゲームシステム1のブロック図である。図2は、フィールド
画像の一例を示す図である。ゲームシステム1は、サーバ装置10と、1つ以上の端末装
置20と、を備える。図1では簡便のため、3つの端末装置20を図示しているが、端末
装置20の数は2つ以上であればよい。
(Overview of the game system)
Referring to Figure 1, an overview of a game system 1 according to one embodiment of the present invention will be described. Figure 1 is a block diagram of the game system 1 according to this embodiment. Figure 2 is a diagram showing an example of a field image. The game system 1 comprises a server device 10 and one or more terminal devices 20. For simplicity, three terminal devices 20 are shown in Figure 1, but the number of terminal devices 20 can be two or more.
サーバ装置10は、例えばゲーム運営者が管理するサーバ等の情報処理装置である。端
末装置20は、例えば携帯電話、スマートフォン、タブレット端末、PC(Person
al Computer)、又はゲーム装置等の、ユーザによって使用される情報処理装
置である。端末装置20は、本実施形態に係るゲームのアプリケーションを実行可能であ
る。ゲームのアプリケーションは、ネットワーク30を介してサーバ装置10や所定のア
プリケーション配信サーバから端末装置20に受信されてもよく、あるいは端末装置20
に備えられた記憶装置又は端末装置20が読取可能なメモリカード等の記憶媒体に予め記
憶されていてもよい。サーバ装置10及び端末装置20は、ネットワーク30を介して通
信可能に接続される。例えば、サーバ装置10及び端末装置20が協動して、ゲームに関
する多様な処理を実行する。
The server device 10 is, for example, an information processing device such as a server managed by a game operator. The terminal device 20 is, for example, a mobile phone, smartphone, tablet terminal, PC (Person
The terminal device 20 is an information processing device used by a user, such as a computer or a game device. The terminal device 20 is capable of executing the 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 the terminal device 20
The data may be pre-stored in a storage medium such as a memory card that is readable by the storage device or terminal device 20. The server device 10 and the terminal device 20 are connected to each other via the network 30 so that they can communicate with each other. For example, the server device 10 and the terminal device 20 cooperate to perform various processes related to the game.
なお、ネットワーク30は、無線通信網や、インターネット、VPN(Virtual
Private Network)、WAN(Wide Area Network)
、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでよい。
Network 30 includes wireless communication networks, the Internet, and VPNs (Virtual
Private Network), WAN (Wide Area Network)
This may include, a wired network, or any combination thereof.
ここで、本実施形態に係るゲームの概要について説明する。本実施形態に係るゲームは
、例えばロールプレイングゲーム又はシミュレーションゲーム等であって、ゲームの実行
に伴い、ゲーム媒体が用いられる。例えば、本実施形態に係るゲームは、3次元の仮想空
間内のフィールド上でゲーム媒体を移動させるゲームである。
Here, we will describe the outline of the game according to this embodiment. The game according to this embodiment is, for example, a role-playing game or a simulation game, and a game medium is used when the game is played. For example, the game according to this embodiment is a game in which the game medium is moved on a field in a three-dimensional virtual space.
ゲーム媒体は、ゲームに使用される電子データであり、例えば、カード、アイテム、ポ
イント、サービス内通貨(又はゲーム内通貨)、チケット、キャラクタ、アバタ、パラメ
ータ等、任意の媒体を含む。また、ゲーム媒体は、レベル情報、ステータス情報、ゲーム
パラメータ情報(体力値及び攻撃力等)又は能力情報(スキル、アビリティ、呪文、ジョ
ブ等)のような、ゲーム関連情報であってもよい。また、ゲーム媒体は、ユーザによって
ゲーム内で取得、所有、使用、管理、交換、合成、強化、売却、廃棄、又は贈与等され得
る電子データであるが、ゲーム媒体の利用態様は本明細書で明示されるものに限られない
。
Game media refers to electronic data used in a game, and includes any medium such as cards, items, points, in-service currency (or in-game currency), tickets, characters, avatars, parameters, etc. Game media may also refer to game-related information such as level information, status information, game parameter information (such as health points and attack power), or ability information (such as skills, abilities, spells, jobs, etc.). Game media is electronic data that can be acquired, owned, used, managed, exchanged, synthesized, enhanced, sold, discarded, or gifted by the user within the game, but the manner in which game media are used is not limited to those explicitly stated herein.
以下、特に明示した場合を除き、「ユーザが所有するゲーム媒体」とは、ユーザのユー
ザ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's user ID. "Assigning game media to a user" means associating the game media with the user ID. "Discarding game media owned by a user" means dissolving the association between the user ID and the game media. "Consuming game media owned by a user" means that dissolving the association between the user ID and the game media may result in some effect or impact within the game. "Selling game media owned by a user" means dissolving the association between the user ID and the game media, and associating the user ID with other game media (e.g., virtual currency or items). "Transferring game media owned by one user to another user" means dissolving the association between one user's user ID and the game media, and associating the game media with the other user's user ID.
本実施形態に係るゲームは、概略として、第1ゲームパートと、第2ゲームパートと、
第3ゲームパートと、を含む。
The game according to this embodiment generally consists of a first game part and a second game part.
This includes the third game part.
第1ゲームパートにおいて、ユーザは、ユーザキャラクタを操作して、仮想空間内のフ
ィールドを探索しながら、ゲームを進行させる。具体的には、ユーザ操作に応じてユーザ
キャラクタがフィールド上を移動する。フィールドには、例えば町及びダンジョン等の多
様なエリアが設けられており、例えば町の住人キャラクタとの会話、及びダンジョン内で
遭遇する敵キャラクタとの対戦等、エリアに応じた多様なイベントが発生する。イベント
が実行されることによって、ゲームのメインストーリーが進行する。また第1ゲームパー
トにおいて、例えば敵キャラクタとの対戦に勝利すると、例えばアイテム、仮想通貨、又
はキャラクタ等のゲーム媒体がユーザに付与され得る。付与されたゲーム媒体は、例えば
後述する第3ゲームパートにおいて使用可能である。
In the first game part, the user controls a user character to explore a field in a virtual space and progress through the game. Specifically, the user character moves around the field in response to user actions. The field contains various areas, such as towns and dungeons, and various events occur depending on 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 these events are completed. Also, in the first game part, if the user wins a battle against an enemy character, for example, the user may be awarded game media such as items, virtual currency, or characters. The awarded game media can be used in the third game part, which will be described later.
第2ゲームパートにおいて、ユーザは、ゲーム媒体の保有状況を変更する。ユーザは、
例えばアイテム、仮想通貨、及びキャラクタ等の多様なゲーム媒体を収集する。具体的に
は、フィールド上に設けられた採掘場及び釣り堀等の特定のエリアにユーザキャラクタを
移動させ、又は特定のキャラクタ等のゲーム媒体を選択(例えば、画面に対するタッチ操
作)すると、ゲーム媒体が取得可能なサブイベントが発生する。サブイベントは、例えば
サブストーリーの進行、及びミニゲームの実行等を含むが、サブイベントの内容はこれら
に限られない。サブイベントの実行結果に応じて、多様なゲーム媒体がユーザに付与され
得る。付与されたゲーム媒体は、例えば後述する第3ゲームパートにおいて使用可能であ
る。
In the second game part, the user changes the ownership status of the game media. The user,
For example, players can collect various game media such as items, virtual currency, and characters. Specifically, when a user character moves to a specific area on the field, such as a mining area or a fishing pond, or when a specific game media such as a character is selected (for example, by touching the screen), a sub-event occurs in which game media can be acquired. Sub-events include, for example, progressing through a sub-story and playing a mini-game, but the content of sub-events is not limited to these. Depending on the result of executing the sub-event, various game media may be granted to the user. The granted game media can be used, for example, in the third game part described later.
第3ゲームパートにおいて、ユーザは、ゲーム媒体に関するパラメータを変更する。ユ
ーザは、例えばユーザキャラクタの強化を行う。具体的には、上述したように第1ゲーム
パート及び第2ゲームパートにおいてユーザに付与されたゲーム媒体が消費されることに
よって、ユーザキャラクタの多様なゲームパラメータが変化する。ゲームパラメータは、
例えばユーザキャラクタのレベル、HP、攻撃力、防御力、属性、及びスキル等を含むが
、これらに限られない。ユーザキャラクタのゲームパラメータの変化に応じて、ユーザキ
ャラクタが強化される。ユーザキャラクタの強化によって、第1ゲームパートにおける敵
キャラクタとの対戦でユーザキャラクタが勝利できる蓋然性が高まる。
In the third game part, the user changes parameters related to the game medium. For example, the user enhances their character. Specifically, as described above, various game parameters of the user character change as the game medium granted to the user in the first and second game parts is consumed. The game parameters are:
This includes, but is not limited to, the user character's level, HP, attack power, defense power, attributes, and skills. The user character is strengthened in accordance with changes in the user character's game parameters. Strengthening the user character increases the probability that the user character will win battles against enemy characters in the first game part.
このように、本実施形態に係るゲームにおいて、ユーザは第1ゲームパート、第2ゲー
ムパート、及び第3ゲームパートを繰り返し行う。
Thus, in the game according to this embodiment, the user repeatedly plays through the first game part, the second game part, and the third game part.
(サーバ装置の構成)
サーバ装置10の構成について具体的に説明する。サーバ装置10は、サーバコンピュ
ータにより構成される。サーバ装置10は、複数台のサーバコンピュータにより協動して
実現されてもよい。
(Server configuration)
The configuration of the server device 10 will now be described in detail. The server device 10 is composed of server computers. The server device 10 may be realized by multiple 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.
It is equipped with.
サーバ通信部11は、外部装置と無線又は有線によって通信し、情報の送受信を行うイ
ンタフェースを含む。サーバ通信部11は、例えば無線LAN(Local Area
Network)通信モジュール又は有線LAN通信モジュール等を含んでもよい。サー
バ通信部11は、ネットワーク30を介して、端末装置20との間で情報を送受信可能で
ある。
The server communication unit 11 includes an interface for communicating with external devices wirelessly or via wired connection and for sending and receiving information. The server communication unit 11 includes, for example, a wireless LAN (Local Area
It may include a network communication module or a wired LAN communication module, etc. The server communication unit 11 can send and receive information with the terminal device 20 via the network 30.
サーバ記憶部12は、例えば記憶装置であって、ゲームの処理に必要な種々の情報及び
プログラムを記憶する。例えばサーバ記憶部12は、ゲームのアプリケーションを記憶す
る。
The server memory unit 12 is, for example, a memory device that stores various information and programs necessary for processing the game. For example, the server memory unit 12 stores the game application.
また、サーバ記憶部12は、3次元の仮想空間内に配置された種々のオブジェクトに投
影(テクスチャマッピング)するための種々の画像(テクスチャ画像)を記憶する。
Furthermore, the server storage unit 12 stores various images (texture images) for projection (texture mapping) onto various objects placed in a 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 will be referred to as the first game medium, and the object drawn (placed) on the field object (described later) based on the image of the first game medium will also be referred to as the first object. In this embodiment, only one first object is represented in the virtual space, but two or more first objects may be represented. The first object may also be a group of multiple first game mediums. Furthermore, 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 Playe
r Character)等のような、ゲーム媒体に係る画像を記憶する。以下、第1ゲ
ーム媒体とは異なる任意のゲーム媒体(例えば建物、壁、樹木、又はNPC等)であって
、後述するフィールドオブジェクトに配置されうるゲーム媒体を第2ゲーム媒体と称し、
第2ゲーム媒体が投影されたオブジェクトを第2オブジェクトとも称する。なお、本実施
形態では、第2オブジェクトは、後述するフィールドオブジェクトに対して固定されたオ
ブジェクトや、後述するフィールドオブジェクトに対して移動可能なオブジェクト等を含
んでもよい。また、第2オブジェクトは、後述するフィールドオブジェクトに常に配置さ
れるオブジェクトや、所定の条件が満たされた場合にだけ配置されるオブジェクト等を含
んでもよい。
Furthermore, the server storage unit 12 can store, for example, buildings, walls, trees, or NPCs (Non-Play)
It stores images related to the game medium, such as r Character. Hereinafter, any game medium different from the first game medium (for example, buildings, walls, trees, or NPCs, etc.) that can be placed on the field objects described later will be referred to as the second game medium.
The object onto which the second game medium is projected is also referred to as the second object. In this embodiment, the second object may include objects fixed to the field object described later, or objects that are movable to the field object described later. Furthermore, the second object may include objects that are always placed on the field object described later, or objects that are placed only when certain conditions are met.
また、サーバ記憶部12は、例えば空又は遠景等の背景の画像(背景画像)を記憶する
。以下、背景画像が投影されたオブジェクトを背景オブジェクトともいう。なお、背景画
像は複数種類用意され、使い分けられてもよい。
Furthermore, the server storage unit 12 stores background images, such as the sky or a distant landscape. Hereinafter, objects onto which the background image is projected will also be referred to as background objects. Multiple types of background images may be prepared and used interchangeably.
また、サーバ記憶部12は、フィールド(例えば、地面)の画像(フィールド画像)を
記憶する。フィールド画像は、後述するフィールド面に投影される。以下、フィールド画
像がフィールド面に投影されたオブジェクトを、フィールドオブジェクトとも称する。な
お、フィールドオブジェクトは、仮想空間内における仮想のフィールド(地面)として用
いられる。
Furthermore, the server memory unit 12 stores an image of a field (for example, the ground) (field image). The field image is projected onto the field surface, which will be described later. Hereinafter, an object onto which the field image is projected onto the field surface will also be referred to as a field object. The field object is used as a virtual field (ground) within the virtual space.
ここで、フィールド画像には、例えば図2に示すように、互いに直交するu軸及びv軸
を有するテクスチャ座標系が設定されている。本実施形態において、フィールド画像には
、横通路14と、縦通路15と、カーブ路17とが定められている。横通路14、縦通路
15、及びカーブ路17は、フィールドオブジェクトにおける第1オブジェクト等が移動
可能な通路を形成する。なお、図2では、特定の通路構成が示されるが、通路構成は任意
である。また、図2では、フィールド画像は、矩形であるが、他の形態であってもよい。
また、フィールド画像は複数種類用意され、使い分けられてもよい。
Here, the field image has a texture coordinate system with mutually orthogonal u-axis and v-axis, as shown in Figure 2, for example. In this embodiment, the field image has a horizontal path 14, a vertical path 15, and a curved path 17. The horizontal path 14, the vertical path 15, and the curved path 17 form paths through which the first object in the field object can move. Although Figure 2 shows a specific path configuration, the path configuration is arbitrary. Also, although the field image in Figure 2 is rectangular, it may take other forms.
Additionally, multiple types of field images may be provided and used interchangeably.
また、サーバ記憶部12は、第2オブジェクトと、フィールド画像のテクスチャ座標と
、を対応付けた対応情報を記憶する。対応情報は、第2オブジェクトをフィールドオブジ
ェクト上に配置する処理を実行するサーバ制御部13によって用いられる。
Furthermore, the server storage unit 12 stores correspondence information that associates the second object with the texture coordinates of the field image. This correspondence information is used by the server control unit 13, which executes the process of placing the second object onto the field object.
サーバ制御部13は、専用のマイクロプロセッサ又は特定のプログラムを読み込むこと
により特定の機能を実現するCPUである。例えばサーバ制御部13は、表示部23に対
するユーザ操作に応じてゲームのアプリケーションを実行する。また、サーバ制御部13
は、ゲームに関する多様な処理を実行する。
The server control unit 13 is a CPU that implements specific functions by loading a dedicated microprocessor or a specific program. For example, the server control unit 13 executes a game application in response to user operations on the display unit 23.
It performs various processes related to the game.
例えば、サーバ制御部13は、フィールドオブジェクト及び第1オブジェクト等が表示
されるフィールド画像を表示部23に表示させる。また、サーバ制御部13は、所定のユ
ーザ操作に応じて、仮想空間内において第1オブジェクトを、フィールドオブジェクトに
対して相対的に、フィールドオブジェクト上で移動させる。サーバ制御部13の具体的な
処理の詳細は後述する。
For example, the server control unit 13 displays a field image on the display unit 23, which shows the field object and the first object. The server control unit 13 also moves the first object relative to the field object on the field object in the virtual space in response to a predetermined user operation. The specific details of the server control unit 13's processing will be described later.
(端末装置の構成)
端末装置20の構成について具体的に説明する。図1に示すように、端末装置20は、
端末通信部21と、端末記憶部22と、表示部23と、入力部24と、端末制御部25と
を備える。
(Terminal device configuration)
The configuration of the terminal device 20 will be explained in detail. As shown in Figure 1, the terminal device 20 is:
It comprises 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 Evolu
tion)(登録商標)等のモバイル通信規格に対応する無線通信モジュール、無線LA
N通信モジュール、又は有線LAN通信モジュール等を含んでもよい。端末通信部21は
、ネットワーク30を介して、サーバ装置10との間で情報を送受信可能である。
The terminal communication unit 21 includes an interface for communicating with external devices wirelessly or via wired connection and for sending and receiving information. The terminal communication unit 21 includes, for example, LTE (Long Term Evolu
Wireless communication module compatible with mobile communication standards such as tion (registered trademark), wireless LA
It may include an N-communication module or a wired LAN communication module, etc. The terminal communication unit 21 can send and receive information with the server device 10 via the network 30.
端末記憶部22は、例えば一次記憶装置及び二次記憶装置を含む。例えば端末記憶部2
2は、半導体メモリ、磁気メモリ、又は光メモリ等を含んでもよい。端末記憶部22は、
サーバ装置10から受信する、ゲームの処理に用いられる種々の情報及びプログラムを記
憶する。ゲームの処理に用いられる情報及びプログラムは、端末通信部21を介して外部
装置から取得されてもよい。例えば、ゲームのアプリケーションプログラムが、所定のア
プリケーション配信サーバから取得されてもよい。以下、アプリケーションプログラムを
、単にアプリケーションともいう。また例えば、上述したユーザに関する情報及び対戦相
手であるゲーム媒体に関する情報等の一部又は全部が、サーバ装置10から取得されても
よい。
The terminal storage unit 22 includes, for example, a primary storage device and a secondary storage device. For example, terminal storage unit 2
2 may include semiconductor memory, magnetic memory, or optical memory, etc. The terminal storage unit 22 is
The terminal communication unit 21 stores various information and programs used for game processing, which are received from the server device 10. The information and programs used for game processing may also be obtained from external devices via the terminal communication unit 21. For example, the game application program may be obtained from a predetermined application distribution server. Hereinafter, the application program will also be simply referred to as the application. Also, for example, some or all of the above-mentioned information about the user and information about the game medium that is the opponent may be obtained from the server device 10.
表示部23は、例えば液晶ディスプレイ又は有機EL(Electro-Lumine
scence)ディスプレイ等の表示デバイスを含む。表示部23は、多様な画像を表示
可能である。表示部23は、例えばタッチパネルで構成され、多様なユーザ操作を検出す
るインタフェースとして機能する。
The display unit 23 is, for example, a liquid crystal display or an organic EL (Electro-Luminous) display.
The system includes display devices such as a screen. 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 for detecting various user operations.
入力部24は、例えば表示部23と一体的に設けられたタッチパネルを含む入力インタ
フェースを含む。入力部24は、端末装置20に対するユーザ入力を受付可能である。ま
た、入力部24は、物理キーを含んでもよいし、マウス等のようなポインティングデバイ
スをはじめとする任意の入力インタフェースを更に含んでもよい。
The input unit 24 includes an input interface, for example, a touch panel integrated with the display unit 23. The input unit 24 is capable of receiving user input to the terminal device 20. The input unit 24 may also include physical keys, or any other input interface, such as a pointing device like 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 for game processing from at least one of the server device 10 and other external servers. The terminal control unit 25 stores the received information and programs in the terminal storage unit 22.
端末制御部25は、ユーザの操作に応じてゲームのアプリケーションを起動する。端末
制御部25は、サーバ装置10と協動して、ゲームを実行する。例えば、端末制御部25
は、ゲームに用いられる種々の画像(例えば後述する各種のフィールド画像)を表示部2
3に表示させる。画面上には、例えばユーザ操作を検出するGUI(Graphic U
ser Interface)が表示されてもよい。端末制御部25は、入力部24を介
して、画面に対するユーザ操作を検出可能である。例えば端末制御部25は、ユーザのタ
ップ操作、ロングタップ操作、フリック操作、及びスワイプ操作等を検出可能である。タ
ップ操作は、ユーザが指で表示部23に触れ、その後に指を離す操作である。端末制御部
25は、操作情報をサーバ装置10に送信する。
The terminal control unit 25 launches the game application in response to user input. The terminal control unit 25 works in cooperation with the server device 10 to execute the game. For example, the terminal control unit 25
The display unit 2 displays various images used in the game (for example, various field images described later).
Display it in 3. On the screen, for example, a GUI (Graphical User Interface) that detects user operations.
The "server Interface" may be displayed. The terminal control unit 25 can detect user operations on the screen via the input unit 24. For example, the terminal control unit 25 can detect user tap operations, long tap operations, flick operations, and swipe operations. A tap operation is an operation in which the user touches the display unit 23 with their finger and then lifts their finger. The terminal control unit 25 transmits the operation information to the server device 10.
(ゲームにおける描画機能)
サーバ制御部13は、端末装置20と協動して、表示部23上にフィールド画像を表示
し、ゲームの進行に応じてフィールド画像を更新していく。本実施形態では、サーバ制御
部13は、端末装置20と協動して、3次元の仮想空間に配置されるオブジェクトを、仮
想空間に配置された仮想カメラから視た表現で描画する。
(Graphics functions in games)
The server control unit 13 works in cooperation with the terminal device 20 to display a field image on the display unit 23 and updates the field image according to the progress of the game. In this embodiment, the server control unit 13 works in cooperation with the terminal device 20 to render objects placed in a three-dimensional virtual space as they appear from the perspective of a virtual camera placed in the virtual space.
なお、以下で説明する描画処理は、サーバ制御部13により実現されるが、他の実施形
態では、以下で説明する描画処理の一部又は全部がサーバ制御部13により実現されても
よい。例えば、以下の説明において、端末装置20に表示されるフィールド画像の少なく
とも一部を、サーバ装置10が生成したデータに基づいて端末装置20に表示させるウェ
ブ表示とし、画面の少なくとも一部を、端末装置20にインストールされているネイティ
ブアプリケーションによって表示させるネイティブ表示としてもよい。
The drawing process described below is implemented by the server control unit 13, but in other embodiments, some or all of the drawing process described below may be implemented by the server control unit 13. For example, in the following description, at least a portion of the field image displayed on the terminal device 20 may be a web display, which is displayed on the terminal device 20 based on data generated by the server device 10, and at least a portion of the screen may be a native display, which is 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 illustrating examples of field objects and background objects.
Figure 3 is a plan view showing the entire field surface 70 that forms the field object and the background surface 72 that forms the background object, and Figure 4 is a perspective view showing a part of the field surface 70 and background surface 72 when viewed in an oblique direction including the direction component of arrow R0 in Figure 3. A virtual camera 60 is also schematically illustrated in Figure 4. In Figure 4, the background surface 72 is shown in the form of a background object onto which a background image including images of clouds and the sun is projected.
以下の説明において、各種オブジェクトの移動とは、仮想空間内の移動を表す。また、
各種オブジェクトの可視範囲とは、仮想カメラ60から視て可視の範囲(すなわち仮想カ
メラ60の画角62内の範囲)を表す。
In the following explanation, the movement of various objects refers to movement within the virtual space.
The visible range of various objects refers to the range visible from the virtual camera 60 (i.e., the range within the field 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 the x, y, and z coordinate system (hereinafter also referred to as the "global coordinate system") as a spatial coordinate system in the virtual space. The origin of the global coordinate system may be fixed at any position. In the following, the positive z-direction is considered the upper side of the virtual space, and the negative z-direction is considered the lower side of the virtual space.
In this embodiment, the x-axis is an example of the first axis, the y-axis is an example of the second axis, and z
The axis is an example of a third axis. Below, the terms x-direction, y-direction, and z-direction refer to the direction parallel to the x-axis, the direction parallel to the y-axis, and the direction parallel to the z-axis, respectively. For example, unless otherwise specified, the z-direction refers to the direction parallel to the z-axis passing through any point in the xy-plane.
フィールド面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 positioned in correspondence with the xy plane such 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. In Figure 3, the u-axis, v-axis, and origin of the texture coordinate system are shown separated from the x-axis, y-axis, and origin of the global coordinate system, representing the state before correspondence. The field surface 70 is prevented from translational movement (linear movement) in the x, y, and z directions. However, in other embodiments, the field surface 70 may be allowed to translate in the global coordinate system.
フィールド面70は、xy平面に平行な平面を正規の状態としたとき、正規の状態から
変形可能である。このように、本実施形態では、フィールドオブジェクトは、変形可能な
フィールド面70に基づいて形状付けられる。すなわち、フィールドオブジェクトは、正
規の状態から変形したフィールド面70に基づいて形状付けられることで、xy平面に平
行な平面に対して変形する。以下、フィールド面70及びフィールドオブジェクトに関す
る変形とは、特に言及しない限り、xy平面に平行な平面を正規の形状(状態)とした場
合の変形を意味する。なお、変形状態のフィールドオブジェクトは、変形状態のフィール
ド面70にフィールド画像を投影することで実現されてもよいし、正規の状態のフィール
ド面70にフィールド画像を投影させてからフィールド面70を変形させることで実現さ
れてもよい。
The field surface 70 is deformable from its normal state, when the plane parallel to the xy plane is considered 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 relative to the plane parallel to the xy plane by being shaped based on the field surface 70 deformed from its normal state. Hereinafter, deformation of the field surface 70 and the field object refers to deformation when the plane parallel to the xy plane is considered the normal shape (state), unless otherwise specified. The deformed field object may be realized by projecting a field image onto the deformed field surface 70, or by projecting a field image onto the field surface 70 in its normal state and then deforming the field surface 70.
なお、フィールド面70は、フィールド画像が投影されると、正規の状態では、投影さ
れたフィールド画像のテクスチャ座標を引き継ぐことができる。すなわち、フィールド画
像が投影されたフィールド面70上の各位置は、実質的に、フィールド画像のテクスチャ
座標系(図2参照)で特定できる。以下では、フィールド面70上の各位置を特定するた
めの座標系は、当該フィールド面70に投影されたフィールド画像のテクスチャ座標系と
一致し、「フィールド座標系」とも称する。
Furthermore, when a field image is projected onto the field surface 70, under normal circumstances, it can inherit the texture coordinates of the projected field image. That is, each position on the field surface 70 onto which the field image is projected can be identified in effect using the texture coordinate system of the field image (see Figure 2). Hereafter, the coordinate system used to identify each position on the field surface 70 will coincide with the texture coordinate system of the field image projected onto the field surface 70 and will also be referred to as the "field coordinate system".
背景面72は、背景オブジェクトのz方向に延在する。ただし、他の実施形態では、背
景面72は、z方向に対して傾斜して配置されてもよい。図3では、背景面72は、フィ
ールド面70を取り囲むように配置される。この場合、背景面72は、グローバル座標系
に対して固定であってもよいし、後述するようにz方向にだけ移動可能であってもよい。
ただし、他の実施形態では、背景面72は、フィールド面70の一部だけを取り囲むよう
に配置されてもよい。この場合、背景面72は、後述する仮想カメラ60の回転に応じて
回転移動されてもよい。また、更なる他の実施形態では、背景面72は、フィールド面7
0と同様、変形可能とされてもよい。
The background surface 72 extends in the z-direction of the background object. However, in other embodiments, the background surface 72 may be positioned at an angle with respect to the z-direction. In Figure 3, the background surface 72 is positioned to surround the field surface 70. In this case, the background surface 72 may be fixed with respect to the global coordinate system, or it may be movable only in the z-direction, as will be described later.
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 rotate in accordance with the rotation of the virtual camera 60, which will be described later. Furthermore, in yet another embodiment, the background surface 72 is positioned around the field surface 7
Like 0, it may be considered deformable.
図5は、図4に示した仮想カメラ60の視線方向Vとz方向とを含む平面(以下、「V
z平面」とも称する)を垂直に視たときの、各種の位置関係を示す説明図である。図5に
は、仮想カメラ60の画角内のフィールドオブジェクトの領域に位置する第1オブジェク
ト3が模式的に示されている。図6は、仮想カメラ60から視た表現で描画して得られた
フィールド画像の一例を示す概略図である。
Figure 5 is a plane that includes the line of sight direction V and the z direction of the virtual camera 60 shown in Figure 4 (hereinafter referred to as "V").
This is an explanatory diagram showing various positional relationships when viewed perpendicularly to the z-plane (also called the z-plane). Figure 5 schematically shows the first object 3 located within the field object region of the virtual camera 60's field of view. Figure 6 is a schematic diagram showing an example of a field image obtained by rendering as seen from the virtual camera 60.
図5には、仮想カメラ60の画角62(z方向に垂直な方向に視た際の画角)が境界線
6211、6212の間に模式的に示される。なお、本実施形態では、仮想カメラ60の
画角は一定であるが、他の実施形態では、仮想カメラ60の画角が可変とされてもよい。
Figure 5 schematically shows the field of view 62 of the virtual camera 60 (the field of view when viewed in a direction perpendicular to the z-direction) between the boundary lines 6211 and 6212. In this embodiment, the field of view of the virtual camera 60 is constant, but in other embodiments, the field 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の表現を含む。
In the example shown in Figure 5, the field of view 62 is where the upper boundary line 6211 intersects with the background surface 72 (point P2
(See reference), the lower boundary line 6212 intersects with the field surface 70 (see point P1). In this case,
As shown in Figure 6, the field image G60 includes the background surface 72 (and the associated background objects) and the field surface 70 (and the associated field objects). In Figure 5, since the first object 3 is located within the field object area of the virtual camera 60's field of view, 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 (and the field objects associated with it) is bent and deformed as shown in Figure 5 so that a virtual horizon HL (Figure 6) is represented by the field surface 70. Specifically, the field surface 70 deforms downwards as it moves further away in the line of sight direction V (i.e., towards the background surface 72). This deformation may be realized only within the field of view of the virtual camera 60, or it may be realized over the entire field surface 70.
フィールド面70の全体が変形される場合は、Vz平面で切断した際のフィールド面7
0の形状(図5のような線で表現される形状)がどの断面位置でも略同じであってよい(
すなわち略等断面であってよい)。なお、略同じとは、10%以内の誤差を許容する概念
である。なお、フィールドオブジェクトは、上述したように、フィールド面70に基づい
て形状付けられるので、Vz平面で切断した際のフィールドオブジェクトの形状は、Vz
平面で切断した際のフィールド面70の形状と同じであるが、フィールド面70の形状に
対してわずかに異なる形状(例えば微細な凹凸等)を有してもよい。
If the entire field surface 70 is deformed, the field surface 7 when cut along the Vz plane
The shape of 0 (the shape represented by lines as shown in Figure 5) may be approximately the same at any cross-sectional position.
In other words, the cross-sections may be approximately the same. Note that "approximately the same" means that an error of 10% or less is acceptable. Note that, as described above, the field object is shaped based on the field surface 70, so the shape of the field object when cut in the Vz plane is Vz
The shape is the same as the field surface 70 when cut in a plane, but it may have a shape that is slightly different from the shape of the field surface 70 (for example, fine irregularities).
このような表現の地平線HLは、図5に示すように、フィールド面70に対する仮想カ
メラ60からの接線6213(画角62内の接線)の交点P3により形成される。なお、
図6では、地平線HLよりも手前に第1オブジェクト3が位置するので、地平線HLの表
現の一部が第1オブジェクト3により隠れることになる。逆に、第1オブジェクト3が地
平線HLよりも奥側(背景面72に近い側)に位置する場合は、第1オブジェクト3の一
部又は全部がフィールドオブジェクトにより隠れることになる。
As shown in Figure 5, the horizon HL in this representation is formed by the intersection point P3 of the tangent lines 6213 (tangent lines within the field of view 62) from the virtual camera 60 to the field plane 70.
In Figure 6, since the first object 3 is located in front of the horizon HL, part of the representation of the horizon HL will be 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 Figure 6) is the tangent 6213 to the boundary line 6212.
It depends on the angle α formed by the two. The angle α can change depending on the bending pattern of the field surface 70.
For example, in the case of the field surface 70' shown by the dashed line in Figure 5, the angle α' made by the tangent line 6213' to the boundary line 6212 becomes smaller than angle α, and therefore the height H1 of the horizon HL
The value becomes smaller (not shown). In this way, it can be seen that the height of the horizon HL can be changed by changing the bending pattern of the field surface 70. Note that when the height of the horizon HL changes, the range of the background surface 72 that fits within the field of view of the virtual camera 60 also changes accordingly.
このようにして本実施形態では、視線方向Vに視てフィールド面70が背景面72に近
づくにつれて下方に向かう向きで曲げ変形されることで、地平線HLを適切に表現できる
。また、曲げ変形の変形態様(変形度合い等)を変化させることで、地平線HLの高さH
1(及びそれに伴いフィールドオブジェクトや背景オブジェクト等の可視範囲)を自由に
変化させることができる。以下では、視線方向Vに視てフィールド面70が背景面72に
近づくにつれて下方に向かう向きで変形される態様の曲げ変形を、単に「フィールド面7
0の曲げ変形」とも称する。
In this embodiment, the horizon HL can be appropriately represented as the field surface 70 is bent downwards as it approaches the background surface 72 when viewed in the line of sight direction V. Furthermore, the height H of the horizon HL can be changed by changing the deformation pattern (degree of deformation, etc.).
1 (and consequently the visible range of field objects, background objects, etc.) can be freely changed. Below, a bending deformation in which the field surface 70 deforms downward as it approaches the background surface 72 when viewed in the line of sight direction V will be simply referred to as "field surface 7
It is also called "zero bending deformation."
図7は、フィールド面70の曲げ変形を実現するための変形パラメータの一例の説明図
である。
Figure 7 is an explanatory diagram illustrating 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が示される。
Figure 7 defines the two-dimensional coordinate system Xc, Yc (hereinafter also referred to as the "local coordinate system") in the Vz plane. The XcYc plane is parallel to the Vz plane, the Yc axis is parallel to the z axis, and the positive side of the Yc axis corresponds to the upper side of the virtual space. Figure 7 shows the function F1 that determines the deformation mode of the field surface 70.
関数F1は、Xc座標の値の絶対値が大きくなるほどYc座標の値が非線形に単調減少
する関数である。また、関数F1は、Yc軸に関して対称である。ただし、他の実施形態
では、関数F1は、Xc座標の値の絶対値が大きくなるほどYc座標の値が線形に単調減
少してもよいし、及び/又は、Yc軸に関して非対称であってもよい。本実施形態では、
一例として、関数F1は、2次関数であり、以下で表される。
yc=-A1×(xc)2
ここで、xcは、Xc座標の値であり、ycはYc座標の値であり、A1は、変形度合い
を決める係数(以下、「変形パラメータA1」と称する)である。
Function F1 is a function in which the value of the Yc coordinate decreases monotonically in a nonlinear manner as the absolute value of the Xc coordinate increases. Furthermore, function F1 is symmetric with respect to the Yc axis. However, in other embodiments, function F1 may decrease monotonically in a linear manner as the absolute value of the Xc coordinate increases, and/or may be asymmetric with respect to the Yc axis. In this embodiment,
As an example, function F1 is a quadratic function and can be expressed as follows:
yc=-A1×(xc) 2
Here, xc is the value of the Xc coordinate, yc is the value of the Yc coordinate, and A1 is a coefficient that determines the degree of deformation (hereinafter referred to as "deformation parameter A1").
なお、上記の関数F1はあくまで一例であり、例えば以下のような異なる関数が利用さ
れてもよい。
xc>aのとき、yc=-A1×(xc-a)2
xc≦-aのとき、yc=-A1×(xc+a)2
-a≦xc≦aのとき、yc=0
この場合、aは正の定数であり、-a≦xc≦aの範囲では平らな平面が実現される。
Note that the function F1 described above is merely an example; other functions, such as the following, may also 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 -a ≤ xc ≤ a.
あるいは、xc>-a1のとき、yc=-A1×(xc)2
xc≦-a1のとき、yc=0
この場合、a1は、正の固定値であってもよく、xc=-a1の位置が、画角62の下側
の境界線6212とフィールド面70の交点(図5の点P1)と一致するように設定され
てよい。
Alternatively, 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 xc = -a1 may be set to coincide with the intersection point (point P1 in Figure 5) of the lower boundary line 6212 of the field of view 62 and the field surface 70.
また、他の実施形態では、複数種類の関数が用意され、各種条件に応じて異なる関数が
選択されてもよい。
In other embodiments, multiple types of functions may be provided, 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 the function F1.
フィールド面70は、関数F1にしたがって変形される。従って、変形パラメータA1
の値が大きいほどフィールド面70の変形度合いが大きくなる。図7Aでは、フィールド
面70は、上述したように、略等断面で曲げ変形される。
The field surface 70 is deformed according to function F1. Therefore, the deformation parameter A1
The larger the value, the greater the degree of deformation of the field surface 70. In Figure 7A, the field surface 70 is bent and deformed in a substantially uniform cross-section, as described above.
ここで、図8から図8Cを参照して、フィールド面70の曲げ変形の適用場面の一例を
説明する。
Here, with reference to Figures 8 to 8C, an example of an application scenario for the bending deformation of the field surface 70 will be explained.
図8は、フィールドオブジェクト77の平面図であり、図8Aは、位置M1に係るフィ
ールド面の曲げ変形の状態の説明図であり、図8Bは、位置M2に係るフィールド面の曲
げ変形の状態の説明図であり、図8Cは、位置M3に係るフィールド面の曲げ変形の状態
の説明図である。図8では、フィールドオブジェクト77は、フィールド画像が正規状態
のフィールド面70に投影された表現で示されている。図8では、位置M1から位置M3
が例示されており、位置M2及び位置M3は、カーブ路17の開始位置付近と終了位置付
近である。なお、図8Aから図8Cでは、作図の都合上、カーブ路17等がフィールド面
70から離れた部分(仮想カメラ60の画角62の外側の部分)を有するが、全体がフィ
ールド面70上に投影されてもよい。
Figure 8 is a plan view of the field object 77, where Figure 8A is an explanatory diagram of the bending deformation state of the field surface at position M1, Figure 8B is an explanatory diagram of the bending deformation state of the field surface at position M2, and Figure 8C is an explanatory diagram of the bending deformation state of the field surface at position M3. In Figure 8, the field object 77 is shown as a representation of the field image projected onto the field surface 70 in a normal state. In Figure 8, from position M1 to position M3
An example is shown where positions M2 and M3 are near the start and end positions of the curved path 17. In Figures 8A to 8C, for drawing purposes, the curved path 17 etc. have a portion that is separated from the field surface 70 (the portion outside the field of view 62 of the virtual camera 60), but the entire thing 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 correspond to the intersection points between the line of sight V of the virtual camera 60 and the xy plane (or the field surface 70 before deformation), respectively. Figure 8 shows position M2
The projection vector V' of the virtual camera 60 (the projection vector V' on the xy-plane in the line of sight direction V) is shown. Positions M1 and M3 correspond to the positions of the first object 3. That is, the bending deformation of the field surface 70 accompanying the movement of the virtual camera 60 when the first object 3 moves along the curved path 17 from position M1 to position M3 is explained.
仮想カメラ60の視線方向Vとフィールド面70との間の交点位置が位置M1に位置す
るとき、図8Aに示すようなフィールド面70の曲げ変形が実現される。仮想カメラ60
の視線方向Vとフィールド面70との間の交点位置が位置M2に位置するとき、図8Bに
示すようなフィールド面70の曲げ変形が実現される。仮想カメラ60の視線方向Vとフ
ィールド面70との間の交点位置が位置M3に位置するとき、図8Cに示すようなフィー
ルド面70の曲げ変形が実現される。
When the intersection point 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 as shown in Figure 8A is realized.
When the intersection point 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 as shown in Figure 8B is realized. When the intersection point 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 as shown in Figure 8C is realized.
このようにして、第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, the field object 77 undergoes bending deformation corresponding to the changed line of sight direction V (bending deformation with the same deformation pattern as viewed from the line of sight direction V of the virtual camera 60).
This will be realized.
ところで、仮想空間における仮想カメラ60の位置(フィールドオブジェクトに対する
位置)が変化すると、仮想空間における仮想カメラ60の画角内の領域(例えばフィール
ドオブジェクトの領域)が変化するので、フィールド画像の多様化を図ることができる。
ただし、この場合でも、仮想カメラ60の位置(フィールドオブジェクトに対する位置)
が変化しても、仮想カメラ60の画角内の領域の状態が単調であると、フィールド画像の
多様化を図ることができない。従って、仮想空間における仮想カメラ60の位置(フィー
ルドオブジェクトに対する位置)を変化可能としつつ、フィールドオブジェクト上に配置
される第2オブジェクトの数や種類等を増やすことで、フィールド画像の多様化を効果的
に図ることができる。以下、仮想カメラ60の位置とは、特に言及しない限り、フィール
ドオブジェクトに対する位置(相対的な位置)を意味する。
Incidentally, when the position of the virtual camera 60 in the virtual space (its position relative to the field object) changes, the area within the field of view of the virtual camera 60 in the virtual space (for example, the area of the field object) also changes, thus enabling the diversification of the field image.
However, even in this case, the position of the virtual camera 60 (position relative to the field object)
Even if the field of view changes, if the state of the area within the field of view of the virtual camera 60 remains monotonous, it will not be possible to diversify the field image. Therefore, by making the position of the virtual camera 60 in the virtual space (position relative to the field object) changeable, and by increasing the number and types of second objects placed on the field object, it is possible to effectively diversify the field image. Hereinafter, unless otherwise specified, the position of the virtual camera 60 refers to its position relative to the field object.
しかしながら、本実施形態では、上述したように、フィールド面70(及びそれに伴い
フィールドオブジェクト)は曲げ変形されるが、曲げ変形の際の変形度合いが常に一定で
あると仮想カメラ60から視た表現で描画して得られるフィールド画像が単調化しやすい
。
However, in this embodiment, as described above, the field surface 70 (and the field objects therewith) are bent and deformed, but if the degree of deformation during bending is always constant, the field image obtained by rendering it as seen from the virtual camera 60 tends to become monotonous.
なお、仮想カメラ60の位置が変化可能とされると、仮想カメラ60の位置の変化に伴
い、フィールドオブジェクトにおける仮想カメラ60の画角内の領域が変化するので、フ
ィールドオブジェクト上に多様な第2オブジェクトを多様な態様で配置すれば、ユーザの
操作対象の第1オブジェクトの写り方や複数の第2オブジェクトの重なり具合が変化する
ので、仮想カメラ60から視た表現で描画して得られるフィールド画像を多様化できる。
Furthermore, if the position of the virtual camera 60 can be changed, the area within the field of view of the virtual camera 60 in the field object will change as the position of the virtual camera 60 changes. Therefore, if various second objects are placed on the field object in various ways, the way the first object that the user is operating on is displayed and the degree to which multiple second objects overlap will change, thus diversifying the field image obtained by rendering as seen from the virtual camera 60.
ここで、ゲームフィールドを多様化させるメリットとして、ゲームフィールドの一部を
際立たせることが可能になり、ユーザのオブジェクトに対する視認性の向上し、更に、操
作対象となるオブジェクトや、操作箇所が明確になることにより操作性が向上します。ま
た、限られた画面内で、複数のオブジェクトが存在したとしても視認性を損なうことなく
(情報量を制限することなく)、仮想空間内の状況を表現することができる。このような
効果は特にスマートフォンのような狭い画面において顕著である。
Here, the advantage of diversifying the game field is that it becomes possible to highlight parts of the game field, improving the user's visibility of objects, and further improving operability by making the objects being manipulated and the areas being manipulated clearer. In addition, even if multiple objects exist within a limited screen, the situation in the virtual space can be represented without compromising visibility (without limiting the amount of information). This effect is particularly noticeable on small screens such as smartphones.
また、地平線の表現等は、フィールドオブジェクトの曲げ変形という単純な処理で実現
することができるため、処理負荷も抑えることができる。また、フィールドオブジェクト
における仮想カメラ60の画角外の(隠れた)オブジェクトを描画しなくてもよいので、
その点でも処理負荷を抑えることができる。
Furthermore, since the representation of the horizon and other elements can be achieved through a simple process of bending the field object, the processing load can be kept down. Also, since it is not necessary to render (hidden) objects outside the field of view of the virtual camera 60 in the field object,
In that respect, it can also reduce the processing load.
この点、本実施形態では、仮想カメラ60の位置が変化可能とされるだけなく、フィー
ルド面70(及びそれに伴いフィールドオブジェクト)の曲げ変形に係る変形度合いも変
化可能とされる。フィールド面70(及びそれに伴いフィールドオブジェクト)の曲げ変
形に係る変形度合いが変化すると、同じフィールドオブジェクトの領域であっても仮想カ
メラ60から視たときの見え方が異なるので、仮想カメラ60から視た表現で描画して得
られるフィールド画像の更なる多様化を図ることができる。
In this embodiment, not only is the position of the virtual camera 60 changeable, but the degree of deformation related to the bending deformation of the field surface 70 (and consequently the field objects) is also changeable. When the degree of deformation related to the bending deformation of the field surface 70 (and consequently the field objects) changes, the appearance from the virtual camera 60 differs even in the same area of the field object, thus enabling further diversification of the field image obtained by rendering in the way seen from the virtual camera 60.
また、本実施形態では、フィールドオブジェクト用の一の素材(フィールド画像及びフ
ィールド面70)を用いて、フィールド面70の曲げ変形に係る変形度合いを変化させる
ことで、多様な形態のフィールドオブジェクトを実現する。これにより、多様なフィール
ドオブジェクト(変形不能な固定の形態のフィールドオブジェクト)を事前に用意してお
く場合に比べて、フィールドオブジェクト用の記憶領域の効率化を図ることができる。す
なわち、記憶領域を効率的に利用して多様な形態のフィールドオブジェクトを実現できる
。
Furthermore, in this embodiment, a single material for the field object (field image and field surface 70) is used, and by changing the degree of deformation related to the bending deformation of the field surface 70, a variety of field object forms can be realized. This makes it possible to improve the efficiency of the memory area for field objects compared to the case where a variety of field objects (field objects in a fixed, immovable form) are prepared in advance. In other words, a variety of field object forms can be realized by efficiently utilizing the memory area.
なお、上述のように、フィールド面70の変形度合いが変化されると、地平線HLの高
さH1が変化することに起因して、ユーザに違和感を与えるおそれがある。例えば、仮想
カメラ60の位置が固定されたまま、フィールド面70の変形度合いが変化されると、違
和感を与えやすい。
Furthermore, as mentioned above, if the degree of deformation of the field surface 70 changes, the height H1 of the horizon HL will change, which may cause discomfort to the user. For example, if the position of the virtual camera 60 remains fixed while the degree of deformation of the field surface 70 changes, it is likely to cause discomfort.
そこで、本実施形態では、フィールドオブジェクトのうちの、仮想カメラ60の画角内
に収まる領域が変化する場合に、当該変化に合わせて、フィールド面70の変形度合いが
変化される。例えば、仮想カメラ60の位置が変化する場合に、当該変化に合わせて、フ
ィールド面70の変形度合いが変化される。これにより、フィールド面70の変形度合い
が変化されることで生じうる不都合(すなわちユーザに与えうる違和感)を低減できる。
Therefore, in this embodiment, when the area of the field object that falls within the field of view of the virtual camera 60 changes, the degree of deformation of the field surface 70 is changed in accordance with that 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 that change. This reduces the inconvenience (i.e., the discomfort that may be caused to the user) that may arise from a change in the degree of deformation of the field surface 70.
例えば、仮想カメラ60の位置が1つ以上の特定位置又は特定範囲内にある場合に、そ
うでない場合よりもフィールド面70の変形度合いが大きくなるようにしてもよい。これ
により、仮想カメラ60の位置が特定位置又は特定範囲内にあるときのフィールド画像(
すなわち仮想カメラ60の画角内の各種オブジェクトの表現)を、他の位置にあるときの
フィールド画像とは異なる態様で表現できる。例えば、特定位置に係るフィールド画像を
他の位置に係るフィールド画像よりも目立たせたり、特定位置に係るフィールド画像に特
定の意味を持たせたりするといった効果を与えることができる。なお、特定位置又は特定
範囲は、例えば第1オブジェクトが移動しながら曲がる位置等(例えば図2に示す横通路
14と縦通路15との交差位置)に対応して設定されてもよいし、強調したいオブジェク
ト(例えば出現確率が低いゲーム媒体に係るオブジェクト)が配置される位置に対応して
設定されてもよい。この場合、例えば、特定位置は、当該オブジェクトの位置に対して所
定関係を有する位置であってよい。また、特定位置は、動的に変化されてもよい。例えば
、1つ以上の特定位置は、出現確率が低いゲーム媒体に係るオブジェクトが配置される場
合だけ、当該オブジェクトが配置される位置に対応して設定される特定位置を含んでもよ
い。
For example, the degree of deformation of the field surface 70 may be greater when the virtual camera 60 is located at one or more specific locations or within a specific range than when it is not. This allows the field image when the virtual camera 60 is located at a specific location or within a specific range (
In other words, the representation of various objects within the field of view of the virtual camera 60 can be expressed in a different manner than the field image when they are in other positions. For example, it is possible to make the field image related to a specific position stand out more than the field images related to other positions, or to give a specific meaning to the field image related to a specific position. The specific position or specific range may be set to correspond to, for example, the position where the first object turns while moving (for example, the intersection of the horizontal passage 14 and the vertical passage 15 shown in Figure 2), or to the position where an object to be emphasized (for example, an object related to a game medium with a low probability of appearance) is placed. In this case, for example, the specific position may be a position that has a predetermined relationship with the position of the object. Furthermore, the specific position may change dynamically. For example, one or more specific positions may include a specific position that is set to correspond to the position where an object related to a game medium with a low probability of appearance is placed, only when such an object is placed.
ここで、仮想カメラ60の位置が変化可能とされると、仮想カメラ60の位置の変化に
伴い、フィールドオブジェクトにおける仮想カメラ60の画角内の領域が変化する。この
場合、フィールドオブジェクト上に多様な第2オブジェクトを多様な態様で配置すれば、
ユーザの操作対象の第1オブジェクトの写り方や複数の第2オブジェクトの重なり具合が
変化するので、仮想カメラ60から視た表現で描画して得られるフィールド画像を多様化
できる。また、第2オブジェクト及び/又は第1オブジェクトの間で重複(重なり)が生
じた場合でも、上述したように、フィールド面70の変形度合いを調整することで、重複
するオブジェクトは、上下に互いにずれた位置に配置される。したがって、重複するオブ
ジェクトのうちの、個々のオブジェクト又は着目させた1つ以上のオブジェクトの視認性
を高めることができる。
If the position of the virtual camera 60 is made changeable, then the area within the field of view of the virtual camera 60 in the field object will change as the position of the virtual camera 60 changes. In this case, if various second objects are placed on the field object in various ways,
Since the appearance of the first object being manipulated by the user and the degree of overlap of multiple second objects change, the field image obtained by rendering with a representation as seen from the virtual camera 60 can be diversified. Furthermore, even if overlapping occurs between the second object and/or the first object, as described above, by adjusting the degree of deformation of the field surface 70, the overlapping objects are positioned vertically offset from each other. Therefore, the visibility of individual objects or one or more objects of focus among the overlapping objects can be improved.
また、仮想カメラ60から視た表現で描画して得られるフィールド画像を多様化させる
ことで、かかるフィールド画像の一部を際立たせることが可能になり、ユーザのオブジェ
クトに対する視認性が向上する。更に、操作対象となるオブジェクトや、操作箇所が明確
になることにより操作性が向上する。また、限られた画面内で、複数のオブジェクトが存
在したとしても視認性を損なうことなく(情報量を制限することなく)、仮想空間内の状
況を表現することができる。このような効果は特にスマートフォンのような狭い画面にお
いて顕著である。
Furthermore, by diversifying the field images obtained by rendering them from the perspective of the virtual camera 60, it becomes possible to highlight parts of these field images, improving the user's visibility of objects. In addition, operability is improved as the objects being manipulated and the manipulation areas become clearer. Moreover, even if multiple objects exist within a limited screen, the situation in the virtual space can be represented without compromising visibility (without limiting the amount of information). These effects are particularly noticeable on small screens such as those of smartphones.
また、地平線の表現等は、フィールドオブジェクトの曲げ変形という単純な処理で実現
することができるため、処理負荷も抑えることができる。また、フィールドオブジェクト
における仮想カメラ60の画角外の(隠れた)オブジェクトを描画しなくてもよいので、
その点でも処理負荷を抑えることができる。
Furthermore, since the representation of the horizon and other elements can be achieved through a simple process of bending the field object, the processing load can be kept down. Also, since it is not necessary to render (hidden) objects outside the field of view of the virtual camera 60 in the field object,
In that respect, it can also reduce 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 degrees of freedom for changes in the position of the virtual camera 60. As shown in Figure 9, changes in the position of the virtual camera 60 include changes V1 along the line of sight direction V, changes V2 and V3 in directions intersecting the line of sight direction V, and combinations thereof. Change V2 is a change in the Vz plane, and V3 is a change in a direction perpendicular to the Vz plane. Changes in the position of the virtual camera 60 may be realized by displacement (movement) of the virtual camera 60 in the global coordinate system, by displacement (movement) of field objects in the global coordinate system, or by a combination thereof.
このように、本実施形態では、仮想カメラ60の位置(相対的な位置)が変化する態様
は、視線方向Vに交差する方向(V2、V3)でフィールドオブジェクトに対する位置(
相対的な位置)が変化する態様(以下、「第1変化態様」と称する)と、視線方向Vに沿
った方向(V1)でフィールドオブジェクトに対する位置(相対的な位置)が変化する態
様(以下、「第2変化態様」と称する)と、を含む。
Thus, in this embodiment, the way in which the position (relative position) of the virtual camera 60 changes is that the position relative to the field object is in a direction (V2, V3) that intersects the line of sight direction V.
This includes a mode in which the relative position changes (hereinafter referred to as the "first mode of change") and a mode in which the position relative to the field object changes in a direction along the line of sight direction V (V1) (hereinafter referred to as the "second mode of change").
この点、フィールド面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 conjunction with either the first change mode or the second change mode, or in conjunction with both the first change mode and the second change mode. For example, the position of the virtual camera 60 changes in a direction intersecting the line of sight direction V, while also changing along the line of sight direction V.
なお、フィールド面70の変形度合いの変化の際に、同時に実現される変化(すなわち
、フィールドオブジェクトのうちの、仮想カメラ60の画角内に収まる領域の変化)は、
フィールドオブジェクトに対する位置(相対的な位置)の変化に限らず、仮想カメラ60
の視線方向Vの回転(図10参照)によっても実現されてもよい。また、仮想カメラ60
の光学パラメータを可変値とし、仮想カメラ60の光学パラメータの値を変化させること
で、フィールドオブジェクトのうちの、仮想カメラ60の画角内に収まる領域を変化させ
ることも可能である。かかる光学パラメータは、例えば、焦点距離や画角等のような、仮
想カメラ60のズーム量に関連する光学パラメータであってよい。
Furthermore, when the degree of deformation of the field surface 70 changes, the changes that occur simultaneously (i.e., changes in the area of the field object that falls within the field of view of the virtual camera 60) are as follows:
Not limited to changes in position (relative position) relative to field objects, the virtual camera 60
This may also be achieved by rotating the line of sight V (see Figure 10). Also, the virtual camera 60
By making the optical parameters of the virtual camera 60 variable, it is also possible to change the area of the field object that falls within the field of view of the virtual camera 60 by 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 focal length and field 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, the virtual camera 60 is not only capable of changing its position (relative position) with respect to the field object, but also its line of sight direction V is also capable of changing. Specifically, the line of sight direction V of the virtual camera 60 is an axis parallel to the z direction (hereinafter,
Rotation around the orbital axis Pc is possible. The line of sight direction V of the virtual camera 60 may be limited to rotation around the orbital axis Pc, or it may also be limited to rotation around other axes (rotation, which will be described later). For example, the line of sight direction V of the virtual camera 60 may be limited to rotation around an axis perpendicular to the Vz plane. That is, the line of sight direction V of the virtual camera 60 may be rotated in a manner that changes the angle of attack of the virtual camera 60 (the angle of attack parameter ψ, which will be described later). 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 this predetermined relationship may be fixed or changeable.
以下、仮想カメラ60の回転とは、特に言及しない限り、視線方向Vが公転軸Pcまわ
りに回転する態様の回転を意味する。仮想カメラ60の向きとは、仮想カメラ60の視線
方向Vの向きを意味する。
Hereafter, unless otherwise specified, the rotation of the virtual camera 60 refers to a rotation in which the line of sight V rotates around the orbital axis Pc. The orientation of the virtual camera 60 refers to 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 V of the virtual camera 60, and schematically shows the virtual camera 60 and its field of view 62 as viewed in the z direction. Figure 10 schematically shows the virtual camera 60 at two positions during rotation.
図10では、仮想カメラ60の視線方向Vに係る公転軸Pcは、z方向に視て、仮想カ
メラ60の視線方向Vを通りかつ仮想カメラ60から視線方向V後方側にオフセットされ
ている。この場合、仮想カメラ60が360度回転すると、仮想カメラ60は、z方向に
視て、公転軸Pcまわりの円形の軌跡C70を描く。ただし、公転軸Pcの位置は、任意
であり、仮想カメラ60に対して所定関係となる位置であってよく、所定関係は、固定で
あってもよいし、変化されてもよい。ただし、本明細書では、公転軸Pcは、仮想カメラ
60を通る場合の自転軸とは区別され、従って、自転軸とは異なるように設定される。
In Figure 10, the orbital axis Pc of the virtual camera 60, relative to the line of sight direction V, is, when viewed in the z direction, located through the line of sight direction V of the virtual camera 60 and offset to the rear side of the line of sight direction V from the virtual camera 60. In this case, when the virtual camera 60 rotates 360 degrees, the virtual camera 60 traces a circular trajectory C70 around the orbital axis Pc when viewed in the z direction. However, the position of the orbital axis Pc is arbitrary and may be a position that has a predetermined relationship with the virtual camera 60, and this predetermined relationship may be fixed or changeable. However, in this specification, the orbital 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まわりに回転(自転)可
能とされてもよい。あるいは、視線方向Vは、公転とは独立して自転可能とされてもよい
。
In Figure 10, the line of sight direction V, when viewed in the z direction, always passes through the orbital axis Pc and moves away from the orbital axis Pc while the virtual camera 60 is rotating, but is not limited to this. For example, the line of sight direction V, when viewed in the z direction, may always pass through the orbital axis Pc and move toward the orbital axis Pc while the virtual camera 60 is rotating. That is, the orbital axis Pc, when viewed in the z direction, may pass through the line of sight direction V of the virtual camera 60 and be offset from the virtual camera 60 toward the front (far side) of the line of sight direction V. In this case, the orbital axis Pc may be set to pass through a predetermined object (for example, a predetermined object described later) that you want to show to the user from all directions. In another embodiment, the line of sight direction V, when viewed in the z direction, may rotate on its own axis while the virtual camera 60 is rotating (revolving). That is, the virtual camera 60 may be able to rotate (rotate) around its rotation axis 61. Alternatively, the line of sight direction V may be able to rotate independently of the orbit.
ところで、上述したように、地平線HLは、フィールド面70が曲げ変形されることで
、形成される。したがって、仮想カメラ60の回転に伴い視線方向Vが変化すると、それ
に伴い、フィールド面70の曲げ変形の変形態様が変化される。すなわち、仮想カメラ6
0の回転に伴い視線方向Vが変化すると、それに伴い、変化後の視線方向Vに基づくVz
平面内にローカル座標系のXc軸が位置するようにフィールド面70の曲げ変形の変形態
様が変化される。これにより、仮想カメラ60の回転に伴い視線方向Vが変化しても、違
和感のない態様で仮想空間内の地平線HLを実現できる。
Incidentally, as mentioned above, the horizon HL is formed by the bending deformation of the field surface 70. Therefore, as the line of sight direction V changes with the rotation of the virtual camera 60, the deformation pattern of the bending deformation of the field surface 70 changes accordingly. That is, the virtual camera 6
As rotation of 0 changes the line of sight direction V, Vz changes accordingly based on the changed line of sight direction V.
The deformation pattern of the bending deformation of the field surface 70 is changed so that the Xc axis of the local coordinate system is located within the plane. As a result, even if the line of sight direction V changes due to the rotation of the virtual camera 60, the horizon HL in the virtual space can be realized in a manner that does not feel unnatural.
次に、図11以降を参照して、サーバ装置10の描画機能の更なる詳細を説明する。 Next, with reference to Figure 11 and subsequent figures, further details of the drawing function of the server device 10 will be explained.
ここでは、まず、図11を参照して、図12以降の説明で用いるカメラパラメータにつ
いて説明してから、サーバ装置10の詳細を説明する。
Here, we will first refer to Figure 11 to explain the camera parameters used in the explanation from Figure 12 onwards, and then describe the details 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 the camera parameters. Figure 11 shows the field plane 70 (normal state) positioned in the global coordinate system. Note that the field plane 70 is
As described above, bending deformation is possible, but translation and rotation of the entire field surface 70 in the global coordinate system are not possible. Therefore, the coordinates of each position on the field surface 70 in the field coordinate system can be converted to the coordinates of each position in the global coordinate system using a predetermined conversion formula, and the reverse conversion is also possible. For the purposes of explanation below, 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 (= 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 (= v-axis of the texture coordinate system) coincides with the y-axis of the global coordinate system. Below, unless otherwise specified, the field surface 70 refers to the field surface 70 with the field image projected onto it (the field surface 70 of the field object).
本実施形態では、カメラパラメータは、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 relative 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 point on the xy-plane of the line of sight direction V, the position parameter Y is the y-coordinate of the intersection point on the xy-plane of the line of sight direction V, and the distance parameter A2 is the distance from the intersection point on the xy-plane of the line of sight direction V to the virtual camera 60 (distance along the line of sight direction V). The orientation parameter θ is the angle between the projection vector V' on the xy-plane of the line of sight direction V and the x-axis. The angle of attack parameter ψ is the angle between the line of sight direction V and the xy-plane. In this embodiment, the angle of attack parameter ψ is used, but it may be omitted.
In other words, the angle of attack parameter ψ may have a constant value (fixed value).
なお、このようなカメラパラメータは、以下の説明用であり、実際の処理では、異なる
パラメータが等価的に使用されてもよい。
Note that these camera parameters are for illustrative purposes only, and in actual processing, different parameters may be used equivalently.
図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 deformation parameter data. In Figure 13, "-" indicates an arbitrary value, and "..." indicates a similar repetition. Figure 14 is an explanatory diagram of distance parameter data. Similarly, in Figure 14 (and Figure 15), "..." indicates a similar repetition. Figure 15 is an explanatory diagram of direction 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 implemented by the server storage unit 12 shown in Figure 1, and the operation information acquisition unit 132 and the drawing data transmission unit 134
This can be achieved by the server communication unit 11 shown in Figure 1, and the drawing processing unit 140 can be achieved by the server control unit 13 shown in Figure 1. In the following discussion of the processing of each unit, "calculation" is a concept that includes processing that simply reads calculated values, set 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に記憶されるデータは、上述した特定位置に係る変形パラメータ
データ13Aを含む。以下では、特定位置は、後述する所定オブジェクトが位置できる位
置であるとする。すなわち、特定位置は、後述する所定オブジェクトの位置と一致しうる
位置であるとする。
The data stored in the drawing information storage unit 130 includes deformation parameter data 13A related to the specific position described above. Hereinafter, the specific position is defined as a position where a predetermined object, described later, can be located. That is, the specific position is defined as a position that can coincide with the position of the predetermined object, described later.
変形パラメータデータ13Aにおいては、上述した特定位置に係る仮想カメラ60の位
置パラメータ(X、Y)の各値に、通常値β0とは異なる変形パラメータA1の値が対応
付けられる。なお、変形パラメータA1の通常値β0は一定値であるが、フィールド画像
G60が複数種類用意される場合はフィールド画像ごとに異なりうる可変値であってもよ
い。また、特定位置に係る仮想カメラ60の位置パラメータ(X、Y)には、更に、向き
パラメータθの値が対応付けられてもよい。例えば図13に示す例では、特定位置に係る
位置パラメータ(X、Y)の各値(XA、YA)、(XB、YB)、(XC、YC)等に
対して、特定位置ごとに、向きパラメータθの値に応じた変形パラメータA1の値が対応
付けられている。例えば、図13の変形パラメータデータ13Aでは、特定位置A=(X
A、YA)には、仮想カメラ60の向きがどのような向きでも、変形パラメータA1の値
β1が対応付けられている。他方、特定位置C=(XC、YC)には、仮想カメラ60の
向きが向きパラメータθ=θC1のときは変形パラメータA1の値β3が対応付けられ、
仮想カメラ60の向きが向きパラメータθ=θC2のときは変形パラメータA1の値β4
が対応付けられている。以下では、このように特定位置Cのように、仮想カメラ60の向
きに応じて変形パラメータA1の値が変化する特定位置を、「仮想カメラ60の公転中に
変形度合いが変化する特定位置」とも称し、変形パラメータデータ13A上で値β3や値
β4のような、通常値β0とは異なる値が対応付けられる向き(向きパラメータθ=θC
1やθC2となる向き)を「特定向き」と称する。特定向きは固定であるが、変化されて
もよい。なお、他の実施形態では、仮想カメラ60の公転中に変形度合いが変化する特定
位置は、設定されなくてもよい。また、特定位置Cは、特定向きが2つ設定されているが
、1つだけ設定されてもよいし、3つ以上設定されてもよい。
In the deformation parameter data 13A, each value of the position parameters (X, Y) of the virtual camera 60 related to the specific position described above is associated with a value of deformation parameter A1 that is different from the normal value β0 . While the normal value β0 of deformation parameter A1 is a constant value, it may be a variable value that differs for each field image if multiple types of field images G60 are provided. Furthermore, the position parameters (X, Y) of the virtual camera 60 related to the specific position may also be associated with a value of the orientation parameter θ. For example, in the example shown in Figure 13, each value of the position parameters (X, Y) related to the specific position (X A , Y A ), (X B , Y B ), (X C , Y C ), etc., is associated with a value of deformation parameter A1 corresponding to the value of the orientation parameter θ for each specific position. For example, in the deformation parameter data 13A of Figure 13, specific position A = (X
For A , Y A , the value β1 of the deformation parameter A1 is associated regardless of the orientation of the virtual camera 60. On the other hand, for a specific position C = (X C , Y C ), the value β3 of the deformation parameter A1 is associated when the orientation parameter θ = θ C1 of the virtual camera 60.
When the orientation of the virtual camera 60 is such that the orientation parameter θ = θ C2 , the value of the deformation parameter A1 is β 4.
These are associated with each other. Below, a specific position C, where the value of the deformation parameter A1 changes according to the orientation of the virtual camera 60, will also be referred to as a "specific position where the degree of deformation changes during the revolution of the virtual camera 60," and an orientation (orientation parameter θ = θ C) to which values different from the normal value β0 , such as values β3 and β4 , are associated on the deformation parameter data 13A.
The direction in which the value is 1 or θ C2 is referred to as the "specific direction." The specific direction is fixed, but it may be changed. In other embodiments, a specific position in which the degree of deformation changes during the revolution of the virtual camera 60 does not need to be set. Also, although two specific directions are set for the specific position C, only one may be set, or three or more may be set.
また、描画情報記憶部130に記憶されるデータは、特定オブジェクトに係る変形パラ
メータデータ13Bを含む。変形パラメータデータ13Bにおいては、特定オブジェクト
に、通常値β0とは異なる変形パラメータA1の値が対応付けられる。特定オブジェクト
は、後述する所定オブジェクトとは異なる任意のオブジェクトである。例えば、特定オブ
ジェクトは、第2オブジェクトのうちの、ユーザに注視させたいオブジェクトであること
が好適である。例えば、特定オブジェクトは、移動物(例えばキャラクタ)に係るオブジ
ェクトであってもよいし、固定物に係るオブジェクトであってもよい。図13の変形パラ
メータデータ13Bでは、特定オブジェクトG1には、変形パラメータA1の値βG1が
対応付けられ、特定オブジェクトG2には、変形パラメータA1の値βG2が対応付けら
れている。他方、特定オブジェクトG3には、仮想カメラ60の向きが向きパラメータθ
=θC3のときは変形パラメータA1の値βG3が対応付けられ、仮想カメラ60の向き
が向きパラメータθ=θC4のときは変形パラメータA1の値βG4が対応付けられてい
る。変形パラメータデータ13Aの場合と同様、以下では、このように特定オブジェクト
G3のように、仮想カメラ60の向きに応じて変形パラメータA1の値が変化する特定オ
ブジェクトを、「仮想カメラ60の公転中に変形度合いが変化する特定オブジェクト」と
も称し、変形パラメータデータ13B上で値βG3や値βG4のような、通常値β0とは
異なる値が対応付けられる向き(向きパラメータθ=θC3やθC4となる向き)を「特
定向き」と称する。特定向きは固定であるが、変化されてもよい。例えば、特定オブジェ
クトG3が正面方向を有する場合、特定向きは、特定オブジェクトG3の正面方向の向き
が変化することに応じて変化されてもよい。
Furthermore, the data stored in the drawing information storage unit 130 includes deformation parameter data 13B related to a specific object. In the deformation parameter data 13B, a value of deformation parameter A1 different from the normal value β0 is associated with the specific object. The specific object is any object different from the predetermined object described later. For example, the specific object is preferably one of the second objects that the user wants to focus on. For example, the specific object may be an object related to a moving object (e.g., a character) or an object related to a fixed object. In the deformation parameter data 13B of Figure 13, the value βG1 of deformation parameter A1 is associated with the specific object G1, and the value βG2 of deformation parameter A1 is associated with the specific object G2. On the other hand, the orientation parameter θ is associated with the orientation of the virtual camera 60 for the specific object G3.
When θ = C3 , the value β G3 of the deformation parameter A1 is associated, and when the orientation of the virtual camera 60 is the orientation parameter θ = θ C4 , the value β G4 of the deformation parameter A1 is associated. Similar to the case of deformation parameter data 13A, below, a specific object G3, in which the value of the deformation parameter A1 changes according to the orientation of the virtual camera 60, will also be referred to as a "specific object whose degree of deformation changes during the revolution of the virtual camera 60," and the orientation to which a value different from the normal value β0 , such as the value β G3 or the value β G4 , is associated on the deformation parameter data 13B (the orientation to which the orientation parameter θ = θ C3 or θ C4 ) will be referred to as the "specific orientation." The specific orientation is fixed, but may change. For example, if the specific object G3 has a front direction, the specific orientation may change in accordance with the change in the orientation of the front direction of the specific object G3.
また、描画情報記憶部130に記憶されるデータは、上述した特定位置に係る距離パラ
メータデータ14Aを含む。距離パラメータデータ14Aにおいては、特定位置に係る仮
想カメラ60の位置パラメータ(X、Y)の各値に、通常値γ0とは異なる距離パラメー
タA2の値が対応付けられる。なお、距離パラメータA2の通常値γ0は一定値であるが
、フィールド画像G60が複数種類用意される場合はフィールド画像ごとに異なりうる可
変値であってもよい。ある一の仮想カメラ60の特定位置に係る距離パラメータA2の値
は、当該特定位置に位置付けられた仮想カメラ60により、対応する領域(及び当該領域
内に位置するオブジェクト)が所望の距離感で捕捉されるように決定されてよい。例えば
、特定の第2オブジェクトを近距離でユーザに見せたい場合、当該特定の第2オブジェク
トが仮想カメラ60により近距離で捕捉されるような距離パラメータA2の値が、当該特
定位置に係る位置パラメータ(X、Y)の各値に対応付けられてもよい。例えば、図14
では、特定位置A=(XA、YA)には、距離パラメータA2の値γ1が対応付けられ、
特定位置B=(XB、YB)には、距離パラメータA2の値γ2が対応付けられており、
以下同様である。なお、本実施形態では、一例として、値γ1や値γ2のような、距離パ
ラメータデータ14Aで定義される距離パラメータA2の値は、通常値γ0よりも有意に
小さいものとする。なお、距離パラメータA2の値が小さくなるほど、仮想カメラ60と
フィールドオブジェクトとの間の距離が短くなる。
Furthermore, the data stored in the drawing information storage unit 130 includes the distance parameter data 14A related to the specific location described above. In the distance parameter data 14A, a value of distance parameter A2, which is different from the normal value γ0 , is associated with each value of the position parameters (X, Y) of the virtual camera 60 related to the specific location. Note that the normal value γ0 of distance parameter A2 is a constant value, but if multiple types of field images G60 are prepared, it may be a variable value that differs for each field image. The value of distance parameter A2 related to a specific location of a certain virtual camera 60 may be determined so that the corresponding area (and objects located within that area) is captured at a desired distance by the virtual camera 60 positioned at that specific location. For example, if it is desired to show a specific second object to the user at close range, the value of distance parameter A2 such that the specific second object is captured at close range by the virtual camera 60 may be associated with each value of the position parameters (X, Y) related to that specific location. For example, Figure 14
Then, the value γ1 of the distance parameter A2 is associated with a specific position A = (X A , Y A ).
A specific location B = (X B , Y B ) is associated with the value γ² of the distance parameter A².
The same applies hereafter. In this embodiment, as an example, the values of distance parameter A2 defined in distance parameter data 14A, such as value γ1 and value γ2 , are assumed to be significantly smaller than the normal value γ0 . The smaller the value of distance parameter A2, the shorter the distance between the virtual camera 60 and the field object.
また、描画情報記憶部130に記憶されるデータは、特定オブジェクトに係る距離パラ
メータデータ14Bを含む。距離パラメータデータ14Bにおいては、各特定オブジェク
トに、通常値γ0よりも小さい距離パラメータA2の値が対応付けられる。図14の距離
パラメータデータ14Bでは、特定オブジェクトG1には、距離パラメータA2の値γG
1が対応付けられ、特定オブジェクトG2には、距離パラメータA2の値γG2が対応付
けられている。
Furthermore, the data stored in the drawing information storage unit 130 includes distance parameter data 14B related to a specific object. In the distance parameter data 14B, each specific object is associated with a distance parameter A2 value smaller than the normal value γ 0. In the distance parameter data 14B of Figure 14, the specific object G1 is associated with the distance parameter A2 value γ G
1 is associated with it, and the value γ G2 of the distance parameter A2 is associated with the specific object G2.
なお、本実施形態では、特定位置に係る距離パラメータデータ14Aにおいては、向き
パラメータθの値に応じて距離パラメータA2の値が変化するような特定位置が定義され
ていないが、上述した変形パラメータデータ13Aのように、向きパラメータθの値に応
じて距離パラメータA2の値が変化するような特定位置が定義されてもよい。すなわち、
仮想カメラ60の公転中に距離パラメータA2の値が変化する特定位置が定義されてもよ
い。この場合、好ましくは、仮想カメラ60の公転中に変形度合いが変化する特定位置に
対して、当該特定位置に係る特定向きに対して距離パラメータA2の値が対応付けられる
。例えば、特定位置C=(XC、YC)には、仮想カメラ60の向きが向きパラメータθ
=θC1のときは距離パラメータA2の値γ31が対応付けられ、仮想カメラ60の向き
が向きパラメータθ=θC2のときは距離パラメータA2の値γ32が対応付けられても
よい。これにより、仮想カメラ60の公転中に曲げ変形度合いが変化する際に距離パラメ
ータA2の値を変化させることができる。
In this embodiment, the distance parameter data 14A related to a specific position does not define a specific position in which the value of the distance parameter A2 changes according to the value of the direction parameter θ. However, as with the deformation parameter data 13A described above, a specific position may be defined in which the value of the distance parameter A2 changes according to the value of the direction parameter θ. That is,
A specific position may be defined where the value of the distance parameter A2 changes during the orbit of the virtual camera 60. In this case, preferably, the value of the distance parameter A2 is associated with a specific orientation related to a specific position where the degree of deformation changes during the orbit of the virtual camera 60. For example, at a specific position C = (X C , Y C ), the orientation of the virtual camera 60 corresponds to the orientation parameter θ.
When θ = C1 , the value γ 31 of the distance parameter A2 may be associated, and when the orientation of the virtual camera 60 is the orientation parameter θ = θ C2 , the value γ 32 of the distance parameter A2 may be associated. This makes it possible to change the value of the distance parameter A2 when the degree of bending deformation changes during the revolution of the virtual camera 60.
また、同様に、本実施形態では、特定オブジェクトに係る距離パラメータデータ14B
においては、向きパラメータθの値に応じて距離パラメータA2の値が変化するような特
定オブジェクトが定義されていないが、上述した変形パラメータデータ13Bのように、
向きパラメータθの値に応じて距離パラメータA2の値が変化するような特定オブジェク
トが定義されてもよい。すなわち、仮想カメラ60の公転中に距離パラメータA2の値が
変化する特定オブジェクトが定義されてもよい。この場合も、好ましくは、仮想カメラ6
0の公転中に変形度合いが変化する特定オブジェクトに対して、当該特定オブジェクトに
係る特定向きに対して距離パラメータA2の値が対応付けられる。例えば、特定オブジェ
クトG3には、仮想カメラ60の向きが向きパラメータθ=θC3のときは距離パラメー
タA2の値γG31が対応付けられ、仮想カメラ60の向きが向きパラメータθ=θC4
のときは距離パラメータA2の値γG32が対応付けられてもよい。これにより、仮想カ
メラ60の公転中に曲げ変形度合いが変化する際に距離パラメータA2の値を変化させる
ことができる。
Similarly, in this embodiment, distance parameter data 14B relating to a specific object.
In this case, no specific object is defined in which the value of the distance parameter A2 changes according to the value of the direction parameter θ, but as in the deformation parameter data 13B described above,
A specific object may be defined such that the value of the distance parameter A2 changes depending on the value of the direction parameter θ. That is, a specific object may be defined such that the value of the distance parameter A2 changes while the virtual camera 60 is orbiting. In this case as well, preferably the virtual camera 6
For a specific object whose degree of deformation changes during its revolution, the value of the distance parameter A2 is associated with a specific orientation related to that object. For example, for a specific object G3, when the orientation of the virtual camera 60 is orientation parameter θ = θ C3 , the value of the distance parameter A2 γ G31 is associated, and when the orientation of the virtual camera 60 is orientation parameter θ = θ C4
In this case, the value of the distance parameter A2, γ G32, may be associated with it. This allows the value of the distance parameter A2 to be changed when the degree of bending deformation changes during the revolution of the virtual camera 60.
また、描画情報記憶部130に記憶されるデータは、向きパラメータデータを含む。向
きパラメータデータにおいては、向き変化位置に係る仮想カメラ60の位置パラメータ(
X、Y)の各値に、向きパラメータθの値が対応付けられる。ある一の仮想カメラ60の
位置に係る向きパラメータθの値は、当該位置の仮想カメラ60の画角内に所望の領域が
収まるように決定されてよい。例えば、特定の第2オブジェクトをユーザに見せたい場合
、当該特定の第2オブジェクトが画角内に収まる領域に位置するように向きパラメータθ
の値が、当該位置に係る位置パラメータ(X、Y)の各値に対応付けられてもよい。向き
変化位置は、例えば第1オブジェクトが移動しながら向きを変える位置等(例えば図2に
示すカーブ路17の開始位置及び終了位置や、横通路14と縦通路15との交差位置等)
に対応して設定されてもよい。例えば、図15では、向き変化位置T1(XP1、YP1
)には、向きパラメータθの値θ1が対応付けられ、向き変化位置T2(XP2、YP2
)には、向きパラメータθの値θ2が対応付けられており、以下同様である。向き変化位
置T1、T2は、特定位置A、Bのような、通常値β0とは異なる変形パラメータA1の
値が対応付けられた位置であってもよいし、及び/又は、通常値γ0とは異なる距離パラ
メータA2の値が対応付けられた位置であってもよい。
Furthermore, the data stored in the drawing information storage unit 130 includes orientation parameter data. In the orientation parameter data, the position parameter of the virtual camera 60 related to the orientation change position (
A value of the orientation parameter θ is associated with each value of X and Y. The value of the orientation parameter θ relating to the position of a particular virtual camera 60 may be determined so that the desired area is contained within the field of view of the virtual camera 60 at that position. For example, if you want to show a specific second object to the user, the orientation parameter θ may be determined so that the specific second object is located in an area that is contained within the field of view.
The value of may be associated with the respective values of the position parameters (X, Y) related to that position. The orientation change position is, for example, the position where the first object changes orientation while moving (for example, the start and end positions of the curved path 17 shown in Figure 2, or the intersection of the horizontal passage 14 and the vertical passage 15).
It may be set in accordance with the following. For example, in Figure 15, the orientation change position T1(XP1, YP1
The direction parameter θ is associated with the value θ1, and the direction change position T2 (XP2, YP2
The value θ2 of the direction parameter θ is associated with the position θ, and so on. The direction change positions T1 and T2 may be positions such as specific positions A and B, to which a value of the deformation parameter A1 different from the normal value β0 is associated, and/or to which a value of the distance parameter A2 different from the normal value γ0 is associated.
また、描画情報記憶部130に記憶されるデータは、迎角パラメータデータを含む。迎
角パラメータデータにおいては、図示しないが、向きパラメータデータと同様、迎角変化
位置に係る仮想カメラ60の位置パラメータ(X、Y)の各値に、迎角パラメータψの値
が対応付けられてよい。ある一の仮想カメラ60の位置に係る迎角パラメータψの値は、
当該位置の仮想カメラ60の画角内に所望の領域が収まるように決定されてよい。例えば
、特定の第2オブジェクトをユーザに見せたい場合、当該特定の第2オブジェクトが画角
内に収まる領域に位置するように迎角パラメータψの値が、当該位置に係る位置パラメー
タ(X、Y)の各値に対応付けられてもよい。
Furthermore, the data stored in the drawing information storage unit 130 includes angle of attack parameter data. In the angle of attack parameter data, although not shown in the figures, similar to the orientation parameter data, the value of the angle of attack parameter ψ may be associated with each value of the position parameters (X, Y) of the virtual camera 60 related to the angle of attack change position. The value of the angle of attack parameter ψ related to the position of a certain virtual camera 60 is:
The desired area may be determined so that it fits within the field of view of the virtual camera 60 at that location. For example, if a specific second object is to be shown to the user, the value of the angle of attack parameter ψ may be associated with the respective values of the position parameters (X, Y) related to that location so that the specific second object is located in an area that fits within the field of view.
なお、描画情報記憶部130に記憶されるデータは、図13、図14及び図15に示す
ような区分けで管理される必要はなく、適宜、統合して管理されてもよい。
Furthermore, 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, and 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. Note that the user operation information is
The operation information is generated in response to various operations performed by the user on the terminal device 20. Operation information may also be generated by gestures, voice input, etc. In this embodiment, the operation information includes instructions for moving a predetermined object and instructions for rotating the virtual camera 60. Instructions for moving a predetermined object are instructions to change the position of the predetermined object relative to the field object (hereinafter also simply referred to as "position of the predetermined object"), and may include instructions for the direction of movement and the amount of movement. Instructions for rotating the virtual camera 60 are instructions to realize the rotation of the virtual camera 60 as described above, and may include instructions for the type of rotation (rotation around the orbital axis Pc, i.e., revolution, or rotation around the rotational axis 61, i.e., rotation, or rotation that changes the value of the angle of attack parameter ψ), the direction of rotation, etc. The predetermined object is arbitrary, but in this embodiment, it is preferably the first object. The operation information may also include instructions for moving the virtual camera 60, etc.
描画データ送信部134は、描画処理部140により生成されるフィールド画像用の描
画データを端末装置20に送信する。なお、上述したように、他の実施形態では、描画処
理部140の描画処理の一部又は全部が端末装置20側で実現されてもよい。例えば、描
画処理部140が端末装置20により実現される場合は、描画データ送信部134は省略
されてよい。
The drawing data transmission unit 134 transmits the drawing data for the field image generated by the drawing processing unit 140 to the terminal device 20. As described above, in other embodiments, some or all of the drawing processing of the drawing processing unit 140 may be implemented on the terminal device 20 side. For example, if the drawing processing unit 140 is implemented 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と、変形処理部14
5と、投影処理部146と、背景処理部147と、描画データ生成部148とを含む。
The drawing processing unit 140 includes a change processing unit 142, a second movement processing unit 144, and a deformation processing unit 14
It includes 5, a projection processing unit 146, a background processing unit 147, and a drawing data generation unit 148.
変化処理部142は、操作情報等に応じて、フィールドオブジェクトにおける仮想カメ
ラ60の画角内に収まる領域を変化させる。例えば、変化処理部142は、仮想カメラ6
0の位置パラメータ(X、Y)の各値を変化させるとともに、位置パラメータ(X、Y)
の各値を変化させる場合に、当該変化に応じた各種処理を実行する。
The change processing unit 142 changes the area of the field object that fits within the field of view of the virtual camera 60 according to the operation information, etc. For example, the change processing unit 142 changes the area of the virtual camera 6
The values of the position parameters (X, Y) are changed, and the position parameters (X, Y)
When any of the values are changed, various processes corresponding to those changes are executed.
本実施形態では、フィールドオブジェクト77には特定オブジェクトが配置されるので
、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域を変化させると
、当該領域内に特定オブジェクトが位置する場合が生じうる。換言すると、フィールドオ
ブジェクトにおける仮想カメラ60の画角62内に収まる領域は、実質的にカメラパラメ
ータの値の取りうる全組み合わせ通りの数があり、その中には、特定オブジェクトが位置
する領域(以下、「特定オブジェクト領域」とも称する)もあれば、当該特定オブジェク
ト領域の周辺の領域(所定オブジェクト領域の一例)等が存在する。また、本実施形態で
は、カメラパラメータの値が比較的に小さい分解能で変化できるため、特定オブジェクト
領域は、特定オブジェクトが中央部に位置する第1オブジェクト領域と、特定オブジェク
トが端部に位置する第2オブジェクト領域とを含む。
ここで、図11Aを参照して、特定オブジェクト等について説明する。図11Aには、
互いに異なる3種類のカメラパラメータ(ここでは、カメラパラメータ1、2、3とする
)のそれぞれであるときの、フィールドオブジェクト77における仮想カメラ60の画角
62内に収まる領域R1、R2、R3が示される。カメラパラメータ1、2、3は、上述
したカメラパラメータの各要素(X、Y、A2、θ、ψ)のうちの、少なくとも1つの値
が異なる。従って、図11Aに示す3つの領域は、それぞれ異なる領域である。そして、
図11Aに示す3つの領域R1、R2、R3のうちの、領域R1、R3には、特定オブジ
ェクトG5、G7が配置されている。従って、この場合、領域R1、R3は、特定オブジ
ェクト領域の一例である。他方、領域R2には、特定オブジェクトが配置されていない。
従って、この場合、領域R2は、特定オブジェクトが位置しない所定オブジェクト領域の
一例である。なお、特定オブジェクトが移動するオブジェクトである場合は、ある時点で
特定オブジェクト領域であった領域が、他の時点では、特定オブジェクト領域ではなくな
る場合もありうる。例えば、領域R2の場合、当該時点では画角62外に位置していた特
定オブジェクトG6が移動して領域R2に位置する状態になると、領域R2は、特定オブ
ジェクト領域となる。
In this embodiment, a specific object is placed in the field object 77. Therefore, if the area within the field of view of the virtual camera 60 in the field object is changed, the specific object may be located within that area. In other words, the area within the field of view 62 of the virtual camera 60 in the field object is substantially the same as all possible combinations of camera parameter values. Among these are the area where the specific object is located (hereinafter also referred to as the "specific object area"), as well as the area surrounding the specific object area (an example of a predetermined object area), and so on. Furthermore, in this embodiment, since the camera parameter values can be changed with relatively small resolution, the specific object area includes a first object area where the specific object is located in the center and a second object area where the specific object is located at the edge.
Here, we will explain specific objects, etc., referring to Figure 11A. Figure 11A shows,
The regions R1, R2, and R3 within the field of view 62 of the virtual camera 60 in the field object 77 are shown for each of three different camera parameters (referred to here as camera parameters 1, 2, and 3). Camera parameters 1, 2, and 3 differ in at least one of the elements of the camera parameters (X, Y, A2, θ, ψ) described above. Therefore, the three regions shown in Figure 11A are all different regions.
Of the three regions R1, R2, and R3 shown in Figure 11A, specific objects G5 and G7 are located in regions R1 and R3. Therefore, in this case, regions R1 and R3 are examples of regions containing specific objects. On the other hand, no specific objects are located in region R2.
Therefore, in this case, region R2 is an example of a predetermined object region where the specific object is not located. Note that if the specific object is a moving object, a region that was the specific object region at one point in time may cease to be the specific object region at another point in time. For example, in the case of region R2, if the specific object G6, which was located outside the field of view 62 at that time, moves to a position within region R2, then region R2 becomes the specific object region.
変化処理部142は、第1移動処理部1420と、距離変更部1421と、向き変更部
1422と、迎角変更部1423と、更新反映部1424と、回転処理部1425と、を
含む。
The change processing unit 142 includes a first movement processing unit 1420, a distance changing unit 1421, a direction changing unit 1422, an angle of attack changing unit 1423, an update reflection unit 1424, and a rotation processing unit 1425.
第1移動処理部1420は、所定の第1移動条件が成立すると、仮想カメラ60の位置
パラメータ(X、Y)の各値を更新する。所定の第1移動条件は、任意であるが、例えば
操作情報の所定オブジェクトの移動指示に基づく所定オブジェクトの移動により満たされ
てもよいし、ゲームの進行状況や他の因子に基づいて満たされてもよい。
The first movement processing unit 1420 updates the values of the position parameters (X, Y) of the virtual camera 60 when a predetermined first movement condition is met. The predetermined first movement condition is arbitrary, but may be met, for example, by the movement of a predetermined object based on a movement instruction of a predetermined object in the operation information, or it may be met based on the progress of the game or other factors.
距離変更部1421は、更新後の位置パラメータ(X、Y)の各値に、距離パラメータ
A2の値を対応付ける。本実施形態では、距離変更部1421は、描画情報記憶部130
内の距離パラメータデータを参照して、更新後の位置パラメータ(X、Y)の各値に対応
付ける距離パラメータA2の値を算出する。この際、距離パラメータデータ14A上で、
更新後の位置パラメータ(X、Y)の各値に対して距離パラメータA2の値が対応付けら
れていない場合は、当該更新後の位置パラメータ(X、Y)の各値には、補間値が対応付
けられてよい。この補間値の算出方法の例については、後述する。なお、他の実施形態で
は、距離パラメータデータ上で、更新後の位置パラメータ(X、Y)の各値に対して距離
パラメータA2の値が対応付けられていない場合、距離変更部1421は、補間値に代え
て通常値γ0をそのまま対応付けてもよい。
The distance modification unit 1421 associates the value of distance parameter A2 with each of the updated position parameter (X, Y) values. In this embodiment, the distance modification unit 1421 is connected to the drawing information storage unit 130
The distance parameter A2 value is calculated by referring to the internal distance parameter data and corresponding to each value of the updated position parameters (X, Y). At this time, on the distance parameter data 14A,
If the values of the distance parameter A2 are not associated with each of the updated position parameter (X, Y) values, an interpolated value may be associated with each of the updated position parameter (X, Y) values. An example of how to calculate this interpolated value will be described later. In other embodiments, if the values of the distance parameter A2 are not associated with each of the updated position parameter (X, Y) values in the distance parameter data, the distance modification unit 1421 may associate the normal value γ0 directly instead of the interpolated value.
距離変更部1421は、第1距離変更部14211と、第2距離変更部14212とを
含む。なお、図14に示す例とは異なり特定位置が設定されない他の実施形態では、第1
距離変更部14211は省略されてよい。
The distance changing unit 1421 includes a first distance changing unit 14211 and a second distance changing unit 14212. In other embodiments where a specific position is not set, unlike the example shown in Figure 14, the first
The distance changing section 14211 may be omitted.
第1距離変更部14211は、仮想カメラ60の位置と特定位置との関係に基づいて、
距離パラメータA2の値を算出する(第1距離パラメータ算出処理)。本実施形態では、
第1距離変更部14211は、図14を参照して上述したような特定位置に係る距離パラ
メータデータ14Aを参照して、仮想カメラ60の位置に基づいて、距離パラメータA2
の値を算出する。第1距離変更部14211による第1距離パラメータ算出処理の一例は
、図17を参照して後述する。
The first distance changing unit 14211, based on the relationship between the position of the virtual camera 60 and a specific position,
The value of distance parameter A2 is calculated (first distance parameter calculation process). In this embodiment,
The first distance changing unit 14211, referring to the distance parameter data 14A related to the specific position as described above with reference to Figure 14, adjusts the distance parameter A2 based on the position of the virtual camera 60.
The value is calculated. An example of the first distance parameter calculation process by the first distance modification unit 14211 will be described later with reference to Figure 17.
第2距離変更部14212は、更新後の位置パラメータ(X、Y)の各値に、当該特定
オブジェクトに対応付けられた距離パラメータA2の値を対応付ける(第2距離パラメー
タ算出処理)。本実施形態では、第2距離変更部14212は、フィールドオブジェクト
における仮想カメラ60の画角62内に収まる領域に特定オブジェクトが位置する場合に
、図14を参照して上述したような特定位置に係る距離パラメータデータ14Bを参照し
て、フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に位置する特
定オブジェクトに基づいて、距離パラメータA2の値を算出する。
The second distance modification unit 14212 associates the value of the distance parameter A2 associated with the specific object with each of the updated position parameters (X, Y) (second distance parameter calculation process). In this embodiment, when the specific object is located in an area that fits within the field of view 62 of the virtual camera 60 in the field object, the second distance modification unit 14212 refers to the distance parameter data 14B related to the specific position as described above, with reference to Figure 14, and calculates the value of the distance parameter A2 based on the specific object located in an area that fits within the field of view of the virtual camera 60 in the field object.
また、第2距離変更部14212は、フィールドオブジェクトにおける仮想カメラ60
の画角内に収まる領域に特定オブジェクトが位置する場合に、当該領域における特定オブ
ジェクトの位置に応じて、距離パラメータA2の値を算出してもよい。この場合、第2距
離変更部14212は、フィールドオブジェクトにおける仮想カメラ60の画角内に収ま
る領域のうちの、中央部に特定オブジェクトが位置する場合と、その両側の端部に特定オ
ブジェクトが位置する場合とで、距離パラメータA2の値を変化させてもよい。具体的に
は、第2距離変更部14212は、フィールドオブジェクトにおける仮想カメラ60の画
角内に収まる領域のうちの、中央部に特定オブジェクトが位置する場合には、その両側の
端部に特定オブジェクトが位置する場合よりも、距離パラメータA2の値を小さくしてよ
い。これにより、仮想カメラ60の画角内の中心付近に特定オブジェクトが位置する際に
、当該特定オブジェクトを効果的に目立たせることができる。なお、フィールドオブジェ
クトにおける仮想カメラ60の画角内に収まる領域のうちの、中央部とは、例えば図11
Aの上側の特定オブジェクト領域においては、その中心線CTを中心とした距離L0内の
範囲771の部分であってよい。この場合、距離L0は、当該特定オブジェクト領域の全
体の距離L1よりも有意に小さければ任意であり、例えば、L1/2程度であってよい。
この場合、範囲771の両側の範囲772、773に係る部分が、中央部の領域の端部に
対応する。第2距離パラメータ算出処理の一例は、図27を参照して後述する。
Furthermore, the second distance changing unit 14212 controls the virtual camera 60 in the field object.
When a specific object is located within the field of view of the virtual camera 60, the value of the distance parameter A2 may be calculated according to the position of the specific object within that field of view. In this case, the second distance changing unit 14212 may change the value of the distance parameter A2 depending on whether the specific object is located in the center of the area within the field of view of the virtual camera 60 of the field object or at either end. Specifically, when the specific object is located in the center of the area within the field of view of the virtual camera 60 of the field object, the second distance changing unit 14212 may set the value of the distance parameter A2 to be smaller than when the specific object is located at either end. This makes the specific object more prominent when it is located near the center of the field of view of the virtual camera 60. Note that the central part of the area within the field of view of the virtual camera 60 of the field object is, for example, as shown in Figure 11.
In the upper specific object region of A, it may be the portion of the range 771 within a distance L0 centered on its centerline CT. In this case, the distance L0 is arbitrary as long as it is significantly smaller than the total distance L1 of the specific object region, for example, it may be about L1/2.
In this case, the portions related to ranges 772 and 773 on both sides of range 771 correspond to the edges of the central region. An example of the second distance parameter calculation process will be described later with reference to Figure 27.
向き変更部1422は、更新後の位置パラメータ(X、Y)の各値に、向きパラメータ
θの値を対応付ける。本実施形態では、向き変更部1422は、描画情報記憶部130内
の向きパラメータデータを参照して、位置パラメータ(X、Y)の各値に応じた向きパラ
メータθの値を算出する。この際、向きパラメータデータ上で、更新後の位置パラメータ
(X、Y)の各値に対して向きパラメータθの値が対応付けられていない場合は、向き変
更部1422は、補間値を算出してもよい。この補間値の算出方法の例については、後述
する。そして、向き変更部1422は、算出した向きパラメータθの値を、更新後の位置
パラメータ(X、Y)の各値に対応付ける。なお、他の実施形態では、向きパラメータデ
ータ上で、更新後の位置パラメータ(X、Y)の各値に対して向きパラメータθの値が対
応付けられていない場合は、向き変更部1422は、通常値θ0をそのまま対応付けても
よい。通常値θ0は、視線方向Vが所定オブジェクトの移動方向に対してz方向視で直角
になるように設定されてよい。
The orientation change unit 1422 associates the values of the orientation parameter θ with the updated values of the position parameters (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 values of the orientation parameter θ corresponding to the values of the position parameters (X, Y). In this case, if the values of the orientation parameter θ are not associated with the updated values of the position parameters (X, Y) in the orientation parameter data, the orientation change unit 1422 may calculate an interpolated value. An example of the method for calculating this interpolated value will be described later. The orientation change unit 1422 then associates the calculated values of the orientation parameter θ with the updated values of the position parameters (X, Y). In other embodiments, if the values of the orientation parameter θ are not associated with the updated values of the position parameters (X, Y) in the orientation parameter data, the orientation change unit 1422 may simply 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 a predetermined object in the z-direction view.
迎角変更部1423は、更新後の位置パラメータ(X、Y)の各値に、迎角パラメータ
ψの値を対応付ける。本実施形態では、迎角変更部1423は、描画情報記憶部130内
の迎角パラメータデータを参照して、位置パラメータ(X、Y)の各値に応じた迎角パラ
メータψの値を算出する。この際、迎角パラメータデータ上で、更新後の位置パラメータ
(X、Y)の各値に対して迎角パラメータψの値が対応付けられていない場合は、迎角変
更部1423は、補間値を算出してもよい。この補間値の算出方法の例については、後述
する。そして、迎角変更部1423は、算出した迎角パラメータψの値を、変化後の位置
パラメータ(X、Y)の各値に対応付ける。なお、他の実施形態では、迎角パラメータデ
ータ上で、更新後の位置パラメータ(X、Y)の各値に対して迎角パラメータψの値が対
応付けられていない場合は、迎角変更部1423は、通常値ψ0をそのまま対応付けても
よい。
The angle of attack changing unit 1423 associates the value of the angle of attack parameter ψ with each of the updated position parameter values (X, Y). In this embodiment, the angle of attack changing unit 1423 refers to the angle of attack parameter data in the drawing information storage unit 130 and calculates the value of the angle of attack parameter ψ corresponding to each of the position parameter values (X, Y). In this case, if the value of the angle of attack parameter ψ is not associated with each of the updated position parameter values (X, Y) in the angle of attack parameter data, the angle of attack changing unit 1423 may calculate an interpolated value. An example of the method for calculating this interpolated value will be described later. The angle of attack changing unit 1423 then associates the calculated value of the angle of attack parameter ψ with each of the changed position parameter values (X, Y). In other embodiments, if the value of the angle of attack parameter ψ is not associated with each of the updated position parameter values (X, Y) in the angle of attack parameter data, the angle of attack changing unit 1423 may simply associate the normal value ψ0.
更新反映部1424は、更新後の位置パラメータ(X、Y)の各値と、当該更新後の位
置パラメータ(X、Y)の各値に対応付けられた各種パラメータ(距離パラメータA2、
向きパラメータθ、及び迎角パラメータψ)の各値に基づいて、仮想カメラ60をグロー
バル座標系に対して位置付ける。これにより、仮想カメラ60が、フィールド面70(及
びそれに伴いフィールドオブジェクト)に対して位置付けられる。
The update reflection unit 1424 processes the updated position parameters (X, Y) and various parameters (distance parameter A2,
Based on the values of the orientation parameter θ and the angle of attack parameter ψ, the virtual camera 60 is positioned relative to the global coordinate system. This positions the virtual camera 60 relative to the field plane 70 (and consequently the field objects).
回転処理部1425は、所定の回転条件が成立すると、仮想カメラ60の回転処理を実
行する。所定の回転条件は、例えば操作情報(仮想カメラ60の回転指示)に基づいて判
定されてもよいし、ゲームの進行状況や他の因子に基づいて満たされてもよい。
The rotation processing unit 1425 executes rotation processing for the virtual camera 60 when predetermined rotation conditions are met. The predetermined rotation conditions may be determined, for example, based on operation information (rotation instructions for the virtual camera 60), or they may be met based on the progress of the game or other factors.
回転処理部1425は、公転処理部14251と、自転処理部14252と、迎角処理
部14253とを含んでよい。なお、他の実施形態では、公転処理部14251、自転処
理部14252、及び迎角処理部14253の一部や全部が省略されてもよい。
The rotation processing unit 1425 may include an orbital processing unit 14251, a rotation processing unit 14252, and an angle of attack processing unit 14253. In other embodiments, some or all of the orbital 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 orbital processing unit 14251 realizes rotation in the line of sight direction V around the orbital axis Pc (see Figure 10) away from the virtual camera 60. The orbital processing unit 14251 may appropriately set the position of the orbital axis Pc according to the position of the virtual camera 60, the position of a predetermined object, etc.
自転処理部14252は、仮想カメラ60を通るz方向に平行な軸である自転軸61(
図10参照)まわりの、視線方向Vの回転を実現する。
The rotation processing unit 14252 controls the rotation axis 61, which is an axis parallel to the z-direction passing through the virtual camera 60.
(See Figure 10) This enables rotation in the line of sight direction V.
迎角処理部14253は、仮想カメラ60の視線方向Vの、xy平面とのなす角度であ
る迎角パラメータψ(図5参照)の変化(すなわち仮想カメラ60を通るVz平面に垂直
な軸まわりの回転)を実現する。
The angle of attack processing unit 14253 realizes a change in the angle of attack parameter ψ (see Figure 5), which is the angle between the line of sight direction V of the virtual camera 60 and the xy plane (i.e., rotation around an axis perpendicular to the Vz plane passing through the virtual camera 60).
なお、一の処理周期で、公転処理部14251、自転処理部14252、及び迎角処理
部14253のうちの2つ以上の処理部が同時に処理を実現してもよい。
In addition, within a single processing cycle, two or more processing units among the revolution processing unit 14251, the rotation processing unit 14252, and the angle of attack processing unit 14253 may perform processing simultaneously.
第2移動処理部144は、所定の第2移動条件が成立すると、フィールドオブジェクト
に対する所定オブジェクトの位置を更新する。なお、所定オブジェクトは、フィールドオ
ブジェクトに対する位置が変化しうるオブジェクトであれば任意であるが、好ましくは、
上述したように、第1オブジェクトである。所定の第2移動条件は、任意であるが、例え
ば操作情報(所定オブジェクトの移動指示)により満たされてもよいし、ゲームの進行状
況や他の因子に基づいて満たされてもよい。なお、所定オブジェクトの位置は、例えばフ
ィールド画像のテクスチャ座標系で定義されてよい。
The second movement processing unit 144 updates the position of a predetermined object relative to the field object when a predetermined second movement condition is met. The predetermined object can be any object whose position relative to the field object can change, but preferably,
As mentioned above, this is the first object. The predetermined second movement condition is arbitrary, but may be satisfied, for example, by operation information (movement instructions for the predetermined object), or 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に示す変形パラメータデータ
13Aでは、例えば、位置パラメータ(X、Y)の各値が特定位置A(XA、YA)に対
応する場合、変形処理部145は、仮想カメラ60の向きがどのような向きでも、変形パ
ラメータA1の値β1に基づいて、フィールド面70(及びそれに伴いフィールドオブジ
ェクト)を曲げ変形する。また、位置パラメータ(X、Y)の各値が特定位置C(XC、
YC)に対応する場合、変形処理部145は、仮想カメラ60の向きが“θC1”のとき
は変形パラメータA1の値β3に基づいて、フィールド面70(及びそれに伴いフィール
ドオブジェクト)を曲げ変形し、また、仮想カメラ60の向きが“θC2”のときは変形
パラメータA1の値β4に基づいて、フィールド面70(及びそれに伴いフィールドオブ
ジェクト)を曲げ変形する。
The deformation processing unit 145 adjusts the field surface 70 based on the position and orientation of the virtual camera 60.
A bending deformation process is performed to bend the field surface (and the field object) accordingly. The bending deformation of the field surface 70 is as described above. In the deformation parameter data 13A shown in Figure 13, for example, if each value of the position parameters (X, Y) corresponds to a specific position A (X A , Y A ), the deformation processing unit 145 bends the field surface 70 (and the field object) based on the value β1 of the deformation parameter A1, regardless of the orientation of the virtual camera 60. Also, if each value of the position parameters (X, Y) corresponds to a specific position C (X C ,
When the orientation of the virtual camera 60 is "θ C1 " , the deformation processing unit 145 bends and deforms the field surface 70 (and the field object thereafter) based on the value β3 of the deformation parameter A1, and when the orientation of the virtual camera 60 is "θ C2 ", it bends and deforms the field surface 70 (and the field object thereafter) based on the value β4 of the deformation parameter A1.
本実施形態では、変形処理部145は、第1変形パラメータ算出部1451と、第2変
形パラメータ算出部1452と、変形パラメータ調整部1453と、原点設定処理部14
54と、変形関数適用部1455と、を含む。なお、図13に示す例とは異なり特定位置
が設定されない他の実施形態では、第1変形パラメータ算出部1451及び変形パラメー
タ調整部1453は省略されてよい。
In this embodiment, the deformation processing unit 145 includes a first deformation parameter calculation unit 1451, a second deformation parameter calculation unit 1452, a deformation parameter adjustment unit 1453, and an origin setting processing unit 14
This includes 54 and the deformation function application unit 1455. In other embodiments where a specific position is not set, unlike the example shown in Figure 13, the first deformation parameter calculation unit 1451 and the deformation parameter adjustment unit 1453 may be omitted.
第1変形パラメータ算出部1451は、図13を参照して上述したような特定位置に係
る変形パラメータデータ13Aを参照して、仮想カメラ60の位置及び向きに基づいて、
変形パラメータA1の値を算出する(第1変形パラメータ算出処理)。第1変形パラメー
タ算出部1451による第1変形パラメータ算出処理の一例は、図23を参照して後述す
る。
The first deformation parameter calculation unit 1451, referring to Figure 13, refers to the deformation parameter data 13A related to the specific position as described above, and based on the position and orientation of the virtual camera 60,
The value of deformation parameter A1 is calculated (first deformation parameter calculation process). An example of the first deformation parameter calculation process by the first deformation parameter calculation unit 1451 will be described later with reference to Figure 23.
第2変形パラメータ算出部1452は、図13を参照して上述したような特定オブジェ
クトに係る変形パラメータデータ13Bを参照して、仮想カメラ60の位置及び向きに基
づいて、変形パラメータA1の値を算出する(第2変形パラメータ算出処理)。第2変形
パラメータ算出部1452による第2変形パラメータ算出処理の一例は、図24を参照し
て後述する。
The second deformation parameter calculation unit 1452 calculates the value of the deformation parameter A1 based on the position and orientation of the virtual camera 60, by referring to the deformation parameter data 13B related to the specific object as described above, with reference to Figure 13 (second deformation parameter calculation process). An example of the second deformation parameter calculation process by the second deformation parameter calculation unit 1452 will be described later with reference to Figure 24.
変形パラメータ調整部1453は、第1変形パラメータ算出部1451により算出され
た変形パラメータA1の値と、第2変形パラメータ算出部1452により算出された変形
パラメータA1の値とが一致しない場合は、補間処理により補間値を算出する。変形パラ
メータに係る補間処理の一例は、後述する。なお、他の実施形態では、変形パラメータ調
整部1453は、第1変形パラメータ算出部1451により算出された変形パラメータA
1の値と、第2変形パラメータ算出部1452により算出された変形パラメータA1の値
とが一致しない場合は、一方(例えば第2変形パラメータ算出部1452により算出され
た変形パラメータA1の値)を優先的に利用してもよい。
If the value of deformation parameter A1 calculated by the first deformation parameter calculation unit 1451 does not match the value of deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, the deformation parameter adjustment unit 1453 calculates an interpolated value by interpolation processing. An example of interpolation processing related to deformation parameters will be described later. In other embodiments, the deformation parameter adjustment unit 1453 calculates the deformation parameter A calculated by the first deformation parameter calculation unit 1451.
If the value of 1 does not match the value of deformation parameter A1 calculated by the second deformation parameter calculation unit 1452, one of them (for example, the value of deformation parameter A1 calculated by the second deformation parameter calculation unit 1452) may be used preferentially.
原点設定処理部1454は、仮想カメラ60の位置及び向きに基づいて、フィールドオ
ブジェクトにおけるローカル座標系の原点Oが対応付けられる位置(以下、「原点位置」
とも称する)を設定する。原点設定処理部1454は、2種類以上の設定態様で、原点位
置を設定する。本実施形態では、一例として、原点設定処理部1454は、1種類目の設
定態様として、所定オブジェクトの位置に基づいて原点位置を設定し、2種類目の設定態
様として、所定オブジェクトとは異なる特定オブジェクトの位置に基づいて原点位置を設
定する。例えば、原点設定処理部1454は、仮想カメラ60の画角内に収まる領域に特
定オブジェクトが位置するか否かを判定し、仮想カメラ60の画角内に収まる領域に特定
オブジェクトが位置すると判定した場合、当該特定オブジェクトの位置に基づいて原点位
置を設定する。他方、原点設定処理部1454は、仮想カメラ60の画角内に収まる領域
に特定オブジェクトが位置しないと判定した場合、所定オブジェクトの位置に基づいて原
点位置を設定する。なお、他の実施形態では、原点設定処理部1454は、仮想カメラ6
0の画角内に収まる領域に特定オブジェクトが位置するか否かに無関係に、所定オブジェ
クトの位置等に基づいて原点位置を設定してもよいし、他の因子に基づいて原点位置を設
定してもよい。
The origin setting processing unit 1454 determines the position to which the origin O of the local coordinate system in the field object is associated (hereinafter referred to as the "origin position") based on the position and orientation of the virtual camera 60.
The origin setting processing unit 1454 sets the origin position using two or more setting modes. In this embodiment, as an example, the origin setting processing unit 1454 sets the origin position based on the position of a predetermined object as the first setting mode, and sets the origin position based on the position of a specific object different from the predetermined object as the second setting mode. For example, the origin setting processing unit 1454 determines whether a specific object is located in an area that fits within the field of view of the virtual camera 60, and if it determines that a specific object is located in an area that fits within the field of view of the virtual camera 60, it sets the origin position based on the position of the specific object. On the other hand, if the origin setting processing unit 1454 determines that a specific object is not located in an area that fits within the field of view of the virtual camera 60, it sets the origin position based on the position of a predetermined object. In other embodiments, the origin setting processing unit 1454 sets the origin position based on the position of the virtual camera 6
The origin position may be set based on the position of a predetermined object, regardless of whether a specific object is located within the field of view of 0, or based on other factors.
変形関数適用部1455は、原点設定処理部1454により設定された原点位置と、変
形パラメータ調整部1453により算出(設定)された変形パラメータA1の値と、仮想
カメラ60の向きとに基づいて、図7を参照して上述した関数F1に基づいて、フィール
ド面70を曲げ変形させる。
The deformation function application unit 1455 bends the field surface 70 based on the function F1 described above, with reference to Figure 7, using the origin position set by the origin setting processing unit 1454, the value of the deformation parameter A1 calculated (set) by the deformation parameter adjustment unit 1453, and the orientation of the virtual camera 60.
投影処理部146は、変形処理部145により曲げ変形されたフィールド面70に対し
て、背景オブジェクト以外の各種オブジェクト(第2オブジェクト等)を配置する。各種
オブジェクトの配置は、上述した対応情報に基づいて実現できる。この際、投影処理部1
46は、所定オブジェクトについては、第2移動処理部144により算出された移動後の
位置に所定オブジェクトを配置する。なお、フィールド画像は、上述したように、フィー
ルド面70を曲げ変形させた後に投影されてもよい。
The projection processing unit 146 places various objects other than the background object (second object, etc.) on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The placement of various objects can be achieved based on the correspondence information described above. In this case, the projection processing unit 1
46 places the predetermined object at the position calculated by the second movement processing unit 144. The field image may be projected after the field surface 70 has been bent and deformed, 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 background objects on the field surface 70 that has been bent and deformed by the deformation processing unit 145. The background processing unit 147 determines the position of the background objects 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 objects along the z direction relative to the field objects based on the height H1 of the virtual horizon HL represented by the field objects (see Figure 6). For example, if the height H1 of the horizon HL decreases due to a change in the degree of bending deformation of the field surface 70, the background processing unit 147 moves the position of the background objects in the z direction downward. For example, in the example shown in Figure 5, when the angle changes from α to α',
The background processing unit 147 may move the position of the background object in the z direction downward by a distance Δ1. As shown in Figure 5, the distance Δ1 is the distance between the intersection point P4 of the tangent line 6213 (tangent line within the field of view 62) from the virtual camera 60 to the field surface 70 and the background surface 72, and the same intersection point P5 of the tangent line 6213'. In this case, even if the height H1 of the horizon HL changes due to a change in the degree of bending deformation, the background object can be positioned in a manner that does not easily cause a sense of incongruity due to the change.
なお、背景処理部147は、所定の場合に、フィールドオブジェクトに対する背景オブ
ジェクトの、z方向に沿った位置を変化させないこととしてもよい。例えば、変形処理部
145による曲げ変形の曲げ変形度合いの変化量が比較的小さい場合、フィールドオブジ
ェクトに対する背景オブジェクトの、z方向に沿った位置を変化させないこととしてもよ
い。
Furthermore, the background processing unit 147 may, in certain cases, not change the position of the background object along the z-direction relative to the field object. For example, if the amount of change in the degree of bending deformation by the deformation processing unit 145 is relatively small, the position of the background object along the z-direction relative to the field object may not be changed.
描画データ生成部148は、仮想カメラ60から視た各種オブジェクトの表現を含むフ
ィールド画像(描画データ)を生成する。
The drawing data generation unit 148 generates a field image (drawing data) that includes representations 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 Figure 16 and subsequent figures. In the following processing flow diagrams (flowcharts), the processing order of each step may be changed as long as the relationship between the inputs and outputs of each step is not impaired.
図16は、サーバ制御部13により実現される処理の流れを示す概略フローチャートで
ある。
Figure 16 is a schematic flowchart showing the processing flow implemented 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 Figure 16 may be executed at predetermined processing cycles. The predetermined processing cycle may be the same as the frame cycle (update cycle) of the field image. Note that "before update" below refers to
The value of corresponds to the previous value (the value derived in the previous processing cycle (k)) based on a certain processing cycle (k+1), and the value of "after update" corresponds to the current value derived in the current processing cycle (k+1). Here, as an example, in the first processing cycle, the position of the predetermined object after the update (u(0), v(0)) is set to a predetermined initial position, and the values of the position parameters (X, Y) of the virtual camera 60 after the update (X(0), Y(0)) are set to the position of the predetermined object (
Set to the same as u(0), v(0)), and each value of the camera parameters (X(0), Y(0)
γ(0), θ(0), and ψ(0) are set to their respective normal values.
ステップS1600では、操作情報取得部132は、操作情報を取得する。なお、操作
情報は、割り込み処理で端末装置20から受信されて、サーバ記憶部12のうちの所定の
記憶部に記憶されてよい。この場合、操作情報取得部132は、順次、操作情報を所定の
記憶部から読み出す。
In step S1600, the operation information acquisition unit 132 acquires operation information. The operation information may be received from the terminal device 20 via 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 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 the operation information obtained in step S1600 includes a movement instruction for a predetermined object. If the determination result is "YES",
If the condition is met, proceed to step S1604; otherwise, proceed 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 predetermined object after movement based on the movement instruction of the predetermined object obtained in step S1600. Here, the position of the predetermined object after movement is in field coordinates (u(k+1)),
Let v(k+1) be the value. The position of the predetermined object before movement 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)). The instruction to move the predetermined object may be an instruction representing such a movement vector (direction of movement).
ステップ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) of the virtual camera 60 (X(k+1), Y(k+1)) based on the position of the predetermined object after movement (u(k+1), v(k+1)) obtained in step S1604. Assume that the position parameters (X, Y) before the update are (X(k), Y(k)). In this case, the change vector 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)) is (X(k+1)-X(k), Y(k+1)-Y(k))=(u(k+1)-
It is acceptable to calculate u(k) and v(k+1)-v(k) in this way.
ステップS1608では、距離変更部1421の第1距離変更部14211は、ステッ
プS1606で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+
1))に基づいて、当該(X(k+1)、Y(k+1))に対応付ける更新後の距離パラ
メータA2の値γ(k+1)を算出する(第1距離パラメータ算出処理)。この第1距離
パラメータ算出処理の具体例は、図17及び図18を参照して後述する。
In step S1608, the first distance changing unit 14211 of the distance changing unit 1421 changes each value (X(k+1), Y(k+
1)) Based on this, the updated distance parameter A2 value γ(k+1) corresponding to (X(k+1), Y(k+1)) is calculated (first distance parameter calculation process). A specific example of this first 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 changing unit 1422 uses the updated position parameters (X, Y) obtained in step S1606 (X(k+1), Y(k+1)) to determine the (X
The value θ(k+1) of the orientation parameter θ, which corresponds to (k+1) and Y(k+1), is calculated (orientation parameter calculation process). A specific example of this orientation parameter calculation process will be described later with reference to Figure 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 changing unit 1423 adjusts the (X) based on the updated position parameters (X, Y) obtained in step S1606 (X(k+1), Y(k+1)).
The value of the angle of attack parameter ψ, ψ(k+1), which corresponds to (k+1), Y(k+1) is calculated (angle of attack parameter calculation process). A specific example of this angle of attack parameter calculation process will be outlined later with reference to Figure 20.
ステップS1615では、変形処理部145は、所定オブジェクトの移動に伴う変形処
理を実行する。所定オブジェクトの移動に伴う変形処理の具体例は、図21を参照して後
述する。
In step S1615, the deformation processing unit 145 performs deformation processing associated with the movement of a predetermined object. A specific example of deformation processing associated with the movement of a predetermined object will be described later with reference to Figure 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 position of the predetermined object after the update (u(k+1), v(k+1)) to the position of the predetermined object before the update (u(k), v(
Set it to k). In other words, the current value will be the same as the previous value.
ステップS1617では、回転処理部1425は、ステップS1600で得た操作情報
に仮想カメラ60の回転指示が含まれているか否かを判定する。判定結果が“YES”の
場合、ステップS1618に進み、それ以外の場合は、今回の処理周期はそのまま終了す
る。
In step S1617, the rotation processing unit 1425 determines whether the operation information obtained in step S1600 includes a rotation instruction for the virtual camera 60. If the determination result is "YES", the process proceeds to step S1618; otherwise, the current processing cycle ends.
ステップS1618では、回転処理部1425は、ステップS1600で得た操作情報
に基づいて、仮想カメラ60の回転処理を実行する。回転処理は、上述したとおりである
。
In step S1618, the rotation processing unit 1425 performs 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) based on the line of sight direction V of the virtual camera 60 after the rotation processing in step S1618, with reference to Figures 7 and 7A, etc.
ステップS1620では、背景処理部147は、今回の処理周期で用いられた変形パラ
メータA1の今回値β(k+1)が前回値β(k)に対して変化したか否かを判定する。
判定結果が“YES”の場合、ステップS1622に進み、それ以外の場合は、ステップ
S1623に進む。なお、変形例では、ステップ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 from the previous value β(k).
If the determination result is "YES", proceed to step S1622; otherwise, proceed to step S1623. In the modified example, in step S1620, the background processing unit 147
This is the current value β(k+1) of the deformation parameter A1 used in this processing cycle, and the previous value β
It is also possible to determine whether the amount of change with respect to (k) is greater than or equal to a predetermined amount. This allows step S1622 to be skipped if the amount of change is less than or equal to the predetermined amount, thereby reducing the processing load for calculating the position of the background object in the z direction. In another modified example, in step S1620, the current value β(k+1) of the deformation parameter A1 and the previous value β(k) may not be directly compared. For example, in another embodiment, unlike this embodiment, where no specific position such as the specific position C described above, where the degree of deformation changes during the revolution of the virtual camera 60, is set, and the processing content up to step S1619 of the current processing cycle is revolution, the determination result of step S1620 may be "negative determination (NO)" without directly comparing the current value β(k+1) of the deformation parameter A1 and the previous value β(k).
ステップS1623では、距離変更部1421の第2距離変更部14212は、第2距
離パラメータ算出処理を実行する。第2距離パラメータ算出処理の具体例は、図27を参
照して後述する。
In step S1623, the second distance changing unit 14212 of the distance changing unit 1421 executes a second distance parameter calculation process. A specific example of the second distance parameter calculation process will be described later with reference to Figure 27.
ステップS1624では、更新反映部1424は、ステップS1606からステップS
1612で得た各種パラメータの更新後の各値(X(k+1)、Y(k+1)、γ(k+
1)、θ(k+1)、ψ(k+1))、又は、ステップS1606、ステップS1610
からステップS1612及びステップS1623で得た各種パラメータの更新後の各値(
X(k+1)、Y(k+1)、γ(k+1)、θ(k+1)、ψ(k+1))、に基づい
て、仮想カメラ60をグローバル座標系に位置付ける。
In step S1624, the update reflection unit 1424 performs steps S1606 to S
The updated values of the various parameters obtained in 1612 (X(k+1), Y(k+1), γ(k+
1) θ(k+1), ψ(k+1)), or step S1606, step S1610
The updated values of the various parameters obtained in steps S1612 and S1623 (
Based on X(k+1), Y(k+1), γ(k+1), θ(k+1), and ψ(k+1), the virtual camera 60 is positioned in the global coordinate system.
ステップS1625では、描画データ生成部148は、今回の処理周期での各種更新後
の描画データ(フィールド画像の描画データ)を生成する。
In step S1625, the drawing data generation unit 148 generates various updated drawing data (drawing data for the field image) for the current processing cycle.
ステップS1626では、描画データ送信部134は、ステップS1625で生成され
た描画データを端末通信部21に送信する。なお、端末通信部21は、描画データを受信
すると、当該描画データに基づいて、表示部23上にフィールド画像の表示を更新する。
In step S1626, the drawing data transmission unit 134 transmits the drawing data generated in step S1625 to the terminal communication unit 21. Upon receiving the drawing data, the terminal communication unit 21 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 Figure 16, drawing data reflecting the operation information received from the terminal device 20 can be generated and transmitted to the terminal device 20. Therefore, the field image can be updated in real time as the game progresses.
図17は、第1距離パラメータ算出処理(ステップS1608)の一例を示す概略フロ
ーチャートである。図18は、補間処理範囲の説明図であり、フィールド面70を示す斜
視図である。
Figure 17 is a schematic flowchart showing an example of the first 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 plane 70.
ステップS1700では、第1距離変更部14211は、ステップS1606で得た更
新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、距離パラメ
ータデータ14A(図14参照)に設定された任意の特定位置に対応するか否かを判定す
る。判定結果が“YES”の場合、ステップS1702に進み、それ以外の場合は、ステ
ップS1704に進む。
In step S1700, the first distance modification unit 14211 determines whether each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained in step S1606 corresponds to an arbitrary specific position set in the distance parameter data 14A (see Figure 14). If the determination result is "YES", the process proceeds to step S1702; otherwise, the process proceeds to step S1704.
ステップS1702では、第1距離変更部14211は、更新後の距離パラメータA2
の値γ(k+1)に、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k
+1))に対応する特定位置に対応付けられた距離パラメータA2の値を、対応付ける。
例えば、図14に示す例では、更新後の位置パラメータ(X、Y)の各値(X(k+1)
、Y(k+1))が特定位置A(XA、YA)に対応する場合、距離パラメータA2の値
γ(k+1)=γ1とする。
In step S1702, the first distance changing unit 14211 changes the updated distance parameter A2
The value γ(k+1) is used to determine the updated position parameters (X, Y) values (X(k+1), Y(k
The value of distance parameter A2, which is associated with a specific location corresponding to +1), is associated with that location.
For example, in the example shown in Figure 14, the updated position parameters (X, Y) have the following values (X(k+1)
If Y(k+1) corresponds to a specific position A(X A , Y A ), then the value of the distance parameter A2 is set to γ(k+1) = γ 1 .
ステップS1704では、第1距離変更部14211は、ステップS1606で得た更
新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、距離パラメ
ータデータ14A(図14参照)に設定された任意の特定位置に対応付けられた補間処理
範囲内であるか否かを判定する。補間処理範囲は、特定位置ごとに、テクスチャ座標系(
=フィールド座標系)に対応付けて設定されてもよい。本実施形態では、簡易的に、補間
処理範囲は、図18に示すように、特定位置を中心として半径rの円形領域内であるとす
る。この場合、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1)
)が、特定位置を中心として半径rの円形領域内であるか否かが判定されてよい。ただし
、他の実施形態では、補間処理範囲は、他の形態の領域で規定されてもよい。例えば、補
間処理範囲は、当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値
が位置しかつ距離パラメータA2及び迎角パラメータの各値が通常値γ0、ψ0である場
合に、任意の向きパラメータθの値のときにも、仮想カメラ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等のように、距離パラメータデータ14A(図14参照)に設定され
る。なお。補間処理範囲(後述する他のパラメータに係る補間処理範囲も同様)について
も、距離パラメータデータ14A等で予め定義されてよい。
In step S1704, the first distance modification unit 14211 determines whether each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained in step S1606 is within the interpolation processing range associated with any specific position set in the distance parameter data 14A (see Figure 14). The interpolation processing range is set for each specific position in the texture coordinate system (
It may also be set in correspondence with the field coordinate system. In this embodiment, for simplicity, the interpolation processing range is assumed to be within a circular area with radius r centered on a specific position, as shown in Figure 18. In this case, each value of the updated position parameters (X, Y) (X(k+1), Y(k+1)
) can be determined to determine whether or not it is within a circular region with radius r centered on a specific position. However, in other embodiments, the interpolation processing range may be defined by a region of other form. For example, the interpolation processing range may be set such that, when the position parameters (X, Y) of the virtual camera 60 are located within the interpolation processing range and the distance parameter A2 and the angle of attack parameter are normal values γ 0 and ψ 0 , the specific position related to the interpolation processing range is located within the region that fits within the field of view of the virtual camera 60, even when the orientation parameter θ is of an arbitrary value. The same applies to other interpolation processing ranges described later. Figure 18 schematically shows three specific positions Ps(1) to Ps(3) on the field surface 70, and the interpolation processing ranges Rs(1) to Rs(3) associated with each are schematically shown. Note that in Figure 18, the interpolation processing range Rs(2) and the interpolation processing range Rs(3) overlap, and the overlapping region Rs' is shown as a hatched region. Note that each specific location Ps(1), Ps(2), Ps(3)
These are set in the distance parameter data 14A (see Figure 14), such as specific locations A, B, etc. Note that the interpolation processing range (and similarly the interpolation processing range for other parameters described later) may also be defined in advance in the distance parameter data 14A, etc.
ステップS1706では、第1距離変更部14211は、更新後の位置パラメータ(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)との間の距離d(2)とともに、(X(k+1)
、Y(k+1))と補間処理範囲Rs(3)に係る特定位置Ps(3)との間の距離d(
3)を、算出する。
In step S1706, the first distance changing unit 14211 changes the updated position parameter (X
The distance (interpolation distance) between each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) and a specific position Ps(1) related to the interpolation processing range Rs to which each value belongs is calculated. For example, in the example shown in Figure 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 Figure 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 a specific position Ps(1) related to the interpolation processing range Rs(1) is calculated.
If (X(k+1), Y(k+1)) is located within the overlapping region Rs', then the distance d(2) between (X(k+1), Y(k+1)) and the specific position Ps(2) related to the interpolation range Rs(2) is also calculated.
, the distance d between Y(k+1) and the specific position Ps(3) related to the interpolation processing range Rs(3)
3) Calculate the value.
ステップS1708では、第1距離変更部14211は、ステップS1706で得た距
離に基づいて、距離パラメータA2の補間値を算出する。例えば、上述した距離d(1)
に係る距離パラメータA2の補間値γ(1)は、以下の式で算出されてもよい。
γ(1)=(γ1-γ0)/r×(r-d(1))+γ0
値γ1は、特定位置Ps(1)に対応付けられた値であり、上述のように通常値γ0より
小さい。
他方、更新後の位置パラメータ(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)=(γ2-γ0)/r×(r-d(2))+γ0
γ(3)=(γ3-γ0)/r×(r-d(3))+γ0
値γ2、γ3は、特定位置Ps(2)、Ps(3)にそれぞれ対応付けられた値であり、
上述のように通常値γ0より小さい。B0は、0から1の範囲内で変化する係数であり、
更新後の位置パラメータ(X、Y)の各値が特定位置Ps(2)に近づくほど1に近づき
、重複領域Rs’における特定位置Ps(2)側の境界位置で1となる。また、係数B0
は、更新後の位置パラメータ(X、Y)の各値が特定位置Ps(3)に近づくほど0に近
づき、重複領域Rs’における特定位置Ps(3)側の境界位置で0となる。例えば、B
0は、以下の通りであってよい。
B0=(r-d(2))/{(r-d(2))+(r-d(3))}
ステップS1710では、第1距離変更部14211は、更新後の距離パラメータA2
の値γ(k+1)に、ステップS1708で算出した補間値を設定する。
In step S1708, the first distance changing unit 14211 calculates an interpolated value of the distance parameter A2 based on the distance obtained in step S1706. For example, the distance d(1) described above
The interpolated value γ(1) of the distance parameter A2 related to this may be calculated by the following formula.
γ(1)=(γ 1 - γ 0 )/r×(rd(1))+γ 0
The value γ 1 is a value associated with a specific position Ps(1), and as mentioned above, it is smaller than the normal value γ 0 .
On the other hand, if each value of the updated position parameters (X, Y) (X(k+1), Y(k+1)) lies within the overlapping region Rs', the interpolated value γ(Rs') is the interpolated value γ(2) of the distance parameter A2 related to the distance d(2) described above, and the distance parameter A2 related to the distance d(3) described above.
Based on the interpolated value γ(3), it may also be calculated using the following formula.
γ(Rs')=B0×γ(2)+(1-B0)×γ(3)
Here, γ(2) and γ(3) are as follows: γ(2) = (γ 2 - γ 0 ) / r × (r - d(2)) + γ 0
γ(3)=(γ 3 - γ 0 )/r×(rd(3))+γ 0
The values γ2 and γ3 are values associated with specific positions Ps(2) and Ps(3), respectively.
As mentioned above, the normal value γ is smaller than 0. B0 is a coefficient that varies within the range of 0 to 1.
The updated position parameters (X, Y) approach 1 as they get closer to the specific position Ps(2), and become 1 at the boundary position on the Ps(2) side of the overlapping region Rs'. Also, coefficient B0
The updated position parameters (X, Y) approach 0 as they get closer to the specific position Ps(3), and become 0 at the boundary position on the specific position Ps(3) side in the overlapping region Rs'. For example, B
0 may be as follows:
B0=(rd(2))/{(rd(2))+(rd(3))}
In step S1710, the first distance changing unit 14211 changes the updated distance parameter A2
The value γ(k+1) is set to the interpolated value calculated in step S1708.
ステップS1712では、第1距離変更部14211は、更新後の距離パラメータA2
の値γ(k+1)に通常値γ0を設定する。
In step S1712, the first distance changing unit 14211 changes the updated distance parameter A2
The value γ(k+1) is set to the normal value γ0 .
このようにして、図17に示す処理によれば、位置パラメータ(X、Y)の各値の所定
の処理周期ごとの変化に連動して、距離パラメータA2の値を徐々に変更できるので、例
えば、特定位置に至った処理周期で通常値γ0から値γ1等に急変させる場合に比べて、
穏やかな距離の変化を実現できる。この結果、ユーザに与えうる違和感を低減しつつ、距
離パラメータA2の値を変化させることができる。
In this way, according to the process shown in Figure 17, the value of the distance parameter A2 can be gradually changed in conjunction with the changes in each value of the position parameters (X, Y) at predetermined processing cycles. For example, compared to the case where the value is abruptly changed from the normal value γ 0 to value γ 1 at the processing cycle when a specific position is reached,
This allows for gradual changes in distance. As a result, the value of the distance parameter A2 can be changed while reducing the potential discomfort it may cause the user.
図19は、向きパラメータ算出処理(ステップS1610)の一例を示す概略フローチ
ャートである。
Figure 19 is a schematic flowchart showing an example of the direction parameter calculation process (step S1610).
ステップS1900では、向き変更部1422は、ステップS1606で得た更新後の
位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、向きパラメータデ
ータ(図15参照)に設定された任意の向き変化位置に対応するか否かを判定する。判定
結果が“YES”の場合、ステップS1902に進み、それ以外の場合は、ステップS1
904に進む。
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 an arbitrary orientation change position set in the orientation parameter data (see Figure 15). If the determination result is "YES", proceed to step S1902; otherwise, proceed to step S1
Proceed to 904.
ステップ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
)=θ1とする。
In step S1902, the direction changing unit 1422 changes the value of the direction parameter θ θ(k+1)
Next, the value of the orientation parameter θ is set, which is 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 Figure 15, if each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) corresponds to the orientation change position T1(XP1, YP1), the value of the orientation parameter θ is θ(k+1
Let ) = θ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 parameters (X, Y) obtained in step S1606 is within the interpolation processing range associated with an arbitrary orientation change position set in the orientation parameter data (see Figure 15). The interpolation processing range may be set for each orientation change position. In this embodiment, the interpolation processing range is simply defined, similar to the interpolation processing range for the distance parameter A2.
The interpolation processing range is defined as a circular region with radius r centered on the orientation change position (see Figure 18). However, in other embodiments, the interpolation processing range may be defined by a region of other 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; 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 changes the updated position parameters (X, Y)
The distance between each value (X(k+1), Y(k+1)) and a specific position in the interpolation range Rs to which each value belongs is calculated. The method for calculating this distance may be the same as in step S1706 described above.
ステップS1908では、向き変更部1422は、ステップS1906で得た距離に基
づいて、向きパラメータθの補間値を算出する。補間値の算出方法は、上述したステップ
S1708と同様であってよい。
In step S1908, the orientation changing unit 1422 calculates an interpolated value for the orientation parameter θ based on the distance obtained in step S1906. The method for calculating the interpolated value may be the same as in step S1708 described above.
ステップS1910では、向き変更部1422は、向きパラメータθの値θ(k+1)
に、ステップS1908で算出した補間値を設定する。
In step S1910, the orientation changing unit 1422 changes the value of the orientation parameter θ θ(k+1)
The interpolated value calculated in step S1908 is then set.
ステップS1912では、向き変更部1422は、向きパラメータθの値θ(k+1)
に通常値θ0を設定する。通常値θ0は、所定オブジェクトの移動ベクトル(u(k+1
)-u(k)、v(k+1)-v(k))に投影ベクトルV’が垂直をなすように設定さ
れてよい。
In step S1912, the direction changing unit 1422 changes the value of the direction parameter θ θ(k+1)
The normal value θ0 is set to the movement vector (u(k+1) of a given object.
The projection vector V' may be set to be perpendicular to ) - u(k) and v(k+1) - v(k).
このようにして、図19に示す処理によれば、位置パラメータ(X、Y)の各値の所定
の処理周期ごとの変化に連動して、向きパラメータθの値を徐々に変更できるので、例え
ば、向き変化位置に至った処理周期で通常値θ0から値θ1等に急変させる場合に比べて
、ユーザに与えうる違和感を低減できる穏やかな向きの変化を実現できる。
In this way, according to the process shown in Figure 19, the value of the orientation parameter θ can be gradually changed in conjunction with the changes in each value of the position parameters (X, Y) at predetermined processing cycles. Therefore, compared to, for example, a sudden change from the normal value θ0 to value θ1 in the processing cycle that reaches the orientation change position, a gentler change in orientation can be achieved, which reduces the sense of discomfort that may be caused to the user.
図20は、迎角パラメータ算出処理(ステップS1612)の一例を示す概略フローチ
ャートである。図20に示す処理は、上述した図19に示す向きパラメータ算出処理とパ
ラメータが異なるだけで実質的に同一であるので、説明は省略する。
Figure 20 is a schematic flowchart showing an example of the angle of attack parameter calculation process (step S1612). The process shown in Figure 20 is substantially the same as the direction parameter calculation process shown in Figure 19 described above, except for the parameters, so a detailed explanation is omitted.
図21は、所定オブジェクトの移動に伴う変形処理(ステップS1615)の一例を示
す概略フローチャートである。図22は、曲げ変形処理の説明図であり、図2に示したフ
ィールド画像が投影されたフィールド面70上に、ローカル座標系を対応付けた斜視図で
ある。
Figure 21 is a schematic flowchart showing an example of deformation processing (step S1615) associated with the movement of a predetermined object. Figure 22 is an explanatory diagram of the bending deformation processing, and is a perspective view in which the local coordinate system is associated with the field surface 70 on which the field image shown in Figure 2 is projected.
ステップS2102では、第1変形パラメータ算出部1451は、特定位置に係る変形
パラメータデータ13A(図13)を参照して、更新後の変形パラメータA1の値β(k
+1)を算出する(第1変形パラメータ算出処理)。以下では、第1変形パラメータ算出
処理で得られる更新後の変形パラメータA1の値β(k+1)を、区別のため、更新後の
変形パラメータA1の第1値β’(k+1)と称する。第1変形パラメータ算出処理の具
体例は、図23を参照して後述する。
In step S2102, the first deformation parameter calculation unit 1451 refers to the deformation parameter data 13A (Figure 13) related to the specific position and calculates the updated value of deformation parameter A1 β(k
The first deformation parameter calculation process calculates β(k+1) (+1). Hereafter, the updated value β(k+1) of deformation parameter A1 obtained in the first deformation parameter calculation process will be referred to as the first value β'(k+1) of the updated deformation parameter A1 for distinction. A specific example of the first deformation parameter calculation process will be described later with reference to Figure 23.
ステップS2104では、第2変形パラメータ算出部1452は、特定オブジェクトに
係る変形パラメータデータ13B(図13)を参照して、更新後の変形パラメータA1の
値β(k+1)を算出する(第2変形パラメータ算出処理)。以下では、第2変形パラメ
ータ算出処理で得られる更新後の変形パラメータA1の値β(k+1)を、区別のため、
更新後の変形パラメータA1の第2値β”(k+1)と称する。第2変形パラメータ算出
処理の具体例は、図24を参照して後述する。
In step S2104, the second deformation parameter calculation unit 1452 calculates the updated deformation parameter A1 value β(k+1) by referring to the deformation parameter data 13B (Figure 13) related to the specific object (second deformation parameter calculation process). Hereafter, the updated deformation parameter A1 value β(k+1) obtained in the second deformation parameter calculation process will be used for distinction.
This is referred to as the second value β''(k+1) of the updated deformation parameter A1. A specific example of the second deformation parameter calculation process will be described later with reference to Figure 24.
ステップS2106では、変形パラメータ調整部1453は、ステップS2102で得
た更新後の変形パラメータA1の第1値β’(k+1)と、ステップS2104で得た更
新後の変形パラメータA1の第2値β”(k+1)とに基づいて、最終的な更新後の変形
パラメータA1の値β(k+1)を設定する(変形パラメータ調整処理)。この変形パラ
メータ調整処理の具体例は、図25を参照して後述する。
In step S2106, the deformation parameter adjustment unit 1453 sets the final updated deformation parameter A1 value β(k+1) based on the first updated deformation parameter A1 value β'(k+1) obtained in step S2102 and the second updated deformation parameter A1 value β''(k+1) obtained in step S2104 (deformation parameter adjustment process). A specific example of this deformation parameter adjustment process will be described later with reference to Figure 25.
ステップS2108では、原点設定処理部1454は、原点位置(フィールドオブジェ
クトにおけるローカル座標系の原点Oが対応付けられる位置)(所定位置の一例)を設定
する原点設定処理を実行する。原点設定処理の具体例は、図26を参照して後で概説する
。
In step S2108, the origin setting processing unit 1454 executes an origin setting process to set the origin position (the position to which the origin O of the local coordinate system in the field object is associated) (an example of a predetermined position). A specific example of the origin setting process will be outlined later with reference to Figure 26.
ステップS2110では、変形関数適用部1455は、ステップS2108で設定した
原点位置に対応付けられる原点Oと、向きパラメータθの値θ(k+1)とに基づいて、
フィールド面70のフィールド座標系(フィールド画像のテクスチャ座標系)にローカル
座標系(図7、図22参照)を対応付ける。具体的には、ステップS2108で設定した
原点を通り、x方向に対して向きパラメータθの値θ(k+1)をなす軸を、Xc軸とす
る。なお、図22に示す例では、フィールド面70上の(u(k+1)、v(k+1))
を原点位置としてローカル座標系が対応付けられている状態が示される。
In step S2110, the deformation function application unit 1455, based on the origin O associated with the origin position set in step S2108 and the value θ(k+1) of the direction parameter θ,
The local coordinate system (see Figures 7 and 22) is mapped to the field coordinate system (texture coordinate system of the field image) of the field surface 70. Specifically, the axis passing through the origin set in step S2108 and making a connection with respect to the x-direction with a value of the orientation parameter θ (k+1) is defined as the Xc axis. In the example shown in Figure 22, (u(k+1), v(k+1)) is on the field surface 70.
This shows that the local coordinate system is associated with the origin position.
ステップS2112では、変形関数適用部1455は、ステップS2106で設定した
更新後の変形パラメータA1の値β(k+1)と、ステップS2110でフィールド面7
0のフィールド座標系に対応付けたローカル座標系とに基づいて、フィールド面70を曲
げ変形させる。この場合、例えば、変形関数適用部1455は、図7を参照して上述した
関数F1に基づいて、フィールド面70を曲げ変形させることができる。
In step S2112, the deformation function application unit 1455 uses the updated deformation parameter A1 value β(k+1) set in step S2106 and the field surface 7
The field surface 70 is bent and deformed based on the local coordinate system associated with the field coordinate system of 0. In this case, for example, the deformation function application unit 1455 can bend and deform the field surface 70 based on the function F1 described above, with reference to Figure 7.
図23は、第1変形パラメータ算出部1451による第1変形パラメータ算出処理(ス
テップS2102)を示す概略フローチャートである。
Figure 23 is a schematic flowchart showing the first deformation parameter calculation process (step S2102) performed by the first deformation parameter calculation unit 1451.
ステップS2300では、第1変形パラメータ算出部1451は、ステップS1606
で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、変
形パラメータデータ13A(図13参照)に設定された任意の特定位置に対応するか否か
を判定する。判定結果が“YES”の場合、ステップS2302に進み、それ以外の場合
は、ステップS2304に進む。
In step S2300, the first deformation parameter calculation unit 1451 performs the following steps in step S1606
It is determined whether each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained corresponds to an arbitrary specific position set in the deformation parameter data 13A (see Figure 13). If the determination result is "YES", proceed to step S2302; otherwise, proceed to step S2304.
ステップS2302では、第1変形パラメータ算出部1451は、更新後の変形パラメ
ータA1の第1値β’(k+1)に、更新後の位置パラメータ(X、Y)の各値(X(k
+1)、Y(k+1))に対応する特定位置に対応付けられた変形パラメータA1の値を
設定する。例えば、図13に示す変形パラメータデータ13Aでは、更新後の位置パラメ
ータ(X、Y)の各値(X(k+1)、Y(k+1))が特定位置A(XA、YA)に対
応する場合、更新後の変形パラメータA1の値β(k+1)=β1とする。
In step S2302, the first deformation parameter calculation unit 1451 sets the first value β'(k+1) of the updated deformation parameter A1 to each value (X(k) of the updated position parameters (X, Y)
The value of deformation parameter A1 is set to correspond to a specific position corresponding to (X + 1) and (Y (k + 1)). For example, in the deformation parameter data 13A shown in Figure 13, if each value of the updated position parameters (X, Y) (X (k + 1), Y (k + 1)) corresponds to a specific position A (X A , Y A ), then the value of the updated deformation parameter A1 is set to β(k + 1) = β 1 .
ステップS2304では、第1変形パラメータ算出部1451は、ステップS1606
で得た更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k+1))が、変
形パラメータデータ(図13参照)に設定された任意の特定位置に対応付けられた補間処
理範囲内であるか否かを判定する。補間処理範囲は、特定位置ごとに設定されてもよい。
本実施形態では、補間処理範囲は、距離パラメータA2に係る特定位置に対応付けられた
補間処理範囲と同様、簡易的に、特定位置を中心として半径rの円形領域内(図18参照
)であるとする。ただし、他の実施形態では、補間処理範囲は、上述したように、他の形
態の領域で規定されてもよい。
In step S2304, the first deformation parameter calculation unit 1451 performs the following steps in step S1606
It is determined whether each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) obtained falls within the interpolation processing range associated with any specific position set in the deformation parameter data (see Figure 13). The interpolation processing range may be set for each specific position.
In this embodiment, the interpolation processing range is simply defined as a circular area with radius r centered on the specific position (see Figure 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 by other forms of regions, as described above.
ステップS2306では、第1変形パラメータ算出部1451は、更新後の位置パラメ
ータ(X、Y)の各値(X(k+1)、Y(k+1))と、当該各値が属する補間処理範
囲に係る特定位置との間の距離d(k+1)を算出する。当該距離の算出方法は、上述し
たステップS1706と同様であってよい。
In step S2306, the first deformation parameter calculation unit 1451 calculates the distance d(k+1) between each value (X(k+1), Y(k+1)) of the updated position parameters (X, Y) and a specific position related to the interpolation processing range to which each value belongs. The method for calculating this distance may be the same as in step S1706 described above.
ステップS2308では、第1変形パラメータ算出部1451は、ステップS2306
で得た距離d(k+1)に基づいて、変形パラメータA1の補間値を算出する。補間値の
算出方法は、上述したステップS1708と同様であってよい。
In step S2308, the first deformation parameter calculation unit 1451 performs the following steps in step S2306
Based on the distance d(k+1) obtained, the interpolated value of the deformation parameter A1 is calculated. The method for calculating the interpolated value may be the same as in step S1708 described above.
ただし、図13の変形パラメータデータ13Aの特定位置Cのような、仮想カメラ60
の公転中に変形度合いが変化する特定位置の場合は、向きパラメータθの値θ(k+1)
に基づいて、次のようにして算出されてよい。ここでは、特定位置Cに関して説明する。
まず、特定位置Cに対応付けられる変形パラメータA1の値β(C0)は、θC1-Δθ
1≦θ(k+1)≦θC1+Δθ1のときは、以下の式(1)により、θC2-Δθ1≦
θ(k+1)≦θC2+Δθ1のときは、以下の式(2)により、算出されてよく、それ
以外の範囲では、値β(C0)=通常値β0とされてよい。
β(C0)=-(β3-β0)/Δθ1×|(θ(k+1)-θC1)|+β3 式(
1)
β(C0)=-(β4-β0)/Δθ1×|(θ(k+1)-θC2)|+β4 式(
2)
例えば、式(1)では、(θ(k+1)-θC1)の絶対値に(β3-β0)/Δθ1を
乗算した値を、β3から引いた値が、β(C0)とされる。ここで、Δθ1は、補間角度
範囲を定める値であり、β3、β4は、特定位置Cの特定向きに対応付けられた変形パラ
メータA1の値であり、上述のように、通常値β0よりも大きい。なお、ここで、式(1
)及び式(2)において、同じΔθ1が使用されているが、異なるΔθ1が使用されても
よい。
そして、特定位置Cと(X(k+1)、Y(k+1))との間の距離を距離d(dC)と
すると、距離d(dC)に係る変形パラメータA1の補間値β(dC)は、上述したβ(
C0)を用いて、以下の式で算出されてもよい。
β(dC)=(β(C0)-β0)/r×(r-d(dC))+β0
また、例えば特定位置Aと特定位置Bのそれぞれに係る補間処理範囲が重複領域Rs’
を有する場合も、距離パラメータA2の場合と同様である。具体的には、更新後の位置パ
ラメータ(X、Y)の各値(X(k+1)、Y(k+1))が重複領域Rs’内に位置す
る場合は、特定位置Aと(X(k+1)、Y(k+1))との間の距離を距離d(dA)
とし、特定位置Bと(X(k+1)、Y(k+1))との間の距離を距離d(dB)とす
ると、補間値β(Rs’)は、距離d(dA)に係る変形パラメータA1の補間値β(d
A)と、距離d(dB)に係る変形パラメータA1の補間値β(dB)とに基づいて、以
下の式で算出されてもよい。
β(Rs’)=B1×β(dA)+(1-B1)×β(dB)
ここで、β(dA)、β(dB)は、以下のとおりである
β(dA)=(β1-β0)/r×(r-d(dA))+β0
β(dB)=(β2-β0)/r×(r-d(dB))+β0
B1は、0から1の範囲内で変化する係数であり、更新後の位置パラメータ(X、Y)の
各値が特定位置Aに近づくほど1に近づき、重複領域Rs’における特定位置A側の境界
位置で1となる。また、係数B1は、更新後の位置パラメータ(X、Y)の各値が特定位
置Bに近づくほど0に近づき、重複領域Rs’における特定位置B側の境界位置で0とな
る。例えば、B1は、以下の通りであってよい。
B1=(r-d(dA))/{(r-d(dA))+(r-d(dB))}
ステップS2310では、第1変形パラメータ算出部1451は、更新後の変形パラメ
ータA1の第1値β’(k+1)に、ステップS2308で算出した補間値を設定する。
However, the virtual camera 60, as shown in the deformation parameter data 13A in Figure 13, has a specific position C.
In the case of a specific position where the degree of deformation changes during the orbit, the value of the orientation parameter θ is θ(k+1).
Based on this, it may be calculated as follows. Here, we will explain with respect to a specific position C.
First, the value β( C0 ) of the deformation parameter A1 associated with a specific position C is θ C1 - Δθ
When 1 ≤ θ(k+1) ≤ θ C1 + Δθ1, then by the following equation (1), θ C2 - Δθ1 ≤
When θ(k+1) ≤ θ C² + Δθ¹, the value can be calculated using the following equation (2), and in other ranges, the value β( C₀ ) may be taken as the usual value β₀ .
β(C 0 )=-(β 3 -β 0 )/Δθ1×|(θ(k+1)-θ C1 )|+β 3 equation (
1)
β(C 0 )=-(β 4 -β 0 )/Δθ1×|(θ(k+1)-θ C2 )|+β 4 formula (
2)
For example, in equation (1), the value obtained by multiplying the absolute value of (θ(k+1) - θC1 ) by ( β3 - β0 )/Δθ1 and subtracting this value from β3 is given by β( C0 ). Here, Δθ1 is a value that defines the interpolation angle range, and β3 and β4 are values of the deformation parameter A1 associated with a specific orientation of a specific position C, and as mentioned above, they are greater than the normal value β0 . Note that here, equation (1
Although the same Δθ1 is used in equation (1) and equation (2), different Δθ1 may be used.
Then, if the distance between a specific position C and (X(k+1), Y(k+1)) is the distance d(d C ), then the interpolated value β(d C ) of the deformation parameter A1 related to the distance d(d C ) is the β(
Using C0 ), it may also be calculated using the following formula.
β(d C )=(β(C 0 )−β 0 )/r×(rd(d C ))+β 0
Furthermore, for example, the interpolation processing ranges related to specific position A and specific position B overlap in region Rs'.
The same applies when there is a distance parameter A2. Specifically, if each value of the updated position parameters (X, Y) (X(k+1), Y(k+1)) is located within the overlapping region Rs', the distance between a specific position A and (X(k+1), Y(k+1)) is the distance d(d A ).
Let the distance between a specific position B and (X(k+1), Y(k+1)) be distance d(d B ). Then the interpolated value β(Rs') is the interpolated value β(d A) of the deformation parameter A1 related to distance d(d A ).
A ) and the interpolated value β( dB ) of the deformation parameter A1 related to the distance d( dB ) may be calculated using the following formula.
β(Rs')=B1×β(d A )+(1−B1)×β(d B )
Here, β(d A ) and β(d B ) are as follows: β(d A ) = (β 1 - β 0 ) / r × (r - d(d A )) + β 0
β(d B )=(β 2 -β 0 )/r×(rd(d B ))+β 0
B1 is a coefficient that changes within the range of 0 to 1, and as the updated position parameters (X, Y) approach a specific position A, it approaches 1, and becomes 1 at the boundary position on the specific position A side of the overlapping region Rs'. Also, as the updated position parameters (X, Y) approach a specific position B, the coefficient B1 approaches 0, and becomes 0 at the boundary position on the specific position B side of the overlapping region Rs'. For example, B1 may be as follows.
B1=(rd(d A ))/{(rd(d A ))+(rd(d B ))}
In step S2310, the first deformation parameter calculation unit 1451 sets the first value β'(k+1) of the updated deformation parameter A1 to the interpolated value calculated in step S2308.
ステップS2312では、第1変形パラメータ算出部1451は、更新後の変形パラメ
ータA1の第1値β’(k+1)に通常値β0を設定する。
In step S2312, the first deformation parameter calculation unit 1451 sets the first value β'(k+1) of the updated deformation parameter A1 to the normal value β0 .
図24は、第2変形パラメータ算出部1452による第2変形パラメータ算出処理(ス
テップS2104)を示す概略フローチャートである。
Figure 24 is a schematic flowchart showing the second deformation parameter calculation process (step S2104) by the second deformation parameter calculation unit 1452.
ステップS2400では、第2変形パラメータ算出部1452は、フィールドオブジェ
クトにおける領域であって、ステップS1608からステップS1612で得たカメラパ
ラメータの更新後の各値(X(k+1)、Y(k+1)、γ(k+1)、θ(k+1)、
ψ(k+1))に基づき絶対座標系に位置付けられた仮想カメラ60の画角内に位置する
領域(以下、単に「フィールドオブジェクトにおける仮想カメラ60の画角内領域」又は
単に「画角内領域」とも称する)に、特定オブジェクトが位置するか否かを判定する。な
お、フィールドオブジェクトにおける仮想カメラ60の画角内領域は、カメラパラメータ
の各値に基づいて、一義的に定まる。
In step S2400, the second deformation parameter calculation unit 1452 calculates the region in the field object, and the updated values of the camera parameters obtained in steps S1608 to S1612 (X(k+1), Y(k+1), γ(k+1), θ(k+1)
It is determined whether a specific object is located within the field of view of the virtual camera 60, which is positioned in an absolute coordinate system based on ψ(k+1) (hereinafter also referred to simply as the "field of view region of the virtual camera 60 in the field object" or simply the "field of view region"). The field of view region of the virtual camera 60 in the field object is uniquely determined based on the values of each camera parameter.
なお、正規状態のフィールドオブジェクトにおける仮想カメラ60の画角内領域の横方
向の距離(例えば、フィールド座標系での距離)は、距離パラメータA2の値に応じて決
まる。従って、例えば、フィールドオブジェクトにおける仮想カメラ60の画角内領域の
横方向の距離をL1とすると、仮想カメラ60の投影ベクトルV’と特定オブジェクトと
の間の、投影ベクトルV’に垂直な方向(以下、単に「横方向」とも称する)の距離dL
(k+1)に基づいて、L1/2≦dL(k+1)であるか否かを判定してもよい。この
場合、L1/2≦dL(k+1)である場合、フィールドオブジェクトにおける仮想カメ
ラ60の画角内領域に特定オブジェクトが位置すると判定してもよい。
Furthermore, the lateral distance (for example, the distance in the field coordinate system) of the area within the field of view of the virtual camera 60 in a field object in a normal state is determined according to the value of the distance parameter A2. Therefore, for example, if the lateral distance of the area within the field of view of the virtual camera 60 in a field object is L1, then the distance d L between the projection vector V' of the virtual camera 60 and the specific object in the direction perpendicular to the projection vector V' (hereinafter also simply referred to as the "lateral direction") is d L
Based on (k+1), it may be determined whether L1/2 ≤ d L (k+1). In this case, if L1/2 ≤ d L (k+1), it may be determined that a specific object is located within the field of view of the virtual camera 60 in the field object.
本実施形態では、特定オブジェクトに対応付けられた補間処理範囲に、更新後の位置パ
ラメータ(X、Y)の各値(X(k+1)、Y(k+1))が位置する場合に、フィール
ドオブジェクトにおける仮想カメラ60の画角内領域に特定オブジェクトが位置すると判
定する。この場合、一の特定オブジェクトに対応付けられた補間処理範囲は、上述したよ
うに、当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値が位置す
る場合に、仮想カメラ60の画角内に収まる領域に当該一の特定オブジェクトが位置する
ように、設定されてよい。
In this embodiment, if the updated position parameters (X, Y) values (X(k+1), Y(k+1)) are located within the interpolation processing range associated with the specific object, it is determined that the specific object is located within the field of view of the virtual camera 60 in the field object. In this case, the interpolation processing range associated with a specific object may be set such that, as described above, when the position parameters (X, Y) of the virtual camera 60 are located within the interpolation processing range, the specific object is located within the field of view of the virtual camera 60.
本ステップS2400において、判定結果が“YES”の場合、ステップS2402に
進み、それ以外の場合は、ステップS2410に進む。
In step S2400, if the determination result is "YES", proceed to step S2402; otherwise, proceed to step S2410.
ステップS2402では、第2変形パラメータ算出部1452は、フィールドオブジェ
クトにおける仮想カメラ60の画角内領域のうちの、中央部に特定オブジェクトが位置す
るか否かを判定する。例えば、第2変形パラメータ算出部1452は、仮想カメラ60の
投影ベクトルV’と特定オブジェクトとの間の横方向の距離dL(k+1)が0である場
合に、フィールドオブジェクトにおける仮想カメラ60の画角内領域のうちの、中央部に
特定オブジェクトが位置すると判定してもよい。あるいは、第2変形パラメータ算出部1
452は、横方向の距離dL(k+1)が所定距離(L1/2よりも有意に小さい距離、
例えばL1/4)以下である場合に、フィールドオブジェクトにおける仮想カメラ60の
画角内領域のうちの、中央部に特定オブジェクトが位置すると判定してもよい。なお、仮
想カメラ60の投影ベクトルV’は、ステップS1608及びステップS1610で得た
位置パラメータ及び向きパラメータの更新後の各値(X(k+1)、Y(k+1)、θ(
k+1))に基づいて導出できる。判定結果が“YES”の場合、ステップS2404に
進み、それ以外の場合は、ステップS2406に進む。
In step S2402, the second deformation parameter calculation unit 1452 determines whether the specific object is located in the center of the field of view of the virtual camera 60 within the field of view of the field object. For example, the second deformation parameter calculation unit 1452 may determine that the specific object is located in the center of the field of view of the virtual camera 60 within the field of view of the field object if the horizontal distance d L (k+1) between the projection vector V' of the virtual camera 60 and the specific object is 0. Alternatively, the second deformation parameter calculation unit 1
452 is a distance where the lateral distance d L (k+1) is significantly smaller than a predetermined distance (L1/2).
For example, if it is less than or equal to L1/4, it may be determined that a specific object is located in the center of the field object within the field of view of the virtual camera 60. Note that the projection vector V' of the virtual camera 60 is the updated values of the position parameter and orientation parameter obtained in steps S1608 and S1610 (X(k+1), Y(k+1), θ(
This can be derived based on k+1). If the result of the determination is "YES", proceed to step S2404; otherwise, proceed to step S2406.
ステップS2404では、第2変形パラメータ算出部1452は、更新後の変形パラメ
ータA1の第2値β”(k+1)に、フィールドオブジェクトにおける仮想カメラ60の
画角内領域の中央部に位置する特定オブジェクトに対応付けられた変形パラメータA1の
値を設定する。例えば、図13に示す変形パラメータデータ13Bの場合、フィールドオ
ブジェクトにおける仮想カメラ60の画角内領域の中央部に特定オブジェクトG1が位置
する場合、更新後の変形パラメータA1の第2値β”(k+1)に、特定オブジェクトG
1に対応付けられた変形パラメータA1の値βG1が対応付けられる。
In step S2404, the second deformation parameter calculation unit 1452 sets the second value β''(k+1) of the updated deformation parameter A1 to the value of the deformation parameter A1 associated with a specific object located in the center of the field of view of the virtual camera 60 in the field object. For example, in the case of the deformation parameter data 13B shown in Figure 13, if a specific object G1 is located in the center of the field of view of the virtual camera 60 in the field object, the second value β''(k+1) of the updated deformation parameter A1 is set to the value of the specific object G
The value β G1 of the deformation parameter A1, which is associated with 1, is associated with it.
ステップS2406では、第2変形パラメータ算出部1452は、仮想カメラ60の投
影ベクトルV’と特定オブジェクトとの間の横方向の距離dL(k+1)に基づいて、変
形パラメータA1の補間値を算出する。例えば、上述した横方向の距離dL(k+1)を
用いて、補間値β(dL)は、以下の式で算出されてもよい。
β(dL)=(βG*-β0)/L1/2×(L1/2-d(dL))+β0
値βG*は、フィールドオブジェクトにおける仮想カメラ60の画角内領域に位置する特
定オブジェクトに対応付けられた変形パラメータA1の値であり、特定オブジェクトG1
の場合、値βG1である。L1/2は、フィールドオブジェクトにおける仮想カメラ60
の画角内領域の横方向の距離L1の半分である。
In step S2406, the second deformation parameter calculation unit 1452 calculates an interpolated value of the deformation parameter A1 based on the lateral distance dL (k+1) between the projection vector V' of the virtual camera 60 and the specific object. For example, using the lateral distance dL (k+1) described above, the interpolated value β( dL ) may be calculated by the following formula.
β(d L )=(β G* - β 0 )/L1/2×(L1/2-d(d L ))+β 0
The value β G* is the value of the deformation parameter A1 associated with a specific object located within the field of view of the virtual camera 60 in the field object, and the specific object G1
In this case, the value β is G1 . L1/2 is the virtual camera 60 in the field object.
It is half the horizontal distance L1 of the area within the field of view.
ステップS2408では、第2変形パラメータ算出部1452は、更新後の変形パラメ
ータA1の第2値β”(k+1)に、ステップS2406で得た変形パラメータA1の補
間値を設定する。
In step S2408, the second deformation parameter calculation unit 1452 sets the second value β''(k+1) of the updated deformation parameter A1 to the interpolated value of the deformation parameter A1 obtained in step S2406.
ステップS2410では、第2変形パラメータ算出部1452は、更新後の変形パラメ
ータA1の第2値β”(k+1)に通常値β0を設定する。
In step S2410, the second deformation parameter calculation unit 1452 sets the second value β''(k+1) of the updated deformation parameter A1 to the normal value β0 .
図25は、変形パラメータ調整部1453による変形パラメータ調整処理(ステップS
2106)を示す概略フローチャートである。
Figure 25 shows the deformation parameter adjustment process by the deformation parameter adjustment unit 1453 (step S
This is a schematic flowchart illustrating 2106).
ステップS2500では、変形パラメータ調整部1453は、ステップS2102で得
た第1値β’(k+1)とステップS2104で得た第2値β”(k+1)とがともに通
常値β0であるか否かを判定する。判定結果が“YES”の場合、ステップS2502に
進み、それ以外の場合は、ステップS2506に進む。
In step S2500, the deformation parameter adjustment unit 1453 determines whether the first value β'(k+1) obtained in step S2102 and the second value β''(k+1) obtained in step S2104 are both the normal value β0 . If the determination result is "YES", the process proceeds to step S2502; otherwise, the process proceeds to step S2506.
ステップS2502では、変形パラメータ調整部1453は、パラメータ状態を「通常
状態」に設定する。通常状態は、変形パラメータA1の値が通常値β0である状態に対応
する。
In step S2502, the deformation parameter adjustment unit 1453 sets the parameter state to "normal state". The normal state corresponds to a state where the value of deformation parameter A1 is the normal value β 0 .
ステップS2504では、変形パラメータ調整部1453は、更新後の変形パラメータ
A1の値β(k+1)に、通常値β0を対応付ける。この場合、変形パラメータ調整部1
453による調整は実現されない。
In step S2504, the deformation parameter adjustment unit 1453 associates the normal value β0 with the updated deformation parameter A1 value β(k+1).
The adjustments made by 453 will not be implemented.
ステップS2506では、変形パラメータ調整部1453は、ステップS2104で得
た第2値β”(k+1)が通常値β0であるか否かを判定する。判定結果が“YES”の
場合、ステップS2508に進み、それ以外の場合は、ステップS2512に進む。
In step S2506, the deformation parameter adjustment unit 1453 determines whether the second value β''(k+1) obtained in step S2104 is the normal value β0 . If the determination result is "YES", the process proceeds to step S2508; otherwise, the process proceeds to step S2512.
ステップS2508では、変形パラメータ調整部1453は、パラメータ状態を「第1
状態」に設定する。第1状態は、変形パラメータA1の値が第1値β’(k+1)である
状態に対応する。
In step S2508, the deformation parameter adjustment unit 1453 sets the parameter state to "first
Set to "State". The first state corresponds to the state where the value of the deformation parameter A1 is the first value β'(k+1).
ステップS2510では、変形パラメータ調整部1453は、更新後の変形パラメータ
A1の値β(k+1)に、ステップS2102で得た第1値β’(k+1)を対応付ける
。
In step S2510, the deformation parameter adjustment unit 1453 associates the updated deformation parameter A1 value β(k+1) with the first value β'(k+1) obtained in step S2102.
ステップS2512では、変形パラメータ調整部1453は、ステップS2102で得
た第1値β’(k+1)が通常値β0であるか否かを判定する。判定結果が“YES”の
場合、ステップS2514に進み、それ以外の場合(すなわち双方ともに通常値でない場
合)は、ステップS2518に進む。
In step S2512, the deformation parameter adjustment unit 1453 determines whether the first value β'(k+1) obtained in step S2102 is the normal value β0 . If the determination result is "YES", the process proceeds to step S2514; otherwise (i.e., neither is the normal value), the process proceeds to step S2518.
ステップS2514では、変形パラメータ調整部1453は、パラメータ状態を「第2
状態」に設定する。第2状態は、変形パラメータA1の値が第2値β”(k+1)である
状態に対応する。以下、この第2状態において、第2値β”(k+1)に係る特定オブジ
ェクトを、「注視対象の特定オブジェクト」とも称する。
In step S2514, the deformation parameter adjustment unit 1453 sets the parameter state to "second
Set to "State". The second state corresponds to the state where the value of the deformation parameter A1 is the second value β''(k+1). Hereafter, in this second state, the specific object related to the second value β''(k+1) will also be referred to as the "specific object under focus".
ステップS2516では、変形パラメータ調整部1453は、更新後の変形パラメータ
A1の値β(k+1)に、ステップS2104で得た第2値β”(k+1)を対応付ける
。
In step S2516, the deformation parameter adjustment unit 1453 associates the updated deformation parameter A1 value β(k+1) with the second value β''(k+1) obtained in step S2104.
ステップS2518では、変形パラメータ調整部1453は、仮想カメラ60の投影ベ
クトルV’と特定オブジェクトとの間の横方向の距離dL(k+1)と、ステップS23
06で得た補間用の距離d(k+1)とに基づいて、dL(k+1)>d(k+1)であ
るか否かを判定する。なお、ステップS2102で得た第1値β’(k+1)が特定位置
に対応付けられた変形パラメータA1の値である場合(ステップS2302参照)は、補
間用の距離d(k+1)=0とされる。同様に、ステップS2104で得た第2値β”(
k+1)が特定オブジェクトに対応付けられた変形パラメータA1の値である場合(ステ
ップS2404参照)は、横方向の距離dL(k+1)=0とされる。判定結果が“YE
S”の場合、ステップS2508に進み、それ以外の場合は、ステップS2514に進む
。
In step S2518, the deformation parameter adjustment unit 1453 determines the lateral distance d L (k+1) between the projection vector V' of the virtual camera 60 and the specific object, and in step S23
Based on the interpolation distance d(k+1) obtained in step 06, it is determined whether dL (k+1) > d(k+1). Note that if the first value β'(k+1) obtained in step S2102 is the value of the deformation parameter A1 associated with a specific position (see step S2302), the interpolation distance d(k+1) = 0. Similarly, the second value β''( obtained in step S2104)
If k+1) is the value of the deformation parameter A1 associated with a specific object (see step S2404), then the lateral distance d L (k+1) = 0. If the judgment result is "YE
If the result is "S", proceed to step S2508; otherwise, proceed to step S2514.
このようにして図25に示す処理によれば、ステップS2102で得た第1値β’(k
+1)とステップS2104で得た第2値β”(k+1)とがともに通常値β0でない場
合(例えば、画角内領域に特定位置と特定オブジェクトの位置が同時に属する場合)は、
上述した距離d(k+1)と横方向の距離dL(k+1)のうちの小さい方が優先される
態様で、第1値β’(k+1)と第2値β”(k+1)のうちの一方が選択される。従っ
て、フィールドオブジェクトにおける仮想カメラ60の画角内領域のうちの、中央部に特
定オブジェクトが位置するときは、当該特定オブジェクトに対応付けられた変形パラメー
タA1の値が優先して利用される。
Thus, according to the process shown in Figure 25, the first value β'(k) obtained in step S2102 is obtained.
If both the value obtained in step S2104 (+1) and the second value β''(k+1) are not the normal value β = 0 (for example, if a specific position and the position of a specific object both belong to the area within the field of view),
In a manner in which the smaller of the aforementioned distance d(k+1) and the horizontal distance dL (k+1) is preferred, one of the first value β'(k+1) and the second value β''(k+1) is selected. Therefore, when a specific object is located in the center of the field of view of the virtual camera 60 in the field object, the value of the deformation parameter A1 associated with that specific object is preferred.
ただし、変形例では、ステップS2102で得た第1値β’(k+1)とステップS2
104で得た第2値β”(k+1)とがともに通常値β0でない場合(例えば、画角内領
域に特定位置と特定オブジェクトの位置が同時に属する場合)は、平均値や、重み付けさ
れた合成値が利用されてもよい。重み付けの場合、例えば、重み付け係数w1、w2を用
いて、更新後の合成値βcom(k+1)は、以下の通り算出されてもよい。
βcom(k+1)={w1×β’(k+1)+w2×β”(k+1)}/(w1+w2
)
この場合、例えば、重み付け係数w1、w2は、以下の通りであってよい。
w1=1/d(k+1)、ただし、d(k+1)=0のときは、βcom(k+1)=β
’(k+1)
w2=1/dL(k+1)、ただし、dL(k+1)=0のときは、βcom(k+1)
=β”(k+1)
図26は、原点設定処理部1454による原点設定処理(ステップS2108)の一例
を示す概略フローチャートである。図26Aは、内分点Piの説明図である。
ステップS2600では、原点設定処理部1454は、フィールドオブジェクトにおけ
る仮想カメラ60の画角内領域に、特定オブジェクトが位置するか否かを判定する。なお
、判定方法は、上述した図24のステップS2400と同様であってよい。判定結果が“
YES”の場合、ステップS2602に進み、それ以外の場合は、ステップS2610に
進む。なお、以下では、特定オブジェクトとは、ステップS2600でフィールドオブジ
ェクトにおける仮想カメラ60の画角内領域に位置すると判定された特定オブジェクトを
指す。
However, in the modified example, the first value β'(k+1) obtained in step S2102 and step S2
If the second value β''(k+1) obtained in 104 is not the normal value β0 (for example, if a specific position and the position of a specific object both belong to the area within the field of view), then the average value or a weighted composite value may be used. In the case of weighting, for example, the updated composite value βcom (k+1) may be calculated as follows using weighting coefficients w1 and w2.
β com (k+1)={w1×β'(k+1)+w2×β”(k+1)}/(w1+w2
)
In this case, for example, the weighting coefficients w1 and w2 may be as follows:
w1 = 1/d(k+1), where d(k+1) = 0, then β com (k+1) = β
(k+1)
w² = 1/d L (k+1), however, when d L (k+1) = 0, β com (k+1)
= β''(k+1)
Figure 26 is a schematic flowchart showing an example of the origin setting process (step S2108) performed by the origin setting processing unit 1454. Figure 26A is an explanatory diagram of the internal division point Pi.
In step S2600, the origin setting processing unit 1454 determines whether a specific object is located within the field of view of the virtual camera 60 in the field object. The determination method may be the same as in step S2400 in Figure 24 described above. If the determination result is "
If the answer is "YES", proceed to step S2602; otherwise, proceed to step S2610. In the following, "specific object" refers to the specific object that was determined in step S2600 to be located within the field of view of the virtual camera 60 in the field object.
ステップS2602では、原点設定処理部1454は、フィールドオブジェクトにおけ
る仮想カメラ60の画角内領域のうちの、中央部に特定オブジェクトが位置するか否かを
判定する。なお、判定方法は、上述した図24のステップS2402と同様であってよい
。判定結果が“YES”の場合、ステップS2604に進み、それ以外の場合は、ステッ
プS2606に進む。
In step S2602, the origin setting processing unit 1454 determines whether a specific object is located in the center of the field of view area of the virtual camera 60 within the field of view of the field object. The determination method may be the same as in step S2402 in Figure 24 described above. If the determination result is "YES", proceed to step S2604; otherwise, proceed to step S2606.
ステップS2604では、原点設定処理部1454は、原点位置に、特定オブジェクト
の位置を設定する。すなわち、原点設定処理部1454は、フィールド面70(フィール
ド画像が投影されたフィールド面70)において、特定オブジェクトの位置に、ローカル
座標系の原点Oを対応付ける。従って、この場合、曲げ変形に用いる関数F1の原点Oは
、特定オブジェクトの位置に対応付けられる。ただし、曲げ変形に用いる関数F1の原点
Oは、特定オブジェクトの位置に厳密に一致する必要はなく、その近傍であってもよい。
In step S2604, the origin setting processing unit 1454 sets the position of the specific object at the origin position. That is, the origin setting processing unit 1454 associates the origin O of the local coordinate system with the position of the specific object on the field surface 70 (the field surface 70 on which the field image is projected). Therefore, in this case, the origin O of the function F1 used for bending deformation is associated with the position of the specific object. However, the origin O of the function F1 used for bending deformation does not need to exactly coincide with the position of the specific object; it may be in its vicinity.
ステップS2606では、原点設定処理部1454は、仮想カメラ60の投影ベクトル
V’と特定オブジェクトとの間の横方向の距離dL(k+1)に基づいて、更新後の位置
パラメータ(X、Y)の各値(X(k+1)、Y(k+1))と、特定オブジェクトの位
置との間の内分点Piの位置(XPi(k+1)、YPi(k+1))を算出する。内分
点Piは、図26Aに示すように、更新後の位置パラメータ(X、Y)の各値(X(k+
1)、Y(k+1))と、特定オブジェクトの位置との間を、m:(1-m)での内分し
たときの位置である。このとき、mは、横方向の距離dL(k+1)が大きいほど0に近
づき、横方向の距離dL(k+1)=L1/2のときに、m=0となる。なお、m=0の
とき、内分点Piは、更新後の位置パラメータ(X、Y)の各値(X(k+1)、Y(k
+1))と一致する。L1は上述したとおりであり、フィールドオブジェクトにおける仮
想カメラ60の画角内領域に特定オブジェクトが位置するときに取りうる横方向の距離d
L(k+1)の最大値である。また、mは、横方向の距離dL(k+1)が小さいほど1
に近づき、横方向の距離dL(k+1)=0のときに、m=1となる。なお、m=1のと
き、内分点Piは、特定オブジェクトの位置と一致する。
In step S2606, the origin setting processing unit 1454 calculates the updated position parameters (X, Y) values ( X (k+1), Y(k+1)) and the position of the internal division point Pi between the position of the specific object and the position of the specific object (X Pi (k+1), Y Pi (k+1)) based on the lateral distance d L(k+1) between the projection vector V' of the virtual camera 60 and the specific object. The internal division point Pi is calculated as shown in Figure 26A, based on the updated position parameters (X, Y) values (X(k+
1) This is the position obtained by dividing the distance between Y(k+1) and the position of a specific object by m:(1-m). In this case, m approaches 0 as the horizontal distance dL (k+1) increases, and when the horizontal distance dL (k+1) = L1/2, m = 0. Note that when m = 0, the internal division point Pi is the value of each of the updated position parameters (X, Y) (X(k+1), Y(k
This matches +1). L1 is as described above, and is the lateral distance d that a specific object can take when it is located within the field of view of the virtual camera 60 in the field object.
This is the maximum value of L (k+1). Also, m is the horizontal distance d. The smaller L (k+1) is, the 1
As it approaches, when the horizontal distance d L (k+1) = 0, m = 1. Note that when m = 1, the internal division point Pi coincides with the position of a specific object.
ステップS2608では、原点設定処理部1454は、原点位置に、ステップS260
6で得た内分点Piの位置を設定する。すなわち、原点設定処理部1454は、フィール
ド面70(フィールド画像が投影されたフィールド面70)において、ステップS260
6で得た内分点Piの位置(XPi(k+1)、YPi(k+1))に、ローカル座標系
の原点Oを対応付ける。従って、この場合、曲げ変形に用いる関数F1の原点Oは、内分
点Piの位置(XPi(k+1)、YPi(k+1))に対応付けられる。ただし、曲げ
変形に用いる関数F1の原点Oは、内分点Piの位置(XPi(k+1)、YPi(k+
1))に厳密に一致する必要はなく、その近傍であってもよい。
In step S2608, the origin setting processing unit 1454 sets the origin position in step S260
The position of the internal division point Pi obtained in step 6 is set. That is, the origin setting processing unit 1454 sets the position of the field surface 70 (the field surface 70 on which the field image is projected) in step S260
The origin O of the local coordinate system is associated with the position of the internal division point Pi (X Pi (k+1), Y Pi (k+1)) obtained in step 6. Therefore, in this case, the origin O of the function F1 used for bending deformation is associated with the position of the internal division point Pi (X Pi (k+1), Y Pi (k+1)). However, the origin O of the function F1 used for bending deformation is associated with the position of the internal division point Pi (X Pi (k+1), Y Pi (k+
1)) does not need to be exactly the same as; it can be in its vicinity.
ステップS2610では、原点設定処理部1454は、原点位置に、移動後の所定オブ
ジェクトの位置(u(k+1)、v(k+1))を設定する。すなわち、原点設定処理部
1454は、フィールド面70(フィールド画像が投影されたフィールド面70)におい
て、移動後の所定オブジェクトの位置(u(k+1)、v(k+1))に、ローカル座標
系の原点Oを対応付ける。従って、この場合、曲げ変形に用いる関数F1の原点Oは、移
動後の所定オブジェクトの位置(u(k+1)、v(k+1))に対応付けられる。ただ
し、曲げ変形に用いる関数F1の原点Oは、移動後の所定オブジェクトの位置(u(k+
1)、v(k+1))に厳密に一致する必要はなく、その近傍であってもよい。
In step S2610, the origin setting processing unit 1454 sets the position of the predetermined object after movement (u(k+1), v(k+1)) at the origin position. That is, the origin setting processing unit 1454 associates the origin O of the local coordinate system with the position of the predetermined object after movement (u(k+1), v(k+1)) on the field surface 70 (the field surface 70 on which the field image is projected). Therefore, in this case, the origin O of the function F1 used for bending deformation is associated with the position of the predetermined object after movement (u(k+1), v(k+1)). However, the origin O of the function F1 used for bending deformation is associated with the position of the predetermined object after movement (u(k+
1) It does not need to be exactly the same as v(k+1); it can be in a neighborhood.
このように図26に示す処理によれば、フィールドオブジェクトにおける仮想カメラ6
0の画角内領域に特定オブジェクトが位置すると判定された場合には、当該特定オブジェ
クトの位置に基づいて原点位置が設定される。これにより、特定オブジェクト全体が可視
となりやすくなり、特定オブジェクトを効果的に強調できる。このため、特定オブジェク
トは、ユーザに注視させたいオブジェクトであることが好適である。
As shown in Figure 26, the virtual camera 6 in the field object
If it is determined that a specific object is located within the field of view of 0, the origin position is set based on the position of that specific object. This makes the entire specific object more visible, allowing it to be effectively highlighted. For this reason, the specific object is preferably an object that you want the user to focus on.
また、図26に示す処理によれば、フィールドオブジェクトにおける仮想カメラ60の
画角内領域に特定オブジェクトが位置しないと判定された場合には、所定オブジェクトの
位置(u(k+1)、v(k+1))に基づいて原点位置が設定される。これにより、所
定オブジェクト全体が可視となりやすくなり、所定オブジェクトを効果的に強調できる。
また、フィールドオブジェクトにおける仮想カメラ60の画角内領域に特定オブジェクト
が位置しないと判定された状態から、フィールドオブジェクトにおける仮想カメラ60の
画角内領域に特定オブジェクトが位置すると判定された状態へと遷移すると、原点位置が
所定オブジェクトの位置から特定オブジェクトの位置に向かって変化するので、当該変化
に起因したフィールド画像の見た目の変化(効果)を生むことができる。これにより、特
定オブジェクトを効果的に強調できる。
Furthermore, according to the process shown in Figure 26, if it is determined that a specific object is not located within the field of view of the virtual camera 60 in the field object, the origin position is set based on the position of the predetermined object (u(k+1), v(k+1)). This makes the entire predetermined object more visible, and the predetermined object can be effectively highlighted.
Furthermore, when transitioning from a state where it is determined that a specific object is not located within the field of view of the virtual camera 60 in the field object to a state where it is determined that a specific object is located within the field of view of the virtual camera 60 in the field object, the origin position changes from the position of a predetermined object toward the position of the specific object. This change can produce a visual change (effect) in the field image, thereby effectively highlighting the specific object.
また、図26に示す処理によれば、フィールドオブジェクトにおける仮想カメラ60の
画角内領域に特定オブジェクトが位置しないと判定された状態から、フィールドオブジェ
クトにおける仮想カメラ60の画角内領域に特定オブジェクトが位置すると判定された状
態へと遷移する処理周期で、原点位置が、所定オブジェクトの位置から特定オブジェクト
の位置へと急変されることはない。すなわち、フィールドオブジェクトにおける仮想カメ
ラ60の画角内領域に特定オブジェクトが位置すると判定されると、その後、補間用の距
離d(k+1)が減少するにつれて、原点位置が、所定オブジェクトの位置から特定オブ
ジェクトの位置へと徐々に変化していく(ステップS2608参照)。これにより、上述
したような原点位置の変化が比較的少ない数の処理周期(例えば1処理周期)で実現され
る場合に比べて、当該変化に起因してユーザに与えうる違和感を低減できる。
Furthermore, according to the process shown in Figure 26, in the processing cycle transitioning from a state in which it is determined that a specific object is not located within the field of view of the virtual camera 60 in the field object to a state in which it is determined that a specific object is located within the field of view of the virtual camera 60 in the field object, the origin position does not abruptly change from the position of a predetermined object to the position of the specific object. That is, once it is determined that a specific object is located within the field of view of the virtual camera 60 in the field object, the origin position gradually changes from the position of the predetermined object to the position of the specific object as the interpolation distance d(k+1) decreases (see step S2608). As a result, compared to the case where the change in the origin position described above is realized in a relatively small number of processing cycles (for example, one processing cycle), the sense of discomfort that may be caused to the user due to this change can be reduced.
図27は、第2距離パラメータ算出処理(ステップS1623)の一例を示す概略フロ
ーチャートである。
Figure 27 is a schematic flowchart showing an example of the second distance parameter calculation process (step S1623).
ステップS2700では、第2距離変更部14212は、パラメータ状態が第2状態で
あるか否かを判定する。上述したように、第2状態は、更新後の変形パラメータA1の値
β(k+1)が第2値β”(k+1)である状態に対応する。判定結果が“YES”の場
合、ステップS2702に進み、それ以外の場合は、そのまま終了する。なお、そのまま
終了する場合は、距離パラメータA2の値は、上述した第1距離変更部14211により
算出された値(ステップS1608)で確定する。
In step S2700, the second distance modification unit 14212 determines whether the parameter state is the second state. As described above, the second state corresponds to the state in which the value β(k+1) of the updated deformation parameter A1 is the second value β''(k+1). If the determination result is "YES", the process proceeds to step S2702; otherwise, the process terminates. If the process terminates, the value of the distance parameter A2 is determined to be the value calculated by the first distance modification unit 14211 (step S1608) as described above.
ステップS2702では、第2距離変更部14212は、第2値β”(k+1)が、注
視対象の特定オブジェクトに対応付けられた変形パラメータA1の値を用いて算出された
補間値(ステップS2408で対応付けられた補間値)であるか否かを判定する。判定結
果が“YES”の場合、ステップS2704に進み、それ以外の場合(すなわち、第2値
β”(k+1)が、注視対象の特定オブジェクトに対応付けられた変形パラメータA1の
値である場合)は、ステップS2703に進む。
In step S2702, the second distance changing unit 14212 determines whether the second value β''(k+1) is an interpolated value calculated using the value of the deformation parameter A1 associated with the specific object being watched (the interpolated value associated in step S2408). If the determination result is "YES", the process proceeds to step S2704; otherwise (i.e., the second value β''(k+1) is the value of the deformation parameter A1 associated with the specific object being watched), the process proceeds to step S2703.
ステップS2703では、第2距離変更部14212は、更新後の距離パラメータA2
の値γ(k+1)に、注視対象の特定オブジェクトに対応付けられた距離パラメータA2
の値(正規の値)をγG*を対応付ける。この場合、更新後の距離パラメータA2の値γ
(k+1)には、上述した第1距離変更部14211により算出された値(ステップS1
608)に代えて、注視対象の特定オブジェクトに対応付けられた距離パラメータA2の
値(正規の値)γG*が対応付けられることになる。この場合、更新反映部1424は、
ステップS1606、ステップS1610からステップS1612、及びステップS16
23で得た各種パラメータの更新後の各値(X(k+1)、Y(k+1)、γ(k+1)
、θ(k+1)、ψ(k+1))に基づいて、仮想カメラ60をグローバル座標系に位置
付ける(ステップS1624参照)。
In step S2703, the second distance changing unit 14212 changes the updated distance parameter A2
The value γ(k+1) is associated with the distance parameter A2 of the specific object being watched.
The value (normal value) is associated with γ G* . In this case, the updated distance parameter A2 value γ
(k+1) is the value calculated by the first distance changing unit 14211 described above (Step S1
Instead of 608), the value of the distance parameter A2 (normal value) γ G* associated with the specific object being watched will be associated. In this case, the update reflection unit 1424 will
Step S1606, Steps S1610 to S1612, and Step S16
The updated values of the various parameters obtained in step 23 (X(k+1), Y(k+1), γ(k+1))
Based on θ(k+1) and ψ(k+1), the virtual camera 60 is positioned in the global coordinate system (see step S1624).
ステップS2704では、第2距離変更部14212は、第2値β”(k+1)と、注
視対象の特定オブジェクトに対応付けられた変形パラメータA1の値との比を算出する。
すなわち、注視対象の特定オブジェクトに対応付けられた変形パラメータA1の値をβG
*とすると、比=β”(k+1)/βG*を算出する。なお、図13の変形パラメータデ
ータ13Bでは、注視対象の特定オブジェクトが特定オブジェクトG1である場合、比=
β”(k+1)/βG1が算出される。
In step S2704, the second distance changing unit 14212 calculates the ratio between the second value β''(k+1) and the value of the deformation parameter A1 associated with the specific object being watched.
In other words, the value of the deformation parameter A1 associated with the specific object being watched is β G
* Assuming this, the ratio = β''(k+1)/β G* is calculated. Note that in the deformed parameter data 13B of Figure 13, if the specific object being watched is specific object G1, the ratio =
β''(k+1)/ βG1 is calculated.
ここで、比=β”(k+1)/βG*は、注視対象の特定オブジェクトの位置の、画角
内領域の中央部に対する近さを表す。β”(k+1)/βG*=1のときは、注視対象の
特定オブジェクトが画角内領域の中央部に位置する状態に対応し、β”(k+1)/βG
*が小さくなるにつれて、注視対象の特定オブジェクトが画角内領域の端部(横方向の端
部)に近くなる。
Here, the ratio = β''(k+1)/β G* represents the proximity of the position of the specific object being watched to the center of the field of view. When β''(k+1)/β G* = 1, it corresponds to the state where the specific object being watched is located in the center of the field of view, and β''(k+1)/β G
As the asterisk (*) decreases, the specific object being focused on is closer to the edge (horizontal edge) of the field of view.
ステップS2706では、第2距離変更部14212は、ステップS2704で得た比
=β”(k+1)/βG*に基づいて、補間値γ’G*を算出する。具体的には、注視対
象の特定オブジェクトに対応付けられた距離パラメータA2の値(正規の値)をγG*と
すると、補間値γ’G*は、以下のとおりであってよい。
γ’G*=β”(k+1)/βG*×γG*
この場合、補間値γ’G*は、β”(k+1)/βG*が1に近づくにつれて(すなわち
注視対象の特定オブジェクトが画角内領域の中央部に近づくにつれて)、注視対象の特定
オブジェクトに対応付けられた値γG*に近づく。なお、図14の距離パラメータデータ
14Bでは、注視対象の特定オブジェクトが特定オブジェクトG1である場合、値γG*
=γG1である。
In step S2706, the second distance changing unit 14212 calculates the interpolated value γ' G* based on the ratio = β''(k+1)/β G* obtained in step S2704. Specifically, if γ G* is the value (normal value) of the distance parameter A2 associated with the specific object being watched, the interpolated value γ' G* may be as follows.
γ' G* = β''(k+1)/β G* ×γ G*
In this case, the interpolated value γ' G* approaches the value γ G* associated with the specific object being watched as β''(k+1)/β G * approaches 1 (i.e., as the specific object being watched approaches the center of the field of view). Note that in the distance parameter data 14B of Figure 14, if the specific object being watched is specific object G1, the value γ G*
=γ G1 .
ステップS2708では、第2距離変更部14212は、更新後の距離パラメータA2
の値γ(k+1)に、ステップS2706で得た補間値γ’G*を対応付ける。この場合
、距離パラメータA2の値は、上述した第1距離変更部14211により算出された値(
ステップS1608)に代えて、第2距離変更部14212により算出された値が対応付
けられることになる。この場合、更新反映部1424は、ステップS1606、ステップ
S1610からステップS1612、及びステップS1623で得た各種パラメータの更
新後の各値(X(k+1)、Y(k+1)、γ(k+1)、θ(k+1)、ψ(k+1)
)に基づいて、仮想カメラ60をグローバル座標系に位置付ける(ステップS1624参
照)。
In step S2708, the second distance changing unit 14212 changes the updated distance parameter A2
The interpolated value γ'G * obtained in step S2706 is associated with the value γ(k+1). In this case, the value of the distance parameter A2 is the value calculated by the first distance changing unit 14211 described above (
Instead of step S1608), the value calculated by the second distance changing unit 14212 will be associated. In this case, the update reflection unit 1424 will associate the updated values of the various parameters obtained in steps S1606, S1610 to S1612, and S1623 (X(k+1), Y(k+1), γ(k+1), θ(k+1), ψ(k+1)).
Based on this, the virtual camera 60 is positioned in the global coordinate system (see step S1624).
なお、図27に示す処理では、比=β”(k+1)/βG*に応じて正規の値γGrか
ら補間値γ’G*を算出しているが、これに限られない。例えば、上述した横方向の距離
dL(k+1)とL1/2との比に応じて、正規の値γG*から補間値γ’G*を算出し
てもよい。具体的には、以下のとおりである。
γ’G*=dL(k+1)/L1/2×γG*
また、図27に示す処理では、ステップS2700でパラメータ状態が第2状態である
と判定された場合に、ステップS2702に進むが、これに限られない。例えば、ステッ
プS2700では、画角内領域に注視対象の特定オブジェクトが位置するか否かが判定さ
れ、画角内領域に注視対象の特定オブジェクトが位置すると判定された場合に、ステップ
S2702に進むこととしてもよい。
Note that in the process shown in Figure 27, the interpolated value γ' G* is calculated from the normal value γ Gr according to the ratio = β''(k+1)/β G* , but this is not the only method. For example, the interpolated value γ' G * may be calculated from the normal value γ G* according to the ratio of the horizontal distance d L (k+1) and L1/2 as described above. Specifically, it is as follows.
γ' G* = d L (k+1)/L1/2×γ G*
Furthermore, in the process shown in Figure 27, if it is determined in step S2700 that the parameter state is the second state, the process proceeds to step S2702, but it is not limited to this. For example, in step S2700, it may be determined whether or not the specific object to be watched is located within the field of view, and if it is determined that the specific object to be watched is located within the field of view, the process proceeds to step S2702.
また、図27に示す処理では、例えば、画角内領域に特定位置と特定オブジェクトの位
置が同時に属する場合に、パラメータ状態が第1状態から第2状態へと遷移する際に、距
離パラメータA2の値が比較的大きく変化しうる。かかる比較的大きな変化は、適宜、補
正されてもよい(変化が小さくなるように、フィルタリングされてもよい)。これにより
、かかる比較的大きな変化(及びそれに伴うフィールド画像の急激な変化)に起因してユ
ーザに与えうる違和感等を低減できる。例えば、パラメータ状態が第1状態から第2状態
へと遷移する場合は、更新後の距離パラメータA2の値γ(k+1)と、更新前の距離パ
ラメータA2の値γ(k)との間の差分が所定閾値を超える場合は、更新後の距離パラメ
ータA2の値γ(k+1)が、更新前の距離パラメータA2の値γ(k)に近づく方向に
更に補正されてもよい。また、更新後の距離パラメータA2の値γ(k+1)が更新前の
距離パラメータA2の値γ(k)よりも大きくならないように、更新前の距離パラメータ
A2の値γ(k)が更新前の距離パラメータA2の値γ(k)よりも大きい場合は、更新
前の距離パラメータA2の値γ(k)が維持されてもよい。この場合、距離パラメータの
値が小さくなってから大きくなって再び小さくなるような不安定な態様となること(及び
それに伴うフィールド画像の不安定な変化)に起因してユーザに与えうる違和感等を低減
できる。
Furthermore, in the process shown in Figure 27, for example, when a specific position and the position of a specific object simultaneously belong to the area within the field of view, the value of the distance parameter A2 may change relatively large when the parameter state transitions from the first state to the second state. Such relatively large changes may be corrected as appropriate (they may be filtered to reduce the change). This reduces the sense of discomfort that may be caused to the user due to such relatively large changes (and the abrupt changes in the field image that accompany them). For example, when the parameter state transitions from the first state to the second state, if the difference between the updated distance parameter A2 value γ(k+1) and the pre-update distance parameter A2 value γ(k) exceeds a predetermined threshold, the updated distance parameter A2 value γ(k+1) may be further corrected in a direction that brings it closer to the pre-update distance parameter A2 value γ(k). Furthermore, to ensure that the updated distance parameter A2 value γ(k+1) does not become larger than the pre-update distance parameter A2 value γ(k), if the pre-update distance parameter A2 value γ(k) is larger than the pre-update distance parameter A2 value γ(k), the pre-update distance parameter A2 value γ(k) may be maintained. In this case, it is possible to reduce the sense of discomfort that may be caused to the user due to the unstable behavior in which the distance parameter value decreases, then increases, and then decreases again (and the resulting unstable changes in the field image).
次に、図28から図29Cを参照して、図16から図27を参照して説明した動作例の
適用場面の一例を説明する。
Next, referring to Figures 28 to 29C, we will describe an example of an application scenario for the operation example explained with reference to Figures 16 to 27.
図28から図29Cは、図16から図28を参照して説明した動作例の適用場面の説明
図であり、図28は、フィールドオブジェクト77の平面図であり、図29Aは、位置E
1に係るフィールド画像G24Aの一例を示し、図29Bは、位置E2に係るフィールド
画像G24Bの一例を示す。図29Cは、位置E3に係るフィールド画像G24Cの一例
を示す。図28では、フィールドオブジェクト77は、フィールド画像が正規状態のフィ
ールド面70に投影された表現で示されている。図28では、位置E1から位置E3が例
示されており、位置E3は、横通路14と縦通路15とが交差する位置に対応し、縦通路
15の両側には、第2オブジェクトである複数の街路樹オブジェクト16が配置される。
複数の街路樹オブジェクト16は、フィールドオブジェクト77に立設され、z方向に延
在する。また、縦通路15には、バルーンのような浮遊物オブジェクト19が配置される
。ここでは、浮遊物オブジェクト19が特定オブジェクトG2であるとする。図28では
、浮遊物オブジェクト19は、v方向で街路樹オブジェクト16よりも位置E3から遠い
側に配置されている。位置E2は、位置E1から位置E3に至る手前位置に対応し、仮想
カメラ60の投影ベクトルV’と特定オブジェクトとの間の横方向の距離dLが上述した
L1/2以下であるが0よりも有意に大きい位置である。なお、L1は、上述したように
、フィールドオブジェクト77における仮想カメラ60の画角内領域の横方向の距離であ
る。なお、図28では、一例として、複数の街路樹オブジェクト16は、v方向に沿って
直線状に配置されているが、u方向にわずかにオフセットする態様で千鳥配置されてもよ
いし、縦通路15の片側だけに配置されてもよいし、2列以上で配置されてもよい。
Figures 28 to 29C are explanatory diagrams illustrating the application of the operation example described with reference to Figures 16 to 28, Figure 28 is a plan view of the field object 77, and Figure 29A is position E
Figure 29B shows an example of a field image G24A related to position E2, and Figure 29C shows an example of a field image G24C related to position E3. In Figure 28, the field object 77 is shown as a representation of the field image projected onto the field surface 70 in a normal state. In Figure 28, positions E1 to E3 are illustrated, with position E3 corresponding to the intersection of the horizontal passage 14 and the vertical passage 15, and a plurality of street tree objects 16, which are second objects, are placed on both sides of the vertical passage 15.
Multiple street tree objects 16 are erected on the field object 77 and extend in the z direction. In addition, balloon-like floating object objects 19 are placed in the vertical passage 15. Here, the floating object objects 19 are assumed to be specific object G2. In Figure 28, the floating object objects 19 are placed in the v direction further from position E3 than the street tree objects 16. Position E2 corresponds to the position before position E3 from position E1, and is a position where the horizontal distance dL between the projection vector V' of the virtual camera 60 and the specific object is less than or equal to L1/2 as described above, but is significantly greater than 0. L1 is the horizontal distance of the area within the field of view of the virtual camera 60 in the field object 77, as described above. In Figure 28, as an example, multiple street tree objects 16 are arranged in a straight line along the v direction, but they may also be arranged in a staggered pattern with a slight offset in the u direction, or they may be placed only on one side of the vertical passage 15, or they may be arranged in two or more rows.
ここでは、第1オブジェクト3がフィールドオブジェクト77上の位置E1から位置E
3へと移動する際の描画機能について説明する。なお、この種の移動は、ユーザによる操
作により実現されてもよいし、デモンストレーション画像の出力として実現されてもよい
。なお、位置E1、E2は、特定位置ではなく、位置E1から位置E3までの間には、特
定位置が存在せず、位置E1、E2は、他の特定位置や特定オブジェクトに係る補間処理
範囲内に位置しないものとする。また、浮遊物オブジェクト19(特定オブジェクトG2
)には、図13及び図14に示すように、変形パラメータA1の値βG2、距離パラメー
タA2の値γG2がそれぞれ対応付けられている。
Here, the first object 3 moves from position E1 to position E on the field object 77.
The drawing function when moving to 3 will be explained. This type of movement may be achieved by user operation or by outputting a demonstration image. Positions E1 and E2 are not specific positions; there are no specific positions between position E1 and position E3, and positions E1 and E2 are not located within the interpolation processing range related to other specific positions or specific objects. Also, the floating object 19 (specific object G2
As shown in Figures 13 and 14, the values of the deformation parameter A1 (β G2 ) and the distance parameter A2 (γ G2) are associated with each other.
第1オブジェクト3が位置E1に位置する状態における仮想カメラ60の位置パラメー
タ(X、Y)の各値は、第1オブジェクト3の位置に対応し、仮想カメラ60の向きパラ
メータθの値は、通常値θ0、すなわち投影ベクトルV’(図11参照)が第1オブジェ
クト3の移動方向(この場合、u方向)に垂直になるように設定される。このとき、フィ
ールドオブジェクト77における仮想カメラ60の画角内領域には、第1オブジェクト3
が位置し、図29Aに示すフィールド画像G24Aが描画されてよい。なお、この場合、
地平線HLは、変形パラメータA1の通常値β0に応じた高さを有し、第1オブジェクト
3等は、距離パラメータA2の通常値β0に応じた表示サイズを有する。
When the first object 3 is located at position E1, the position parameters (X, Y) of the virtual camera 60 correspond to the position of the first object 3, and the orientation parameter θ of the virtual camera 60 is set to the normal value θ 0 , that is, so that the projection vector V' (see Figure 11) is perpendicular to the direction of movement of the first object 3 (in this case, the u direction). At this time, the field of view of the virtual camera 60 in the field object 77 contains the first object 3
The position is such that the field image G24A shown in Figure 29A may be drawn. In this case,
The horizon HL has a height corresponding to the normal value β0 of the deformation parameter A1, and the first object 3, etc., has a display size corresponding to the normal value β0 of the distance parameter A2.
第1オブジェクト3が位置E1から位置E3に向かって横通路14(u方向)に沿って
処理周期ごとに移動量Δuだけ移動されると、仮想カメラ60の位置パラメータ(X、Y
)の各値は、u方向に沿って処理周期ごとに移動量Δuだけ移動される。なお、この間、
仮想カメラ60の向きパラメータθの値は固定される。
When the first object 3 moves by a displacement amount Δu along the lateral passage 14 (u direction) from position E1 to position E3 with each processing cycle, the position parameters (X, Y) of the virtual camera 60 are moved.
Each of the values in the u-direction is moved by an amount Δu in each processing cycle.
The value of the orientation parameter θ of the virtual camera 60 is fixed.
第1オブジェクト3が位置E2に到達した状態における仮想カメラ60の位置パラメー
タ(X、Y)の各値は、位置E2に到達した第1オブジェクト3の位置に対応し、向きパ
ラメータθの値は、第1オブジェクト3が位置E1に位置する状態と同じである。このと
き、フィールドオブジェクト77における仮想カメラ60の画角内領域の端部(右側端部
)には、浮遊物オブジェクト19が位置し、図29Bに示すフィールド画像G24Bが描
画されてよい。なお、この場合、地平線HLは、変形パラメータA1の第2値β”(第2
変形パラメータ算出処理(ステップS2104)で得られる更新後の変形パラメータA1
の値β)に応じた高さを有し、第1オブジェクト3等は、第2距離変更部14212によ
り算出される距離パラメータA2の値γ’G*(補間値γ’G*)に応じた表示サイズを
有する。なお、補間値γ’G*は、通常値γ0よりも小さいので、図29Bに示すように
、第1オブジェクト3の表示サイズは、図29Aに示すフィールド画像G24Aよりも大
きい。
When the first object 3 reaches position E2, the position parameters (X, Y) of the virtual camera 60 correspond to the position of the first object 3 at position E2, and the value of the orientation parameter θ is the same as when the first object 3 is at position E1. At this time, a floating object 19 is located at the edge (right edge) of the field of view of the virtual camera 60 in the field object 77, and the field image G24B shown in Figure 29B may be drawn. In this case, the horizon HL is the second value β'' of the deformation parameter A1 (second value).
The updated deformation parameter A1 obtained in the deformation parameter calculation process (step S2104)
The first object 3 has a height corresponding to the value β) and a display size corresponding to the value γ' G* (interpolated value γ' G* ) of the distance parameter A2 calculated by the second distance changing unit 14212. Since the interpolated value γ' G* is smaller than the normal value γ 0 , the display size of the first object 3 is larger than the field image G24A shown in Figure 29A, as shown in Figure 29B.
第1オブジェクト3が位置E3に到達した状態における仮想カメラ60の位置パラメー
タ(X、Y)の各値は、位置E3に到達した第1オブジェクト3の位置に対応し、向きパ
ラメータθの値は、第1オブジェクト3が位置E1に位置する状態と同じである。このと
き、フィールドオブジェクト77における仮想カメラ60の画角内領域の中央部には、浮
遊物オブジェクト19が位置し、図29Cに示すフィールド画像G24Cが描画されてよ
い。なお、この場合、地平線HLは、変形パラメータA1の値βG2(浮遊物オブジェク
ト19に対応付けられた変形パラメータA1の値)に応じた高さを有し、距離パラメータ
A2の値γG2(浮遊物オブジェクト19に対応付けられた距離パラメータA2の値)応
じた表示サイズを有する。
When the first object 3 reaches position E3, the position parameters (X, Y) of the virtual camera 60 correspond to the position of the first object 3 at position E3, and the value of the orientation parameter θ is the same as when the first object 3 is at position E1. At this time, the floating object 19 is located in the center of the field of view of the virtual camera 60 in the field object 77, and the field image G24C shown in Figure 29C may be drawn. In this case, the horizon HL has a height corresponding to the value of the deformation parameter A1 β G2 (the value of the deformation parameter A1 associated with the floating object 19), and a display size corresponding to the value of the distance parameter A2 γ G2 (the value of the distance parameter A2 associated with the floating object 19).
ここでは、上述したように、変形パラメータA1の値βG2は、通常値β0よりも大き
い。従って、フィールド画像G24Cにおいては、フィールド画像G24Aにおいてより
も、フィールドオブジェクト77の曲げ変形の変形度合いが大きくなる。このため、図2
9A及び図29Cに模式的に示すように、地平線HLの画像内の位置が有意に変化する。
また、距離パラメータA2の値γG2は、通常値γ0よりも大きい。従って、フィールド
画像G24Cにおいては、浮遊物オブジェクト19の表示サイズが大きくなる。
Here, as mentioned above, the value of deformation parameter A1 β G2 is greater than the normal value β 0. Therefore, in field image G24C, the degree of bending deformation of the field object 77 is greater than in field image G24A. For this reason, Figure 2
As schematically shown in 9A and Figure 29C, the position of the horizon HL in the image changes significantly.
Furthermore, the value of the distance parameter A2, γ G2 , is greater than the normal value γ 0. Consequently, the display size of the floating object 19 is larger in the field image G24C.
ここで、図29Dは、他の動作例に係る位置E3に係るフィールド画像G24Dの一例
を示す。図29Dに示す他の動作例では、上述した動作例とは異なり、位置E3に対応付
けられた距離パラメータA2の値が位置E1に対応付けられた距離パラメータA2の値と
同じ通常値γ0である。この場合は、フィールド画像G24Aとフィールド画像G24D
との間で、地平線HLの高さH1が変化するものの、第1オブジェクト3等の表示サイズ
は同じままである。従って、街路樹オブジェクト16よりも奥側に位置する浮遊物オブジ
ェクト19は、表示サイズが比較的小さく、目立ちにくい。
Here, Figure 29D shows an example of a field image G24D related to position E3 in another operation example. In the other operation example shown in Figure 29D, unlike the operation example described above, the value of the distance parameter A2 associated with position E3 is the same normal value γ0 as the value of the distance parameter A2 associated with position E1. In this case, field image G24A and field image G24D
Although the height H1 of the horizon HL changes between these points, the display size of the first object 3 and other objects remains the same. Therefore, the floating object 19, which is located further back than the street tree object 16, has a relatively small display size and is less conspicuous.
これに対して、図16から図28を参照して説明した動作例によれば、上述したように
、フィールド画像G24Cにおいては、浮遊物オブジェクト19の表示サイズが比較的大
きくなるので、浮遊物オブジェクト19を効果的に目立たせることができる。これにより
、ユーザの浮遊物オブジェクト19への関心を誘引できる。
In contrast, as described with reference to Figures 16 to 28, in the field image G24C, the display size of the floating object 19 becomes relatively large, so the floating object 19 can be effectively made to stand out. This can attract the user's attention to the floating object 19.
また、図29Dに示すようなフィールド画像G24Dを描画するような他の動作例は、
変形パラメータA1の値を常に一定とする比較例による動作例(図示せず)に比べると、
仮想カメラ60から視た仮想空間内の多様な表現を実現できるものの、変形度合いの変化
量(地平線HLの高さH1の変化量)が比較的大きくなると、ユーザに違和感を与える可
能性がある。
Furthermore, other examples of operations, such as drawing the field image G24D as shown in Figure 29D, are:
Compared to the example of operation using a comparative example where the value of deformation parameter A1 is always kept constant (not shown),
While it is possible to realize diverse representations within the virtual space as seen from the virtual camera 60, 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 the user to feel uneasy.
これに対して、図16から図28を参照して説明した動作例によれば、フィールド画像
G24Aとフィールド画像G24Bとの間では、地平線HLの高さH1が変化しつつ、第
1オブジェクト3等の表示サイズも変化する。これにより、変形度合いの変化(地平線H
Lの高さH1の変化)に起因してユーザに与えうる違和感を低減できる。すなわち、第1
オブジェクト3等の表示サイズの変化がユーザの目を引きやすく印象的となることで、地
平線HLの高さH1の変化に起因して生じうる違和感がかき消される。このようにして、
位置E1と位置E3との間で、対応付ける変形パラメータA1の値を異ならせるとともに
、対応付ける距離パラメータA2の値をも異ならせることで、仮想カメラ60から視た仮
想空間内の多様な表現を実現しつつ、変形度合いの変化(地平線HLの高さH1の変化)
に起因して生じうる違和感を低減できる。このような効果に関連して、距離パラメータA
2の値の変化と、変形パラメータA1の値の変化の間に所定の関係をもたせることで、よ
り違和感をなくすこともできる。例えば、距離パラメータA2の値の変化が急峻であれば
、変形パラメータA1の値の変化が急峻であっても違和感を低減できるといった具合であ
る。
In contrast, according to the operation example described with reference to Figures 16 to 28, between field image G24A and field image G24B, the height H1 of the horizon HL changes, and the display size of the first object 3, etc., also changes. As a result, the degree of deformation (horizon H1) changes.
The discomfort that may be caused to the user due to the change in the height H1 of L can be reduced. That is, the first
The change in the display size of object 3, etc., is more eye-catching and impressive to the user, thereby eliminating any sense of incongruity that may arise from the change in the height H1 of the horizon HL. In this way,
By making the corresponding deformation parameter A1 and the corresponding distance parameter A2 different between position E1 and position E3, diverse representations of the virtual space as seen from the virtual camera 60 can be realized, while also changing the degree of deformation (change in the height H1 of the horizon HL).
This can reduce the discomfort that may arise from this. In relation to this effect, the distance parameter A
By establishing a predetermined relationship between the change in the value of 2 and the change in the value of the deformation parameter A1, the sense of incongruity can be further reduced. For example, if the change in the value of the distance parameter A2 is steep, the sense of incongruity can be reduced even if the change in the value of the deformation parameter A1 is also steep.
また、位置E1と位置E3との間で、対応付ける変形パラメータA1の値を異ならせる
とともに、対応付ける距離パラメータA2の値をも異ならせることで、フィールド画像の
遷移態様が斬新となり、ゲームの興趣も高めることができる。また、縦通路15の存在を
強調することもでき、特定オブジェクトである浮遊物オブジェクト19とともに、縦通路
15やその周辺に配置される第2オブジェクト(例えば街路樹オブジェクト16)を目立
たせることができる。この効果は、特に、端末装置20が例えばスマートフォンの画面の
ような、比較的小さい画面にフィールド画像が出力される場合に顕著である。また、目立
たせる特定オブジェクトのために他の第2オブジェクトを配置しないなどの制限が緩和さ
れるので、フィールドオブジェクト上における第2オブジェクト配置の自由度が増す。ま
た、同様の理由から、フィールドオブジェクト上の第1オブジェクトの移動可能な領域の
自由度も増しうる。
Furthermore, by making the values of the corresponding deformation parameter A1 and the corresponding distance parameter A2 different between positions E1 and E3, the transition patterns of the field image become more novel, enhancing the game's appeal. It also becomes possible to emphasize the presence of the vertical passage 15, making the second objects (e.g., street tree objects 16) placed in and around the vertical passage 15 stand out, along with the specific object, the floating object 19. This effect is particularly noticeable when the terminal device 20 outputs the field image to a relatively small screen, such as a smartphone screen. Additionally, restrictions such as not placing other second objects to highlight a specific object are relaxed, increasing the freedom of placement of second objects on the field object. Similarly, the degree of freedom of the movable area of the first object on the field object can also be increased.
また、例えば図28に示すように、視線方向Vに沿って重複する街路樹オブジェクト1
6のような第2オブジェクトが配置される場合、フィールドオブジェクト77の曲げ変形
の曲げ度合いを大きくすることで、奥行き感を高め、印象的な表現を実現できる。これに
より、ユーザに、例えば縦通路15に沿って第1オブジェクト3を移動させたくなるよう
な動機付けを与えることも可能となりうる。
Also, as shown in Figure 28, for example, there are overlapping street tree objects 1 along the line of sight direction V.
When a second object like 6 is placed, increasing the degree of bending of the field object 77 enhances the sense of depth and creates an impressive expression. This can also motivate the user to move the first object 3 along, for example, the vertical passage 15.
ここで、図29Eは、更なる他の動作例に係る位置E3に係るフィールド画像G24E
の一例を示す。更なる他の動作例では、上述した動作例(図16から図28を参照して説
明した動作例)とは異なり、原点位置(フィールドオブジェクト77におけるローカル座
標系の原点Oが対応付けられる位置)が第1オブジェクト3の位置に設定される。この場
合は、第1オブジェクト3は、フィールドオブジェクト77の最も高い位置に位置するこ
とで全体が可視となるのに対して、浮遊物オブジェクト19は、地平線HLよりも奥側に
一部(下部)が隠れてしまう。すなわち、浮遊物オブジェクト19は、全体が可視となら
ずに比較的に目立ちにくい。
Here, Figure 29E shows a field image G24E relating to position E3, which is a further example of another operation.
An example of this is shown. In further other operation examples, unlike the operation examples described above (operation examples explained with reference to Figures 16 to 28), the origin position (the position to which the origin O of the local coordinate system in the field object 77 corresponds) is set to the position of the first object 3. In this case, the first object 3 is located at the highest position of the field object 77 and is therefore fully visible, while the floating object 19 is partially hidden (lower part) behind the horizon HL. In other words, the floating object 19 is not fully visible and is relatively inconspicuous.
これに対して、図16から図28を参照して説明した動作例によれば、原点位置が第1
オブジェクト3の位置に代えて、特定オブジェクである浮遊物オブジェクト19の位置に
設定される。この場合、第1オブジェクト3は、フィールドオブジェクト77の最も高い
位置に位置することで全体が可視となる。これにより、特定オブジェクトである浮遊物オ
ブジェクト19を効果的に目立たせることができるともに、浮遊物オブジェクト19の全
体(例えば浮遊している状態)を可視とすることができる。また、フィールドオブジェク
ト77における仮想カメラ60の画角内領域の中央部の範囲を比較的広くした場合は、原
点位置が浮遊物オブジェクト19の位置に設定される状態が比較的長く継続されやすくな
るので、注目させたい浮遊物オブジェクト19を効果的に目立たせることができる。
In contrast, according to the operation example explained with reference to Figures 16 to 28, the origin position is the first
Instead of the position of object 3, the position of the specific object, floating object 19, is set. In this case, the entire first object 3 becomes visible because it is located at the highest position of the field object 77. This makes the specific object, floating object 19, stand out effectively, and makes the entire floating object 19 (for example, in its floating state) visible. Furthermore, if the central part of the field of view of the virtual camera 60 in the field object 77 is made relatively wide, the state in which the origin position is set to the position of the floating object 19 tends to continue for a relatively long time, so the floating object 19 that you want to draw attention to can be effectively made stand out.
また、例えば、画角内領域の中央部に特定オブジェクトが位置するときに仮想カメラ6
0の視線方向Vで特定オブジェクトと第1オブジェクト及び/又は第2オブジェクトの間
で重複(重なり)が生じうる場合でも、上述したように、原点位置が浮遊物オブジェクト
19の位置に設定されるので、重複しうる各オブジェクトは、上下に互いに離間されやす
くなる。すなわち、重複する第1オブジェクト及び/又は第2オブジェクトは、特定オブ
ジェクトに対して相対的に画角内の下方向にスライドするため、特定オブジェクトと重複
するオブジェクトを少なくすることができる。これにより、注目させたい浮遊物オブジェ
クト19を効果的に目立たせることができる。
Also, for example, when a specific object is located in the center of the area within the field of view, the virtual camera 6
Even if overlapping occurs between a specific object and the first and/or second object in the line of sight direction V at 0, as described above, since the origin position is set to the position of the floating object 19, each object that could overlap tends to be separated from each other vertically. In other words, the overlapping first and/or second objects slide downward relative to the specific object within the field of view, thus reducing the number of objects that overlap with the specific object. This makes it possible to effectively highlight the floating object 19 that you want to draw attention to.
そして、特定オブジェクトが強調されることにより、特定オブジェクトがユーザの操作
に関連するオブジェクト(例えば移動目標)である場合、特定オブジェクトへの入力が行
いやすくなるため操作性が向上する。また、特定オブジェクトの前後の第2オブジェクト
の存在の影響をある程度、軽減できるので、第2オブジェクトの配置の自由度が増し、多
様なフィールド画像を実現できる。
Furthermore, by highlighting specific objects, usability is improved because it becomes easier to input information into those objects, especially if they are related to user interaction (e.g., movement targets). Additionally, the influence of second objects before and after the specific object can be mitigated to some extent, increasing the flexibility of second object placement and enabling the creation of diverse field images.
このようにして図16から図28を参照して説明した動作例によれば、フィールドオブ
ジェクト77における仮想カメラ60の画角内領域に特定オブジェクトが位置しないと判
定された場合と、フィールドオブジェクト77における仮想カメラ60の画角内領域に特
定オブジェクトが位置すると判定された場合とで、変形パラメータA1の値や原点位置の
設定態様を変化させることで、フィールドオブジェクト77の変形態様が異ならせること
ができる。これにより、フィールド画像の多様化を図りつつ、特定オブジェクトを目立た
せる等、特定オブジェクトを効果的に強調できるような表現を実現できる。
As described in the operation example with reference to Figures 16 to 28, the deformation pattern of the field object 77 can be made different by changing the value of the deformation parameter A1 and the setting of the origin position depending on whether it is determined that a specific object is not located within the field of view of the virtual camera 60 in the field object 77 or whether it is determined that a specific object is located within the field of view of the virtual camera 60 in the field object 77. This makes it possible to diversify the field image while effectively highlighting specific objects, such as making them stand out.
また、図16から図28を参照して説明した動作例によれば、フィールドオブジェクト
77における仮想カメラ60の画角内領域の端部(第2範囲の一例)に浮遊物オブジェク
ト19が位置する場合と、フィールドオブジェクト77における仮想カメラ60の画角内
領域の中央部(第1範囲の一例)に浮遊物オブジェクト19が位置する場合とで、変形パ
ラメータA1の値が変化される。これにより、フィールドオブジェクト77における仮想
カメラ60の画角内領域に浮遊物オブジェクト19が位置する間も、フィールドオブジェ
クト77の変形度合いを変化させることで、浮遊物オブジェクト19の見え方を変える等
の表示効果を生むことができる。
Furthermore, as shown in the operation example described with reference to Figures 16 to 28, the value of the deformation parameter A1 changes depending on whether the floating object 19 is located at the edge of the field of view of the virtual camera 60 in the field object 77 (an example of a second range) or at the center of the field of view of the virtual camera 60 in the field object 77 (an example of a first range). This makes it possible to change the appearance of the floating object 19 and produce display effects such as changing the way the floating object 19 looks by changing the degree of deformation of the field object 77, even while the floating object 19 is located within the field of view of the virtual camera 60 in the field object 77.
また、図16から図28を参照して説明した動作例によれば、フィールドオブジェクト
77における仮想カメラ60の画角内領域の中央部(第1範囲の一例)(中央部について
は、図11Aの範囲771参照)に浮遊物オブジェクト19が位置する場合に、フィール
ドオブジェクト77における仮想カメラ60の画角内領域の端部(第2範囲の一例)(端
部については、図11Aの範囲772、773参照)に浮遊物オブジェクト19が位置す
る場合よりも、変形パラメータA1の値が大きくされる。これにより、浮遊物オブジェク
ト19がフィールド画像上の比較的視認しやすい位置(中央部)に至った際に、フィール
ドオブジェクト77の曲げ変形の度合いを大きくして浮遊物オブジェクト19を更に効果
的に目立たせることができる。
Furthermore, as shown in the operation example described with reference to Figures 16 to 28, when the floating object 19 is located in the central part of the field of view of the virtual camera 60 in the field object 77 (an example of the first range) (see range 771 in Figure 11A for the central part), the value of the deformation parameter A1 is increased compared to when the floating object 19 is located at the edge of the field of view of the virtual camera 60 in the field object 77 (an example of the second range) (see ranges 772 and 773 in Figure 11A for the edge). As a result, when the floating object 19 reaches a relatively easily visible position (central part) on the field image, the degree of bending deformation of the field object 77 can be increased, making the floating object 19 more effectively visible.
また、図16から図28を参照して説明した動作例によれば、フィールドオブジェクト
77における仮想カメラ60の画角内領域の端部から中央部へと浮遊物オブジェクト19
の位置が変化するにつれて、変形パラメータA1の値は、通常値β0(所定設定値の一例
)よりも大きい補間値(第2設定値の一例)から値βG2(第1設定値の一例)へと、1
つ以上の補間値(第2設定値の一例)を介して変化(増加)する。これにより、フィール
ドオブジェクト77における仮想カメラ60の画角内領域の中央部に浮遊物オブジェクト
19が到達した処理周期で、変形パラメータA1の通常値β0から値βG2への変化が実
現される場合に比べて、穏やかな変化が実現される。これにより、かかる変形度合いの変
化に起因してユーザに与えうる違和感を効果的に低減できる。これは、距離パラメータA
2の通常値γ0から値γG2への変化や、原点位置の変化についても同様である。また、
仮に、上記の補間を用いない場合、急激な変化を避けるため特定位置や特定オブジェクト
を近接させないなどの制限が生じやすくなる。この点、上記の補間を用いることで、特定
位置や特定オブジェクトの配置の自由度を高めることができる。この結果、フィールド画
像の更なる多様化を図ることができる。
Furthermore, according to the operation example described with reference to Figures 16 to 28, the floating object 19 moves from the edge to the center of the field of view area of the virtual camera 60 in the field object 77.
As the position changes, the value of the deformation parameter A1 changes from an interpolated value (an example of a second setting value) that is larger than the normal value β0 (an example of a predetermined setting value) to a value βG2 (an example of a first setting value),
It changes (increases) via one or more interpolation values (an example of a second setting value). This results in a gentler change compared to the case where the deformation parameter A1 changes from its normal value β 0 to value β G2 in the processing cycle when the floating object 19 reaches the center of the field of view of the virtual camera 60 in the field object 77. This effectively reduces the sense of unnaturalness that may be caused to the user due to such changes in the degree of deformation. This is related to the distance parameter A
The same applies to the change in the normal value γ from 0 to γ G2 , and to the change in the origin position.
If the above interpolation is not used, restrictions such as avoiding placing specific positions or objects close together tend to arise in order to avoid abrupt changes. However, by using the above interpolation, the degree of freedom in placing specific positions and objects can be increased. As a result, further diversification of field images can be achieved.
また、図16から図28を参照して説明した動作例によれば、例えば位置E2と位置E
3との間の各位置に、補間により適切な変形パラメータA1の値を対応付けることができ
るので、当該各位置に変形パラメータデータ上で変形パラメータA1の各値を対応付ける
場合に比べて、変形パラメータデータ用の記憶容量の効率的な利用を図ることができる。
これは、距離パラメータのような他のパラメータについても同様である。
Furthermore, according to the operation example described with reference to Figures 16 to 28, for example, position E2 and position E
Since appropriate values of deformation parameter A1 can be associated with each position between 3 by interpolation, the storage capacity for deformation parameter data can be used more efficiently compared to associating each value of deformation parameter A1 with each position on the deformation parameter data.
This also applies to other parameters, such as distance parameters.
なお、図28では、位置E1から位置E3への第1オブジェクト3の移動について説明
したが、位置E3から位置E1への第1オブジェクト3の移動についてはその逆が実現さ
れてもよい。また、図28では、位置E1から位置E3への第1オブジェクト3の移動に
ついて説明したが、特定位置から位置E3への第1オブジェクト3の移動についても同様
に実現されてもよい。
In Figure 28, the movement of the first object 3 from position E1 to position E3 is described, but the reverse movement of the first object 3 from position E3 to position E1 may also be realized. Similarly, in Figure 28, the movement of the first object 3 from position E1 to position E3 is described, but the movement of the first object 3 from a specific position to position E3 may also be realized.
なお、特定位置と位置E3(フィールドオブジェクト77における仮想カメラ60の画
角内領域の中央部に浮遊物オブジェクト19が位置するときの、仮想カメラ60の位置)
とが比較的近い場合、図16から図28を参照して説明した動作例によれば、上述したよ
うに、当該特定位置に対応付けられた変形パラメータA1の値や距離パラメータA2の値
に基づき算出された同パラメータの補間値と、当該位置E3に係る特定オブジェクトに対
応付けられた変形パラメータA1の値や距離パラメータA2の値に基づき算出された同パ
ラメータの補間値とが、dL(k+1)>d(k+1)であるか否かに応じて調整される
ことになる(ステップS2518参照)。
Note that the specific location and location E3 (the position of the virtual camera 60 when the floating object 19 is located in the center of the field of view area of the virtual camera 60 in the field object 77)
When the two points are relatively close, as described in the operation example with reference to Figures 16 to 28, the interpolated values of the deformation parameter A1 and distance parameter A2 calculated based on the values of the deformation parameter A1 and distance parameter A2 associated with the specific position, and the interpolated values of the deformation parameter A1 and distance parameter A2 calculated based on the values of the deformation parameter A1 and distance parameter A2 associated with the specific object related to position E3, are adjusted according to whether d L (k+1) > d (k+1) (see step S2518).
また、本実施形態では、フィールドオブジェクト77における仮想カメラ60の画角内
領域に2つ以上の特定オブジェクトが位置する場合についても、特定位置と特定オブジェ
クトとが比較的近い場合と同様の考え方で処理されてもよい。例えば、ここでは、特定オ
ブジェクトが、第1特定オブジェクトと第2特定オブジェクトとを含み、上述した特定オ
ブジェクト領域が、第1特定オブジェクト及び第2特定オブジェクトの双方が位置するオ
ブジェクト領域を含む場合を想定する。このとき、オブジェクト領域は、第1特定オブジ
ェクトが中央部に位置する第1オブジェクト領域と、第1特定オブジェクト及び第2特定
オブジェクトのいずれもが中央部に位置しない第2オブジェクト領域と、第2特定オブジ
ェクトが中央部に位置する第3オブジェクト領域と、を含むものとする。
Furthermore, in this embodiment, even when two or more specific objects are located within the field of view of the virtual camera 60 in the field object 77, the same approach may be used as when the specific position and the specific object are relatively close. For example, here we assume that the specific object includes a first specific object and a second specific object, and the specific object region described above includes an object region in which both the first specific object and the second specific object are located. In this case, the object region includes a first object region in which the first specific object is located in the center, a second object region in which neither the first nor the second specific object is located in the center, and a third object region in which the second specific object is located in the center.
ここで、図11Bを参照して、第1から第3特定オブジェクト領域について説明する。
図11Bには、互いに異なる3種類のカメラパラメータ(ここでは、カメラパラメータ4
、5、6とする)のそれぞれであるときの、フィールドオブジェクト77における仮想カ
メラ60の画角62内に収まる領域R4、R5、R6が示される。カメラパラメータ4、
5、6は、上述したカメラパラメータの各要素(X、Y、A2、θ、ψ)のうちの、少な
くとも1つの値が異なる。従って、図11Bに示す3つの領域は、それぞれ異なる領域で
ある。そして、図11Bに示す3つの領域R4、R5、R6のうちの、領域R4には、そ
の中央部(範囲771参照)に第1特定オブジェクトG11が配置されている。従って、
この場合、領域R4は、第1オブジェクト領域の一例である。他方、領域R5には、その
中央部(範囲771参照)には第1特定オブジェクト及び第2オブジェクトのいずれも配
置されていない。すなわち、第1特定オブジェクト及び第2オブジェクトは、それぞれ、
領域R5の中央部の両側の端部(範囲772、773参照)に配置されている。従って、
この場合、領域R5は、第2オブジェクト領域の一例である。領域R6には、その中央部
(範囲771参照)に第2特定オブジェクトG12が配置されている。従って、この場合
、領域R6は、第3オブジェクト領域の一例である。
Now, with reference to Figure 11B, the first to third specific object regions will be described.
Figure 11B shows three different types of camera parameters (here, camera parameter 4).
The regions R4, R5, and R6 that fall within the field of view 62 of the virtual camera 60 in the field object 77 are shown when the conditions are 5 and 6 respectively. Camera parameter 4,
Regions 5 and 6 differ in at least one of the camera parameter elements (X, Y, A2, θ, ψ) described above. Therefore, the three regions shown in Figure 11B are distinct regions. Of the three regions R4, R5, and R6 shown in Figure 11B, region R4 has the first specific object G11 located in its central part (see range 771). Therefore,
In this case, region R4 is an example of the first object region. On the other hand, in region R5, neither the first specific object nor the second object is located in its central part (see range 771). That is, the first specific object and the second object are, respectively,
They are located at both ends of the central part of region R5 (see ranges 772 and 773). Therefore,
In this case, region R5 is an example of a second object region. In region R6, the second specific object G12 is located in its central part (see range 771). Therefore, in this case, region R6 is an example of a third object region.
この場合、第1特定オブジェクト(及びそれに伴い第1オブジェクト領域)に対応付け
られた変形パラメータA1の値(第1設定値の一例)や距離パラメータA2の値に基づき
算出された同パラメータの補間値と、第2特定オブジェクト(及びそれに伴い第3オブジ
ェクト領域)に対応付けられた変形パラメータA1の値(第1設定値の一例)や距離パラ
メータA2の値に基づき算出された同パラメータの補間値とが、dL1(k+1)>dL
2(k+1)であるか否かに応じて調整されることになる。この場合、dL1(k+1)
は、第1特定オブジェクトに係る横方向の距離であり、dL2(k+1)は、第2特定オ
ブジェクトに係る横方向の距離である。具体的には、dL1(k+1)>dL2(k+1
)である場合、第2特定オブジェクトに対応付けられた変形パラメータA1の値や距離パ
ラメータA2の値に基づき算出された同パラメータの補間値(第2設定値の一例)が採用
され、dL1(k+1)≦dL2(k+1)である場合、第1特定オブジェクトに対応付
けられた変形パラメータA1の値や距離パラメータA2の値に基づき算出された同パラメ
ータの補間値(第2設定値の一例)が採用されてよい。これは、図26に示した原点設定
処理や図27に示した第2距離パラメータ算出処理について同様である。具体的には、d
L1(k+1)>dL2(k+1)である場合、第2特定オブジェクトが、図26及び図
27で説明した“特定オブジェクト”として扱われ、dL1(k+1)≦dL2(k+1
)である場合、第1特定オブジェクトが、図26及び図27で説明した“特定オブジェク
ト”として扱われることで、同様の効果を2つの特定オブジェクト間で調整しながら実現
できる。なお、このような変形例は、特定オブジェクトが移動する場合にも好適である。
例えば、第1特定オブジェクト及び/又は第2特定オブジェクトが移動するオブジェクト
である場合、第1特定オブジェクトと第2特定オブジェクトとの間の距離が変化して、上
述した第2オブジェクト領域が発生する場合があるためである。
また、この場合も、画角内領域に第1特定オブジェクトの位置と第2特定オブジェクト
の位置が同時に属する場合は、平均値や、重み付けされた合成値が利用されてもよい。重
み付けの場合、例えば、重み付け係数w3、w4を用いて、更新後の合成値βcom’(
k+1)は、第1特定オブジェクトに基づき算出された変形パラメータA1の値βをβA
1’(k+1)とし、第2特定オブジェクトに基づき算出された変形パラメータA1の値
βをβA2”(k+1)としたとき、以下の通り算出されてもよい。
βcom’(k+1)={w3×βA1’(k+1)+w4×βA2”(k+1)}/(
w3+w4)
この場合、例えば、重み付け係数w3、w4は、以下の通りであってよい。
w3=1/dL1(k+1)、ただし、dL1(k+1)=0のときは、βcom’(k
+1)=βA1’(k+1)
w4=1/dL2(k+1)、ただし、dL2(k+1)=0のときは、βcom’(k
+1)=βA2”(k+1)
また、図16から図28を参照して説明した動作例によれば、フィールドオブジェクト
77における仮想カメラ60の画角内領域に特定オブジェクトが位置しないと判定された
場合でも、特定位置と仮想カメラ60の位置パラメータの各値(X、Y)との関係に基づ
いて、変形パラメータA1の値及び/又は距離パラメータA2の値が変化される。すなわ
ち、位置パラメータの各値(X、Y)が特定位置に対応するような仮想カメラ60の位置
(第1位置の一例)にあると判定した場合(例えば図17のステップS1700の“YE
S”及び/又は図23のステップS2300の“YES”)と、位置パラメータの各値(
X、Y)が特定位置に対応しないような仮想カメラ60の位置(第2位置の一例)にある
と判定した場合(例えば図17のステップS1700の“NO”及び/又は図23のステ
ップS2300の“NO”)とで、変形パラメータA1の値及び/又は距離パラメータA
2の値を異ならせる。これにより、フィールドオブジェクト77における仮想カメラ60
の画角内領域に特定オブジェクトが位置しない場合においても、フィールド画像の更なる
多様化を図ることができる。なお、更新後の位置パラメータ(X、Y)の各値(X(k+
1)、Y(k+1))が特定位置に対応するような仮想カメラ60の位置(第1位置の一
例)にあると判定した場合(例えば図17のステップS1700の“YES”)は、更新
後の距離パラメータA2の値γ(k+1)は、当該特定位置に対応付けられた値とされる
(ステップS1702)のに対して、更新後の位置パラメータ(X、Y)の各値(X(k
+1)、Y(k+1))が特定位置に対応しないような仮想カメラ60の位置(第2位置
の一例)にあると判定した場合(例えば図17のステップS1700の“NO”)は、更
新後の距離パラメータA2の値γ(k+1)は、通常値γ0又は補間値とされる(ステッ
プS1712、ステップS1710)。従って、等価的には、図13及び図14に示す特
定位置A、B等のような、変形パラメータA1の値と距離パラメータA2の値の双方が対
応付けられた特定位置の場合、更新後の距離パラメータA2の値γ(k+1)に基づいて
、更新後の変形パラメータA1の値β(k+1)が設定されてもよい。例えば、更新後の
距離パラメータA2の値γ(k+1)が、比較的大きい距離(第1距離の一例)に対応す
る値である場合、比較的小さい距離(第2距離の一例)に対応する値である場合に比べて
変形度合いが小さくなるように、更新後の変形パラメータA1の値β(k+1)が設定さ
れてもよい。また、他の実施形態として、距離パラメータA2の値に応じて変形パラメー
タA1の値を連動させてもよい。例えば、更新後の変形パラメータA1の値β(k+1)
=通常値β0×通常値γ0/更新後の距離パラメータA2の値γ(k+1)、の関係で更
新後の距離パラメータA2の値γ(k+1)に応じた更新後の変形パラメータA1の値β
(k+1)が算出されてもよい。この場合、更新後の距離パラメータA2の値γ(k+1
)が、比較的大きい距離(第1距離の一例)に対応する値である場合、比較的小さい距離
(第2距離の一例)に対応する値である場合に比べて変形度合いが小さくなるように、更
新後の変形パラメータA1の値β(k+1)が連動する。これにより、変形パラメータA
1の各値と距離パラメータA2の各値とを個別に記憶しておく場合に比べて、記憶領域の
節約を図ることができる。また、距離パラメータA2の値を、通常値γ0と、距離パラメ
ータデータ14Aで定義される距離パラメータA2の値(例えば値γ1等)との間で、上
述したように補間値を介して変化させることで、変形パラメータA1の値についても同様
に変化できるので、これらの双方のパラメータの値の急激な変化による違和感の低減を同
時に図ることができる。
In this case, the interpolated value of the deformation parameter A1 (an example of the first setting value) and the distance parameter A2 calculated based on the, which are associated with the second specific object (and the third object region), are equal to d L1 (k+1) > d L
2. It will be adjusted depending on whether it is (k+1) or not. In this case, d L1 (k+1)
d L1 (k+1) is the lateral distance related to the first specific object, and d L2 (k+1) is the lateral distance related to the second specific object. Specifically, d L1 (k+1) > d L2 (k+1)
If d L1 (k+1) ≤ d L2 (k+1), the interpolated value of the same parameter (an example of a second setting value) calculated based on the value of the deformation parameter A1 and the distance parameter A2 associated with the second specific object may be adopted, and if d L1 (k+1) ≤ d L2 (k+1), the interpolated value of the same parameter (an example of a second setting value) calculated based on the value of the deformation parameter A1 and the distance parameter A2 associated with the first specific object may be adopted. This is the same for the origin setting process shown in Figure 26 and the second distance parameter calculation process shown in Figure 27. Specifically, d
If L1 (k+1) > d L2 (k+1), then the second specific object is treated as the "specific object" explained in Figures 26 and 27, and d L1 (k+1) ≤ d L2 (k+1)
In this case, the first specific object is treated as the "specific object" described in Figures 26 and 27, thereby enabling the same effect to be achieved while coordinating between the two specific objects. This modification is also suitable when the specific object is moving.
For example, if the first specific object and/or the second specific object are moving objects, the distance between the first specific object and the second specific object may change, which may result in the creation of the second object region described above.
In this case as well, if the positions of the first specific object and the second specific object both belong to the same area within the field of view, the average value or a weighted composite value may be used. In the case of weighting, for example, weighting coefficients w3 and w4 can be used to obtain the updated composite value β com '(
k+1) is the value β of the deformation parameter A1 calculated based on the first specific object.
When 1 '(k+1) and the value β of the deformation parameter A1 calculated based on the second specific object is β A2 ''(k+1), it may be calculated as follows.
β com '(k+1)={w3×β A1 '(k+1)+w4×β A2 ''(k+1)}/(
w3 + w4)
In this case, for example, the weighting coefficients w3 and w4 may be as follows:
w3 = 1/d L1 (k+1), however, when d L1 (k+1) = 0, β com '(k
+1)=β A1 '(k+1)
w4 = 1/d L2 (k+1), however, when d L2 (k+1) = 0, β com '(k
+1)=β A2 ”(k+1)
Furthermore, according to the operation example described with reference to Figures 16 to 28, even if it is determined that a specific object is not located within the field of view of the virtual camera 60 in the field object 77, the value of the deformation parameter A1 and/or the distance parameter A2 are changed based on the relationship between the specific position and the values (X, Y) of the position parameters of the virtual camera 60. That is, if it is determined that the values (X, Y) of the position parameters are at a position of the virtual camera 60 that corresponds to the specific position (an example of a first position) (for example, in step S1700 of Figure 17, "YE
S'' and/or "YES" in step S2300 of Figure 23, and each value of the position parameter (
When it is determined that X, Y) is in a position of the virtual camera 60 that does not correspond to a specific position (an example of a second position) (for example, "NO" in step S1700 of Figure 17 and/or "NO" in step S2300 of Figure 23), the value of the deformation parameter A1 and/or the distance parameter A
The value of 2 is changed. This affects the virtual camera 60 in the field object 77.
Even when a specific object is not located within the field of view, further diversification of the field image can be achieved. Note that the updated position parameters (X, Y) are each value (X(k+
1) If it is determined that Y(k+1)) is at a position of the virtual camera 60 corresponding to a specific position (an example of a first position) (for example, “YES” in step S1700 in Figure 17), then the updated distance parameter A2 value γ(k+1) is set to the value associated with that specific position (step S1702), whereas the updated position parameters (X, Y) each value (X(k
If it is determined that Y(k+1) is at a position of the virtual camera 60 that does not correspond to a specific position (an example of a second position) (for example, "NO" in step S1700 of Figure 17), then the updated distance parameter A2 value γ(k+1) is set to the normal value γ0 or an interpolated value (steps S1712, S1710). Therefore, equivalently, in the case of specific positions such as specific positions A and B shown in Figures 13 and 14, where both the value of the deformation parameter A1 and the value of the distance parameter A2 are associated, the updated deformation parameter A1 value β(k+1) may be set based on the updated distance parameter A2 value γ(k+1). For example, if the updated distance parameter A2 value γ(k+1) corresponds to a relatively large distance (an example of a first distance), the updated deformation parameter A1 value β(k+1) may be set such that the degree of deformation is smaller compared to when it corresponds to a relatively small distance (an example of a second distance). In another embodiment, the value of the deformation parameter A1 may be linked to the value of the distance parameter A2. For example, the updated value of deformation parameter A1 β(k+1)
The relationship is = Normal value β 0 × Normal value γ 0 / Updated distance parameter A2 value γ(k+1), and the updated deformation parameter A1 value β corresponds to the updated distance parameter A2 value γ(k+1).
(k+1) may be calculated. In this case, the updated distance parameter A2 value γ(k+1
When the value corresponds to a relatively large distance (an example of the first distance), the updated deformation parameter A1 value β(k+1) is adjusted so that the degree of deformation is smaller compared to when the value corresponds to a relatively small distance (an example of the second distance). As a result, the deformation parameter A
Compared to individually storing each value of parameter 1 and each value of distance parameter A2, this method saves memory space. Furthermore, by changing the value of distance parameter A2 between the normal value γ 0 and the value of distance parameter A2 defined in distance parameter data 14A (for example, value γ 1 ) via interpolation as described above, the value of deformation parameter A1 can also be changed in the same way. This simultaneously reduces the sense of incongruity caused by abrupt changes in the values of both of these parameters.
次に、図30を参照して、上述した実施形態に対する変形例について説明する。 Next, with reference to Figure 30, a modified example of the above-described embodiment will be explained.
図30は、変形例によるサーバ装置10Aの描画機能に関する機能ブロック図の一例で
ある。変形例によるサーバ装置10Aは、上述した実施形態によるサーバ装置10に対し
て、描画処理部140が描画処理部140Aで置換された点が異なる。
Figure 30 is an example of a functional block diagram relating to the drawing function of a modified server device 10A. The modified server device 10A differs from the server device 10 of the above-described embodiment in that the drawing processing unit 140 is replaced by a drawing processing unit 140A.
本変形例による描画処理部140Aは、上述した実施形態による描画処理部140に対
して、距離変更部1421がズーム量変更部1421A(パラメータ値変化部の一例)で
置換された点が異なる。
The drawing processing unit 140A in this modified example differs from the drawing processing unit 140 in the embodiment described above in that the distance changing unit 1421 is replaced by a zoom amount changing unit 1421A (an example of a parameter value changing unit).
ズーム量変更部1421Aは、焦点距離や画角等のような、仮想カメラ60のズーム量
に関連する光学パラメータの値を変更する。ズーム量変更部1421Aは、距離変更部1
421と同様の効果が実現されるように、光学パラメータの値を変更してよい。例えば、
距離変更部1421が距離パラメータA2の値を低減させることで得られる効果は、ズー
ム量変更部1421Aが、ズーム量が大きくなるように光学パラメータの値を変化させる
ことで実現されてもよい。同様に、距離変更部1421が距離パラメータA2の値を増加
させることで得られる効果は、ズーム量変更部1421Aが、ズーム量が小さくなるよう
に光学パラメータの値を変化させることで実現されてもよい。このようにして、距離変更
部1421による機能を、ズーム量変更部1421Aにより実現できる。
The zoom amount changing unit 1421A changes the values of optical parameters related to the zoom amount of the virtual camera 60, such as focal length and angle of view. The zoom amount changing unit 1421A is controlled by the distance changing unit 1
The values of the optical parameters may be changed to achieve the same effect as in 421. For example,
The effect obtained by the distance changing unit 1421 reducing the value of the distance parameter A2 may also be achieved by the zoom amount changing unit 1421A changing the value of the optical parameter so that the zoom amount increases. Similarly, the effect obtained by the distance changing unit 1421 increasing the value of the distance parameter A2 may be achieved by the zoom amount changing unit 1421A changing the value of the optical parameter so that the zoom amount decreases. In this way, the function of the distance changing unit 1421 can be realized by the zoom amount changing unit 1421A.
なお、他の変形例では、距離変更部1421とズーム量変更部1421Aとが同時に機
能してもよい。また、上述した実施形態による距離変更部1421の第1距離変更部14
211及び第2距離変更部14212のうちのいずれか一方だけがズーム量変更部142
1Aにより実現されてもよい。
In other modifications, the distance changing unit 1421 and the zoom amount changing unit 1421A may function simultaneously. Also, the first distance changing unit 14 of the distance changing unit 1421 in the above-described embodiment
Only one of 211 and the second distance changing unit 14212 is the zoom amount changing unit 142
This may be achieved by 1A.
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請
求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述し
た実施例の構成要素を全部又は複数を組み合わせることも可能である。
Although each embodiment has been described in detail above, the invention is not limited to any particular embodiment, and various modifications and changes are possible within the scope described in the claims. Furthermore, it is possible to combine all or more of the components of the embodiments described above.
例えば、上述した実施形態では、フィールドオブジェクトにおける仮想カメラ60の画
角内領域と特定オブジェクトとの位置関係に基づいて、変形パラメータA1の値、距離パ
ラメータA2の値、及び、原点位置を設定する処理は、所定オブジェクトの移動に伴う変
形処理(図16のステップS1615)において実行されるが、これに代えて又は加えて
、回転処理後のフィールドオブジェクトの曲げ変形処理(図16のステップS1619)
において実行されてもよい。この場合、回転処理後のフィールドオブジェクトにおける仮
想カメラ60の画角内領域と特定オブジェクトとの位置関係に基づいて、変形パラメータ
A1の値、距離パラメータA2の値、及び、原点位置が同様に設定されてもよい。
For example, in the embodiment described above, the process of setting the value of deformation parameter A1, the value of distance parameter A2, and the origin position based on the positional relationship between the field object and the area within the field of view of the virtual camera 60 and a specific object is performed in the deformation process associated with the movement of a predetermined object (step S1615 in Figure 16). Alternatively, or in addition to this, the bending deformation process of the field object after rotation (step S1619 in Figure 16) may be performed.
This may be performed in the following case. In this case, the values of the deformation parameter A1, the distance parameter A2, and the origin position may be set similarly based on the positional relationship between the field of view area of the virtual camera 60 and the specific object in the field object after rotation processing.
具体的には、例えば公転及び/又は自転に係る回転処理において処理周期ごとに仮想カ
メラ60が所定角度ずつ回転される場合、フィールドオブジェクトにおける仮想カメラ6
0の画角内に収まる領域は、当該所定角度ごとに1周分の数(迎角に係る回転処理の場合
は、その可変範囲の応じた数)があり、以下では、所定領域と称する。1周分の複数の所
定領域の中には、特定オブジェクトが位置する領域(特定オブジェクト領域)(第2の所
定領域の一例)もあれば、特定オブジェクトが位置しない領域(第1の所定領域の一例)
もある。なお、特定オブジェクト領域は、仮想カメラ60の位置によっては存在しない状
況もある。1周分の複数の所定領域の中に特定オブジェクト領域が存在する状況下では、
公転及び/又は自転に係る回転処理に基づいて、フィールドオブジェクトにおける仮想カ
メラ60の画角内に収まる領域が、特定オブジェクトが位置しない領域間で変化する場合
、変形パラメータA1の値が変化されない一方、フィールドオブジェクトにおける仮想カ
メラ60の画角内に収まる領域が、特定オブジェクトが位置しない領域と、特定オブジェ
クト領域との間で遷移する場合、変形パラメータA1の値が変化されてもよい。この場合
、公転及び/又は自転に係る回転処理に基づいて、フィールドオブジェクトにおける仮想
カメラ60の画角内に収まる領域が、特定オブジェクトが位置しない領域間で変化する場
合は、変化した視線方向Vに応じたフィールドオブジェクト77の曲げ変形(仮想カメラ
60の視線方向Vに視て同じ変形態様の曲げ変形)が実現されるので、地平線HLの高さ
H1が変化しない。これにより、第1オブジェクト3の曲線状の動きに対しても仮想カメ
ラ60を追従させつつ、地平線HLの高さH1を一定に保つことができる。ただし、変形
例では、地平線HLの高さH1は、ユーザにとって違和感のないレベル内で変化されても
よい。例えばユーザにとって違和感のないレベルとは、フィールドオブジェクトが有しう
る微細な凹凸等(すなわちフィールド面70の形状に対してわずかに異なる形状)に対応
するレベルであってよい。このようなレベル内の変化であれば、地平線HLの高さH1が
略同じとなる。
Specifically, for example, in rotation processing related to revolution and/or rotation, if the virtual camera 60 is rotated by a predetermined angle at each processing cycle, the virtual camera 6 in the field object
The area that fits within the field of view of 0 consists of a number of regions corresponding to one full rotation for each predetermined angle (or, in the case of rotation processing related to the angle of attack, a number corresponding to its variable range), and is hereinafter referred to as the predetermined region. Among the multiple predetermined regions that make up one full rotation, there are regions where a specific object is located (specific object region) (an example of the second predetermined region), and regions where a specific object is not located (an example of the first predetermined region).
There are also cases where a specific object region does not exist depending on the position of the virtual camera 60. In situations where a specific object region exists within multiple predetermined regions that make up one rotation,
Based on rotation processing related to revolution and/or rotation, if the area within the field of view of the virtual camera 60 of the field object changes between areas where the specific object is not located, the value of the deformation parameter A1 does not change. However, if the area within the field of view of the virtual camera 60 of the field object transitions between an area where the specific object is not located and an area where the specific object is located, the value of the deformation parameter A1 may change. In this case, based on rotation processing related to revolution and/or rotation, if the area within the field of view of the virtual camera 60 of the field object changes between areas where the specific object is not located, a bending deformation of the field object 77 corresponding to the changed line of sight direction V (a bending deformation with the same deformation pattern as viewed from the line of sight direction V of the virtual camera 60) is realized, so the height H1 of the horizon HL does not change. This makes it possible to keep the height H1 of the horizon HL constant while allowing the virtual camera 60 to follow the curved movement of the first object 3. However, in the modified example, the height H1 of the horizon HL may change within a level that does not feel unnatural to the user. For example, a level that does not feel unnatural to the user may be one that corresponds to minute irregularities that the field object may have (i.e., a shape that is slightly different from the shape of the field surface 70). Within such a level of change, the height H1 of the horizon HL will remain approximately the same.
他方、変形パラメータA1の値が変化されない一方、フィールドオブジェクトにおける
仮想カメラ60の画角内に収まる領域が、特定オブジェクトが位置しない領域と、特定オ
ブジェクト領域との間で遷移する場合は、変形度合いが大きくされることで、上述したよ
うに特定オブジェクトを効果的に目立たせることができる。この場合も、上述した場合と
同様に、フィールドオブジェクト77における仮想カメラ60の画角内領域の端部(第2
範囲の一例)に特定オブジェクトが位置する場合と、フィールドオブジェクト77におけ
る仮想カメラ60の画角内領域の中央部(第1範囲の一例)に特定オブジェクトが位置す
る場合とで、変形パラメータA1の値が変化されてもよい。また、公転及び/又は自転に
係る回転処理に基づいて、フィールドオブジェクト77における仮想カメラ60の画角内
領域の端部から中央部へと特定オブジェクトの位置が変化するにつれて、変形パラメータ
A1の値は、通常値β0(所定設定値の一例)よりも大きい補間値(第2設定値の一例)
から値βG*(第1設定値の一例)へと、1つ以上の補間値(第2設定値の一例)を介し
て変化(増加)されてもよい。
On the other hand, if the value of deformation parameter A1 does not change, but the area within the field of view of the virtual camera 60 in the field object transitions between an area where the specific object is not located and the area where the specific object is located, the degree of deformation is increased, which makes the specific object stand out effectively as described above. In this case as well, as in the case described above, the edges of the area within the field of view of the virtual camera 60 in the field object 77 (second
The value of the deformation parameter A1 may change depending on whether the specific object is located within an example of the range, or in the center of the field of view of the virtual camera 60 in the field object 77 (an example of the first range). Furthermore, as the position of the specific object changes from the edge to the center of the field of view of the virtual camera 60 in the field object 77 based on rotation processing related to revolution and/or rotation, the value of the deformation parameter A1 may change to an interpolated value (an example of a second setting value) that is greater than the normal value β0 (an example of a predetermined setting value).
The value may change (increase) from β G* (an example of a first setting value) via one or more interpolated values (an example of a second setting value).
また、上述した実施形態では、フィールドオブジェクトにおける仮想カメラ60の画角
内領域と特定オブジェクトとの位置関係に基づいて、変形パラメータA1の値、距離パラ
メータA2の値、及び、原点位置を設定する処理は、所定オブジェクトの移動に伴う変形
処理(図16のステップS1615)において実行されるが、これに代えて又は加えて、
所定オブジェクトの移動を伴わない距離変更処理(例えばユーザからの操作情報に含まれ
てよい距離変更指示に応じた距離変更処理)(図示せず)において実行されてもよい。こ
れは、仮想カメラ60の位置パラメータの各値(X、Y)が変化しない場合でも、距離パ
ラメータA2の値が変化することで、フィールドオブジェクト77における仮想カメラ6
0の画角内領域に特定オブジェクトが位置する状態と、特定オブジェクトが位置しない状
態との間で遷移する場合があるためである。これは、上述した変形例によるズーム量変更
部1421Aによる処理(仮想カメラ60のズーム量に関連する光学パラメータの値を変
更する処理)の場合も同様である。
Furthermore, in the embodiment described above, the process of setting the value of the deformation parameter A1, the value of the distance parameter A2, and the origin position based on the positional relationship between the field object and the area within the field of view of the virtual camera 60 and a specific object is performed in the deformation process associated with the movement of a predetermined object (step S1615 in Figure 16), but instead of or in addition to this,
This may also be performed in distance change processing that does not involve the movement of a predetermined object (for example, distance change processing in response to distance change instructions that may be included in user operation information) (not shown). This is because even if the values (X, Y) of the position parameters of the virtual camera 60 do not change, the value of the distance parameter A2 changes, causing the virtual camera 6 in the field object 77 to change.
This is because there may be a transition between a state in which a specific object is located within the field of view of 0 and a state in which the specific object is not located. This is also true in the case of the processing by the zoom amount changing unit 1421A as described above (processing to change the value of optical parameters related to the zoom amount of the virtual camera 60).
具体的には、例えばユーザからの距離変更指示に応じた距離変更処理において処理周期
ごとに仮想カメラ60の距離パラメータA2の値が所定距離ずつ変化する場合、フィール
ドオブジェクトにおける仮想カメラ60の画角内に収まる領域は、当該所定距離ごとに、
距離の可変範囲に応じた数があり、これらの複数の領域の中には、特定オブジェクトが位
置する領域(特定オブジェクト領域)もあれば、特定オブジェクトが位置しない領域もあ
る。なお、特定オブジェクト領域は、仮想カメラ60の位置によっては存在しない状況も
ある。これらの複数の領域の中に特定オブジェクト領域が存在する状況下では、距離変更
指示に応じた距離変更処理に基づいて、フィールドオブジェクトにおける仮想カメラ60
の画角内に収まる領域が、特定オブジェクトが位置しない領域間で変化する場合、変形パ
ラメータA1の値が変化されない一方、フィールドオブジェクトにおける仮想カメラ60
の画角内に収まる領域が、特定オブジェクトが位置しない領域と、特定オブジェクト領域
との間で遷移する場合、変形パラメータA1の値が変化されてもよい。この場合、距離変
更指示に応じた距離変更処理に基づいて、フィールドオブジェクトにおける仮想カメラ6
0の画角内に収まる領域が、特定オブジェクトが位置する領域に変化すると、変形度合い
が大きくされることで、上述したように特定オブジェクトを効果的に目立たせることがで
きる。この場合も、上述した場合と同様に、フィールドオブジェクト77における仮想カ
メラ60の画角内領域の端部(第2範囲の一例)に特定オブジェクトが位置する場合と、
フィールドオブジェクト77における仮想カメラ60の画角内領域の中央部(第1範囲の
一例)に特定オブジェクトが位置する場合とで、変形パラメータA1の値が変化されても
よい。また、距離変更指示に応じた距離変更処理に基づいて、フィールドオブジェクト7
7における仮想カメラ60の画角内領域の端部から中央部へと特定オブジェクトの位置が
変化するにつれて、変形パラメータA1の値は、通常値β0(所定設定値の一例)よりも
大きい補間値(第2設定値の一例)から値βG*(第1設定値の一例)へと、1つ以上の
補間値(第2設定値の一例)を介して変化(増加)されてもよい。
Specifically, for example, in distance change processing in response to a distance change instruction from the user, if the value of the distance parameter A2 of the virtual camera 60 changes by a predetermined distance at each processing cycle, the area of the field object that fits within the field of view of the virtual camera 60 will change at each predetermined distance.
There are a number of regions corresponding to the variable range of distance, and among these multiple regions, there are regions where a specific object is located (specific object region) and regions where a specific object is not located. Note that the specific object region may not exist depending on the position of the virtual camera 60. When the specific object region exists among these multiple regions, the virtual camera 60 in the field object is processed based on the distance change process corresponding to the distance change instruction.
When the area within the field of view changes between areas where a specific object is not located, the value of deformation parameter A1 does not change, while the virtual camera 60 in the field object
If the area within the field of view transitions between an area where a specific object is not located and an area where a specific object is located, the value of deformation parameter A1 may change. In this case, the virtual camera 6 in the field object will change based on the distance change processing in response to the distance change instruction.
When the area that fits within the field of view of 0 changes to the area where a specific object is located, the degree of deformation is increased, which makes the specific object stand out effectively as described above. In this case as well, similar to the case described above, when the specific object is located at the edge of the field of view area of the virtual camera 60 in the field object 77 (an example of the second range),
The value of the deformation parameter A1 may change depending on whether a specific object is located in the center of the field of view area of the virtual camera 60 in the field object 77 (an example of the first range). Also, based on the distance change processing in response to the distance change instruction, the field object 7
As the position of a specific object changes from the edge to the center of the field of view of the virtual camera 60 in 7, the value of the deformation parameter A1 may change (increase ) via one or more interpolation values (example of a second setting value) from an interpolation value (example of a second setting value) that is larger than the normal value β 0 (example of a predetermined setting value) to the value β G* (example of a first setting value).
また、上述した実施形態では、フィールドオブジェクトの曲げ変形は、フィールドオブ
ジェクトの全体を曲げ変形することで実現されるが、これに限られない。例えば、フィー
ルドオブジェクトの曲げ変形は、フィールドオブジェクトの全体のうちの、仮想カメラ6
0の画角内に収まる領域だけ又は当該領域を包含する一部領域だけに対して実行されても
よい。
Furthermore, in the embodiments described above, the bending deformation of the field object is achieved by bending the entire field object, but it is not limited to this. For example, the bending deformation of the field object is achieved by bending the entire field object, specifically the virtual camera 6
The process may be performed only on the area that fits within the field of view of 0, or only on a portion of the area that includes that area.
また、上述した実施形態では、所定オブジェクトの移動の際に仮想カメラ60の位置パ
ラメータ(X、Y)の各値に対応付けられる各種パラメータ(例えば、距離パラメータA
2、向きパラメータθ、迎角パラメータψ等)の値は、位置パラメータ(X、Y)の各値
が同じであるときは、毎回、同じである。例えば、所定オブジェクトの移動の際に、所定
オブジェクトがある一の位置に位置するとき、当該一の位置に対しては同一の各種パラメ
ータ(例えば、距離パラメータA2、向きパラメータθ、迎角パラメータψ等)の値が実
現される。しかしながら、これに限られない。例えば、所定オブジェクトの移動の際に仮
想カメラ60の位置パラメータ(X、Y)の各値に対応付けられる各種パラメータ(例え
ば、距離パラメータA2、向きパラメータθ、迎角パラメータψ等)の値は、位置パラメ
ータ(X、Y)の各値が同じであるときでも、ゲームの進行状況や他の因子(例えば所定
オブジェクトの移動方向等)に応じて変化されてもよい。例えば、特定位置Aに対応付け
られる変形パラメータA1の値は、ゲームの進行状況や他の因子に基づき所定条件が成立
した場合に値β1に設定され、それ以外の場合は、通常値β0に設定されてもよい。また
、このような変化は、例えば、所定のイベントの発生や、移動する第2オブジェクトが、
フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域に入った(画面内
に配置された)場合や、ユーザによる画角変更のための手動操作に応じて実行されてもよ
い
また、上述した実施形態では、特定位置A、Bのような各特定位置は、フィールドオブ
ジェクト上の固定位置であったが、フィールドオブジェクト上で移動可能な位置であって
よい。例えば、特定位置の一部は、第2オブジェクトのうちの、移動する所定の第2オブ
ジェクトの位置に対応して設定されてもよい。この場合、一の特定位置は、移動する所定
の一の第2オブジェクトの位置に対して所定関係を有する位置であってよい。
Furthermore, in the above-described embodiment, various parameters (for example, distance parameter A) are associated with each value of the position parameters (X, Y) of the virtual camera 60 when a predetermined object is moved.
2. The values of the direction parameter θ, angle of attack parameter ψ, etc. are the same each time when the values of the position parameters (X, Y) are the same. For example, when a predetermined object moves and the predetermined object is located at a certain position, the same values of various parameters (e.g., distance parameter A2, direction parameter θ, angle of attack parameter ψ, etc.) are realized for that position. However, this is not limited to this. For example, when a predetermined object moves, the values of various parameters (e.g., distance parameter A2, direction parameter θ, angle of attack parameter ψ, etc.) associated with the values of the position parameters (X, Y) of the virtual camera 60 may change depending on the progress of the game or other factors (e.g., the direction of movement of the predetermined object), even when the values of the position parameters (X, Y) are the same. For example, the value of the deformation parameter A1 associated with a specific position A may be set to value β1 when a predetermined condition is met based on the progress of the game or other factors, and otherwise set to the normal value β0. Furthermore, such changes may occur, for example, when a predetermined event occurs or when a second object moves.
This may be performed when the field object enters an area that fits within the field of view of the virtual camera 60 (is placed on the screen), or in response to a manual operation by the user to change the field of view. Furthermore, in the embodiment described above, each specific position such as specific positions A and B was a fixed position on the field object, but they may be movable positions on the field object. For example, a part of the specific positions may be set corresponding to the position of a predetermined moving second object among the second objects. In this case, one specific position may be a position that has a predetermined relationship with the position of a predetermined moving second object.
また、上述した実施形態において、特定位置に係る補間処理範囲(以下、特定オブジェ
クトに係る補間処理範囲についても同様)が動的に変化されずに固定される場合として、
当該補間処理範囲内に仮想カメラ60の位置パラメータ(X、Y)の各値が位置しかつ距
離パラメータA2及び迎角パラメータψの各値が通常値γ0、ψ0である場合に、任意の
向きパラメータθの値のときにも、フィールドオブジェクトにおける仮想カメラ60の画
角内に収まる領域に当該補間処理範囲に係る特定位置が位置するように、設定されてもよ
い点は、上述した。例えば、図31には、特定位置Aに関する補間処理範囲Rs(A)が
平面視で示され、図32には、図31のラインJ1-J1に沿った断面視とラインJ2-
J2に沿った断面視とが重ねて示されている。この場合、仮想カメラ60の位置パラメー
タ(X、Y)の各値が位置P260に対応し、かつ距離パラメータA2及び迎角パラメー
タψの各値が通常値γ0、ψ0である場合に、図32に示すように、パラメータθの値が
図31に示すようなθ(P260)であるとき、特定位置Aは、フィールドオブジェクト
における仮想カメラ60の画角内に収まる領域に位置する。なお、図32における境界線
6211は、仮想カメラ60の画角62(z方向に垂直な方向に視た際の画角)(図5参
照)の上側の境界線である。従って、この場合、位置P260は、補間処理範囲Rs(A
)内に属する。他方、仮想カメラ60の位置パラメータ(X、Y)の各値が位置P261
に対応し、かつ距離パラメータA2及び迎角パラメータψの各値が通常値γ0、ψ0であ
る場合に、図32に示すように、パラメータθの値が図31に示すようなθ(P261)
であるときでも、特定位置Aは、フィールドオブジェクトにおける仮想カメラ60の画角
内に収まる領域に位置しない。従って、この場合、位置P260は、補間処理範囲Rs(
A)内に属さない。しかしながら、更なる別の設定態様として、補間処理範囲は、そのと
きのカメラパラメータの各値に基づいて、動的に変化するように設定されてもよい。例え
ば、一の特定位置に係る補間処理範囲は、当該補間処理範囲内に仮想カメラ60の位置パ
ラメータ(X、Y)の各値が位置しかつ更新後(又は更新前)の距離パラメータA2及び
迎角パラメータψの各値(通常値γ0、ψ0とは異なる値であるうる)が適用される場合
に、任意の向きパラメータθの値のときにも、仮想カメラ60の画角内に収まる領域に当
該一の特定位置が位置するように、動的に設定されてもよい。これは、仮想カメラ60の
位置パラメータ(X、Y)の各値が、ある一の補間処理範囲外である場合でも、他の一の
補間処理範囲内に位置することにより、距離パラメータA2等の値が通常値でない補間値
である可能性があるためである。なお、ここでは、仮想カメラ60の公転や自転が任意の
位置で可能である仕様を想定しているが、仮想カメラ60の公転や自転が、限定された位
置でのみ可能である仕様や公転や自転自体が不能である仕様では、上述した説明における
“任意の向きパラメータθの値のときにも”は、“その時点の向きパラメータθの値のと
きに”と読み替えて適用されてよい。
Furthermore, in the embodiments described above, the interpolation processing range for a specific position (hereinafter the same applies to the interpolation processing range for a specific object) is fixed and not dynamically changed,
As mentioned above, when the position parameters (X, Y) of the virtual camera 60 are located within the interpolation processing range and the distance parameter A2 and the angle of attack parameter ψ are set to normal values γ0 and ψ0 , the specific position related to the interpolation processing range may be set so that it is located within the field of view of the virtual camera 60 in the field object, even when the orientation parameter θ is set to an arbitrary value. For example, Figure 31 shows the interpolation processing range Rs(A) related to the specific position A in a plan view, and Figure 32 shows a cross-sectional view along line J1-J1 and line J2-
A cross-sectional view along J2 is shown superimposed. 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 the normal values γ0 and ψ0 , as shown in Figure 32, when the value of parameter θ is θ(P260) as shown in Figure 31, then the specific position A is located in the region within the field of view of the virtual camera 60 in the field object. Note that the boundary line 6211 in Figure 32 is the upper boundary line of the field of view 62 (field of view when viewed in a direction perpendicular to the z direction) of the virtual camera 60 (see Figure 5). Therefore, in this case, position P260 is within the interpolation processing range Rs(A
) belongs to the same place. On the other hand, each value of the position parameters (X, Y) of the virtual camera 60 is position P261
Corresponding to this, and when the values of the distance parameter A2 and the angle of attack parameter ψ are the normal values γ 0 and ψ 0 , the value of parameter θ is as shown in Figure 32, and θ(P261) is as shown in Figure 31.
Even in this case, the specific position A is not located in an area that falls within the field of view of the virtual camera 60 in the field object. Therefore, in this case, position P260 is within the interpolation processing range Rs(
A) Not included. However, as a further alternative setting, 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 a particular position may be set dynamically so that the particular position is located in an area that fits within the field of view of the virtual camera 60, even when the orientation parameter θ is an arbitrary value, provided that the values of the position parameters (X, Y) of the virtual camera 60 are located within the interpolation processing range and the updated (or pre-update) values of the distance parameter A2 and the angle of attack parameter ψ (which may be different from the normal values γ0, ψ0) are applied. This is because even if the values of the position parameters (X, Y) of the virtual camera 60 are outside one interpolation processing range, they may be located within another interpolation processing range, meaning that the values of the distance parameter A2, etc., may be interpolated values that are not normal values. Here, we assume that the virtual camera 60 can revolve and rotate at any position. However, in specifications where the virtual camera 60 can only revolve and rotate at limited positions, or where revolving and rotating itself is impossible, the phrase "even when the orientation parameter θ is at any value" in the above explanation may be replaced with "when the orientation parameter θ is at that point in time."
また、仮想カメラ60の位置パラメータ(X、Y)の各値の変化速度(時間あたりの変
化量)が大きいほど補間処理範囲が広くなる態様で、当該変化速度に応じて補間処理範囲
の広さが動的に変化されてもよい。あるいは、同様の考え方に基づいて、変化速度とは無
関係に、所定のマージンを補間処理範囲に対して設定してもよい。これにより、例えば、
仮想カメラ60の位置パラメータ(X、Y)の各値の変化速度(時間あたりの変化量)が
大きいまま仮想カメラ60の位置パラメータ(X、Y)の各値が特定位置(又は特定オブ
ジェクト)に対応する各値へと変化する場合に生じうる不都合(フィールド画像の比較的
急激な変化に起因してユーザに与えうる違和感)を低減できる。
Furthermore, the interpolation processing range may be dynamically changed according to the rate of change (amount of change per unit time) of each value of the position parameters (X, Y) of the virtual camera 60, such that the interpolation processing range becomes wider as the rate of change increases. Alternatively, based on a similar concept, a predetermined margin may be set for the interpolation processing range regardless of the rate of change. This allows, for example,
This reduces the inconvenience (discomfort that may be caused to the user due to relatively rapid changes in the field image) that may occur when the values of the position parameters (X, Y) of the virtual camera 60 change to values corresponding to a specific position (or specific object) while the rate of change (amount of change per unit time) of each value of the virtual camera 60 remains large.
また、仮想カメラ60の画角が可変である場合、画角が小さいほど補間処理範囲が広く
なる態様で、仮想カメラ60の画角に応じて補間処理範囲の広さが動的に変化されてもよ
い。これにより、例えば、仮想カメラ60の画角が小さいまま仮想カメラ60の位置パラ
メータ(X、Y)の各値が特定位置(特定オブジェクト)に対応する各値へと変化する場
合に生じうる不都合(フィールド画像の比較的急激な変化に起因してユーザに与えうる違
和感)を低減できる。
Furthermore, if the field of view of the virtual camera 60 is variable, the interpolation processing range may be dynamically changed according to the field of view of the virtual camera 60, such that the smaller the field of view, the wider the interpolation processing range becomes. This reduces, for example, the inconvenience (discomfort that may be caused to the user due to relatively rapid changes in the field image) that may occur when 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 field of view of the virtual camera 60 remains small.
また、上述した実施形態では、補間処理範囲に更新後の位置パラメータ(X、Y)の各
値が位置するか否かに基づいて、補間処理を実行するか否かが決定されているが、これに
限られない。例えば、等価的に、更新後の仮想カメラ60の位置パラメータ(X、Y)の
各値が位置しかつ更新後の距離パラメータA2及び迎角パラメータψの各値に基づいて、
フィールドオブジェクトにおける仮想カメラ60の画角内に収まる領域(すなわち上述し
た画角内領域)を導出し、当該画角内領域に、特定位置や特定オブジェクトが位置するか
否かが判定されてもよい。この場合、当該画角内領域に、特定位置や特定オブジェクトが
位置するが、更新後の仮想カメラ60の位置パラメータ(X、Y)の各値が特定位置や特
定オブジェクトの位置に対応しない場合に、補間処理が実行されてもよい。
Furthermore, in the embodiment described above, the decision to perform interpolation processing is made based on whether or not each value of the updated position parameters (X, Y) is located within the interpolation processing range, but this is not limited to this. For example, equivalently, based on whether each value of the updated position parameters (X, Y) of the virtual camera 60 is located within the range and on the updated distance parameter A2 and angle of attack parameter ψ,
The area within the field of view of the virtual camera 60 in the field object (i.e., the area within the field of view described above) may be derived, and it may be determined whether a specific position or object is located within that area within the field of view. In this case, if a specific position or object is located within that area within the field of view, but the updated position parameters (X, Y) of the virtual camera 60 do not correspond to the position of the specific position or object, interpolation processing may be performed.
また、上述した各実施形態において、第1移動処理部1420は省略されてもよい。 Furthermore, in each of the embodiments described above, the first movement processing unit 1420 may be omitted.
なお、以上の実施例に関し、さらに以下の付記を開示する。 Furthermore, the following additional information is disclosed regarding the above embodiments.
[付記1]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置される
オブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情
報処理装置であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けら
れるフィールドオブジェクトと、前記フィールドオブジェクトに配置される特定オブジェ
クトとを含み、
前記フィールドオブジェクトにおける前記仮想カメラの画角内に収まる領域を変化させ
る変化処理部と、
前記フィールドオブジェクトを変形させる変形処理部とを含み、
前記変形処理部は、前記変化処理部により前記領域が変化させられる場合に、変化後の
前記領域に前記特定オブジェクトが位置するか否かを判定し、変化後の前記領域に前記特
定オブジェクトが位置すると判定した場合と、変化後の前記領域に前記特定オブジェクト
が位置しないと判定した場合とで、前記フィールドオブジェクトの変形態様を異ならせる
、情報処理装置。
[Note 1]
An information processing device for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, in a representation as seen from a virtual camera placed in the virtual space,
The object includes a field object associated with a two-dimensional plane defined by the first and second axes, and a specific object placed on the field object.
A change processing unit that changes the area within the field object that falls within the field of view of the virtual camera,
Includes a deformation processing unit that deforms the field object,
The deformation processing unit determines whether the specific object is located in the changed region when the region is changed by the change processing unit, and determines whether the deformation of the field object differs depending on whether it is determined that the specific object is located in the changed region or whether it is determined that the specific object is not located in the changed region.
[付記2]
前記変形処理部は、更に、前記変化処理部により前記領域が変化させられる場合に、変
化後の前記領域における第1範囲内に前記特定オブジェクトが位置するか又は前記領域に
おける前記第1範囲に隣接する第2範囲内に前記特定オブジェクトが位置するかを判定し
、前記第1範囲内に前記特定オブジェクトが位置すると判定した場合と、前記第2範囲内
に前記特定オブジェクトが位置すると判定した場合とで、前記フィールドオブジェクトの
変形度合いを異ならせる、付記1に記載の情報処理装置。
[Note 2]
The deformation processing unit further determines, when the region is changed by the change processing unit, whether the specific object is located within a first range in the changed region or within a second range adjacent to the first range in the region, and the degree of deformation of the field object differs depending on whether it is determined that the specific object is located within the first range or within the second range, as described in Appendix 1.
[付記3]
前記第2範囲は、前記仮想カメラの画角の横方向で前記第1範囲の両側に位置し、
前記変形処理部は、前記第1範囲内に前記特定オブジェクトが位置すると判定した場合
に、前記第2範囲内に前記特定オブジェクトが位置すると判定した場合に比べて、前記フ
ィールドオブジェクトの変形度合いを大きくする、付記2に記載の情報処理装置。
[Note 3]
The second range is located on both sides of the first range in the lateral direction of the field of view of the virtual camera.
The deformation processing unit, when it is determined that the specific object is located within the first range, increases the degree of deformation of the field object compared to when it is determined that the specific object is located within the second range, as described in Appendix 2.
[付記4]
前記変化処理部により前記領域が変化させられるごとに、変化後の前記領域における前
記特定オブジェクトの位置が、変化後の前記領域における横方向の一端側から中央部に向
けて変化する場合に、前記変形処理部は、前記変化処理部により前記領域が変化させられ
るごとに、前記フィールドオブジェクトの変形度合いを大きくする、付記1に記載の情報
処理装置。
[Note 4]
The information processing apparatus according to Appendix 1, wherein each time the region is changed by the change processing unit, the position of the specific object in the changed region changes from one lateral end toward the center of the changed region, and the deformation processing unit increases the degree of deformation of the field object each time the region is changed by the change processing unit.
[付記5]
前記フィールドオブジェクトは、変形可能な基本面に基づいて形状付けられ、
前記仮想カメラの視線方向と前記第3軸を含む平面上において、所定位置を原点とし、
前記原点を通り前記第3軸に平行な軸をY軸とし、前記フィールドオブジェクトに対して
上側に向かう向きをY軸の正側とし、かつ、前記原点を通り前記Y軸に垂直な軸をX軸と
した場合に、前記変形処理部は、X座標の値の絶対値が大きくなるほどY座標の値が線形
又は非線形に単調減少する関数にしたがって、前記基本面を変形させる、付記1に記載の
情報処理装置。
[Note 5]
The field object is shaped based on a deformable base surface,
On a plane including the line of sight of the virtual camera and the third axis, a predetermined position is set as the origin.
The information processing apparatus described in Appendix 1, wherein the Y-axis is defined as an axis passing through the origin and parallel to the third axis, the positive side of the Y-axis is defined as the direction upward relative to the field object, and the X-axis is defined as an axis passing through the origin and perpendicular to the Y-axis, the deformation processing unit deforms the basic surface according to a function in which the value of the Y-coordinate decreases monotonically linearly or nonlinearly as the absolute value of the X-coordinate increases.
[付記6]
前記変形処理部は、前記領域の変化に応じて値が変化しうる変形パラメータであって、
前記フィールドオブジェクトの変形度合いを定める変形パラメータの値に基づいて、前記
基本面を変形させ、
前記変形パラメータは、前記関数において、前記X座標の値に係る項に割り当てられる
係数を含む、付記5に記載の情報処理装置。
[Note 6]
The deformation processing unit is a deformation parameter whose value can change in accordance with the change in the region,
Based on the value of the deformation parameter that determines the degree of deformation of the field object, the basic surface is deformed.
The information processing apparatus according to Appendix 5, wherein the deformation parameter includes a coefficient assigned to the term relating to the X coordinate value in the function.
[付記7]
前記領域は、前記特定オブジェクトが位置しない所定オブジェクト領域と、前記特定オ
ブジェクトが中央部に位置する第1オブジェクト領域と、前記特定オブジェクトが端部に
位置する第2オブジェクト領域とを含み、
前記変形パラメータの値は、前記所定オブジェクト領域において設定される所定設定値
と、前記第1オブジェクト領域において設定される第1設定値と、前記第2オブジェクト
領域において設定される第2設定値とを含み、
前記第1設定値は、前記第2設定値よりも大きい前記フィールドオブジェクトの変形度
合いを実現し、かつ、前記第2設定値は、前記所定設定値よりも大きい前記フィールドオ
ブジェクトの変形度合いを実現する、付記6に記載の情報処理装置。
[Note 7]
The region includes a predetermined object region where the specific object is not located, a first object region where the specific object is located in the central part, and a second object region where the specific object is located at the edge.
The value of the deformation parameter includes a predetermined setting value set in the predetermined object region, a first setting value set in the first object region, and a second setting value set in the second object region.
The information processing apparatus according to Appendix 6, wherein the first setting value achieves a degree of deformation of the field object that is greater than the second setting value, and the second setting value achieves a degree of deformation of the field object that is greater than the predetermined setting value.
[付記8]
前記変形処理部は、前記変化処理部により前記領域が前記所定オブジェクト領域と前記
第1オブジェクト領域との間で前記第2オブジェクト領域を介して変化させられる場合に
、前記変形パラメータの値を、前記第2設定値を介して、前記第1設定値又は前記所定設
定値へと変化させる、付記7に記載の情報処理装置。
[Note 8]
The deformation processing unit, when the region is changed by the change processing unit between the predetermined object region and the first object region via the second object region, changes the value of the deformation parameter to the first setting value or the predetermined setting value via the second setting value, as described in Appendix 7.
[付記9]
前記特定オブジェクトは、第1特定オブジェクトと第2特定オブジェクトとを含み、
前記領域は、前記第1特定オブジェクト及び前記第2特定オブジェクトの双方が位置し
ない所定オブジェクト領域と、前記第1特定オブジェクト及び前記第2特定オブジェクト
の双方が位置するオブジェクト領域とを含み、
前記オブジェクト領域は、前記第1特定オブジェクトが中央部に位置する第1オブジェ
クト領域と、前記第1特定オブジェクト及び前記第2特定オブジェクトのいずれもが中央
部に位置しない第2オブジェクト領域と、前記第2特定オブジェクトが中央部に位置する
第3オブジェクト領域と、を含み、
前記変形パラメータの値は、前記所定オブジェクト領域において設定される所定設定値
と、前記第1オブジェクト領域及び前記第3オブジェクト領域において設定される第1設
定値と、前記第2オブジェクト領域において設定される第2設定値とを含み、
前記第1設定値は、前記第2設定値よりも大きい前記フィールドオブジェクトの変形度
合いを実現し、かつ、前記第2設定値は、前記所定設定値よりも大きい前記フィールドオ
ブジェクトの変形度合いを実現し、
前記変形処理部は、前記変化処理部により前記領域が前記所定オブジェクト領域と前記
第1オブジェクト領域又は前記第3オブジェクト領域との間で前記第2オブジェクト領域
を介して変化させられる場合に、前記変形パラメータの値を、前記第2設定値を介して、
前記第1設定値又は前記所定設定値へと変化させる、付記6に記載の情報処理装置。
[Note 9]
The aforementioned specific object includes a first specific object and a second specific object,
The region includes a predetermined object region in which neither the first specific object nor the second specific object is located, and an object region in which both the first specific object and the second specific object are located.
The object region includes a first object region in which the first specific object is located in the center, a second object region in which neither the first specific object nor the second specific object is located in the center, and a third object region in which the second specific object is located in the center.
The value of the deformation parameter includes a predetermined setting value set in the predetermined object region, a first setting value set in the first object region and the third object region, and a second setting value set in the second object region.
The first setting value achieves a degree of deformation of the field object that is greater than the second setting value, and the second setting value achieves a degree of deformation of the field object that is greater than the predetermined setting value.
When the deformation processing unit causes the region to be changed by the change processing unit between the predetermined object region and the first object region or the third object region via the second object region, the deformation processing unit sets the value of the deformation parameter via the second setting value.
An information processing device as described in Appendix 6, which changes the value to the first set value or the predetermined set value.
[付記10]
前記変形処理部は、変化後の前記領域に前記特定オブジェクトが位置すると判定した場
合に、前記所定位置を前記特定オブジェクトの位置に基づいて決定する、付記5から9の
うちのいずれか1項に記載の情報処理装置。
[Note 10]
The information processing apparatus according to any one of the appendices 5 to 9, wherein the deformation processing unit determines that the specific object is located in the transformed region, and determines the predetermined position based on the position of the specific object.
[付記11]
前記変化処理部は、前記仮想カメラの視線方向に交差する方向で、前記フィールドオブ
ジェクトに対する前記仮想カメラの位置を相対的に変化させる第1移動処理部を含み、
前記領域は、前記第1移動処理部により前記フィールドオブジェクトに対する前記仮想
カメラの位置が変化させられることで変化する、付記1から10のうちのいずれか1項に
記載の情報処理装置。
[Note 11]
The change processing unit includes a first movement processing unit that changes the relative position of the virtual camera with respect to the field object in a direction intersecting the line of sight of the virtual camera,
The information processing apparatus according to any one of the appendices 1 to 10, wherein the region is changed by the first movement processing unit changing the position of the virtual camera relative to the field object.
[付記12]
前記特定オブジェクトは、前記フィールドオブジェクトに対して固定されており、
前記オブジェクトは、前記フィールドオブジェクトに対して配置される所定オブジェク
トを更に含み、
前記第1軸及び前記第2軸で規定される2次元平面内において前記フィールドオブジェ
クトに対する前記所定オブジェクトの位置を相対的に変化させる第2移動処理部を更に含
み、
前記変形処理部は、変化後の前記領域に前記特定オブジェクトが位置しないと判定した
場合に、前記所定位置を前記所定オブジェクトの位置に基づいて決定する、付記5から1
0のうちのいずれか1項に記載の情報処理装置。
[Note 12]
The aforementioned specific object is fixed to the field object,
The object further includes a predetermined object that is placed relative to the field object,
The system further includes a second movement processing unit that changes the relative position of the predetermined object with respect to the field object within a two-dimensional plane defined by the first and second axes,
If the deformation processing unit determines that the specific object is not located in the transformed region, it determines the predetermined position based on the position of the predetermined object, as described in Appendix 5 to 1.
An information processing device as described in any one of the items 0.
[付記13]
前記変形処理部は、更に、変化後の前記領域に前記特定オブジェクトが位置しないと判
定した場合に、前記フィールドオブジェクトに対する前記仮想カメラの位置が第1位置に
あるか、又は、前記仮想カメラの視線方向に交差する方向で前記第1位置とは異なる第2
位置にあるかを判定し、前記フィールドオブジェクトに対する前記仮想カメラの位置が前
記第1位置にあると判定した場合と、前記フィールドオブジェクトに対する前記仮想カメ
ラの位置が前記第2位置にあると判定した場合とで、前記フィールドオブジェクトの変形
度合いを異ならせる、付記1から12のうちのいずれか1項に記載の情報処理装置。
[Note 13]
If the deformation processing unit determines that the specific object is not located in the transformed region, it determines whether the position of the virtual camera relative to the field object is at the first position, or whether it is at a second position different from the first position in a direction intersecting the line of sight of the virtual camera.
An information processing device according to any one of the appendices 1 to 12, which determines whether the virtual camera is in a position and determines that the position of the virtual camera relative to the field object is in the first position, and determines that the position of the virtual camera relative to the field object is in the second position, thereby differentiating the degree of deformation of the field object.
[付記14]
前記フィールドオブジェクトに対する前記仮想カメラの位置が前記第1位置である場合
と、前記第2位置である場合とで、前記仮想カメラの視線方向での前記仮想カメラと前記
フィールドオブジェクトとの間の距離を異ならせる距離変更部を更に含む、付記13に記
載の情報処理装置。
[Note 14]
The information processing apparatus according to Appendix 13, further comprising a distance changing unit that causes the distance between the virtual camera and the field object in the line of sight of the virtual camera to differ depending on whether the position of the virtual camera with respect to the field object is the first position or the second position.
[付記15]
前記変化処理部は、前記仮想カメラの視線方向での前記仮想カメラと前記フィールドオ
ブジェクトとの間の距離を変化させる距離変更部を更に含み、
前記領域は、前記距離変更部により前記フィールドオブジェクトに対する前記仮想カメ
ラの距離が変化させられることで変化する、付記1から12のうちのいずれか1項に記載
の情報処理装置。
[Note 15]
The change processing unit further includes a distance changing unit that changes the distance between the virtual camera and the field object in the line of sight direction of the virtual camera,
The information processing apparatus according to any one of the appendices 1 to 12, wherein the region changes as the distance of the virtual camera to the field object is changed by the distance changing unit.
[付記16]
前記変形処理部は、更に、変化後の前記領域に前記特定オブジェクトが位置しないと判
定した場合に、前記フィールドオブジェクトに対する前記仮想カメラの距離が第1距離で
あるか又は前記第1距離とは異なる第2距離であるかを判定し、前記フィールドオブジェ
クトに対する前記仮想カメラの距離が前記第1距離であると判定した場合と、前記フィー
ルドオブジェクトに対する前記仮想カメラの距離が前記第2距離であると判定した場合と
で、前記フィールドオブジェクトの変形度合いを異ならせる、付記15に記載の情報処理
装置。
[Note 16]
The deformation processing unit further determines, when it determines that the specific object is not located in the transformed region, whether the distance of the virtual camera to the field object is a first distance or a second distance different from the first distance, and the degree of deformation of the field object differs depending on whether it is determined that the distance of the virtual camera to the field object is the first distance or the distance of the virtual camera to the field object is the second distance, as described in Appendix 15.
[付記17]
前記変化処理部は、前記フィールドオブジェクトに対する前記仮想カメラの視線方向を
前記第3軸まわりで変化させる回転処理部を更に含み、
前記領域は、前記回転処理部により前記フィールドオブジェクトに対する前記仮想カメ
ラの視線方向が変化させられることで変化する、付記1から16のうちのいずれか1項に
記載の情報処理装置。
[Note 17]
The change processing unit further includes a rotation processing unit that changes the line of sight direction of the virtual camera to the field object around the third axis,
The information processing apparatus according to any one of the appendices 1 to 16, wherein the region is changed by the rotation processing unit changing the line of sight of the virtual camera to the field object.
[付記18]
前記領域は、前記回転処理部により前記第3軸まわりで前記視線方向が所定角度だけ変
化させられるごとにそれぞれが順に前記仮想カメラの画角内に収まる複数の所定領域を含
み、
前記複数の所定領域は、前記特定オブジェクトが位置しない複数の第1の所定領域と、
前記特定オブジェクトが位置する第2の所定領域とを含み、
前記変形処理部は、前記回転処理部により前記第3軸まわりで前記視線方向が変化させ
られる場合に、前記領域が前記複数の第1の所定領域のうちの1つから他の1つへと変化
するか否かを判定し、前記領域が前記複数の第1の所定領域のうちの1つから他の1つへ
と変化すると判定した場合は、変化前の前記視線方向に視たときと変化後の前記視線方向
にみたときとで同じ変形態様となるように前記フィールドオブジェクトを曲げ変形させる
、付記17に記載の情報処理装置。
[Note 18]
The region includes a plurality of predetermined regions, each of which sequentially falls within the field of view of the virtual camera each time the viewing direction is changed by a predetermined angle around the third axis by the rotation processing unit,
The plurality of predetermined regions include a plurality of first predetermined regions where the specific object is not located,
The region includes a second predetermined region in which the specific object is located,
The deformation processing unit determines whether the region changes from one of the plurality of first predetermined regions to another when the line of sight direction is changed around the third axis by the rotation processing unit, and if it is determined that the region changes from one of the plurality of first predetermined regions to another, it bends and deforms the field object so that the deformation pattern is the same when viewed in the line of sight direction before the change and when viewed in the line of sight direction after the change, as described in Appendix 17.
[付記19]
前記オブジェクトは、背景オブジェクトを更に含み、
前記変形処理部により変形される前記フィールドオブジェクトの変形度合いが変化する
か否かを判定し、前記フィールドオブジェクトの変形度合いが変化すると判定した場合に
、前記フィールドオブジェクトに対する前記背景オブジェクトの、前記第3軸の方向に沿
った位置を変化させる背景処理部を更に含む、付記1から18のうちのいずれか1項に記
載の情報処理装置。
[Note 19]
The aforementioned object further includes a background object,
The information processing apparatus according to any one of appendices 1 to 18, further comprising a background processing unit that determines whether the degree of deformation of the field object deformed by the deformation processing unit changes, and if it is determined that the degree of deformation of the field object changes, changes the position of the background object relative to the field object along the direction of the third axis.
[付記20]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置される
オブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情
報処理方法であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けら
れるフィールドオブジェクトと、前記フィールドオブジェクトに配置される特定オブジェ
クトとを含み、
前記フィールドオブジェクトにおける前記仮想カメラの画角内に収まる領域を変化させ
る場合に、変化後の前記領域に前記特定オブジェクトが位置するか否かを判定し、
変化後の前記領域に前記特定オブジェクトが位置すると判定した場合に、前記フィール
ドオブジェクトを第1の変形態様で変形させ、
変化後の前記領域に前記特定オブジェクトが位置しないと判定した場合に、前記フィー
ルドオブジェクトを、前記第1の変形態様とは異なる第2の変形態様で変形させることを
含む、コンピュータにより実行される情報処理方法。
[Note 20]
An information processing method for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, as seen from a virtual camera placed in the virtual space,
The object includes a field object associated with a two-dimensional plane defined by the first and second axes, and a specific object placed on the field object.
When changing the area within the field of view of the virtual camera in the field object, it is determined whether or not the specific object is located in the changed area.
If it is determined that the specific object is located in the changed region, the field object is deformed in the first deformation mode.
A computer-based information processing method, which includes, if it is determined that the specific object is not located in the changed region, deforming the field object in a second deformation mode different from the first deformation mode.
[付記21]
互いに直交する第1軸、第2軸及び第3軸で規定される3次元の仮想空間に配置される
オブジェクトを、前記仮想空間に配置された仮想カメラから視た表現で描画するための情
報処理方法であって、
前記オブジェクトは、前記第1軸及び前記第2軸で規定される2次元平面に対応付けら
れるフィールドオブジェクトと、前記フィールドオブジェクトに配置される特定オブジェ
クトとを含み、
前記フィールドオブジェクトにおける前記仮想カメラの画角内に収まる領域を変化させ
る場合に、変化後の前記領域に前記特定オブジェクトが位置するか否かを判定し、
変化後の前記領域に前記特定オブジェクトが位置すると判定した場合に、前記フィール
ドオブジェクトを第1の変形態様で変形させ、
変化後の前記領域に前記特定オブジェクトが位置しないと判定した場合に、前記フィー
ルドオブジェクトを、前記第1の変形態様とは異なる第2の変形態様で変形させる、
処理をコンピュータに実行させる情報処理プログラム。
[Note 21]
An information processing method for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, as seen from a virtual camera placed in the virtual space,
The object includes a field object associated with a two-dimensional plane defined by the first and second axes, and a specific object placed on the field object.
When changing the area within the field of view of the virtual camera in the field object, it is determined whether or not the specific object is located in the changed area.
If it is determined that the specific object is located in the changed region, the field object is deformed in the first deformation mode.
If it is determined that the specific object is not located in the changed region, the field object is deformed in a second deformation mode different from the first deformation mode.
An information processing program that instructs a computer to perform a task.
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 距離変更部
14211 第1距離変更部
14212 第2距離変更部
1421A ズーム量変更部
1422 向き変更部
1423 迎角変更部
1424 更新反映部
1425 回転処理部
14251 公転処理部
14252 自転処理部
14253 迎角処理部
144 第2移動処理部
145 変形処理部
1451 第1変形パラメータ算出部
1452 第2変形パラメータ算出部
1453 変形パラメータ調整部
1454 原点設定処理部
1455 変形関数適用部
146 投影処理部
147 背景処理部
148 描画データ生成部
1 Game System 3 First Object 10 Server Device 11 Server Communication Unit 12 Server Storage Unit 13 Server Control Unit 14 Horizontal Path 15 Vertical Path 16 Street Tree Object 20 Terminal Device 21 Terminal Communication Unit 22 Terminal Storage Unit 23 Display Unit 24 Input Unit 25 Terminal Control Unit 30 Network 60 Virtual Camera 62 Field of View 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 14211 First Distance Change Unit 14212 Second Distance Change Unit 1421A Zoom Amount Change Unit 1422 Direction Change Unit 1423 Angle of Attack Change Unit 1424 Update Reflection Unit 1425 Rotation Processing Unit 14251 Orbital Processing Unit 14252 Rotation Processing Unit 14253 Angle of Attack Processing Unit 144 Second movement processing unit 145, deformation processing unit 1451, first deformation parameter calculation unit 1452, second deformation parameter calculation unit 1453, deformation parameter adjustment unit 1454, origin setting processing unit 1455, deformation function application unit 146, projection processing unit 147, background processing unit 148, drawing data generation unit
Claims (12)
少なくとも、前記仮想カメラの画角内に収まる領域(以下「画角内領域」という。)に特定オブジェクトが含まれるか否かに基づいて、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを変形させる変形処理部を備える情報処理装置。 An information processing device for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, in a representation as seen from a virtual camera placed in the virtual space,
An information processing device comprising a deformation processing unit that deforms a field object associated with a two-dimensional plane defined by the first axis and the second axis, based on whether or not a specific object is included in the area that falls within the field of view of the virtual camera (hereinafter referred to as the "field of view area").
少なくとも、前記仮想カメラの画角内に収まる領域(以下「画角内領域」という。)に特定オブジェクトが含まれるか否かに基づいて、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを変形させる、情報処理方法。 An information processing method for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, as seen from a virtual camera placed in the virtual space,
An information processing method that deforms a field object associated with a two-dimensional plane defined by the first and second axes, based on whether or not a specific object is included in the area that falls within the field of view of the virtual camera (hereinafter referred to as the "field of view area").
少なくとも、前記仮想カメラの画角内に収まる領域(以下「画角内領域」という。)に特定オブジェクトが含まれるか否かに基づいて、前記第1軸及び前記第2軸で規定される2次元平面に対応付けられるフィールドオブジェクトを変形させる変形処理部として機能させる情報処理プログラム。 An information processing program for rendering objects placed in a three-dimensional virtual space defined by mutually orthogonal first, second, and third axes, as seen from a virtual camera placed in the virtual space, wherein the information processing device is
An information processing program that functions as a deformation processing unit that deforms a field object associated with a two-dimensional plane defined by the first axis and the second axis, based on whether or not a specific object is included in the area that falls within the field of view of the virtual camera (hereinafter referred to as the "field of view area").
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2025066644A JP7844064B2 (en) | 2020-06-26 | 2025-04-15 | Information processing device, information processing method, information processing program |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020110767A JP7223726B2 (en) | 2020-06-26 | 2020-06-26 | Information processing device, information processing method, information processing program |
| JP2023016040A JP2023054002A (en) | 2020-06-26 | 2023-02-06 | Information processing device, information processing method, information processing program |
| JP2024166979A JP7672183B2 (en) | 2020-06-26 | 2024-09-26 | Information processing device, information processing method, and information processing program |
| JP2025066644A JP7844064B2 (en) | 2020-06-26 | 2025-04-15 | Information processing device, information processing method, information processing program |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024166979A Division JP7672183B2 (en) | 2020-06-26 | 2024-09-26 | Information processing device, information processing method, and information processing program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2025108585A JP2025108585A (en) | 2025-07-23 |
| JP7844064B2 true JP7844064B2 (en) | 2026-04-13 |
Family
ID=80109971
Family Applications (4)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020110767A Active JP7223726B2 (en) | 2020-06-26 | 2020-06-26 | Information processing device, information processing method, information processing program |
| JP2023016040A Pending JP2023054002A (en) | 2020-06-26 | 2023-02-06 | Information processing device, information processing method, information processing program |
| JP2024166979A Active JP7672183B2 (en) | 2020-06-26 | 2024-09-26 | Information processing device, information processing method, and information processing program |
| JP2025066644A Active JP7844064B2 (en) | 2020-06-26 | 2025-04-15 | Information processing device, information processing method, information processing program |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020110767A Active JP7223726B2 (en) | 2020-06-26 | 2020-06-26 | Information processing device, information processing method, information processing program |
| JP2023016040A Pending JP2023054002A (en) | 2020-06-26 | 2023-02-06 | Information processing device, information processing method, information processing program |
| JP2024166979A Active JP7672183B2 (en) | 2020-06-26 | 2024-09-26 | Information processing device, information processing method, and information processing program |
Country Status (1)
| Country | Link |
|---|---|
| JP (4) | JP7223726B2 (en) |
Citations (5)
| 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 |
-
2020
- 2020-06-26 JP JP2020110767A patent/JP7223726B2/en active Active
-
2023
- 2023-02-06 JP JP2023016040A patent/JP2023054002A/en active Pending
-
2024
- 2024-09-26 JP JP2024166979A patent/JP7672183B2/en active Active
-
2025
- 2025-04-15 JP JP2025066644A patent/JP7844064B2/en active Active
Patent Citations (5)
| 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 |
|---|---|
| JP7672183B2 (en) | 2025-05-07 |
| JP2022007672A (en) | 2022-01-13 |
| JP2024174055A (en) | 2024-12-13 |
| JP2025108585A (en) | 2025-07-23 |
| JP7223726B2 (en) | 2023-02-16 |
| JP2023054002A (en) | 2023-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2466445B1 (en) | Input direction determination terminal, method and computer program product | |
| US20180161674A1 (en) | Terminal device | |
| EP2605118A2 (en) | Input direction determination system, terminal, server, network system, and input direction determination method | |
| US11847714B2 (en) | Information processing device, information processing method, and information processing program | |
| JP6872401B2 (en) | Game system and programs | |
| JP5942031B1 (en) | Program, game control method, and information processing apparatus | |
| JP6928060B2 (en) | Input processing device and program | |
| JP5977878B1 (en) | Program, game control method, and information processing apparatus | |
| JP7844064B2 (en) | Information processing device, information processing method, information processing program | |
| JP2025176148A (en) | Computer program, virtual space display device, and virtual space display method | |
| JP6807732B2 (en) | Programs, game control methods, and information processing equipment | |
| JP7778325B2 (en) | Information processing device, information processing method, and information processing program | |
| JP7507458B2 (en) | Information processing device, information processing method, and information processing program | |
| CN115708956A (en) | Game picture updating method and device, computer equipment and medium | |
| JP7849798B2 (en) | Information processing device, information processing method, and program | |
| JP6960214B2 (en) | Programs, game control methods, and information processing equipment | |
| JP7051954B2 (en) | Programs, game control methods, and information processing equipment | |
| JP2017094041A (en) | Program, game control method, and information processing apparatus | |
| JP6069571B1 (en) | Program, game control method, and information processing apparatus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20250415 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20251007 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20251127 |
|
| 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: 20260224 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20260325 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7844064 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |