JP2008083796A - 情報処理プログラムおよび情報処理装置 - Google Patents

情報処理プログラムおよび情報処理装置 Download PDF

Info

Publication number
JP2008083796A
JP2008083796A JP2006260623A JP2006260623A JP2008083796A JP 2008083796 A JP2008083796 A JP 2008083796A JP 2006260623 A JP2006260623 A JP 2006260623A JP 2006260623 A JP2006260623 A JP 2006260623A JP 2008083796 A JP2008083796 A JP 2008083796A
Authority
JP
Japan
Prior art keywords
vector
point
information processing
image
calculation
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.)
Granted
Application number
JP2006260623A
Other languages
English (en)
Other versions
JP4897411B2 (ja
Inventor
Ikki Yoshihara
一期 吉原
Tetsuya Watanabe
哲也 渡辺
Tomoya Takahashi
友也 高橋
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.)
GAME FREAK KK
Nintendo Co Ltd
Original Assignee
GAME FREAK KK
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 GAME FREAK KK, Nintendo Co Ltd filed Critical GAME FREAK KK
Priority to JP2006260623A priority Critical patent/JP4897411B2/ja
Priority to US11/636,445 priority patent/US7724267B2/en
Publication of JP2008083796A publication Critical patent/JP2008083796A/ja
Application granted granted Critical
Publication of JP4897411B2 publication Critical patent/JP4897411B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/02Composition of display devices
    • G09G2300/026Video wall, i.e. juxtaposition of a plurality of screens to create a display screen of bigger dimensions
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/14Solving problems related to the presentation of information to be displayed
    • G09G2340/145Solving problems related to the presentation of information to be displayed related to small screens

Abstract

【課題】回転操作に対して的確にかつレスポンスよく情報処理を実行できる、指定方法、情報処理プログラムおよび情報処理装置を提供する。
【解決手段】ポインティングデバイスで指定された点の基準点Oに対する位置を単位時間毎に検出して、先後に検出された点Aおよび点Bをそれぞれ始点および終点とする操作ベクトルABを算出する。そして、算出された操作ベクトルABを、基準点Oおよび点Aをそれぞれ始点および終点とするベクトルOAに垂直な直線に正射影し、これによって操作ベクトルABから取り出された成分ベクトルdistに基づいて情報を処理する。
【選択図】図5

Description

