JP4326502B2 - 表示領域を移動させる画像処理プログラムおよび画像処理装置 - Google Patents

表示領域を移動させる画像処理プログラムおよび画像処理装置 Download PDF

Info

Publication number
JP4326502B2
JP4326502B2 JP2005154233A JP2005154233A JP4326502B2 JP 4326502 B2 JP4326502 B2 JP 4326502B2 JP 2005154233 A JP2005154233 A JP 2005154233A JP 2005154233 A JP2005154233 A JP 2005154233A JP 4326502 B2 JP4326502 B2 JP 4326502B2
Authority
JP
Japan
Prior art keywords
display area
screen
display
image processing
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2005154233A
Other languages
English (en)
Other versions
JP2006331109A5 (ja
JP2006331109A (ja
Inventor
大貴 岩本
昌弘 新田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2005154233A priority Critical patent/JP4326502B2/ja
Priority to US11/339,568 priority patent/US8866856B2/en
Priority to EP06002063.3A priority patent/EP1726342B1/en
Publication of JP2006331109A publication Critical patent/JP2006331109A/ja
Publication of JP2006331109A5 publication Critical patent/JP2006331109A5/ja
Application granted granted Critical
Publication of JP4326502B2 publication Critical patent/JP4326502B2/ja
Priority to US14/491,562 priority patent/US9592447B2/en
Priority to US15/420,859 priority patent/US10653958B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5255Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/26Output arrangements for video game devices having at least one additional display device, e.g. on the game controller or outside a game booth
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/301Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device using an additional display connected to the game console, e.g. on the controller
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6676Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera by dedicated player input
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6684Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera by dynamically adapting its position to keep a game object in its viewing frustrum, e.g. for tracking a character or a ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8076Shooting

Description

本発明は、画像処理プログラムおよび画像処理装置に関し、より特定的には、仮想空間の領域のうちで画面に表示される領域(表示領域)を移動させるための画像処理プログラムおよび画像処理装置に関する。
従来、ゲーム装置やゲームプログラム等において、仮想空間に登場するオブジェクトを画面に表示する技術がある。例えば、3次元の仮想のゲーム空間にオブジェクト(キャラクタ)が登場するゲームにおいて、主要な複数のオブジェクトが画面内に収まるように表示領域を決定するゲームがある(例えば、非特許文献1参照。)。このゲームは、複数のキャラクタが登場する格闘ゲームであり、プレイヤは複数のキャラクタのうちの1つを操作する。ゲーム装置は、各キャラクタが画面内に収まるように仮想カメラの位置および向きを自動的に調節する。そして、仮想カメラからゲーム空間を撮影した画像が画面に表示される。これによって、プレイヤは、自己の操作するキャラクタや対戦相手のキャラクタを見失うことなく、ゲームを楽しむことができる。
「任天堂公式ガイドブック 大乱闘スマッシュブラザーズDX」、株式会社小学館、2002年1月20日、p4
ここで、ゲームの内容によっては、主要なオブジェクトが画面に表示されているだけでは、必ずしもプレイヤにとって見やすい画面とはならない場合がある。例えば、プレイヤキャラクタがゲーム空間の所定方向に向かって矢を放ったり銃を撃ったりする場合には、当該所定方向の領域を広く画面に表示するべきである。具体的には、プレイヤキャラクタが画面の右上方向に向かって矢を放つ場合、プレイヤキャラクタが画面の左下側に表示されるようにして、プレイヤキャラクタの右上方向の領域を広く画面に表示すべきである。また、プレイヤキャラクタを操作する場合に限らず、ゲーム空間内のある地点を起点として所定方向に向かって何らかの操作を行う場合には、当該所定方向の領域が画面に広く表示されることがプレイヤにとって好ましい。
しかし、上記非特許文献1に記載の方法では、ゲーム空間内の複数のオブジェクトに基づいて表示領域が決定される。したがって、特定のオブジェクトが存在しない領域については、たとえ当該領域がプレイヤが見たい領域であっても、当該領域を中心としたゲーム空間を表示することができなかった。そのため、上述したようなプレイヤキャラクタが矢を放つ場合には、プレイヤにとって見やすい画面を表示することができなかった。
それ故、本発明の目的は、仮想空間における表示領域をユーザが自由に設定することができる画像処理プログラムおよび画像処理装置を提供することである。
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、本欄における括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明を何ら限定するものではない。
第1の発明は、ユーザによって操作可能な操作対象オブジェクト(プレイヤキャラクタ41)が配置された3次元の仮想空間(ゲーム空間)に設定される注視点に応じてその位置が設定される仮想カメラを用いて、当該操作オブジェクトを含む仮想空間内の画像を画面に表示する画像処理装置(ゲーム装置10)のコンピュータ(CPUコア21等)に実行させる画像処理プログラム(ゲームプログラム)である。なお、画像処理装置は、ユーザが指示した表示装置(第2のLCD12)の画面上の点に対応する入力座標を出力する入力装置(タッチパネル15)を備える。画像処理プログラムは、取得ステップ(S13)と、第1算出ステップ(S15)と、第2算出ステップ(S19およびS20)と、移動制御ステップ(S24)と、表示制御ステップ(S6)と、検知ステップ(S12)とをコンピュータに実行させる。取得ステップにおいては、コンピュータは、入力装置によって出力された入力座標(図9に示す点P3)を取得する。第1算出ステップにおいては、予め決められた画面上の基準座標(図9に示す点P2)を始点とし、入力座標を終点とする差分ベクトル(図9に示すベクトルV1)を算出する。第2算出ステップにおいては、操作対象オブジェクトの位置から一意に決められる仮想空間内の固定点(図13に示す点p1)を基点とし、差分ベクトルの方向に基づいた仮想空間内の方向と差分ベクトルの大きさに基づいた仮想空間内の距離とによって決められる位置まで注視点を移動させるための移動指標データ(58)を算出する(図13参照)。移動制御ステップにおいては、移動指標データに基づいて注視点を移動させる。表示制御ステップにおいては、注視点の移動に応じて移動された仮想カメラに基づいた画像を生成し、当該画像を表示装置の画面に表示させる。検知ステップにおいては、入力装置に対する入力が検出されている状態から、入力装置に対する入力が検出されていない状態になったことを検知する。このとき、第1の表示領域設定ステップは、検知ステップにおいて入力装置に対する入力が検出されていない状態になったことが検知されたとき、表示領域をオブジェクトの位置に基づいて設定する。
第2の発明においては、画像処理プログラムは、条件判定ステップ(S11)と、第2の表示領域設定ステップ(S22)とをさらにコンピュータに実行させてもよい。条件判定ステップにおいては、所定の条件を満たしたか否かを判定する。第2の表示領域設定ステップにおいては、条件判定ステップにおいて、所定の条件を満たしてないと判定された場合に、仮想空間のうち画面に表示する表示領域をオブジェクトの位置に基づいて設定する。また、条件判定ステップにおいて、所定の条件を満たしたと判定された場合に、第1の表示領域設定ステップを実行する。表示制御ステップは、第1の表示領域設定ステップまたは第2の表示領域設定ステップによって設定された表示領域に従って、仮想空間の画像を生成し、当該画像を表示装置の画面に表示させる。
の発明においては、第1の表示領域設定ステップは、第1算出ステップ(S15)を含んでいてもよい。第1算出ステップにおいては、予め決められた画面上の基準座標を始点とし、入力装置による入力座標を終点とする差分ベクトルを算出する。このとき、差分ベクトルに基づいて表示領域を設定する。
の発明においては、第1の表示領域設定ステップは、第2算出ステップ(S19およびS20)をさらに含んでいてもよい。第2算出ステップにおいては、オブジェクトの位置を基点とし、差分ベクトルの方向に基づいた仮想空間内の方向と差分ベクトルの大きさに基づいた仮想空間内の距離とによって決められる位置を算出する。このとき、第2算出ステップで算出された位置に基づいて表示領域を設定する。
の発明においては、第1の表示領域設定ステップまたは第2の表示領域設定ステップにおいては、表示領域からオブジェクトが外れないように表示領域を設定してもよい。
第6の発明においては、第2の表示領域設定ステップにおいては、表示領域からオブジェクトが外れないように表示領域を設定するようにしてもよい。
の発明においては、表示制御ステップにおいて、第1の表示領域設定ステップによって設定された表示領域に向けて徐々に移動するように仮想空間の画像を生成し、当該画像を表示装置の画面に表示させてもよい。
の発明においては、表示制御ステップにおいて、第2の表示領域設定ステップによって設定された表示領域に向けて徐々に移動するように仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させてもよい。
の発明においては、表示領域は、仮想空間に設定される注視点に基づいて設定されてもよい。このとき、表示制御ステップは、注視点に基づいてその位置が設定される仮想カメラを用いて、仮想空間の画像を生成し、当該画像を表示装置の画面に表示させる。
10の発明においては、表示領域は、予め決められた画面上の基準座標に基づいて設定されてもよい。
11の発明においては、基準座標は、画面上の中心座標であってもよい。
12の発明においては、所定の条件とは、オブジェクトのステータスによるものであってもよい。
13の発明においては、オブジェクトのステータスとは、当該オブジェクトが所持しているアイテムの使用状況であってもよい。
14の発明においては、アイテムとは、当該アイテムの利用方向を指示する必要のあるアイテムであってもよい。

また、本発明は、上記画像処理プログラムを実行することによって実現される機能と同等の機能を有する画像処理装置の形態で提供されてもよい。
本願発明によれば、プレイヤが指示した入力座標に応じて表示領域が移動する。したがって、プレイヤは、画面上における入力位置を検出可能なポインティングデバイスを用いて表示領域を移動させることができる。また、表示領域の移動量を決定するための差分ベクトルは、画面上における基準座標と入力座標とに基づいて算出されるので、その大きさが制限される。したがって、表示領域の移動範囲を、固定点を中心とした所定の範囲に制限することができ、表示領域が固定点から大きく外れた位置になることはない。例えば、固定点を操作オブジェクトの位置またはその近傍に設定することによって、プレイヤは、操作オブジェクトを中心とした範囲で表示領域を自由に移動させることができる。
本願発明によれば、目標点を設定することによって、現在の表示領域がどの位置にあっても、プレイヤによる入力に従った位置に表示領域を容易に移動させることができる。
本願発明によれば、表示領域が急に移動する際に画面が見にくくなることを防止することができる。なお、表示領域が急に移動する場合には、仮想空間の画像が別の画像に切り替わったように見えることから、プレイヤにとっては画像が見づらくなるおそれがある。これに対して、本願発明によれば、表示領域を次第に移動させることができるので、別の画面に切り替わったような感覚をプレイヤに与えることがなく、プレイヤにとって見やすい画像を表示することができる。
本願発明によれば、操作対象オブジェクトを画面内に常に表示させることができる。
本願発明によれば、プレイヤは、入力装置に対する入力を中止することによって、表示状態を、固定点が基準座標の位置に表示される状態に容易に戻すことができる。これによって、表示領域を移動させる操作の操作性を向上することができる。
本願発明によれば、目標点を設定するために用いられる空間ベクトルの大きさが上限値以下の値に制限される。したがって、上限値を適切に設定することによって、操作対象オブジェクトを画面内に常に表示させることができる。
本願発明によれば、空間ベクトルを差分ベクトルから簡易な方法で算出することができる。これによれば、2次元の画面の座標系を3次元の仮想空間の座標系に変換する等の複雑な計算が不要となるので、少ない処理量で目標点の位置を計算することができる。
本願発明によれば、仮想カメラが所定面に対して90°未満の俯角を有するように設定される。このとき、空間ベクトルにおける第3方向の成分と第4方向の成分との割合を、差分ベクトルにおける第1方向の成分と第2方向の成分との割合と同じにすると、プレイヤは、表示領域が移動する際に違和感を抱くおそれがある。すなわち、画面における第1方向に関して表示領域の移動量が少ないようにプレイヤが感じるおそれがある。これに対して第11の発明によれば、差分ベクトルまたは空間ベクトルの方向を補正することによって、プレイヤが抱く上記違和感を軽減することができる。
以下、本発明の一実施形態に係る画像処理プログラムおよび画像処理装置について説明する。まず、画像処理プログラム(ゲームプログラム)を実行する画像処理装置の一例である、携帯型のゲーム装置の構成について説明する。図1は、ゲーム装置の外観図である。図1において、ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は上側ハウジング13aと下側ハウジング13bとによって構成されており、第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。第1のLCD11および第2のLCD12の解像度はいずれも256dot×192dotである。なお、第1の実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
上側ハウジング13aには、後述する1対のスピーカ(図2の30)からの音を外部に放出するための音抜き孔18aおよび18bが形成されている。
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、Yボタン14g、Lボタン14LおよびRボタン14Rが設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15(図1に示す2点鎖線)が装着されている。また、下側ハウジング13bには、電源スイッチ19や、メモリカード17やスティック16を収納するための挿入口(図1に示す一点鎖線)も設けられている。
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル15は、その表面をスティック16で触れると、その接触位置に対応する座標データを出力する機能を有している。タッチパネル15は、プレイヤによる入力位置(入力座標)を所定のサンプリング時間間隔で検出し、上記座標データを出力する。なお、以下ではプレイヤがタッチパネル15をスティック16で操作するものとして説明を行うが、スティック16の代わりにペン(スタイラスペン)や指でタッチパネル15を操作することももちろん可能である。第1の実施形態では、タッチパネル15として、第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度が一致している必要はない。
メモリカード17はゲームプログラムを記録した記録媒体であり、下部ハウジング13bに設けられた挿入口に着脱自在に装着される。
次に、図2を参照してゲーム装置10の内部構成を説明する。図2において、ハウジング13に収納される電子回路基板20には、CPUコア21が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24およびLCDコントローラ31が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。メモリカード17は、ゲームプログラムを記憶するROM171と、バックアップデータを書き換え可能に記憶するRAM172を搭載する。メモリカード17のROM171に記憶されたゲームプログラムはRAM24にロードされ、RAM24にロードされたゲームプログラムがCPUコア21によって実行される。RAM24には、ゲームプログラムの他にも、CPUコア21がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。I/F回路25には、タッチパネル15と、スピーカ30と、図1の十字スイッチ14aやAボタン14d等からなる操作スイッチ部14とが接続される。スピーカ30は、音抜き孔18aおよび18bの内側に配置される。
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて、RAM24に記憶されているゲーム画像を生成するためのデータに基づいて第1のゲーム画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2のゲーム画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29はLCDコントローラ31に接続されている。
LCDコントローラ31はレジスタ32を含む。レジスタ32はCPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1のゲーム画像を第1のLCD11に出力し、第2VRAM29に描画された第2のゲーム画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1のゲーム画像を第2のLCD12に出力し、第2VRAM29に描画された第2のゲーム画像を第1のLCD11に出力する。
なお、上記のようなゲーム装置10の構成は単なる一例に過ぎず、本発明は、少なくとも1つの表示装置を有する任意のコンピュータシステムに適用することができる。また、本発明のゲームプログラムは、メモリカード17などの外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよいし、さらにはコンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。
次に、ゲーム装置10においてゲームプログラムを実行することによって行われるゲームの概要を説明する。本ゲームにおいては、プレイヤによって操作されるプレイヤキャラクタおよび敵キャラクタが3次元の仮想のゲーム空間に登場する。プレイヤは、プレイヤキャラクタを操作して敵キャラクタに対して攻撃を行い、敵キャラクタを倒すことを目的としてゲームを行う。以下、本ゲームの概要について図3および図4を用いて説明する。
図3は、本実施形態におけるゲーム画面の一例を示す図である。図3においては、プレイヤキャラクタ41を含むゲーム空間の画像が第2のLCD12に表示される。なお、本実施形態においては、第1のLCD11は使用されなくてもよいし、プレイヤキャラクタの体力や能力を示す各種パラメータや、プレイヤキャラクタが所持するアイテム等の情報が第1のLCD11に表示されてもよい。
図3において、プレイヤキャラクタ41は第2のLCD12の画面の中心に表示されている。本実施形態では、表示領域を移動する操作(詳細は後述する)が行われるとき以外は、プレイヤキャラクタ41は画面の中心に表示される。プレイヤキャラクタ41は、剣や弓矢等のアイテム(武器)を使用することができ、プレイヤキャラクタ41の周りの敵キャラクタを剣で攻撃したり、プレイヤキャラクタ41から離れた位置の敵キャラクタを弓矢で攻撃したりすることができる。ただし、本ゲームでは、プレイヤキャラクタ41が同時に使用できるアイテムの数は1つとし、プレイヤは、プレイヤキャラクタ41が使用するアイテムを適宜変更してゲームをプレイする。本実施形態では、プレイヤキャラクタ41が弓矢を使用する場合、プレイヤはタッチパネルへの入力を行うことによって表示領域を移動させることができる。
図3においては、プレイヤキャラクタ41が弓矢を使用することができる状態である。このとき、プレイヤは表示領域を移動させることができる。具体的には、プレイヤは、表示領域を移動させるために画面上(タッチパネル15の入力面上)の任意の位置をスティック16で指定する。例えば、画面右下方向に向かって弓矢を放とうとする場合、プレイヤは、図3に示すように、プレイヤキャラクタ41の右下方向の位置(ゲーム空間における地点P1が表示される位置)をスティック16で指定する。
図4は、図3のゲーム画面から表示領域が移動された後のゲーム画面を示す図である。プレイヤがタッチパネル15への入力を行うと、ゲーム装置10は、タッチパネル15の入力面上においてプレイヤが入力を行った位置(入力位置)を表す座標(入力座標)を検出する。そして、画面上の予め決められた基準位置を表す座標(基準座標)を始点とし、入力座標を終点とする2次元のベクトル(後述する差分ベクトル)を算出する。なお、ここでは基準位置は画面の中心の位置である。詳細は後述するが、表示領域は、このベクトルに基づいて移動される。図4においては、図3においてベクトルの終点の位置に表示されていた地点P1が画面の中心に表示されるように表示領域が移動される。
図4においては、図3に示す状態から表示領域が右下方向に移動している。これによって、プレイヤキャラクタ41の主として右下側のゲーム空間が画面に表示される。すなわち、プレイヤが矢を放とうとする右下方向の領域が広く表示される。矢を放つ方向が広く表示されることによって、プレイヤにとって見やすいゲーム画面となる。プレイヤは、例えば図4に示すように、図3の状態では発見できなかった敵キャラクタ42を発見することができる。このように、プレイヤが自由に表示領域を移動させることによって、弓矢の攻撃をより効果的に行うことができ、ゲームの操作性を向上することができる。
次に、ゲームプログラムを実行することによってゲーム装置10において行われるゲーム処理の詳細を説明する。まず、本ゲーム処理において構築される仮想のゲーム空間について図5を用いて説明する。図5は、仮想の3次元のゲーム空間を模式的に示す図である。図5に示すように、仮想の3次元のゲーム空間には、プレイヤキャラクタがその上を移動する地面43が構築される。地面43は、ゲーム空間の位置を表すためのワールド座標系のxz平面と平行に構築される。また、ゲーム空間の画像を第2のLCD12に表示するための仮想カメラは、視線方向(図5に示す矢印45)が地面に対して所定の俯角を有するように設定される。俯角θの角度は90°未満に設定される。また、仮想カメラの視線方向は、xz平面に投影したときの方向がz軸に平行な方向である。したがって、仮想空間において画面に表示される領域(換言すれば、仮想カメラによって撮影される領域。以下、表示領域と呼ぶ。)46は、透視投影の場合は台形となり、平行投影の場合は長方形となる。仮想カメラによって撮影されたゲーム空間の画像が画面に表示される際、ゲーム空間のx軸方向が画面の横方向(画面の座標系のX軸方向)となり、ゲーム空間のz軸方向が画面の中心において画面の縦方向(画面の座標系のY軸方向)となるように当該画像が表示される。なお、画面の座標系は、画面の左上を原点とし、画面の下方向をY軸正方向とし、画面の右方向をX軸正方向とする座標系であるとする。
表示領域を移動させる操作が行われていない場合、仮想カメラの注視点は、プレイヤキャラクタ41の位置に設定される。したがって、この場合、プレイヤキャラクタ41は画面の中央に表示されることとなる。仮想カメラの位置44は、注視点の位置に従って決定される。本実施形態では、仮想カメラのy軸方向の位置は予め定められており、注視点の位置が移動すること応じて仮想カメラは視線方向を変化させずにxz平面に平行に移動する。具体的には、注視点のx軸方向に関する移動量と仮想カメラの位置44のx軸方向に関する移動量とは同じであり、かつ、注視点のz軸方向に関する移動量と仮想カメラの位置44のz軸方向に関する移動量とは同じである。
次に、ゲーム処理において用いられる主なデータについて図6を用いて説明する。図6は、ゲーム装置10のRAM24に記憶される主なデータを示す図である。図6に示すように、RAM24には、キャラクタ空間座標データ50、アイテムデータ51、基準座標データ52、入力座標データ53、差分ベクトルデータ54、上限値データ55、補正データ56、仮想カメラデータ57、移動指標データ58、および移動ベクトルデータ59等が記憶される。なお、RAM24には、図6に示すデータの他、プレイヤキャラクタに関するデータ(プレイヤキャラクタの画像データや位置データ等)やゲーム空間に関するデータ(地形データ等)等、ゲーム処理に必要なデータが記憶される。
キャラクタ空間座標データ50は、プレイヤキャラクタのゲーム空間における位置を表す座標(キャラクタ空間座標)を示すデータである。キャラクタ空間座標データ50は、具体的には、上記ワールド座標系(3次元座標系)の座標データである。アイテムデータ51は、プレイヤキャラクタが現在使用可能なアイテムを示すデータである。例えばプレイヤキャラクタが弓矢を使用可能である状態のとき、アイテムデータ51は弓矢を示すデータに設定される。
基準座標データ52は、予め決められた画面上の上記基準位置を表す座標(画面基準座標)を示すデータである。基準座標データ52は、具体的には、画面の座標系(2次元座標系)の座標データである。基準位置は、ゲームプログラムにおいて予め決められている。本実施形態では、基準位置は画面の中心の位置である。基準座標データ52は、上記差分ベクトルを算出するために用いられる。
入力座標データ53は、タッチパネル15がプレイヤによる入力を検出した画面上の位置を表す座標(入力座標)を示すデータである。具体的には、入力座標データ53は、画面の座標系(2次元座標系)で表される座標データである。また、差分ベクトルデータ54は、上記画面基準座標の位置を始点とし、上記入力座標の位置を終点とする2次元のベクトル(差分ベクトル)を示すデータである。
上限値データ55は、差分ベクトルがとり得る大きさ(上限値)を示すデータである。本実施形態では、画面基準座標および入力座標から算出される差分ベクトルの大きさが上限値を超える場合、差分ベクトルの大きさが当該上限値に補正される。上限値は、ゲームプログラムにおいて予め決められている。また、補正データ56は、差分ベクトルの各成分(X成分およびY成分)を補正する倍率を示すデータである。補正データ56には、X成分を補正する倍率(第1倍率)を示すデータ、およびY成分を補正する倍率(第2倍率)を示すデータが含まれる。
仮想カメラデータ57は、仮想カメラの各種パラメータを示すデータである。仮想カメラのパラメータには、仮想カメラの位置を表す座標データ、注視点の位置を表す座標データ、および視線方向を示すデータが含まれる。
移動指標データ58は、表示領域を移動させる方向および移動量を示すデータである。具体的には、移動指標データ58は、ゲーム空間における目標点の位置(目標位置)を表す座標(目標座標)を示すデータである。目標点とは、仮想カメラの注視点を移動させるべき目標となる点である。移動指標データ58は、具体的には、ワールド座標系で表される座標データである。詳細は後述するが、移動指標データは、上記差分ベクトルに基づいて算出される。なお、他の実施形態においては、移動指標データ58は、注視点を移動させる方向および移動量を示すベクトルのデータであってもよいし、仮想カメラの位置を移動させる方向および移動量を示すベクトルのデータであってもよい。
移動ベクトルデータ59は、単位時間当たり(例えば1フレーム当たり)に注視点を移動させる移動方向および移動量を示すベクトル(移動ベクトル)を示すデータである。移動ベクトルは、現在の注視点の位置から目標位置までのベクトルに基づいて算出される。なお、移動ベクトルは3次元のベクトルであるが、xz平面に平行な地面上においてのみ注視点を移動させる場合には、x成分およびz成分からなる2次元のベクトルとしてもよい。
次に、ゲームプログラムを実行することによってゲーム装置10において行われるゲーム処理の詳細を、図7〜図13を用いて説明する。図7は、ゲーム装置10において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置10の電源が投入されると、ゲーム装置10のCPUコア21は、図示しないブートROMに記憶されている起動プログラムを実行し、RAM24等の各ユニットが初期化される。そして、メモリカード17に格納されたゲームプログラムがRAM24に読み込まれ、CPUコア21によって当該ゲームプログラムの実行が開始される。図7に示すフローチャートは、以上の処理が完了した後に行われるゲーム処理を示すフローチャートである。なお、図7および図8に示すフローチャートにおいては、ゲーム処理のうち、表示領域を移動させる操作に関する処理について詳細に示し、本願発明と関連しない他のゲーム処理については詳細な説明を省略する。
図7のステップS1において、まず、ゲーム空間が構築され、プレイヤキャラクタや敵キャラクタが初期位置に配置される。そして、プレイヤキャラクタとその周囲のゲーム空間を撮影する位置に仮想カメラが設定され、仮想カメラから視線方向を見たときのゲーム空間の画像が第2のLCDに表示される。このステップS1の次のステップS2以降の処理において、タッチパネル等を用いたゲーム操作が受け付けられ、ゲームが進行する。なお、ステップS2〜S7の処理ループは、1回の処理ループが1フレームの間に実行される。
ステップS2において、CPUコア21は、各操作スイッチ14a〜14f,14R,および14Lが押下されたか否かを示す操作データを操作スイッチ部14から取得する。続くステップS3において、プレイヤキャラクタおよび敵キャラクタの動作が制御される。具体的には、ステップS2で取得された操作データに基づいてプレイヤキャラクタの動作(移動動作および攻撃動作を含む)が決定される。プレイヤキャラクタが移動動作を行う場合、RAM24に記憶されているキャラクタ空間座標データキャラクタ空間座標データ50の内容が、移動後の位置を示す座標データに更新される。また、ゲームプログラムにおいて予め決められたアルゴリズムに従って敵キャラクタの動作が決定される。
続くステップS4において、プレイヤキャラクタが使用するアイテムが決定される。ここでは、プレイヤキャラクタは、Lボタン14Lが押下されている間は弓矢を使用し、Lボタン14Lが押下されていないときは剣を使用する。すなわち、CPUコア21は、ステップS2で取得された操作データに基づいて、Lボタン14Lが押下されているか否かを判断し、Lボタン14の押下の有無に応じてアイテムを決定する。このとき、RAM24に記憶されているアイテムデータ51の内容が、ステップS4で決定されたアイテムを示すデータに更新される。ステップS4の次にステップS5の処理が実行される。
ステップS5において、表示領域決定処理が実行される。表示領域決定処理は、プレイヤの操作に従って表示領域を決定する処理である。以下、表示領域決定処理の詳細を図8〜図13を用いて説明する。
図8は、図7に示すステップS5の詳細な処理の流れを示すフローチャートである。表示領域決定処理においてはまずステップS11において、プレイヤキャラクタの使用するアイテムが、予め定められている所定のアイテム(ここでは、弓矢)であるか否かが判定される。具体的には、CPUコア21は、RAM24に記憶されているアイテムデータ51が当該所定のアイテムを示すか否かを判定する。アイテムデータ51が所定のアイテムを示す場合、ステップS12の処理が実行される。一方、アイテムデータ51が所定のアイテム以外のアイテムを示す場合、後述するステップS21の処理が実行される。
ステップS12において、プレイヤによるタッチパネル15への入力(タッチ入力)があったか否かが判定される。具体的には、CPUコア21は、タッチパネル15から出力されるデータを読み込み、タッチパネル15から座標データが出力されているか否かを判定する。タッチパネル15から座標データが出力されている場合、タッチ入力があると判定されてステップS13の処理が行われる。一方、入力がないことを示すデータがタッチパネル15から出力されている場合、タッチ入力がないと判定されて後述するステップS21の処理が行われる。
ステップS13において、入力座標が取得される。すなわち、CPUコア21は、RAM24に記憶される入力座標データ53の内容を、ステップS12でタッチパネル15から読み込んだ座標データに更新する。なお、更新前の座標データは別途RAM24に記憶される。ステップS13の次にステップS14の処理が実行される。
ステップS14において、ステップS13で取得された入力座標は前回から変化したか否かが判定される。具体的には、ステップS13で更新された入力座標データ53により示される入力座標が、更新前と更新後とで変化しているか否かが判定される。ステップS14の判定において、入力座標が変化していると判定される場合、ステップS15の処理が実行される。一方、入力座標が変化していないと判定される場合、後述するステップS24の処理が実行される。なお、他の実施形態においては、更新前の入力座標と更新後の入力座標との距離が所定距離以下である場合には、入力座標が変化していないとみなしてステップS24の処理が実行されるようにしてもよい。
ステップS15において、差分ベクトルが算出される。図9は、図8のステップS15の処理を説明するための図である。ここでは、図9に示すように、画面の中央にプレイヤキャラクタ41が表示されているとする。差分ベクトルは、上記画面基準座標(点P2の座標)を始点とし、入力座標(点P3の座標)を終点とするベクトルV1として算出される。ここで、入力座標は、ステップS13でRAM24に記憶された入力座標データ53により示される。したがって、CPUコア21は、RAM24に記憶されている基準座標データ52および入力座標データ53を用いて差分ベクトルを算出する。算出された差分ベクトルのデータは、差分ベクトルデータ54としてRAM24に更新して記憶される。ステップS15の次にステップS16の処理が実行される。
ステップS16において、ステップS15で算出された差分ベクトルの大きさが所定の上限値以下であるか否かが判定される。なお、この上限値は、RAM24に記憶されている上限値データ55により示される。CPUコア21は、RAM24に記憶されている差分ベクトルデータ54および上限値データ55を参照することによってステップS16の判定を行う。図10は、図8のステップS16の処理を説明するための図である。差分ベクトルの大きさが上限値以下である場合とは、図10に示すベクトルV1の終点の位置P3が、図10に示す領域61内に存在する場合である。領域61は、上記位置P2を中心とする、半径が上限値である円形の領域である。つまり、ステップS16の判定は、プレイヤによる入力位置P3が、画面上の位置P2を中心とする円形領域61内に含まれるか否かを判定する処理である。ステップS16の判定において、差分ベクトルの大きさが所定の上限値よりも大きいと判定される場合、ステップS17の処理が実行される。一方、差分ベクトルの大きさが所定の上限値以下であると判定される場合、ステップS18の処理が行われる。
ステップS17において、ステップS15で算出された差分ベクトルの大きさが上記上限値に補正される。図11は、図8のステップS17の処理を説明するための図である。図11に示すように、ベクトルV1の終点の位置P3が領域61外に位置する場合、差分ベクトルはベクトルV2に補正される。ベクトルV2は、ベクトルV1と同じ向きであり、領域61の外周を終点とするベクトルである。このとき、RAM24に記憶されている差分ベクトルデータ54の内容は、ステップS17における補正後の差分ベクトルのデータに更新される。ステップS17の次にステップS18の処理が実行される。
上記ステップS16およびS17の処理は、差分ベクトルの大きさを制限する処理である。ここで、差分ベクトルの大きさを制限しない場合には、差分ベクトルの大きさおよび向きに基づいて表示領域を移動させる結果、プレイヤキャラクタ41の一部が画面から外れてしまうことがある。そこで、本実施形態では、上記ステップS16およびS17の処理によって、プレイヤキャラクタ41の一部が画面から外れてしまわないように、差分ベクトルの大きさを制限している。なお、プレイヤキャラクタの全体を画面に常に表示させるためには、画面の中心から端までの最短の長さ(図11では、画面の中心から上端または下端までの長さ)よりもやや小さく上限値を設定すればよい。具体的には、上限値は、当該長さからプレイヤキャラクタの表示幅を引いた長さとすればよい。
ステップS18において、差分ベクトルの各成分(X成分およびY成分)の値が補正される。具体的には、CPUコア21は、差分ベクトルのX成分の値に上記第1倍率を積算し、差分ベクトルのY成分の値に上記第2倍率を積算する。なお第1および第2倍率の値は、RAM24に記憶されている補正データ56を参照することによって知ることができる。なお、CPUコア21は、RAM24に記憶されている差分ベクトルデータ54の内容を、ステップS18における補正後の差分ベクトルのデータに更新する。
図12は、図8のステップS18の処理を説明するための図である。ステップS18においては、補正前の差分ベクトルV2がベクトルV3に補正される。補正前の差分ベクトルV2の各成分を(LX,LY)とし、補正後の差分ベクトルV3の各成分を(dX,dY)とすると、(dX,dY)は次の式(1)に従って算出される。
dX=A1×LX
dY=A2×LY …(1)
式(1)において、A1は上記第1倍率であり、A2は上記第2倍率である。また、本実施形態では、0<A1<1、かつ、0<A2<1である。また、A1<A2である。したがって、ベクトルV3は、X成分に対するY成分の割合がベクトルV2に比べて大きくなるように補正される。なお、上記ステップS18においては、ベクトルV2のX成分についてのみ補正を行うようにしてもよい。すなわち、A2=1としてもよい。
上記ステップS18において、X成分に対するY成分の割合が補正前の差分ベクトルに比べて大きくなるように補正される理由は、表示領域が移動する際にプレイヤが抱く違和感を軽減するためである。詳細は後述するが、ゲーム空間において表示領域を移動させる方向は差分ベクトルの方向に基づいて決められる(後述するステップS21)。このとき、上記ステップS18の処理を行わない場合、プレイヤは、画面の縦方向(Y軸方向)に関して表示領域の移動量が少ないような違和感を抱くおそれがある。ステップS18の処理は、このような違和感を軽減するための処理である。
上記ステップS18の次に、ステップS19およびステップS20において、注視点を移動させるべき目標点の位置が差分ベクトルに基づいて決定される。具体的には、差分ベクトルの方向に基づいたゲーム空間内の方向と差分ベクトルの大きさに基づいたゲーム空間内の距離とによって、目標点の位置が決定される。
ステップS19において、まず、CPUコア21は、画面上の2次元ベクトルである差分ベクトルをゲーム空間内の3次元ベクトルに変換する。図13は、図8のステップS19の処理を説明するための図である。図13において、面62は、仮想カメラから見たゲーム空間を2次元平面に投影するための投影面であり、当該ゲーム空間が表示される画面に対応する。また、ベクトルV3は差分ベクトルであり、ベクトルV3Xは差分ベクトルV3のX成分を表し、ベクトルV3Yは差分ベクトルV3のY成分を表す。ベクトルv1は、差分ベクトルV3が変換された3次元ベクトルであり、ベクトルv1xはベクトルv1のx成分を表し、ベクトルv1yは差分ベクトルv1のy成分を表す。以下では、この3次元ベクトルを空間ベクトルと呼ぶ。
上記空間ベクトルv1の大きさは、差分ベクトルV3の大きさに基づいて決定され、空間ベクトルv1の方向は、差分ベクトルV3の方向に基づいて決定される。具体的には、空間ベクトルv1は、次の式(2)に従って算出される。
v1x=B×V3X
v1y=0
v1z=B×V3Y …(2)
式(2)に示したように、差分ベクトルのX成分の値に所定の調整量Bが乗算された値が、空間ベクトルのx成分の値となる。また、差分ベクトルのY成分の値に当該調整量Bが乗算された値が、空間ベクトルのz成分の値となる。なお、空間ベクトルのy成分の値は、地面の高さと同じ値(すなわち、0)に設定される。以上によって、差分ベクトルV3は、ゲーム空間のxz平面に平行な空間ベクトルv1に変換される。なお、画面上における横方向の成分は、ゲーム空間内におけるx軸方向(画面上で横方向に表示される方向)の成分に対応する。画面上における縦方向の成分は、ゲーム空間内におけるz軸方向(画面の中心において縦方向に表示される方向)の成分に対応する。このように、本実施形態によれば、差分ベクトルから空間ベクトルを少ない処理量で容易に算出することができる。
なお、図13においては、ベクトルv1の始点が注視点の位置であるとしているが、ベクトルv1の始点はプレイヤキャラクタの位置によって決まる位置であり、(後述するステップS20)、必ずしも注視点とはならない。プレイヤによるタッチ入力によって表示領域が移動された後は、注視点とプレイヤキャラクタの位置とは必ずしも一致しないからである。
次に、ステップS20において、ステップS19で変換された空間ベクトルに基づいて目標点の位置が決定される。具体的には、目標点の位置は、ゲーム空間における固定点を基点として、空間ベクトルの方向および大きさによって決められる位置である。ここで、固定点とは、プレイヤキャラクタの位置によって決められるゲーム空間内の点である。なお、固定点は、「プレイヤキャラクタの位置が固定されているという条件下で固定的に設定される」という意味であり、ゲーム空間における特定の1点の位置に常に固定される必要はない。プレイヤキャラクタの位置が変化すれば固定点の位置も変化する。ここでは、固定点は、プレイヤキャラクタの位置に設定される。したがって、プレイヤキャラクタの位置から、空間ベクトルの向きに空間ベクトルの大きさ(距離)だけ離れた位置が新たな目標点の位置となる。CPUコア21は、RAM24に記憶されているキャラクタ空間座標データ50とステップS19で算出された空間ベクトルとを参照して目標点の位置座標を算出する。ステップS20で算出された目標点の座標のデータは、RAM24に記憶されている移動指標データ58として更新して記憶される。ステップS20の次にステップS23の処理が実行される。
一方、ステップS11またはステップS12における判定結果が否定であった場合、ステップS21の処理が行われる。ステップS21においては、現在設定されている目標点がゲーム空間におけるプレイヤキャラクタの位置に設定されているか否かが判定される。具体的には、CPUコア21は、RAM24に記憶されているキャラクタ空間座標データ50および移動指標データ58を参照し、キャラクタ空間座標データ50により示される座標と移動指標データ58により示される座標とが同じであるか否かを判定する。そして、2つの座標が同じである場合、目標点がプレイヤキャラクタの位置に設定されていると判定し、逆に、2つの座標が同じでない場合、目標点がプレイヤキャラクタの位置に設定されていないと判定する。目標点がプレイヤキャラクタの位置に設定されていると判定される場合、ステップS22およびS23の処理がスキップされてステップS24の処理が実行される。一方、目標位置がプレイヤキャラクタの位置に設定されていないと判定される場合、ステップS22の処理が実行される。
ステップS22においては、目標点がキャラクタの位置に設定される。具体的には、CPUコア21は、RAM24に記憶されている移動指標データ58の内容を、キャラクタ空間座標データ50により示される座標に更新する。以上のステップS21およびS22によって、プレイヤキャラクタが弓矢でないアイテムを使用する場合、または、タッチ入力がない場合には、プレイヤキャラクタの位置が目標点となるので、プレイヤキャラクタが画面中央に表示されることになる。ステップS22の次にステップS23の処理が実行される。
ステップS23においては、現在の注視点の位置と目標点の位置とに基づいて移動ベクトルが算出される。上述したように、移動ベクトルは、単位時間当たり(例えば1フレーム当たり)に注視点(表示領域)を移動させる移動方向および移動量を示すベクトルである。図14は、図8のステップS23の処理を説明するための図である。図14において、点p1は現在の注視点の位置を示し、点p2は目標点の位置を示す。また、ベクトルv1は、上記ステップS19で算出された空間ベクトルである。ステップS23において、CPUコア21は、ベクトルv1の各成分を予め定められた所定数(図14では所定数を3としている。)で割ったベクトルv2を算出する。このベクトルv2が移動ベクトルである。CPUコア21は、算出された移動ベクトルのデータを移動ベクトルデータ59としてRAM24に記憶する。
ステップS23に示したように、本実施形態においては、ベクトルv1を所定数で割ったベクトルV5を移動ベクトルとすることによって、表示領域の目標位置への移動が複数フレーム(当該所定数のフレーム)にわたって行われることになる。これによって、表示領域が急に移動することによってゲーム画面がプレイヤにとって見づらくなることを防止することができる。なお、他の実施形態においては、ベクトルv1の大きさが予め定められた所定値以下の場合にはベクトルv1を移動ベクトルとしてもよい。また、他の実施形態においては、上記所定数を1にしてもよい。ステップS23の次にステップS24の処理が実行される。
ステップS24においては、ステップS23で算出された移動ベクトルに従って注視点が移動される。具体的には、CPUコア21は、RAM24に記憶されている仮想カメラデータ57に含まれる注視点を示すデータの内容を、移動後の注視点の座標を示すデータに更新する。また、仮想カメラの位置を示すデータを、移動後の注視点の位置に応じて更新する。ステップS24の後、CPUコア21は表示領域決定処理を終了する。
図7の説明に戻り、ステップS6においては、ゲーム画像が表示される。具体的には、CPUコア21は、仮想カメラの位置から視線方向に見たゲーム空間の画像を生成し、生成した画像を第2のLCD12に表示させる。なお、上記ステップS24で仮想カメラのパラメータ(注視点の位置および仮想カメラの位置)が更新されているので、表示領域が移動して表示されることとなる。ステップS6の次にステップS7の処理が実行される。
ステップS7において、ゲームを終了するか否かが判定される。ステップS7の判定は、例えば、プレイヤキャラクタの体力が0になったか否かや、プレイヤキャラクタが全ての敵キャラクタを倒したか否か等によって行われる。ステップS7の判定において、ゲームを終了すると判定された場合、CPUコア21は、図7に示すゲーム処理を終了する。一方、ゲームを終了しないと判定された場合、ステップS2の処理が行われ、以降、ステップS7においてゲームを終了すると判定されるまでステップS2〜S7の一連の処理が繰り返される。以上で、ゲーム処理の詳細な説明を終了する。
なお、上記実施形態においては、ステップS17で差分ベクトルについて上限値を設定し、差分ベクトルが上限値以内となるように補正する処理を行った。ここで、他の実施形態においては、差分ベクトルを変換して得られる空間ベクトル(図13に示すベクトルv1)について上限値を設定するようにしてもよい。また、上記実施形態においては、ステップS18で差分ベクトルについて各成分の大きさの割合を調整する補正を行ったが、他の実施形態においては、空間ベクトルについて各成分の大きさの割合を調整する補正を行うようにしてもよい。具体的には、空間ベクトルのx成分に対するz成分の割合が大きくなるように空間ベクトルのx成分およびz成分を補正するようにしてもよい。つまり、空間ベクトルは、空間ベクトルのx方向成分に対するz方向成分の割合が、差分ベクトルのX方向成分に対するY方向成分の割合に比べて大きくなるように算出されればよい。
以上に説明したゲーム処理においては、ステップS18において、差分ベクトルのX成分に対するY成分の割合が大きくなるように差分ベクトルの各成分が補正される。ここで、本実施形態では、ステップS19において差分ベクトルをゲーム空間における空間ベクトルに変換する際に、差分ベクトルのX成分を空間ベクトルのx成分に変換する際の調整量と、差分ベクトルのY成分を空間ベクトルのz成分に変換する際の調整量とが同じである。したがって、もしステップS18の処理を行わない場合には、差分ベクトルにおける縦方向(Y成分)と横方向(X成分)との比が、そのまま、空間ベクトルの縦方向(z成分)と横方向(x成分)との比になる。しかし、本実施形態では仮想カメラの視線方向は地面に垂直ではなく、画面のY軸方向に傾いている(視線方向は画面のY軸方向を向く)ので、ゲーム空間は画面のY軸方向に関して圧縮されて表示される。したがって、x軸方向とz軸方向とにそれぞれ同じ距離(ゲーム空間内の距離)だけ表示領域を移動させても、画面上では、z軸方向の方が表示領域の移動量が少なくなってしまう。そのため、差分ベクトルにおける縦方向と横方向との比を、そのまま、空間ベクトルの縦方向と横方向との比とすると、画面上では表示領域の縦方向の移動量が少なくなってしまう。そのため、プレイヤによって入力された方向(すなわち、差分ベクトルの方向)と、表示領域が実際に移動する方向とが一致しないので、プレイヤは違和感を抱くおそれがある。
そこで、本実施形態では、差分ベクトルのY軸方向(仮想カメラの視線方向に対応する画面上の方向)の成分をX軸方向に比べて増加させている。これによって、表示領域は、差分ベクトルにおける縦方向と横方向との比と同じ比で移動することとなるので、プレイヤの上記違和感を軽減または解消することができる。
図15および図16は、プレイヤが画面の右下位置をタッチした場合における表示領域の移動の様子を示す図である。なお、図15および図16においては、画面における位置を表す点に大文字の“P”のつく参照符号を付し、ゲーム空間における位置を表す点に小文字の“p”のつく参照符号を付す。また、図15および図16においては、画面における2次元ベクトルに大文字の“V”のつく参照符号を付し、ゲーム空間におけるベクトルに小文字の“v”のつく参照符号を付す。
図15は、プレイヤがタッチ入力を行った直後のゲーム画面を示す図である。図15においては、タッチ入力が行われた直後であるので、プレイヤキャラクタ41が画面の中央に表示されている。すなわち、プレイヤキャラクタ41の位置p21が画面上の基準位置P11に対応する(表示される)。このとき、プレイヤが画面上の位置P12をタッチすると、基準位置P11から入力位置P12までのベクトルV11が差分ベクトルとして算出される(ステップS15)。次に、上限値により示される領域61に応じて差分ベクトルはベクトルV12に補正される(ステップS17)。さらに、X成分に対するY成分の割合が大きくなるようにベクトルV12がベクトルV13に補正される(ステップS18)。次に、画面上の2次元ベクトルV13が、ゲーム空間における空間ベクトルv21に変換される(ステップS19)。ゲーム空間における目標位置p22は、ゲーム空間におけるプレイヤキャラクタの位置p21を基点として空間ベクトルv21に基づいて決定される(ステップS20)。以上によって、表示領域は、目標位置p22が画面中央に表示されるように移動される。
図16は、図15に示す状態から入力位置が変わらずに所定数のフレームが経過した後のゲーム画面を示す図である。図16においては、注視点が目標位置p22に位置しており、プレイヤキャラクタ41が画面の左上に表示されている。このとき、画面上の入力位置は、図15に示す状態から変化していないので、図15に示す場合と同様の差分ベクトルV13が算出される。さらに、図15に示す場合と同様の空間ベクトルv21が差分ベクトルV13から算出される。したがって、目標位置p22も図15に示す場合と(ゲーム空間においては)同様の位置となる。ここで、図16においては、注視点はすでに目標位置p22に位置しているので、表示領域の移動は行われない。
このように、本実施形態では、画面上の基準位置と画面上の入力位置とに基づいて、ゲーム空間内において表示領域を移動させるための差分ベクトルを決定している。画面上の2つの位置に基づいて差分ベクトルを決定するので、差分ベクトルの大きさは必然的に制限される。また、差分ベクトルをゲーム空間のベクトルに変換し、変換したベクトルに基づいて、ゲーム空間内の固定点を基点として表示領域を移動させる。したがって、表示領域は固定点を中心とした所定距離内の範囲において移動することとなり、表示領域の移動範囲は制限される。そのため、プレイヤキャラクタの位置を上記固定点とすることによって、表示領域の移動範囲は、プレイヤキャラクタの位置を中心とした範囲に制限されることとなるので、プレイヤキャラクタを画面に常に表示させることができる。
以上のように、本実施形態によれば、プレイヤによる入力位置に応じて表示領域を移動させることができるので、その時の状況に応じた見やすい表示領域でゲーム画面を表示することができる。また、差分ベクトルの大きさを上記上限値に制限することによって、表示領域が一定の方向に移動し続けることを防止することができる。さらに、差分ベクトルのX成分とY成分との割合を変化させることによって、表示領域が移動する際にプレイヤが抱く違和感を軽減することができる。
なお、上記実施形態においては、差分ベクトルの大きさを上限値に制限することによって、プレイヤキャラクタが画面外に外れることを防止した。ここで、他の実施形態においては、表示領域を移動させる前に、プレイヤキャラクタが表示領域内に位置するか否かを判定し、表示領域内に位置する場合にのみ表示領域を移動させるようにしてもよい。具体的には、ステップS23の後、移動後の表示領域内にプレイヤキャラクタが位置するか否かを判定する処理を行う。判定の結果、表示領域内にプレイヤキャラクタが位置する場合はステップS24の処理を行い、表示領域内にプレイヤキャラクタが位置しない場合はステップS24の処理をスキップする。なお、このとき、ステップS16およびS17の処理は不要である。また、他の実施形態では、差分ベクトルに基づいて目標位置を設定する処理(ステップS20)において、プレイヤキャラクタの位置から所定の範囲内に位置するように目標位置を設定するようにしてもよい。なお、このときもステップS16およびS17の処理は不要である。
また、上記実施形態においては、表示領域を移動させる具体的な方法として、仮想カメラの位置を移動させることとした。ここで、表示領域を移動させる方法はどのような方法であってもよく、例えば、仮想カメラの位置および視線方向を変化させるようにしてもよいし、仮想カメラの視線方向のみを変化させるようにしてもよい。また、上記実施形態においては、仮想カメラの位置をx軸方向およびz軸方向にのみ移動させることとしたが、他の実施形態においては、y軸方向にも移動させるようにしてもよい。
また、上記実施形態においては、3次元の仮想空間を画面に表示する場合を例として説明したが、仮想空間は2次元であってもよい。2次元の仮想空間の場合も上記実施形態と同様、差分ベクトルに基づいて仮想空間上に目標点を設定し、画面上における基準位置(例えば画面の中央の位置)に目標点が表示されるように表示領域を移動させる。
また、上記実施形態では、画像処理プログラムがゲームプログラムとして用いられる場合を例として説明したが、本発明は、ゲームに限らず、仮想空間を画面に表示する場合において表示領域を移動させる技術に適用することができる。
また、上記実施形態では、入力装置としてタッチパネルを用いる場合を例として説明したが、入力装置は、例えばマウス等のように、画面上において指定された位置を検出することが可能なポインティングデバイスであればどのようなものであってもよい。
以上のように、本発明は、仮想空間における表示領域をユーザが自由に設定すること等を目的とした画像処理プログラムおよび画像処理装置に利用することが可能である。
本発明の一実施形態に係るゲーム装置の外観図 ゲーム装置の内部構成図 本実施形態におけるゲーム画面の一例を示す図 図3のゲーム画面から表示領域が移動された後のゲーム画面を示す図 仮想の3次元のゲーム空間を模式的に示す図 ゲーム装置10のRAM24に記憶される主なデータを示す図 ゲーム装置10において実行されるゲーム処理の流れを示すフローチャート 図7に示すステップS5の詳細な処理の流れを示すフローチャート 図8のステップS15の処理を説明するための図 図8のステップS16の処理を説明するための図 図8のステップS17の処理を説明するための図 図8のステップS18の処理を説明するための図 図8のステップS19の処理を説明するための図 図8のステップS23の処理を説明するための図 プレイヤがタッチ入力を行った直後のゲーム画面を示す図 図15に示す状態から入力位置が変わらずに所定数のフレームが経過した後のゲーム画面を示す図
符号の説明
10 ゲーム装置
11,12 LCD
21 CPUコア
24 RAM
41 プレイヤキャラクタ
42 敵キャラクタ
V1,V2,V3 差分ベクトル
v1 空間ベクトル
P2 基準位置
P3 入力位置
p1 固定点の位置
p2 目標位置

Claims (16)

  1. 表示装置の画面に対する座標指示が可能な入力装置を備え、所定のオブジェクトが配置された仮想空間のうちの所定の表示領域を前記画面に表示する画像処理装置のコンピュータに実行させる画像処理プログラムであって、
    前記入力装置による座標指示が行われたか否かを判定する座標指示判定ステップと、
    前記座標指示が行われた場合には、前記仮想空間のうち前記画面に表示する表示領域を、前記オブジェクトの位置から前記指示された座標の位置に向けた方向の領域が、前記座標指示が行われる前と比較して広く表示されるように設定する第1の表示領域設定ステップと、
    前記第1の表示領域設定ステップによって設定された表示領域に従って、仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる表示制御ステップと、
    前記入力装置に対する入力が検出されている状態から、前記入力装置に対する入力が検出されていない状態になったことを検知する検知ステップと、を前記コンピュータに実行させ
    前記第1の表示領域設定ステップは、前記検知ステップにおいて前記入力装置に対する入力が検出されていない状態になったことが検知されたとき、前記表示領域を前記オブジェクトの位置に基づいて設定する画像処理プログラム。
  2. 所定の条件を満たしたか否かを判定する条件判定ステップと、
    前記条件判定ステップにおいて、前記所定の条件を満たしてないと判定された場合に、前記仮想空間のうち前記画面に表示する表示領域を前記オブジェクトの位置に基づいて設定する第2の表示領域設定ステップとを、さらに前記コンピュータに実行させ、
    前記条件判定ステップにおいて、前記所定の条件を満たしたと判定された場合に、前記第1の表示領域設定ステップを前記コンピュータに実行させ、
    前記表示制御ステップは、前記第1の表示領域設定ステップまたは前記第2の表示領域設定ステップによって設定された表示領域に従って、仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる、請求項1に記載の画像処理プログラム。
  3. 前記第1の表示領域設定ステップは、
    予め決められた前記画面上の基準座標を始点とし、前記入力装置による入力座標を終点とする差分ベクトルを算出する第1算出ステップを含み、
    前記差分ベクトルに基づいて前記表示領域を設定する、請求項1に記載の画像処理プログラム。
  4. 前記第1の表示領域設定ステップは、
    前記オブジェクトの位置を基点とし、前記差分ベクトルの方向に基づいた前記仮想空間内の方向と前記差分ベクトルの大きさに基づいた前記仮想空間内の距離とによって決められる位置を算出する第2算出ステップをさらに含み、
    前記第2算出ステップで算出された位置に基づいて前記表示領域を設定する、請求項3に記載の画像処理プログラム。
  5. 前記第1の表示領域設定ステップは、前記表示領域から前記オブジェクトが外れないように前記表示領域を設定する、請求項1または2に記載の画像処理プログラム。
  6. 前記第2の表示領域設定ステップは、前記表示領域から前記オブジェクトが外れないように前記表示領域を設定する、請求項2に記載の画像処理プログラム。
  7. 前記表示制御ステップは、前記第1の表示領域設定ステップによって設定された表示領域に向けて徐々に移動するように前記仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる、請求項1または2に記載の画像処理プログラム。
  8. 前記表示制御ステップは、前記第2の表示領域設定ステップによって設定された表示領域に向けて徐々に移動するように前記仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる、請求項2に記載の画像処理プログラム。
  9. 前記表示領域は、前記仮想空間に設定される注視点に基づいて設定され、
    前記表示制御ステップは、前記注視点に基づいてその位置が設定される仮想カメラを用いて、前記仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる、請求項1または2に記載の画像処理プログラム。
  10. 前記表示領域は、予め決められた前記画面上の基準座標に基づいて設定される、請求項1または2に記載の画像処理プログラム。
  11. 前記基準座標は、前記画面上の中心座標である、請求項10に記載の画像処理プログラム。
  12. 前記所定の条件とは、前記オブジェクトのステータスによるものである、請求項2に記載の画像処理プログラム。
  13. 前記オブジェクトのステータスとは、当該オブジェクトが所持しているアイテムの使用状況である、請求項12に記載の画像処理プログラム。
  14. 前記アイテムとは、当該アイテムの利用方向を指示する必要のあるアイテムである、請求項13に記載の画像処理プログラム。
  15. 表示装置の画面に対する座標指示が可能な入力装置を備え、所定のオブジェクトが配置された仮想空間のうちの所定の表示領域を前記画面に表示する画像処理装置であって、
    前記入力装置による座標指示が行われたか否かを判定する座標指示判定手段と、
    前記座標指示が行われた場合には、前記仮想空間のうち前記画面に表示する表示領域を、前記オブジェクトの位置から前記指示された座標の位置に向けた方向の領域が、前記座標指示が行われる前と比較して広く表示されるように設定する第1の表示領域設定手段と、
    前記第1の表示領域設定手段によって設定された表示領域に従って、仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる表示制御手段と
    前記入力装置に対する入力が検出されている状態から、前記入力装置に対する入力が検出されていない状態になったことを検知する検知手段とを備え
    前記第1の表示領域設定手段は、前記検知手段が、前記入力装置に対する入力が検出されていない状態になったことを検知したとき、前記表示領域を前記オブジェクトの位置に基づいて設定する、画像処理装置。
  16. 所定の条件を満たしたか否かを判定する条件判定手段と、
    前記条件判定手段において、前記所定の条件を満たしてないと判定された場合に、前記仮想空間のうち前記画面に表示する表示領域を前記オブジェクトの位置に基づいて設定する第2の表示領域設定手段とを、さらに備え、
    前記所定の条件を満たしたと判定された場合に、前記第1の表示領域設定手段を実行し、
    前記表示制御手段は、前記第1の表示領域設定手段または前記第2の表示領域設定手段によって設定された表示領域に従って、仮想空間の画像を生成し、当該画像を前記表示装置の画面に表示させる、請求項15に記載の画像処理装置。
JP2005154233A 2005-05-26 2005-05-26 表示領域を移動させる画像処理プログラムおよび画像処理装置 Active JP4326502B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2005154233A JP4326502B2 (ja) 2005-05-26 2005-05-26 表示領域を移動させる画像処理プログラムおよび画像処理装置
US11/339,568 US8866856B2 (en) 2005-05-26 2006-01-26 Image processing program and image processing device for moving display area
EP06002063.3A EP1726342B1 (en) 2005-05-26 2006-02-01 Image processing program and image processing device for moving display area
US14/491,562 US9592447B2 (en) 2005-05-26 2014-09-19 Image processing program and image processing device for moving display area
US15/420,859 US10653958B2 (en) 2005-05-26 2017-01-31 Image processing program and image processing device for moving display area

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005154233A JP4326502B2 (ja) 2005-05-26 2005-05-26 表示領域を移動させる画像処理プログラムおよび画像処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009089512A Division JP4842344B2 (ja) 2009-04-01 2009-04-01 表示領域を移動させる画像処理プログラムおよび画像処理装置

Publications (3)

Publication Number Publication Date
JP2006331109A JP2006331109A (ja) 2006-12-07
JP2006331109A5 JP2006331109A5 (ja) 2008-11-20
JP4326502B2 true JP4326502B2 (ja) 2009-09-09

Family

ID=36938390

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005154233A Active JP4326502B2 (ja) 2005-05-26 2005-05-26 表示領域を移動させる画像処理プログラムおよび画像処理装置

Country Status (3)

Country Link
US (3) US8866856B2 (ja)
EP (1) EP1726342B1 (ja)
JP (1) JP4326502B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157942A (ja) * 2009-04-01 2009-07-16 Nintendo Co Ltd 表示領域を移動させる画像処理プログラムおよび画像処理装置

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4030573B2 (ja) * 2006-02-08 2008-01-09 シャープ株式会社 液晶表示装置
JP5179020B2 (ja) * 2006-05-09 2013-04-10 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム処理方法
JP4326568B2 (ja) 2007-02-20 2009-09-09 任天堂株式会社 情報処理装置および情報処理プログラム
JP5525177B2 (ja) * 2009-04-16 2014-06-18 任天堂株式会社 情報処理プログラム、および、情報処理装置
JP5687826B2 (ja) * 2009-05-29 2015-03-25 任天堂株式会社 ゲームプログラムおよびゲーム装置
JP5193275B2 (ja) * 2010-12-01 2013-05-08 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置の制御方法、及びプログラム
EP2497546A3 (en) 2011-03-08 2012-10-03 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
EP2497547B1 (en) 2011-03-08 2018-06-27 Nintendo Co., Ltd. Information processing program, information processing apparatus, information processing system, and information processing method
EP2497545B1 (en) * 2011-03-08 2019-08-07 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
US9561443B2 (en) 2011-03-08 2017-02-07 Nintendo Co., Ltd. Computer-readable storage medium, information processing system, and information processing method
EP2497543A3 (en) 2011-03-08 2012-10-03 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
JP5792971B2 (ja) 2011-03-08 2015-10-14 任天堂株式会社 情報処理システム、情報処理プログラム、および情報処理方法
JP5160680B1 (ja) * 2011-10-26 2013-03-13 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5843721B2 (ja) * 2012-07-26 2016-01-13 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲーム制御方法およびゲームシステム
JP6271878B2 (ja) * 2013-06-25 2018-01-31 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および、指示位置の算出方法
WO2016073035A1 (en) * 2014-11-05 2016-05-12 Super League Gaming, Inc. Game system
FI127452B (en) * 2014-11-28 2018-06-15 Small Giant Games Oy Device for controlling an object shown on a display, method for controlling an object shown on a display and computer software product
KR101739840B1 (ko) * 2015-06-10 2017-05-25 (주)엔도어즈 게임 서비스 제공 장치 및 그 제어 방법
CN109416614B (zh) * 2016-11-30 2023-04-04 日本聚逸株式会社 通过计算机实现的方法以及非易失性计算机可读介质、系统
CN108245888A (zh) * 2018-02-09 2018-07-06 腾讯科技(深圳)有限公司 虚拟对象控制方法、装置及计算机设备
US11260295B2 (en) 2018-07-24 2022-03-01 Super League Gaming, Inc. Cloud-based game streaming

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5938791A (ja) * 1982-08-30 1984-03-02 株式会社東芝 画像表示装置
US4845631A (en) * 1987-03-31 1989-07-04 Rockwell International Corporation Scrolling image memory for high speed avionics moving map display
JPH0827700B2 (ja) * 1990-12-31 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ表示制御システム
EP0640905A1 (en) 1993-08-17 1995-03-01 Emhart Glass Machinery Investments Inc. Process control console for machine for manufacturing glass articles
JPH07121152A (ja) 1993-10-22 1995-05-12 Ise Electronics Corp マウスによるポインティング方法
US5592195A (en) * 1994-11-21 1997-01-07 International Business Machines Corporation Information displaying device
JP3568621B2 (ja) * 1995-04-20 2004-09-22 株式会社日立製作所 地図表示装置
JPH10198270A (ja) * 1997-01-09 1998-07-31 Nissan Motor Co Ltd 地図描画装置
JP3624626B2 (ja) * 1997-05-28 2005-03-02 ソニー株式会社 情報処理装置および方法、並びに記録媒体
US6256047B1 (en) * 1997-06-04 2001-07-03 Konami Co., Ltd. Method of judging hits and computer-readable storage medium storing game data
JP3145059B2 (ja) * 1997-06-13 2001-03-12 株式会社ナムコ 情報記憶媒体及び画像生成装置
JPH11235466A (ja) * 1997-12-18 1999-08-31 Sega Enterp Ltd コンピュータゲーム装置
US6424353B2 (en) * 1997-09-11 2002-07-23 Sega Enterprises, Ltd. Computer game apparatus
JP2001042026A (ja) * 1999-07-27 2001-02-16 Japan Radio Co Ltd ナビゲータ
JP2002011243A (ja) * 2000-04-27 2002-01-15 Sony Computer Entertainment Inc 記録媒体、プログラム、エンタテインメントシステムおよびエンタテインメント装置
JP3833445B2 (ja) * 2000-06-14 2006-10-11 株式会社バンダイナムコゲームス ゲーム装置および情報記憶媒体
JP3676691B2 (ja) 2001-04-16 2005-07-27 株式会社ケンウッド ナビゲーション表示方法
JP5109212B2 (ja) * 2001-05-01 2012-12-26 ソニー株式会社 ナビゲーション装置、情報表示装置、オブジェクト生成方法、記憶媒体
JP2003066944A (ja) * 2001-08-29 2003-03-05 Denso Corp 地図画像処理装置及びプログラム
JP4346892B2 (ja) * 2002-10-31 2009-10-21 富士通テン株式会社 電子番組ガイド表示制御装置、電子番組ガイド表示制御方法および電子番組ガイド表示制御プログラム
US20040130525A1 (en) * 2002-11-19 2004-07-08 Suchocki Edward J. Dynamic touch screen amusement game controller
JP4111885B2 (ja) * 2003-07-23 2008-07-02 アルパイン株式会社 地図検索表示方法及び装置
JP4192731B2 (ja) * 2003-09-09 2008-12-10 ソニー株式会社 案内情報提供装置及びプログラム
JP4381761B2 (ja) 2003-09-26 2009-12-09 キヤノンソフトウェア株式会社 表示制御装置および表示制御方法およびプログラムおよび記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157942A (ja) * 2009-04-01 2009-07-16 Nintendo Co Ltd 表示領域を移動させる画像処理プログラムおよび画像処理装置

Also Published As

Publication number Publication date
US20060281546A1 (en) 2006-12-14
US8866856B2 (en) 2014-10-21
EP1726342B1 (en) 2019-07-31
EP1726342A3 (en) 2012-04-04
US10653958B2 (en) 2020-05-19
EP1726342A2 (en) 2006-11-29
US9592447B2 (en) 2017-03-14
US20150002512A1 (en) 2015-01-01
US20170136359A1 (en) 2017-05-18
JP2006331109A (ja) 2006-12-07

Similar Documents

Publication Publication Date Title
JP4326502B2 (ja) 表示領域を移動させる画像処理プログラムおよび画像処理装置
JP4445898B2 (ja) ポインティングデバイスに対する入力を用いたゲームプログラムおよびゲーム装置
JP4358181B2 (ja) ゲームプログラムおよびゲーム装置
US9492746B2 (en) Storage medium having game program stored thereon, game apparatus and input device
JP5210547B2 (ja) 移動制御プログラムおよび移動制御装置
US8602889B2 (en) Game program for moving object from one display to another display
JP2005245619A (ja) ゲーム装置およびゲームプログラム
JP5687826B2 (ja) ゲームプログラムおよびゲーム装置
US7621812B2 (en) Game system and game program
JP4842344B2 (ja) 表示領域を移動させる画像処理プログラムおよび画像処理装置
JP2007282861A (ja) ゲーム装置、キャラクタの表示方法、並びにプログラム及び記録媒体
JP4945625B2 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
US8926427B2 (en) Video game with screen flip and dual sets of collision data
US20080300033A1 (en) Storage medium storing puzzle game program, puzzle game apparatus, and puzzle game controlling method
US8840469B2 (en) Game system and game program
JP6301813B2 (ja) ゲームプログラムおよびゲーム装置
JP4469709B2 (ja) 画像処理プログラムおよび画像処理装置
JP5581347B2 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081002

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20081002

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20081021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090401

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: 20090512

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090609

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4326502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250