この発明は、情報処理プログラムおよび情報処理装置に関し、特にたとえば、タッチパネル,タブレット,マウス等のポインティングデバイスで指定される位置の変化(ベクトル)に基づいて回転操作を検出し、検出された回転操作から制御量(符号付きスカラー)を求め、そして求められた制御量に基づいて情報を処理する、情報処理プログラムおよび情報処理装置に関する。
従来のこの種のプログラムないし装置としては、特許文献1に開示されたものが知られている。この従来技術では、第1点(A)および第2点(B)を始点および終点とする回転操作を検出し、基準点(O)から第1点に向かう方向と基準点から第2点に向かう方向とのなす角(回転角AOB)を求め、そして、求められた回転角に対応する量だけ、画面の頁送りをする。
また、特許文献2に開示されたものも知られている。この従来技術では、第1点(A),第2点(B),第3点(C)…を順次検出して、まず線分BCの線分ABに対する変位角を求める。以降同様に、隣接する2つの線分の変位角を順次求め、これらを累計する。そして、累計変位角が閾値以上であれば、回転操作が行われたと認識して、累計変位角だけ、画面をスクロールする。
特開平4−48318号公報 特開2002−222034号公報
しかし、特許文献1の従来技術のように基準点Oに対する回転角AOBを制御量とする場合、点Aから点Bまでの移動距離(操作量)が同じでも、制御量は点A,Bの基準点Oからの距離によって異なる。このため、操作者が基準点からの距離を考慮して操作量を調節しなければ、所望の情報処理を行えない。
一方、特許文献2の従来技術のように累計変位角を制御量とする場合、少なくとも3点が検出され、そして閾値以上の累計変位角が得られるまでは、回転操作が行われたと認識されず、情報処理は開始されない。すなわち、回転操作に対するレスポンスがよくない。
それゆえに、この発明の主たる目的は、回転操作に対して的確にかつレスポンスよく情報処理を実行できる、情報処理プログラムおよび情報処理装置を提供することである。
請求項1の発明に従う情報処理プログラムは、任意の点の位置を指定するためのポインティングデバイス(20:実施例で相当する参照符号。以下同じ)を備える情報処理装置(10)のプロセッサ(42)に、次のステップを実行させる:ポインティングデバイスで指定された点の基準点(O)に対する位置を単位時間毎に検出する位置検出ステップ(S5);位置検出ステップによって先後に検出された第1点および第2点をそれぞれ始点および終点とする操作ベクトルを算出する操作ベクトル算出ステップ(S45);操作ベクトル算出ステップによって算出された操作ベクトルを、基準点および第1点をそれぞれ始点および終点とする第1ベクトルに垂直な直線に正射影する正射影ステップ(S47〜S51);および正射影ステップの正射影処理によって操作ベクトルから取り出された成分ベクトルに基づいて情報を処理する情報処理ステップ(S11〜S23)。
請求項1の発明では、ポインティングデバイスで指定された点の基準点に対する位置は、位置検出ステップによって単位時間毎に検出される。位置検出ステップによって第1点および第2点が順次検出されると、第1点および第2点をそれぞれ始点および終点とする操作ベクトルが、操作ベクトル算出ステップによって算出される。正射影ステップは、こうして算出された操作ベクトルを、基準点および第1点をそれぞれ始点および終点とする第1ベクトルに垂直な直線に正射影する。この正射影処理によって、操作ベクトルからは、第1ベクトルに垂直な方向、すなわち基準点を中心とし操作ベクトルの始点を通る円周の当該始点における接線方向の成分ベクトル(符号付きスカラー)が取り出される。情報処理ステップは、かかる成分ベクトルに従って情報を処理する。
請求項1の発明によれば、ポインティングデバイスで指定された点の移動距離すなわち操作量が同一であれば、指定点の基準点からの距離に関わらず同一の成分ベクトルが得られるため、操作者が指定点の基準点からの距離を考慮して操作量を調整しなくても、所望の情報処理を行える。また、任意の操作を回転操作と見なして、2つの点が検出された時点で成分ベクトルを算出するので、レスポンスが向上する。
請求項2の発明に従う情報処理プログラムは、請求項1に従属し、正射影ステップは次のステップを含む:第1ベクトルに垂直な単位ベクトルを算出する単位ベクトル算出ステップ(S47,S49);および操作ベクトル算出ステップによって算出された操作ベクトルと単位ベクトル算出ステップによって算出された単位ベクトルとの内積を計算する内積計算ステップ(S51)。
請求項2の発明では、操作ベクトルを第1ベクトルに垂直な直線に正射影するに当たって、単位ベクトル算出ステップが第1ベクトルに垂直な単位ベクトルを算出し、内積計算ステップは操作ベクトル算出ステップによって算出された操作ベクトルと単位ベクトル算出ステップによって算出された単位ベクトルとの内積を計算する。
請求項2の発明によれば、内積の絶対値は成分ベクトルの大きさと対応し、内積の符号は成分ベクトルの向きと対応するので、少なくとも内積を計算すれば情報処理を行える。
請求項3の発明に従う情報処理プログラムは、請求項2に従属し、プロセッサに次のステップさらに実行させる:内積計算ステップの計算結果の絶対値を計算する絶対値計算ステップ(S53)、および第1ベクトルと基準点および第2点をそれぞれ始点および終点とする第2ベクトルとの外積を計算する外積計算ステップ(S43)。情報処理ステップは、絶対値計算ステップの計算結果および外積計算ステップの計算結果に基づいて情報処理を行う。
請求項3の発明では、絶対値計算ステップが内積計算ステップの計算結果の絶対値を計算し、外積計算ステップは基準点から第1点に向かう第1ベクトルと基準点から第2点に向かう第2ベクトルとの外積を計算する。情報処理ステップは、絶対値計算ステップの計算結果および外積計算ステップの計算結果に基づいて情報処理を行う。
請求項3の発明によれば、成分ベクトルの大きさとして内積の絶対値をとる一方、成分ベクトルの方向としては、操作ベクトルの始点位置および終点位置をそれぞれ示す第1ベクトルおよび第2ベクトルの外積の符号を用いるので、成分ベクトルの方向として内積の符号を用いる場合とは異なり、内積計算の際単位ベクトルの向きに注意を払う必要がなく、容易に情報処理を行える。
請求項4の発明に従う情報処理プログラムは、請求項1に従属し、情報処理装置は画像(72,70)を表示するディスプレイ(14,12)をさらに備える。情報処理ステップは、ディスプレイに表示された画像を、操作ベクトルから取り出された成分ベクトルの向きと対応する方向に、当該成分ベクトルの大きさに応じた量だけ動かす。
請求項4の発明では、ディスプレイに画像が表示される。この画像は、情報処理ステップによって、成分ベクトルの向きと対応する方向に成分ベクトルの大きさに応じた量だけ動かされる。
請求項4の発明によれば、画像をポインティングデバイスの回転操作によって的確にかつレスポンスよく動かすことができる。
請求項5の発明に従う情報処理プログラムは、請求項4に従属し、情報処理ステップは次のステップをさらに含む:操作ベクトルから取り出された成分ベクトルの大きさに定数を乗算しかつ乗算結果を基準速度として保持する保持ステップ(S63);および保持ステップによって保持された基準速度に対して単位時間毎に減速処理を施す減速処理ステップ(S69)。
請求項5の発明では、保持ステップが操作ベクトルから取り出された成分ベクトルの大きさに定数を乗算して、乗算結果を基準速度として保持する。保持ステップによって保持された基準速度に対しては、減速処理ステップによって単位時間毎に減速処理が施される。画像は、保持ステップによって保持された基準速度に基づいて動かされる。
請求項5の発明によれば、適当な定数を選ぶことで、画像を快適に動かすことができる。ポインティングデバイスの操作が終了すると、画像は、減速処理によってその速度を徐々に減じていき、停止する。
請求項6の発明に従う情報処理プログラムは、請求項5に従属し、情報処理ステップは次のステップをさらに含む:保持ステップによって保持された基準速度が閾値以上か否かを判別する速度判別ステップ(S67);および速度判別ステップによって基準速度が閾値未満であると判別されたとき当該基準速度をゼロに変更する変更ステップ(S71)。
請求項6の発明では、保持された基準速度が閾値以上か否かが速度判別ステップによって判別され、閾値未満であると判別されたとき当該基準速度は変更ステップによってゼロに変更される。
請求項6の発明によれば、閾値に満たない基準速度では画像は動かないので、画像のぶれを防止できる。
請求項7の発明に従う情報処理プログラムは、請求項6に従属し、情報処理ステップは次のステップをさらに含む:速度判別ステップによって基準速度が閾値未満であると判別されたとき画像が規定位置(P)にあるか否かを判別する位置判別ステップ(S85);および位置判別ステップによって画像が規定位置にないと判別されたとき当該画像を当該規定位置まで動かした後で停止させる動き維持ステップ(S89)。
請求項7の発明では、速度判別ステップによって基準速度が閾値未満であると判別されたとき、画像が規定位置にあるか否かが位置判別ステップによってさらに判別され、位置判別ステップによって画像が規定位置にないと判別されると、動き維持ステップが画像を規定位置まで動かした後で停止させる。
請求項7の発明によれば、画像を規定位置で停止させることができる。
請求項8の発明に従う情報処理プログラムは、請求項4に従属する。画像は第1画像(72)および第2画像(70)を含み、情報処理ステップは次のステップを含む:第1画像を操作ベクトルから取り出された成分ベクトルの向きと対応する方向に当該成分ベクトルの大きさに応じた角度だけ回転させる回転ステップ(S15,S23);および第2画像を操作ベクトルから取り出された成分ベクトルの向きと対応する方向に当該成分ベクトルの大きさに応じた距離だけ平行移動させる平行移動ステップ(S13,S21)。
請求項8の発明では、画像には第1画像および第2画像が含まれる。第1画像は、回転ステップによって、操作ベクトルから取り出された成分ベクトルの向きと対応する方向に、当該成分ベクトルの大きさに応じた角度だけ回転される。第2画像は、平行移動ステップによって、操作ベクトルから取り出された成分ベクトルの向きと対応する方向に、当該成分ベクトルの大きさに応じた距離だけ平行移動される。
請求項8の発明によれば、単一の回転操作で、第1画像を回転させると同時に、第2画像を平行移動させることができる。
請求項9の発明に従う情報処理装置(10)は、次のものを備える:任意の点の位置を指定するためのポインティングデバイス(20);ポインティングデバイスで指定された点の基準点(O)に対する位置を単位時間毎に検出する位置検出手段(S5);位置検出手段によって先後に検出された第1点および第2点をそれぞれ始点および終点とする操作ベクトルを算出する操作ベクトル算出手段(S45);操作ベクトル算出手段によって算出された操作ベクトルを、基準点および第1点をそれぞれ始点および終点とする第1ベクトルに垂直な直線に正射影する正射影手段(S47〜S51);および正射影手段の正射影処理によって操作ベクトルから取り出された成分ベクトルに基づいて情報を処理する情報処理手段(S11〜S23)。
請求項9の発明でも、請求項1の発明と同様に、指定点の基準点からの距離を考慮して操作量を調整しなくても所望の情報処理を行え、レスポンスも向上する。
この発明によれば、回転操作に対して、的確にかつレスポンスよく、情報処理を実行することができる。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1を参照して、この発明の一実施例であるゲーム装置10は、第1の液晶表示器(LCD)12および第2のLCD14を含む。このLCD12およびLCD14は、所定の配置位置となるようにハウジング16に収納される。この実施例では、ハウジング16は、上側ハウジング16aと下側ハウジング16bとによって構成され、LCD12は上側ハウジング16aに収納され、LCD14は下側ハウジング16bに収納される。したがって、LCD12とLCD14とは縦(上下)に並ぶように近接して配置される。
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイなどを用いるようにしてもよい。
図1からも分かるように、上側ハウジング16aは、LCD12の平面形状よりも大きな平面形状を有し、一方主面からLCD12の表示面を露出するように開口部が形成される。一方、下側ハウジング16bは、その平面形状が上側ハウジング16aと同程度に形成され、横方向の略中央部にLCD14の表示面を露出するように開口部が形成される。また、上側ハウジング16aには、LCD12を挟むように、右側に音抜き孔22aが、左側に音抜き孔22bが、左右対称に形成される。またハウジング16には操作スイッチ18(18a,18b,18c,18d,18e,18f,18h,18g,18Lおよび18R)が配置される。
また、上側ハウジング16aと下側ハウジング16bとは、上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、LCD12の表示面およびLCD14の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング16aと下側ハウジング16bとは、回動可能に連結せずに、それらを一体的(固定的)に設けたハウジング16を形成するようにしてもよい。
操作スイッチ18は、方向指示スイッチ(十字スイッチ)18a,スタートスイッチ18b,セレクトスイッチ18c,動作スイッチ(Aボタン)18d,動作スイッチ(Bボタン)18e,動作スイッチ(Xボタン)18f,動作スイッチ(Yボタン)18g,電源スイッチ18h,動作スイッチ(Lボタン)18Lおよび動作スイッチ(Rボタン)18Rを含む。スイッチ18aおよび18hは、下側ハウジング16bの一方主面において、LCD14の左側に配置される。また、スイッチ18bないし18gは、下側ハウジング16bの一方主面において、LCD14の右側に配置される。さらに、スイッチ18Lおよびスイッチ18Rは、それぞれ、下側ハウジング16bの上端(天面)の一部において、上側ハウジング16aとの連結部以外に当該連結部を挟むように、左右に配置される。
方向指示スイッチ18aは、ディジタルジョイスティックとして機能し、4つの押圧部の1つを操作することによって、プレイヤによって操作可能なプレイヤキャラクタ(またはプレイヤオブジェクト)の移動方向を指示したり、カーソルの移動方向を指示したりする等に用いられる。スタートスイッチ18bは、プッシュボタンで構成され、ゲームを開始(再開)したり、一時停止(Pause)したりする等に用いられる。セレクトスイッチ18cは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。
動作スイッチ18dすなわちAボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤキャラクタに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム(RPG)やシミュレーションRPGにおいては、アイテムの取得、武器またはコマンドの選択および決定等を指示することができる。動作スイッチ18eすなわちBボタンは、プッシュボタンで構成され、セレクトスイッチ18cで選択したゲームモードの変更やAボタン18dで決定したアクションの取り消し等のために用いられる。
動作スイッチ18eすなわちXボタン、および動作スイッチ18fすなわちYボタンは、プッシュボタンで構成され、プッシュボタンAとプッシュボタンBだけでは、ゲーム進行ができないときに、補助的な操作ボタンとして用いられる。もちろん、ゲームプレイにおいてXボタンとYボタンを必ずしも使用しなくてよい。電源スイッチ18hは、ゲーム装置10の電源をオンオフするためのスイッチである。
動作スイッチ18L(左押しボタン)および動作スイッチ18R(右押しボタン)は、プッシュボタンで構成され、左押しボタン(Lボタン)18Lおよび右押しボタン(Rボタン)18Rは、Aボタン18dおよびBボタン18eと同様の操作に用いることができ、また、Aボタン18dおよびBボタン18eの補助的な操作に用いることができる。
また、このゲーム装置10はタッチパネルを用いたゲーム装置であり、LCD14の上面には、タッチパネル20が装着される。タッチパネル20としては、たとえば、抵抗膜方式、光学式(赤外線方式)および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル20は、その上面をスティック24ないしはペン(スタイラスペン)或いは指(以下、これらを「スティック24等」という場合がある。)で、押圧したり撫でたり(触れたり)することにより操作すると、スティック24等の座標位置を検出して座標データを出力する。
なお、この実施例では、LCD14(LCD12も同じ、または略同じ。)の表示面の解像度は228dot×192dotであり、タッチパネル20の検出精度も表示画面に対応して228dot×192dotとしてあるが、タッチパネル20の検出精度は表示画面の解像度よりも低くてもよく、高くてもよい。
この実施例では、たとえばタッチパネル20の設けられるLCD14には、プレイヤに見せかつ操作させるためのゲーム画面が表示され、LCD12にはプレイヤに見せるためのゲーム画面が表示される。具体的には、LCD12には横線と縦線で形成されたアミダくじのような軌道上をオブジェクトが移動してくる画像が表示される。LCD14に表示されるゲーム画面には、未完成のアミダくじのように、縦線のみが表示されており、プレイヤはLCD14に表示された縦線に対して、スティック24等で直接触れるようにしてタッチパネル20上に横線を描くような操作をする。こうして、LCD12に表示される軌道の続きをLCD14に描いて、移動してくるオブジェクトを所定位置に導くための軌道を作るのである。なお、LCD14は、ゲームの種類に応じてその他各種の入力指示を行うようにしてもよく、たとえばLCD14の表示画面に文字情報やアイコン等を表示してコマンドを選択させたりすることができる。
このように、ゲーム装置10は、2画面分の表示部となるLCD12およびLCD14を有し、いずれか一方(この実施例では、LCD14)の表示画面上にタッチパネル20が設けられるので、2画面(LCD12,14)と2系統の操作部(18,20)を有する構成となるのである。
また、この実施例では、スティック24は、たとえば上側ハウジング16aの中央より側面寄(右寄)に設けられる収納部(収納穴)(図示せず)に収納することができ、必要に応じて取り出される。ただし、スティック24を設けない場合には、収納部を設ける必要もない。
さらに、ゲーム装置10はメモリカード(またはゲームカートリッジ)26を含み、このメモリカード26は着脱自在であり、下側ハウジング16bの裏面ないしは上端(側面)に設けられる挿入口(図示せず)から挿入される。図1では省略するが、挿入口の奥部には、メモリカード26の挿入方向先端部に設けられるコネクタ(図示せず)と接合するためのコネクタ46(図2参照)が設けられており、したがって、メモリカード26が挿入口に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア42(図2参照)がメモリカード26にアクセス可能となる。
なお、図1では表現できないが、下側ハウジング16bの内部において、この下側ハウジング16bの音抜き孔22aと対応する位置には、右スピーカ30aおよび音抜き孔22bと対応する位置には、左スピーカ30b(図2参照)が設けられる。
また、図1では省略するが、たとえば、下側ハウジング16bの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング16bの底面側には、音量調節つまみ、外部拡張コネクタおよびイヤフォンジャックなどが設けられる。
図2は、ゲーム装置10の電気的な構成を示すブロック図である。図2を参照して、ゲーム装置10は電子回路基板40を含み、この電子回路基板40にはCPUコア42等の回路コンポーネントが実装される。CPUコア42は、バス44を介して、コネクタ46,RAM48,第1のGPU(Graphic Processing Unit)52,第2のGPU54,I/F回路50,LCDコントローラ60およびワイヤレス通信ユニット64と接続される。
コネクタ46には、上述したように、メモリカード26が着脱自在に接続される。メモリカード26は、ROM26aおよびRAM26bを含む。図示は省略するが、ROM26aおよびRAM26bは、バスで互いに接続され、かつコネクタ46と接合されるコネクタ(図示せず)に接続される。この結果、CPUコア42は、ROM26aおよびRAM26bにアクセスすることができる。
ROM26aは、ゲーム装置10で実行すべきゲームのためのゲームプログラム、キャラクタ画像,背景画像,アイテム画像,メッセージ画像のような画像データ、効果音,BGM,キャラクタの擬制音のような音データなどを予め記憶する。バックアップRAM26bは、ゲームの途中データや結果データをセーブする。
RAM48は、バッファメモリないしはワーキングメモリとして使用される。つまり、CPUコア42は、メモリカード26のROM26aに記憶されたゲームプログラム、および画像データ,音データ等のデータをRAM48にロードし、ロードしたゲームプログラムを実行する。また、CPUコア42は、ゲーム処理の進行に応じて、ゲームデータやフラグデータなどの一時的なデータをRAM48に記憶する。
なお、ゲームプログラム、および画像データ,音データ等のデータは、一括して、または必要に応じて部分的かつ順次的にROM26aから読み出され、RAM48に記憶される。
GPU52および54の各々は、描画手段の一部を形成し、たとえばシングルチップASICで構成される。GPU52または54は、CPUコア42からグラフィックスコマンド(作画命令)を受けたとき、このグラフィックスコマンドにしたがってゲーム画像データを生成する。ここで、CPUコア42は、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム(ゲームプログラムに含まれる。)をGPU52および54の各々に与える。
ただし、グラフィックスコマンドの実行に必要なデータ(ポリゴン,テクスチャなどの画像データ)は、RAM48に格納され、GPU52または54によって取得される。
また、GPU52にはVRAM56が接続され、GPU54にはVRAM58が接続される。GPU52は、作成したゲーム画像データをVRAM56に描画し、GPU54は、作成したゲーム画像データをVRAM58に描画する。
VRAM56および58は、LCDコントローラ60に接続される。LCDコントローラ60はレジスタ62を含む。レジスタ62はたとえば1ビットで構成され、CPUコア42の指示によって“0”または“1”のデータ値を記憶する。LCDコントローラ60は、レジスタ62のデータ値が“0”であるとき、VRAM56に描画されたゲーム画像データをLCD14に出力し、VRAM58に描画されたゲーム画像データをLCD12に出力する。また、LCDコントローラ60は、レジスタ62のデータ値が“1”であるとき、VRAM56に描画されたゲーム画像データをLCD12に出力し、VRAM58に描画されたゲーム画像データをLCD14に出力する。
I/F回路50には、操作スイッチ18,タッチパネル20,右スピーカ30aおよび左スピーカ30bが接続される。ここで、操作スイッチ18は、上述したスイッチ18a,18b,18c,18d,18e,18f,18g,18h,18Lおよび18Rである。操作スイッチ18が操作されると、対応する操作信号(操作データ)がI/F回路50を介してCPUコア42に入力される。タッチパネル20で検出された座標データも、I/F回路50を介してCPUコア42に入力される。また、CPUコア42は、BGM,効果音,キャラクタの擬制音などのゲームに必要な音データをRAM48から読み出し、I/F回路50を介して右スピーカ30aおよび左スピーカ30bから出力する。
対戦モードが選択された状態では、相手方のゲーム装置との間で無線信号がワイヤレス通信ユニット64を通してやり取りされる。すなわち、ワイヤレス通信ユニット64は、相手方への通信データを無線信号に変調してアンテナ(図示せず)から送信し、また、相手方のゲーム装置からの無線信号を同じアンテナで受信して通信データに復調する。
図3にはRAM48のメモリマップの一例が示される。RAM48は、メモリカード26のROM26aからロードされたプログラムを記憶する。この実施例でロードされるプログラムは、タッチ検出プログラム80,ゲームメイン処理プログラム82および図鑑情報処理プログラム86などを含む。なお、図示は省略しているが、ゲームの画像や音声を生成/出力するためのプログラムなど、ゲーム進行に必要な各種プログラムもロードされる。
タッチ検出プログラム80は、タッチパネル20を通してタッチ点の座標を検出する。ゲームメイン処理プログラム82は、操作スイッチ18やタッチパネル20の操作に応じて、ゲームの開始,ゲームの進行,勝敗判定およびゲームの終了など、ゲームのメイン処理を実行する。
このゲームでプレイヤは、複数のキャラクタの図鑑情報を登録したキャラクタ図鑑を参照することができる。操作スイッチ18によって図鑑機能を呼び出す操作が行われると、まず図4に示すように、LCD12にリスト70が表示され、LCD14にはホイール72が表示される。リスト70は複数のキャラクタにそれぞれ対応する複数のリスト要素(LE1,LE2,…)で構成されており、LCD12に表示されるのはその一部(たとえばLE11,LE12およびLE13)である。
図鑑情報処理プログラム84は、こうして上下2つのLCD12および14にリスト70およびホイール72が表示された状態で、ホイール72をタッチペン24で擦り回すようなタッチ操作が行われたとき、タッチ検出プログラムによって単位時間毎に検出される一連のタッチ座標(操作ベクトル)に基づいて、ホイール72を右回りまたは左回りに回転させ、かつリスト70を上方向または下方向に移動させる。
具体的には、図4に示すように、プレイヤがタッチペン24でホイール72上に任意の直線を描くと、ある時刻にタッチ点Aが検出され、その単位時間(たとえば1/60秒)経過後に点Bがさらに検出される。点Aから点Bに向かうベクトルが操作ベクトルABであり、この操作ベクトルABに従って、ホイール72は左回りに回転し、リスト70は上方向に移動する。なお、操作ベクトルの向きが逆(点Bから点Aに向かう向き)であれば、ホイール72は右回りに回転し、リスト70は下方向に移動する。
ホイール72の回転量およびリスト70の移動量は、操作ベクトルABから算出される(図5および図6参照:後述)。プレイヤは、ホイール72をタッチペン24で適量回転させることにより(図9(A)〜図9(C)参照:後述)、所望のリスト要素が規定位置Pにくるようにリスト70を移動させることができる(図7(A)〜図7(C),図8(A)および図8(B)参照:後述)。所望のリスト要素(たとえばLE11)が規定位置Pに停止表示された状態(図8(B)参照)で操作スイッチ18等により所定操作を行うと、このリスト要素に対応するキャラクタの図鑑情報がLCD12(および/またはLCD14)に表示される。
また、RAM48は、座標記憶領域90,変数記憶領域92,フラグ記憶領域94,定数記憶領域96および図鑑情報記憶領域98などを有する。座標記憶領域90は、タッチ検出プログラムによって検出されたタッチ点の座標を記憶するための領域である。記憶された座標は、図鑑情報処理プログラム84によって利用される。
変数記憶領域92は、図鑑情報処理プログラム84によって利用される変数(VE,VS,VL,VHおよびLCなど:後述)を記憶するための領域である。フラグ記憶領域94は、図鑑情報処理プログラム84によって利用されるフラグ(F,G1およびG2など:後述)を記憶するための領域である。定数記憶領域96は、図鑑情報処理プログラム84によって利用される定数(換算定数,減速定数,変換定数,初期値,VSmin,VLminおよびCなど:後述)を記憶するための領域である。図鑑情報記憶領域98は、図鑑情報処理プログラム84によって利用される図鑑情報を記憶するための領域である。
以下、ホイール72の回転量およびリスト70の移動量の算出方法について詳しく説明する。最初、操作ベクトルABから有効操作量VE(接線成分distの絶対値)および回転方向(方向フラグF)を計算する。
具体的には、まず図5を参照して、XY平面の原点O(0,0)は、ホイール72の中心O(図4参照)と対応する。XY平面上には、原点Oを中心とする基準円周Cが定義される。なお、基準円周Cは、ホイール72の外周に定数を乗じたものであり、この定数が大きいほど、一定の操作量に対するホイール72の回転量は小さくなる。
ある時刻にタッチ点A(a,b)が検出され、そして単位時間後にタッチ点B(c,d)がさらに検出されたとすると、操作ベクトルABを(c−a,d−b)のように計算し、結果を(g,h)とする。
一方、OAを半径とする円周C1の点Aにおける接線は、ベクトルOAに垂直なベクトルOA’=(−b,a)と平行であるから、ベクトルOA’を規格化することで、この接線に平行な単位ベクトルE=(e,f)を求める。
こうして求めた操作ベクトルABと単位ベクトルEとの内積をとれば、操作ベクトルABの点Aにおける接線方向の成分dist(=e*g+f*h)が得られる。接線成分distは符合を含むため、この絶対値を有効操作量VEとする。その一方で、ベクトルOAとベクトルOBとの外積(これをzとする)を求め、z>0であればF=0(左回り/上方向)とし、z<0であればF=1(右回り/下方向)とする。
なお、回転方向については、外積zの符号によらずとも、接線成分distの符合に基づいて決定することができる。すなわち、dist>0であればF=0とし、dist<0であればF=1とすればよい。この場合また、接線成分distを絶対値(VE)と符号(F)とに分離せず、接線成分distから直にホイール回転量およびリスト移動量を算出してもよい。
次に、有効操作量VEから基準速度VSを求める。具体的には、タッチ操作が開始されると、算出された有効操作量VEに換算定数(たとえば10)を乗じ、結果を基準速度VSとする。基準速度VSは、タッチ操作中、単位時間毎に算出される有効操作量VEに基づいて、単位時間毎に更新される。
そして、基準速度VSに対しては、減速定数(たとえば2)を減算する処理が、タッチ操作中か否かを問わず、単位時間毎に実行される。従って、タッチ操作終了後は、単位時間毎の減算処理だけが実行され、この結果、基準速度VSはタッチ操作終了直前の値から徐々に小さくなっていく。
ただし、基準速度VSを更新する際、VS<VSmin(たとえば2)であればVS=0とする。こうして基準速度VSに遊びを持たせることで、ホイール72やリスト70の細動が防止される。
次に、基準速度VSをリスト移動量VLとして、リスト70をフラグFに対応する方向にリスト移動量VLだけ移動させる。また、基準速度VSの基準円周Cに対する割合(VS/C)を360度に乗算し、結果をホイール回転量VH(=360*VS/C)として、ホイール72をフラグFに対応する向きにホイール回転量VLだけ回転させる。
これにより、点Aから点Bに向かうタッチ操作に対して、ホイール72は操作ベクトルABに応じた速度VHで左回りに回転し、リスト70は操作ベクトルABに応じた速度VLで上方向に移動する。これとは逆向きつまり点Bから点Aに向かうタッチ操作に対しては、ホイール72は操作ベクトルBAに応じた速度VHで右回りに回転し、リスト70は操作ベクトルBAに応じた速度VLで下方向に移動する。
タッチ操作が終了すると、ホイール72は、図9(A)〜図9(C)に示すように、その回転速度VHを単位時間毎に減速定数ずつで減じていき、VH=0で停止する。一方、リスト70は、図7(A)〜図7(C),図8(A)および図8(B)に示すように、その移動速度VLを単位時間毎に減速定数ずつ減じていき、VL=0で停止する。
ただし、リスト70については、移動速度VLを単純に定数ずつ減じていったのでは、所望のリスト要素が規定位置Pからずれた状態で停止する可能性がある。たとえば、図10(A)のようにリスト要素LE05が基準位置Pに静止表示された状態で、ホイール72を左回りに回転させるような操作(点Bから点Aに向かうタッチ操作:図4参照)が行われ、応じてリスト70が下向き(F=0)に速度VL=6で移動を開始したとする。
この場合、リスト移動速度VLは、基準速度VSに従って単位時間毎に減速定数(=2)ずつ減少していく(図10(B)および図10(C)参照)。そしてVS=0となった時点(図11(A)参照)で、VL=0となりリスト70は停止するはずである。しかしこのとき、注目するリスト要素LE04は未だ基準位置Pに達していない。そこで、リスト要素LE04が基準位置Pに到達するまでの期間、リスト移動速度VLをVLmin(=2)に維持する。
注目リスト要素が基準位置Pに到達したか否かの判別には、リストカウンタLCを利用する。リストカウンタLCは、いずれかのリスト要素が基準位置Pに静止表示されている状態で“0”を示し、タッチ操作に応答してそのリスト要素が基準位置Pを離れたとき初期値(たとえば10)に変化する(図7(A)参照)。以降、リスト70の移動に従って減少していき(図7(B),図7(C)および図8(A)参照)、次のリスト要素が基準位置に到達したとき“0”となる(図8(C)参照)。そこで、VL<VLmin(=2)となったときLC=0か否かを判別して、NOであればLC=0となるまでの期間VL=VLminとし、LC=0となった時点でVL=0とする。
これにより、図11(A)の場合、VS=0となってもLC=4なので、リスト70は速度VL=2で移動する。以降、図11(B),図11(C)および図12(A)に示すように、リストカウンタLCは“3”,“2”,“1”と減少していくが、リスト70は速度VL=2で移動し続ける。そして、図12(B)に示すように、LC=0となった時点でVL=0となり、この結果、リスト70は規定位置Pで停止する。
従って、リスト70の停止タイミングは、移動開始(図10(A)参照)から7単位時間後(図12(B)参照)となる。なお、ホイール72の停止タイミングは、基準速度VSが0となった時点なので、移動開始から3単位時間経過後(図11(A)参照)である。
以上のようなリスト移動速度およびホイール回転速度の制御を行うに当たって、CPUコア42は、図13〜図21のフロー図に従う処理を実行する。なお、これらのフロー図は、メモリ48内のタッチ検出プログラム82および図鑑情報処理プログラム84(図3参照)に対応する。操作スイッチ18等により図鑑機能を呼び出す操作が行われると、図13に対応するメインルーチンが起動される。
図13を参照して、メインルーチンでは、まずステップS1で初期化を行う。具体的には、座標記憶領域90をクリアし、変数記憶領域92の変数およびフラグ記憶領域94のフラグをリセットする。続くステップS3では、タッチ操作中か否かを判別し、NOであればステップS11に進む。ステップS3でYESであれば、ステップS5〜S9を経てステップS11に進む。
ステップS5では、タッチパネル20を通してタッチ点の座標を検出する。検出されたタッチ座標は、次のステップS7でRAM48の座標記憶領域90に保持される。ステップS9では、座標記憶領域90内の情報(操作ベクトル)に基づいて、回転方向(z)および有効速度(VE)を算出する。
ステップS11では、有効速度に基づいて基準速度(VS)を算出する。さらに基準速度から、リスト移動速度(VL)およびホイール回転速度(VH)をステップS13およびS15でそれぞれ算出する。次に、ステップS17でリスト移動速度に基づいてリストカウンタ(LC)を制御し、ステップS19では回転方向に基づいて方向フラグ(F)を制御する。
そして、ステップS21でリスト70を移動表示または静止表示し、ステップS23ではホイール72を回転表示または静止表示し、その後、ステップS3に戻る。なお、ステップS3〜S23のループ処理は、単位時間毎に実行される。
上記ステップS9の回転方向および有効速度算出処理は、図14のサブルーチンに従う。図14を図5と共に参照して、ステップS41では、ステップS5のタッチ検出が初回か否かを判別する。RAM48の座標記憶領域90に前回のタッチ点の座標と今回のタッチ点の座標とが記憶されていれば、ステップS41でYESと判別し、ステップS43以降の処理を実行する。ステップS41でNOであれば、メインルーチンに復帰する。
ステップS43では、前回のタッチ点Aの座標(a,b)および今回のタッチ点Bの座標(c,d)に基づいて、回転方向zを求める。ここで回転方向zは、ベクトルOAとベクトルOBとの外積(a*d−b*c)として計算され、正の値は左回りを、負の値は右回りをそれぞれ示す。
ステップS45では、操作ベクトルAB=(c−a,d−b)を求め、結果を(g,h)とする。ステップS47では、ベクトルOAに垂直なベクトルOA’=(−b,a)を求める。ステップS49では、ベクトルOA’を規格化し、結果を単位ベクトルE=(e,f)とする。ステップS51では、操作ベクトルABと単位ベクトルEとの内積(e*g+f*h)を求め、結果を有効操作量distとする。ステップS53では、有効操作量distの絶対値をとり、結果を有効速度VEとする。
こうして操作ベクトルABから有効速度VEが求まると、ステップS55で制御フラグG1を“1”とした後、メインルーチンに復帰する。
上記ステップS11の基準速度算出処理は、図15のサブルーチンに従う。図15を参照して、ステップS61では制御フラグG1が“1”であるか否かを判別し、NOであればステップS67に進む。ステップS61でYESであれば、ステップS63で有効速度VEに換算定数(たとえば10)を乗じ、結果を基準速度VSとする。そして、ステップS65でG1=0とした後、ステップS67に進む。
ステップS67では、基準速度VSが最小基準速度VSmin(たとえば2)以上であるか否かを判別し、ここでYESであれば、ステップS69で基準速度VSから減速定数を減算した後、メインルーチンに復帰する。ステップS67でNOであれば、ステップS71でVS=0とした後、メインルーチンに復帰する。
上記ステップS13のリスト移動速度算出処理は、図16のサブルーチンに従う。図16を参照して、まずステップS81で基準速度VSをリスト移動速度VLとする。ステップS83では、リスト移動速度VLが最小移動速度VLmin未満か否かを判別し、NOであれば、すなわちVL≧VLminであれば、メインルーチンに復帰する。
ステップS83でYESであれば、ステップS85でリストカウンタLCが“0”であるか否かを判別し、ここでYESであれば、ステップS87でVL=0とした後、メインルーチンに復帰する。ステップS85でNOであればステップS89でVL=VLminとした後、メインルーチンに復帰する。
上記ステップS15のホイール回転速度算出処理は、図17のサブルーチンに従う。図17を参照して、ステップS101では、基準円周C(定数:図5および図6参照)に対する基準速度VS(=VE*換算定数)の割合(=VS/C)を求める。ステップS103では、求めた割合を360度に乗じ、結果をホイール回転速度VH(=360*VS/C)とする。そして、メインルーチンに復帰する。
上記ステップS17のリストカウンタ制御処理は、図18のサブルーチンに従う。図18を参照して、ステップS111では、リスト移動速度VLが“0”でないか否かを判別し、NOであれば、すなわちVL=0であれば、メインルーチンに復帰する。ステップS111でYESであれば、ステップS113でリストカウンタLCが“0”であるか否かを判別する。ここでNOであれば、ステップS115で、リストカウンタLCがリスト移動速度VLを変換定数(たとえば2)で除した結果よりも大きいか否かをさらに判別する。そしてステップS115でもNOであれば、ステップS125でLC=0とした後、メインルーチンに復帰する。
ステップS113でYESであれば、ステップS117で次のリスト要素に注目し、ステップS119ではリストカウンタLCに初期値(たとえば10)をセットし、そしてステップS121で制御フラグG2を“1”とした後、メインルーチンに復帰する。ステップS115でYESであれば、ステップS123でリストカウンタLCから{VL/変換定数}を減算し、そしてメインルーチンに復帰する。
上記ステップS19の方向フラグ制御処理は、図19のサブルーチンに従う。図19を参照して、ステップS131では、制御フラグG2が“1”であるか否かを判別し、NOであればメインルーチンに復帰する。ステップS131でYESであれば、ステップS133でG2=0とした後、ステップS135に移る。ステップS135では、回転方向zが“0”より大であるか否かを判別し、ここでYESであればステップS137で方向フラグFを“0”とした後、メインルーチンに復帰する。ステップS135でNOであれば、ステップS139で方向フラグFを“1”とした後、メインルーチンに復帰する。
上記ステップS21のリスト移動/静止表示処理は、図20のサブルーチンに従う。図20を参照して、ステップS151では、リスト移動速度VLが“0”であるか否かを判別し、YESであればステップS153でリスト70を静止表示した後メインルーチンに復帰する。NOであればステップS153で、リスト70を方向フラグFに対応する方向(F=0であれば上方向,F=1であれば下方向)にリスト移動速度VLだけ移動表示し、そしてメインルーチンに復帰する。
上記ステップS23のホイール回転/静止表示処理は、図21のサブルーチンに従う。図21を参照して、ステップS161では、ホイール回転速度VHが“0”であるか否かを判別し、YESであればステップS163でホイール72を静止表示した後メインルーチンに復帰する。NOであればステップS165で、ホイール72を方向フラグFに対応する方向(F=0であれば左回り,F=1であれば右回り)にホイール回転速度VHだけ回転表示し、そしてメインルーチンに復帰する。
以上から明らかなように、この実施例では、ゲーム装置10は、基準点Oに対する任意の点の位置を指定するためのポインティングデバイスとしてタッチパネル20を備える。ゲーム装置10のCPUコア42は、タッチパネル20で指定された点の基準点Oに対する位置を単位時間毎に検出して(S5)、先後に検出された点Aおよび点Bをそれぞれ始点および終点とする操作ベクトルABを算出する(S45)。そして、算出された操作ベクトルABを、基準点Oおよび点Aをそれぞれ始点および終点とするベクトルOAに垂直な直線に正射影し(S47〜S51)、これによって操作ベクトルABから取り出された成分ベクトル(有効操作量)distに基づいて画像つまりホイール72およびリスト70を動かす(S11〜S23)。
この実施例によれば、ポインティングデバイスで指定された点の移動距離すなわち操作量が同一であれば、指定点の基準点Oからの距離に関わらず同一の成分ベクトルdistが得られるため、操作者が指定点の基準点Oからの距離を考慮して操作量を調整しなくても、画像を所望の量だけ動かすことができる。また、任意の操作を回転操作と見なして、2つの点が検出された時点で成分ベクトルdistを算出するので、レスポンスが向上する。こうして、回転操作に対して的確にかつレスポンスよく画像を動かすことができる。
以上では、一例として、タッチパネル20を備え、これによる回転操作に応じて画像を動かすゲーム装置10について説明したが、この発明は、ポインティングデバイス(タッチパネル,タブレット,マウスなど)を備え、これによる回転操作に応じて情報を処理する情報処理装置(パーソナルコンピュータ,PDA,電子手帳/辞書,情報家電など)に適用できる。
この発明の一実施例の外観を示す図解図である。 図1実施例の内部構成の一例を示すブロック図である。 図1実施例に適用されるRAMのマッピング状態の一例を示す図解図である。 図1実施例に適用されるLCD表示例を示す図解図である。 図1実施例に適用される回転方向および有効速度算出方法を示す図解図である。 図1実施例に適用される回転方向および有効速度算出方法の特徴を図5との比較により示す図解図である。 (A)〜(C)は図1実施例に適用されるリスト移動処理の一例を時系列的に示す図解図である。 (A)および(B)は図7の処理例の続き示す図解図である。 (A)〜(C)は図1実施例に適用されるホイール回転処理の一例を時系列的に示す図解図である。 (A)〜(C)は図1実施例に適用されるリスト移動処理の他の一例を時系列的に示す図解図である。 (A)〜(C)は図10の処理例の続きを示す図解図である。 (A)および(B)は図10の処理例のさらに続きを示す図解図である。 図1実施例に適用されるCPUコアの動作の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作の他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作のその他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作のさらにその他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作の他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作のその他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作のさらにその他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作の他の一部を示すフロー図である。 図1実施例に適用されるCPUコアの動作のその他の一部を示すフロー図である。
符号の説明
10 …ゲーム装置
12,14 …LCD
18(18a−18h,18Lおよび18R) …操作スイッチ
20 …タッチパネル
24 …スティック
26 …メモリカード
42 …CPUコア
48 …RAM
70 …リスト
72 …ホイール
O …基準点
P …規定位置

Claims (9)

  1. 任意の点の位置を指定するためのポインティングデバイスを備える情報処理装置のプロセッサに、
    前記ポインティングデバイスで指定された点の基準点に対する位置を単位時間毎に検出する位置検出ステップ、
    前記位置検出ステップによって先後に検出された第1点および第2点をそれぞれ始点および終点とする操作ベクトルを算出する操作ベクトル算出ステップ、
    前記操作ベクトル算出ステップによって算出された操作ベクトルを、前記基準点および前記第1点をそれぞれ始点および終点とする第1ベクトルに垂直な直線に正射影する正射影ステップ、および
    前記正射影ステップの正射影処理によって前記操作ベクトルから取り出された成分ベクトルに基づいて情報を処理する情報処理ステップを実行させる、情報処理プログラム。
  2. 前記正射影ステップは、前記第1ベクトルに垂直な単位ベクトルを算出する単位ベクトル算出ステップ、および前記操作ベクトル算出ステップによって算出された操作ベクトルと前記単位ベクトル算出ステップによって算出された単位ベクトルとの内積を計算する内積計算ステップを含む、請求項1記載の情報処理プログラム。
  3. 前記プロセッサに、
    前記内積計算ステップの計算結果の絶対値を計算する絶対値計算ステップ、および
    前記第1ベクトルと前記基準点および前記第2点をそれぞれ始点および終点とする第2ベクトルとの外積を計算する外積計算ステップをさらに実行させ、
    前記情報処理ステップは前記絶対値計算ステップの計算結果および前記外積計算ステップの計算結果に基づいて情報処理を行う、請求項2記載の情報処理プログラム。
  4. 前記情報処理装置は画像を表示するディスプレイをさらに備え、
    前記情報処理ステップは前記ディスプレイに表示された画像を前記操作ベクトルから取り出された成分ベクトルの向きと対応する方向に当該成分ベクトルの大きさに応じた量だけ動かす、請求項1記載の情報処理プログラム。
  5. 前記情報処理ステップは、前記操作ベクトルから取り出された成分ベクトルの大きさに定数を乗算しかつ乗算結果を基準速度として保持する保持ステップ、および前記保持ステップによって保持された基準速度に対して単位時間毎に減速処理を施す減速処理ステップをさらに含む、請求項4記載の情報処理プログラム。
  6. 前記情報処理ステップは、前記保持ステップによって保持された基準速度が閾値以上か否かを判別する速度判別ステップ、および前記速度判別ステップによって基準速度が閾値未満であると判別されたとき当該基準速度をゼロに変更する変更ステップをさらに含む、請求項5記載の情報処理プログラム。
  7. 前記情報処理ステップは、前記速度判別ステップによって基準速度が閾値未満であると判別されたとき前記画像が規定位置にあるか否かを判別する位置判別ステップ、および前記位置判別ステップによって前記画像が前記規定位置にないと判別されたとき当該画像を当該規定位置まで動かした後で停止させる動き維持ステップをさらに含む、請求項6記載の情報処理プログラム。
  8. 前記画像は第1画像および第2画像を含み、
    前記情報処理ステップは、
    前記第1画像を前記操作ベクトルから取り出された成分ベクトルの向きと対応する方向に当該成分ベクトルの大きさに応じた角度だけ回転させる回転ステップ、および
    前記第2画像を前記操作ベクトルから取り出された成分ベクトルの向きと対応する方向に当該成分ベクトルの大きさに応じた距離だけ平行移動させる平行移動ステップを含む、請求項4記載の情報処理プログラム。
  9. 任意の点の位置を指定するためのポインティングデバイス、
    前記ポインティングデバイスで指定された点の基準点に対する位置を単位時間毎に検出する位置検出手段、
    前記位置検出手段によって先後に検出された第1点および第2点をそれぞれ始点および終点とする操作ベクトルを算出する操作ベクトル算出手段、
    前記操作ベクトル算出手段によって算出された操作ベクトルを、前記基準点および前記第1点をそれぞれ始点および終点とする第1ベクトルに垂直な直線に正射影する正射影手段、および
    前記正射影手段の正射影処理によって前記操作ベクトルから取り出された成分ベクトルに基づいて情報を処理する情報処理手段を備える、情報処理装置。
JP2006260623A 2006-09-26 2006-09-26 情報処理プログラムおよび情報処理装置 Active JP4897411B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006260623A JP4897411B2 (ja) 2006-09-26 2006-09-26 情報処理プログラムおよび情報処理装置
US11/636,445 US7724267B2 (en) 2006-09-26 2006-12-11 Information processing program and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006260623A JP4897411B2 (ja) 2006-09-26 2006-09-26 情報処理プログラムおよび情報処理装置

Publications (2)

Publication Number Publication Date
JP2008083796A true JP2008083796A (ja) 2008-04-10
JP4897411B2 JP4897411B2 (ja) 2012-03-14

Family

ID=39354653

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006260623A Active JP4897411B2 (ja) 2006-09-26 2006-09-26 情報処理プログラムおよび情報処理装置

Country Status (2)

Country Link
US (1) US7724267B2 (ja)
JP (1) JP4897411B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079590A (ja) * 2008-09-26 2010-04-08 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
JP2010211781A (ja) * 2009-02-12 2010-09-24 Sony Corp 動作認識装置、動作認識方法、プログラム
JP2011053924A (ja) * 2009-09-02 2011-03-17 Nippon Telegr & Teleph Corp <Ntt> 画像表示装置および画像表示方法
JP2011164475A (ja) * 2010-02-12 2011-08-25 Mitsubishi Electric Corp プログラマブル表示器
US9454834B2 (en) 2008-09-26 2016-09-27 Nintendo Co., Ltd. Storage medium storing image processing program for implementing controlled image display according to input coordinate, and information processing device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200907882A (en) * 2007-08-08 2009-02-16 Hi Touch Imaging Tech Co Ltd Display apparatus for displaying digital images
US8723819B2 (en) * 2010-09-27 2014-05-13 Sentelic Corporation Method for analyzing two-dimensional track to generate at least one non-linear index and touch control module using the same
JP5639830B2 (ja) * 2010-09-29 2014-12-10 任天堂株式会社 ゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法
US8760417B2 (en) 2010-10-15 2014-06-24 Sap Ag Touch-enabled circle control for time and date entry

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0321077U (ja) * 1989-07-13 1991-03-01
JPH0448318A (ja) * 1990-06-18 1992-02-18 Sony Corp 情報入力装置
JPH0713685A (ja) * 1993-06-25 1995-01-17 Matsushita Electric Ind Co Ltd 機器制御装置
JP2002010211A (ja) * 2000-06-19 2002-01-11 Hitachi Ltd 動画像の再生制御方式
JP2005078152A (ja) * 2003-08-28 2005-03-24 Sony Corp 情報処理装置,情報処理方法,情報処理プログラムを記憶させた記憶媒体、及び情報処理プログラム
WO2006017477A2 (en) * 2004-08-04 2006-02-16 Interlink Electronics, Inc. Multifunctional scroll sensor
JP2008033695A (ja) * 2006-07-29 2008-02-14 Sony Corp 表示内容のスクロール方法、スクロール装置およびスクロールプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5019809A (en) * 1988-07-29 1991-05-28 University Of Toronto Innovations Foundation Two-dimensional emulation of three-dimensional trackball
EP0526881B1 (en) * 1991-08-06 2002-02-06 Canon Kabushiki Kaisha Three-dimensional model processing method, and apparatus therefor
EP0660258B1 (en) * 1993-12-20 2000-03-08 Seiko Epson Corporation Electronic pointing device
JP3282957B2 (ja) * 1996-01-18 2002-05-20 インターナショナル・ビジネス・マシーンズ・コーポレーション 座標入力制御装置及び方法
JPH10214149A (ja) * 1997-01-30 1998-08-11 Wacom Co Ltd 座標入力装置及び位置指示器
JPH10320112A (ja) * 1997-05-14 1998-12-04 Wacom Co Ltd 角度情報入力装置
US8479122B2 (en) * 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US7046229B1 (en) * 1999-04-20 2006-05-16 Microsoft Corporation Computer input device providing absolute and relative positional information
JP2002222034A (ja) 2000-11-22 2002-08-09 Shinichi Komatsu 座標位置入力によるコンピュータの制御方法並びにこの方法によりコンピュータを制御するプログラム及びこのプログラムが記録された記録媒体
JP4125931B2 (ja) * 2002-08-26 2008-07-30 株式会社ワコー 回転操作量の入力装置およびこれを利用した操作装置
US7429978B2 (en) * 2003-03-06 2008-09-30 Fujitsu Limited Portable electronic apparatus
US6937227B2 (en) * 2003-07-14 2005-08-30 Iowa State University Research Foundation, Inc. Hand-held pointing device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0321077U (ja) * 1989-07-13 1991-03-01
JPH0448318A (ja) * 1990-06-18 1992-02-18 Sony Corp 情報入力装置
JPH0713685A (ja) * 1993-06-25 1995-01-17 Matsushita Electric Ind Co Ltd 機器制御装置
JP2002010211A (ja) * 2000-06-19 2002-01-11 Hitachi Ltd 動画像の再生制御方式
JP2005078152A (ja) * 2003-08-28 2005-03-24 Sony Corp 情報処理装置,情報処理方法,情報処理プログラムを記憶させた記憶媒体、及び情報処理プログラム
WO2006017477A2 (en) * 2004-08-04 2006-02-16 Interlink Electronics, Inc. Multifunctional scroll sensor
JP2008033695A (ja) * 2006-07-29 2008-02-14 Sony Corp 表示内容のスクロール方法、スクロール装置およびスクロールプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079590A (ja) * 2008-09-26 2010-04-08 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
US9454834B2 (en) 2008-09-26 2016-09-27 Nintendo Co., Ltd. Storage medium storing image processing program for implementing controlled image display according to input coordinate, and information processing device
JP2010211781A (ja) * 2009-02-12 2010-09-24 Sony Corp 動作認識装置、動作認識方法、プログラム
JP2011053924A (ja) * 2009-09-02 2011-03-17 Nippon Telegr & Teleph Corp <Ntt> 画像表示装置および画像表示方法
JP2011164475A (ja) * 2010-02-12 2011-08-25 Mitsubishi Electric Corp プログラマブル表示器

Also Published As

Publication number Publication date
US20080122863A1 (en) 2008-05-29
JP4897411B2 (ja) 2012-03-14
US7724267B2 (en) 2010-05-25

Similar Documents

Publication Publication Date Title
JP4897411B2 (ja) 情報処理プログラムおよび情報処理装置
US9604133B2 (en) Touch-controlled game character motion providing dynamically-positioned virtual control pad
US8172681B2 (en) Storage medium having stored therein game program and game device
US7658675B2 (en) Game apparatus utilizing touch panel and storage medium storing game program
JP3833228B2 (ja) ゲーム装置およびゲームプログラム
US20060109259A1 (en) Storage medium storing image display program, image display processing apparatus and image display method
US8113954B2 (en) Game apparatus, storage medium storing game program and game controlling method for touch input monitoring
JP3734820B1 (ja) ゲームプログラム、ゲーム装置、および入力装置
EP1808210B1 (en) Storage medium having game program stored thereon and game apparatus
JP4471761B2 (ja) ゲームプログラム、ゲーム装置、および入力装置
JP2006119774A (ja) 入力処理プログラムおよび入力処理装置
JP4658544B2 (ja) ゲームプログラム、ゲーム装置、および入力装置
EP1854520B1 (en) Game program and game apparatus
US20080300033A1 (en) Storage medium storing puzzle game program, puzzle game apparatus, and puzzle game controlling method
JP6301813B2 (ja) ゲームプログラムおよびゲーム装置
JP4061278B2 (ja) ゲーム装置およびゲームプログラム
JP2009093666A (ja) 入力処理プログラムおよび入力処理装置
JP2008257746A (ja) 入力処理プログラムおよび入力処理装置
JP2009093680A (ja) 入力処理プログラムおよび入力処理装置
JP2009116908A (ja) 入力処理プログラムおよび入力処理装置
JP2009093681A (ja) 入力処理プログラムおよび入力処理装置
JP2011129166A (ja) 入力処理プログラムおよび入力処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110725

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4897411

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250