JP4376292B2 - 指示内容決定装置、指示内容決定方法、ならびに、プログラム - Google Patents

指示内容決定装置、指示内容決定方法、ならびに、プログラム Download PDF

Info

Publication number
JP4376292B2
JP4376292B2 JP2008075653A JP2008075653A JP4376292B2 JP 4376292 B2 JP4376292 B2 JP 4376292B2 JP 2008075653 A JP2008075653 A JP 2008075653A JP 2008075653 A JP2008075653 A JP 2008075653A JP 4376292 B2 JP4376292 B2 JP 4376292B2
Authority
JP
Japan
Prior art keywords
character
ring
instruction
drawn
user
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
JP2008075653A
Other languages
English (en)
Other versions
JP2009226026A (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.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment 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 Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2008075653A priority Critical patent/JP4376292B2/ja
Priority to CN2009801005584A priority patent/CN101808702B/zh
Priority to PCT/JP2009/055465 priority patent/WO2009119452A1/ja
Priority to KR1020107005801A priority patent/KR101139379B1/ko
Priority to TW098109478A priority patent/TWI377082B/zh
Publication of JP2009226026A publication Critical patent/JP2009226026A/ja
Application granted granted Critical
Publication of JP4376292B2 publication Critical patent/JP4376292B2/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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • 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/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5372Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for tagging characters, objects or locations in the game scene, e.g. displaying a circle under the character controlled by the player
    • 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/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • 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/95Storage media specially adapted for storing game information, e.g. video game cartridges
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • 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/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • 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/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • 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/6623Methods for processing data by generating or executing the game program for rendering three dimensional images for animating a group of characters
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムに関する。
マウスやキーボードを用いたユーザからの指示に応じて画面を切り換えたりスクロールさせたりするユーザインターフェースが知られている。例えば、画面に表示された地図上でマウスをドラッグすると、ドラッグ量に応じたスピードで地図がスクロールして表示されるユーザインターフェースがある。
一方で、仮想空間内におけるゲームにおいて、ユーザ(プレイヤ)から指示内容(いわゆるコマンド)を受け付けるためのユーザインターフェースを分かりやすくする工夫もなされている。例えば特許文献1には、ゲームのストーリ展開に関係するパラメータとして、キャラクタの感情、表情、状態等を表す曖昧な情報を入力できるエンタテインメント装置が開示されている。
特開2002−95864号公報
しかし、仮想空間内におけるゲームの内容が多様化したり複雑化したりするにつれて、ユーザが指示すべき指示内容の数や種類も多くなる傾向にあり、ユーザは、指示対象としてユーザが選択できるキャラクタと、ユーザが選択できる指示内容との両方を直観的に把握することが難しかった。
本発明はこのような課題を解決するものであり、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムを提供することを目的とする。
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
本発明の第1の観点に係る指示内容決定装置は、キャラクタ記憶部、表示部、注目位置記憶部、受付部、出力部を備える。
キャラクタ記憶部は、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶する。
表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した画像を表示する。
注目位置記憶部は、表示された画像内をユーザの操作により移動する注目位置を記憶する。
受付部は、当該ユーザによる決定指示を受け付ける。
出力部は、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
本発明の指示内容決定装置は、例えば、2次元あるいは3次元の仮想空間におけるゲームを実行するときに、ゲーム内の任意のキャラクタへの指示(コマンド)をユーザから受け付けるためのインターフェースとして用いられる。典型的には、キャラクタとは、ユーザが操作可能なユーザキャラクタである。ただし、コマンドの指示対象は、ゲーム内のキャラクタに限られるわけではない。コマンドの内容は、ゲーム処理自体の進行をポーズしたりセーブしたりするものでもよい。
仮想空間には、コマンドの指示対象となる少なくとも1つ以上のキャラクタが配置される。キャラクタには、所定のコマンドが対応付けられた円又は円環が割り当てられる。円環は、半径の異なる2つの正円又は楕円によって挟まれる領域、つまり“輪”のような形状の領域であり、画面内に例えばキャラクタの周りを囲むように描画される。
画面には、キャラクタの画像と、キャラクタの周りを囲むような円環の画像が含まれる。円環は1つだけでもよいし複数でもよい。複数の円環を配置する場合には、複数の円環を総称して円環群と呼ぶこともある。なお、円環の形状を任意に変更してもよいし、円環の代わりに、例えば1つの正円又は楕円によって囲まれる領域を用いてもよい。
ユーザは、画面内に設定された注目位置を移動できるとともに、決定指示を入力することもできる。決定指示とは、コマンドを決定する旨の指示、あるいは、コマンドの指示対象となるキャラクタ等を決定する旨の指示のことである。ユーザは、例えば、コントローラが有する所定の決定キーの押し操作、キーボードへの所定文字列の入力操作、マウスのクリック操作などによって、指示内容決定装置に決定指示を出すことができる。
指示内容決定装置は、決定指示が出されたときの注目位置に応じて、コマンドを決定する。すなわち、指示内容決定装置は、決定指示が出されたときに、円環が描画されている画像領域内に注目位置がある場合、注目位置がある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。なお、円環が描画されている画像領域内に注目位置がある状態を“アクティブ状態”と呼び、それ以外の状態を“非アクティブ状態”と呼ぶことにする。
例えば、1つのキャラクタに複数の円環を対応付け、それぞれの円環に所定のコマンドを対応付けておく。ユーザは、注目位置を移動することにより、キャラクタの周囲に配置された複数の円環の中からいずれか一つを選択してアクティブ状態に設定できる。そして、ユーザがいずれかの円環をアクティブ状態に設定した上で決定指示を出せば、コマンドが決定される。
本発明によれば、指示内容決定装置は、キャラクタと円環とを関連付けて表示することにより、ユーザが選択可能な指示(コマンド)や指示内容(コマンド内容)を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できるようになる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できるようになる。
キャラクタ記憶部は、当該仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む互いに重複しない複数の円環の位置とを記憶してもよい。
また、表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された複数の円環の位置に当該複数の円環を描画した画像を表示してもよい。
そして、出力部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力してもよい。
つまり、指示対象となるキャラクタに対応付けられるコマンドの数や種類は複数であってもよい。一般に、ユーザが選択可能なコマンドの数が多いほど、どのキャラクタにどんなコマンドを出せるのかを把握しづらくなってしまうことが多い。しかし、本発明によれば、指示内容決定装置は、コマンドの数や種類が複数であっても、ユーザが選択可能なコマンドやコマンド内容を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけで、所望のコマンドを選択できる。
なお、一つのキャラクタに対応付けられたコマンドが複数であり、それらのうちユーザが選択できるコマンドが一部のみである場合には、ユーザが選択できないコマンドに対応する円環を表示しないようにすることもできる。
表示部は、当該仮想空間に配置された視点から当該キャラクタと当該複数の円環とを見た様子を描画した画像を表示してもよい。
そして、表示部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該円環の当該注目位置に重なる場所の当該仮想空間における位置と、当該視点の位置と、の距離に予め大きさが対応付けられるマークを更に描画して表示してもよい。
例えば仮想空間を3次元とすると、画面には、仮想空間に配置される視点の位置から、視線の方向に、所定の投影面へ、仮想空間を投影した画像が描画される。例えば、キャラクタを立体的な形状を有するオブジェクトとする。指示内容決定装置は、オブジェクトを視点の位置から視点の方向に所定の投影面へ投影した画像を生成する。また、指示内容決定装置は、生成した画像に円環の画像を描画する。なお、キャラクタと同様に、円環も立体的な形状を有するオブジェクトとしてもよい。
さらに、画面には、コマンドの指示対象を指すためのマーク(指示マーク)の画像も描画される。ユーザは、コントローラ、キーボード、マウスなどを操作して、指示マークの位置を自由に移動することができる。画面内の指示マークの位置が、上述の注目位置になる。
指示マークの形状は任意であり、画面内の位置を一意に指定できるものであれば良いが、指示マークの大きさは予め決められている。すなわち、画面内における指示マークの位置に対応する、仮想空間における指示マークの位置と、視点の位置と、の距離が長いほど、指示マークは小さく描画され、距離が短いほど、指示マークは大きく描画される。言い換えれば、指示マークが指している仮想空間内の場所の奥行きに応じて、指示マークの大きさが変わる。
指示内容決定装置は、決定指示が出されたときの指示マークの位置に応じて、コマンドを決定する。すなわち、指示内容決定装置は、決定指示が出されたときに、円環が描画されている画像領域内に指示マークがある場合、指示マークがある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。
例えば、1つのキャラクタに複数の円環を対応付け、それぞれの円環に所定のコマンドを対応付けておく。ユーザは、指示マークを移動することにより、キャラクタの周囲に配置された複数の円環の中からいずれか一つを選択してアクティブ状態に設定できる。そして、ユーザが指示マークを用いて円環をアクティブ状態に設定した上で決定指示を出せば、コマンドが決定される。
本発明によれば、指示内容決定装置は、ユーザが選択可能なコマンドを分かりやすく提示することができ、且つ、コマンドが与えられる対象(指示対象)を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できる。更に、指示マークは画面の奥行きに応じて大きさが変わるので、仮想空間内における方向に関係するコマンドの内容を、より分かりやすく提示できるようになる。
表示部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該領域の色相、彩度、明度のうち少なくとも一つ以上を変化させて表示してもよい。
すなわち、アクティブ状態に設定された円環を強調して描画することにより、指示マークが画面内のどこにあるのか、もし決定指示が出されればどのコマンドを出すことになるのか、といった情報を、ユーザに的確に知らせることができる。従って、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。アクティブ状態に設定された円環を強調して描画するためには、例えば、周囲に比べてより明るく表示したり、相対的に目立つ色彩に変えたりすればよい。
記憶された注目位置が、当該キャラクタが描画されている領域内にある場合、当該決定指示が受け付けられると、表示部は、
(a)当該円環が描画されていれば、当該描画を停止し、
(b)当該円環が描画されていなければ、当該描画を開始する、
ようにしてもよい。
例えば、決定指示には、指示対象となるキャラクタを決定するキャラクタ決定指示と、決定したキャラクタへのコマンドを決定するコマンド決定指示と、の二種類がある。ユーザは、まずキャラクタ決定指示によりキャラクタを決定し、次にコマンド決定指示によりコマンドを決定する。いずれの決定指示も、所定の決定キーの押し操作、キーボードへの所定文字列の入力操作、マウスのクリック操作などである。ユーザは、特にキャラクタ決定指示用の操作とコマンド決定指示用の操作とを使い分けるわけではなく、同じ操作であっても、キャラクタが選択状態か非選択状態かによって、あるいは、円環がアクティブ状態か非アクティブ状態かによって、指示内容決定装置側で内部的に区別される。
本発明では、キャラクタ決定指示の前後において、あるいは、コマンド決定指示の前後において、円環を描画したり描画しなかったりする。
まず、キャラクタがユーザによって選択されていない場合、円環は表示されない。もし、キャラクタが選択状態に設定されると、選択状態のキャラクタに対応付けられた円環が描画される。また、キャラクタが選択状態から非選択状態に設定されると、描画されていた円環が消える(描画されない)。
また、キャラクタが選択された後、コマンドが決定されていない間、選択状態のキャラクタに対応付けられた円環が描画される。もし、コマンドが選択されると、描画されていた円環が消える(描画されない)。
従って、本発明によれば、キャラクタが選択されているか否か、あるいは、コマンドが決定されたか否か、といった情報を、ユーザに的確に知らせることができる。そして、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。
キャラクタ記憶部は、複数のキャラクタのそれぞれについて、当該キャラクタの位置を記憶してもよい。
また、記憶された注目位置が、当該複数のキャラクタのいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、表示部は、描画されているキャラクタを囲む円環の描画を開始し、当該キャラクタ以外のキャラクタを囲む円環の描画を停止してもよい。
そして、当該出力される指示内容は、当該円環に囲まれるキャラクタに対するものであってもよい。
本発明では、コマンドの指示対象となる複数のキャラクタが仮想空間に配置されていてもよい。そして、キャラクタ決定指示の前後において、あるいは、コマンド決定指示の前後において、円環を描画したり描画しなかったりする。
まず、いずれのキャラクタもユーザによって選択されていない場合、円環は表示されない。もし、いずれかのキャラクタが選択状態に設定されると、選択状態に設定されたキャラクタに対応付けられた円環が描画される。また、キャラクタが選択状態から非選択状態に設定されると、描画されていた円環が消える。
また、いずれかのキャラクタが選択された後、コマンドが決定されていない間、選択状態のキャラクタに対応付けられた円環が描画される。もし、いずれかのコマンドが選択されると、描画されていた円環が消える。
従って、本発明によれば、どのキャラクタが選択されているのか、あるいは、どのコマンドが決定されたのか、といった情報を、ユーザに的確に知らせることができる。そして、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。
当該複数の円環は、当該仮想空間の所定の平面内に配置され、共通する中心を有してもよい。
つまり、キャラクタの周囲には、キャラクタに対応付けられた複数の円環が同心円状に描画される。従って、どの円環にどのキャラクタに対するコマンドが対応付けられているのかが容易に掴める。
表示部は、記憶されたキャラクタの位置に基づいて、記憶された円環の位置を更新し、更新した円環の位置に当該円環を表示してもよい。
つまり、円環はキャラクタを囲むように配置されればよく、円環の中心位置を画面の上下左右にずらして描画してもよい。
例えば、ユーザはコントローラ等を操作して仮想空間の所定範囲内でキャラクタの位置を変更でき、コマンド内容が「指示マークがある方向にキャラクタを移動する」などというように仮想空間内における方向が関係しているとする。このとき、画面内の円環の中心位置は、現在キャラクタが仮想空間のどこにあるのかに応じて、上下左右にずれて描画される。例えば、仮想空間内において、画面の左側方向に壁があるためキャラクタがそれ以上進めないのであれば、円環は右寄りにずれて描画される。ユーザは、円環のずれ具合を見れば、移動可能な向きを容易に把握できる。
本発明によれば、指示内容決定装置は、より相応しいと推定されるコマンドをユーザに分かりやすく提示することができる。ユーザは、的確な指示内容を簡単に選択できるようになる。
当該仮想空間は2次元空間であり、
当該円環が描画される位置は、当該仮想空間内における位置であってもよい。
上述のように本発明の指示内容決定装置は、例えば仮想空間におけるゲームを実行するときにコマンドをユーザから受け付けるためのインターフェースとして用いることができる。仮想空間を2次元空間とすると、画面には、仮想空間全体のうち仮想空間内に設定される表示領域の画像が描画される。この画像には、表示領域内の仮想空間の様子と、同じく仮想空間に配置されるキャラクタと指示マークが含まれる。指示内容決定装置が扱う仮想空間は、3次元に限らず2次元でもよい。
本発明のその他の観点に係る指示内容決定方法は、キャラクタ記憶部、注目位置記憶部、表示部、受付部、出力部を有する指示内容決定装置にて実行される指示内容決定方法であって、表示ステップ、受付ステップ、出力ステップを備える。
キャラクタ記憶部には、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、が記憶される。
注目位置記憶部には、画像内をユーザの操作により移動する注目位置が記憶される。
表示ステップは、表示部が、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した当該画像を表示する。
受付ステップは、受付部が、当該ユーザによる決定指示を受け付ける。
出力ステップは、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
本発明によれば、キャラクタと円環とを関連付けて表示することにより、ユーザが選択可能な指示(コマンド)や指示内容(コマンド内容)を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できるようになる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できるようになる。
本発明のその他の観点に係るプログラムは、コンピュータを、キャラクタ記憶部、表示部、注目位置記憶部、受付部、出力部として機能させる。
キャラクタ記憶部は、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶する。
表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した画像を表示する。
注目位置記憶部は、表示された画像内をユーザの操作により移動する注目位置を記憶する。
受付部は、当該ユーザによる決定指示を受け付ける。
出力部は、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
本発明によれば、コンピュータを上述のように動作する指示内容決定装置として機能させることができる。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
本発明によれば、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにすることができる。
(実施形態1)
本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
図1は、プログラムを実行することにより、本発明の指示内容決定装置の機能を果たす典型的な情報処理装置100の概要構成を示す模式図である。以下、本図を参照して説明する。
情報処理装置100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、インターフェース104と、コントローラ105と、外部メモリ106と、DVD−ROM(Digital Versatile Disk - Read Only Memory)ドライブ107と、画像処理部108と、音声処理部109と、NIC(Network Interface Card)110と、を備える。
ゲーム用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ107に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施例の指示内容決定装置が実現される。
CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行う処理や、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
インターフェース104を介して接続されたコントローラ105は、ユーザがサッカーゲームやトランプゲームなどのゲーム実行の際に行う操作入力を受け付ける。
インターフェース104を介して着脱自在に接続された外部メモリ106には、対戦ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
DVD−ROMドライブ107に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ107は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
画像処理部108は、DVD−ROMから読み出されたデータをCPU 101や画像処理部108が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部108が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部108に接続されるモニター(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
画像演算プロセッサは、2次元の画像の重ね合わせ演算やアルファブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりすることが可能である。
また、対戦ゲームの画像やトランプゲームのカードの画像などの情報をDVD−ROMに用意しておき、これをフレームメモリに展開することによって、対戦の様子や手札などを画面に表示することができるようになる。
音声処理部109は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
音声処理部109では、DVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM(Adaptive Differential Pulse Code Modulation)形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカに出力することにより、音声出力が可能となる。
NIC 110は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ107に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。
次に、本実施形態の指示内容決定装置200が行う処理について説明する。本実施形態では、指示内容決定装置200は、仮想空間におけるゲームを実行しながら、ゲームについてのユーザ(プレイヤ)の指示内容を決定する処理を行う。
図2は、本実施形態の指示内容決定装置200の機能的な構成を説明するための図である。指示内容決定装置200は、キャラクタ記憶部201、表示部202、注目位置記憶部203、受付部204、出力部205を備える。
図3は、指示内容決定装置200に接続されたモニターに表示される画面300の構成例である。画面300には、3次元仮想空間に配置されたキャラクタオブジェクト(以下、単に“キャラクタ”と呼ぶ)310の画像と、キャラクタ310の位置を中心とし所定平面上に配置される円環群320の画像と、ユーザの指示(以下、「コマンド」と呼ぶ)が出される対象を指す指示マーク330の画像とが含まれる。
画面300は、画像処理部107とCPU 101が協働して、仮想空間内に配置される視点の位置から、仮想空間内における視線の向きに、仮想空間内に配置される投影面に仮想空間を投影して描画した画像である。CPU 101は、視点の位置、視線の向き、投影面の位置を、例えばユーザからの指示により、変更することができる。
キャラクタ310は、ユーザからのコマンドにより、仮想空間内における位置を変えることができる。つまり、ユーザは、コントローラ105を操作してキャラクタ310にコマンドを出すことにより、キャラクタ310を仮想空間内で移動させることができる。キャラクタ310は、典型的には、プレイヤが操作するプレイヤキャラクタである。
コマンドの内容(指示内容)は、キャラクタ310の位置を移動するものに限られず、例えば、歩く、走る、振り向く、弾を装填する、銃を構える、銃を撃つ、などといったように、キャラクタ310に所定の行動を指示する内容でもよい。また、コマンドの内容は、キャラクタ310の所持アイテムや属性情報などを表示させたり、ゲームを中断(ポーズ)・保存(セーブ)させたりするなど、任意の内容にすることができる。なお、コマンドの決定方法については後述する。
円環群320は、所定平面上に配置される1つ以上の円又は円環から構成される。円環は、典型的には、半径の異なる2つの正円又は楕円によって挟まれる領域、つまり“輪”のような形状の領域であり、画面内に例えばキャラクタの周りを囲むように描画される。
本実施形態では、円環群320は、第1円環321、第2円環322、第3円環323、第4円環324の4つから構成される。ただし、円環の数は自由に変更して良い。所定平面は、典型的には、上述の投影面である。円環群320は、画面300内におけるキャラクタ310が描画される位置に配置される。例えば、円環群320は、キャラクタ310の足元付近や胴体付近に配置される。第1円環321は正確には“円環”ではなく“円”と表現すべきであるが、本発明では第1円環321乃至第4円環324をすべて同等に取り扱うため、説明の簡略化のため、これらをすべて“円環”と呼ぶことにする。
それぞれの円環321乃至324の輪郭の形状は、例えば、画面300の左右方向に長軸、画面300の上下方向に短軸を持つ楕円の形状である。
なお、所定平面を、仮想空間内に設定される水平面と平行に、キャラクタ310の代表点(例えば足元付近や胴体付近などを示す点)と交わるように配置される任意の平面とする実施形態を採用してもよい。
第1円環321は、円環群320のうち最も内側にあり、長軸の長さがRA1,短軸の長さがRB1の楕円によって囲まれる領域である。
第2円環322は、長軸の長さがRA1,短軸の長さがRB1の楕円と、長軸の長さがRA2(>RA1),短軸の長さがRB2(>RB1)の楕円と、に挟まれる領域である。
第3円環323は、長軸の長さがRA2,短軸の長さがRB2の楕円と、長軸の長さがRA3(>RA2),短軸の長さがRB3(>RB2)の楕円と、に挟まれる領域である。
第4円環324は、長軸の長さがRA3,短軸の長さがRB3の楕円と、長軸の長さがRA4(>RA3),短軸の長さがRB4(>RB3)の楕円と、に挟まれる領域である。
本実施形態では、それぞれの楕円の中心(長軸と短軸の交点)は同じであり、同心円状に並んでいる。ただし、後述するように、それぞれの楕円の中心の位置を異なるようにしてもよい。
それぞれの円環321乃至324の輪郭を表す楕円は、互いに重なって描画されることはないものとする。つまり、画面300内でそれぞれの円環が占める領域には重なる部分がないものとする。
円環321乃至324には、それぞれ、所定のコマンドが予め対応付けられる。円環とコマンドとの対応付けを示す情報は、外部メモリ106等に予め記憶される。あるいは、CPU 101は、ゲームの進行に応じて、円環とコマンドとの対応付けを更新できるようにしてもよい。
例えばCPU 101は、円環と、円環に対応付けられるコマンドと、の組み合わせ(コマンド体系)を、次のように定義することができる。
第2円環322・・・キャラクタ310を後ろに振り向かせるコマンド。
第3円環323・・・キャラクタ310を歩かせるコマンド。
第4円環324・・・キャラクタ310を走らせるコマンド。
なお、上記コマンド体系は一例であり、円環に対応付けるコマンドを自由に変更しても良いことは言うまでもない。また、上記の第1円環321のように、コマンドを割り当てない円環を設けてもよい。
次に、指示内容決定装置200の各部の構成について説明する。
キャラクタ記憶部201は、仮想空間内に配置されるキャラクタ310の位置を示すキャラクタ位置情報251と、キャラクタ310を囲む互いに重複しない円環から構成される円環群320の位置を示す円環位置情報252と、各円環に対応付けられるコマンドを示すコマンド情報253と、を記憶する。CPU 101とRAM 103が協働してキャラクタ記憶部201として機能する。
キャラクタ310の位置は、図4(a)に示すように、1個の動径と2個の偏角を用いた極座標系を用いて、キャラクタ310の代表点の座標値(r,θ,φ)で表される。例えば、キャラクタ310の重心点の座標値が、キャラクタ310の代表点の位置を示す座標値となる。ただし、座標系はこれに限られるものではなく、例えば互いに直交する3軸による直交座標系を用いてもよい。また、仮想空間の全体を表現するグローバル座標系(ワールド座標系)と、オブジェクトごとのローカル座標系(ボディ座標系)とを別々に設定して座標計算等を行う構成を採用してもよい。
円環群320の位置は、図4(b)に示すように、画面300内に定義される2次元座標系を用いた座標値で表される。例えば、円環群320に含まれる円環のいずれかを示す楕円の中心点の座標値が、円環群320の位置を示す座標値となる。あるいは、円環群320の各円環を示す楕円の中心点の座標値が、各円環の位置を示す座標値となる。
なお、円環群320を投影面内ではなく仮想空間内の任意の平面内に配置する実施形態を採用する場合には、円環群320の位置を、キャラクタ310の位置と同様、仮想空間に定義されるワールド座標系による座標値等を用いて表せばよい。
キャラクタ記憶部201は、円環位置情報252として、円環群320に含まれる円環のそれぞれの位置を別々に記憶してもよい。
コマンド情報253は、例えば図4(c)に示すように、それぞれの円環とコマンドとの対応付けを表す情報である。
表示部202は、キャラクタ位置情報251が示すキャラクタ310の位置に、キャラクタ310を表す所定の画像データを描画し、円環位置情報252が示す円環群320の位置に、円環群320を表す所定の画像データを描画した画像300をモニターに表示する。CPU 101とRAM 103と画像処理部108が協働して表示部202として機能する。
CPU 101は、仮想空間内に配置される視点の位置から、仮想空間内における視線の向きに、仮想空間内に配置される投影面に仮想空間を投影した画像300を、画像処理部108にフレームメモリへ描画させ、描画した画像300をモニターに表示させる。キャラクタ310と円環群320の画像データは、予め外部メモリ106に記憶されており、CPU 101が随時画像データを読み出して画像処理部108に描画させる。
なお、本実施形態では、画像処理部108は、描画した画像300中、キャラクタ310の位置が中央付近に配置されるように、画像300を描画する。ただし、画像処理部108は、キャラクタ310を画像300の中央付近に描画しなくてもよい。
注目位置記憶部203は、表示された画像300内をユーザの操作により移動する指示マーク330の位置(注目位置)を示す注目位置情報255を記憶する。CPU 101とRAM 103が協働して注目位置記憶部203として機能する。
本実施形態では、画像処理部108は、注目位置情報255が示す位置に指示マーク330用の所定の画像データを画像300に描画する。指示マーク330の画像データも予め外部メモリ106に記憶されている。
受付部204は、ユーザによる決定指示を受け付ける。CPU 101とコントローラ105が協働して受付部204として機能する。決定指示には、コマンドを決定する旨の決定指示(コマンド決定指示)と、指示対象となるキャラクタ等を決定する旨の決定指示(キャラクタ決定指示)とがあるが、詳細は後述する。
決定指示とは、例えばコントローラ105に備え付けられた所定のキー(十字キー、決定キーなど)のユーザの押し操作による指示入力である。インターフェース104にキーボードやマウス等の他の入力装置が接続されている場合、キーボードの所定キーの押し操作、あるいは、マウスのクリック操作などでもよい。
出力部205は、受付部204が決定指示を受け付けると、決定結果である出力データを出力する。つまり、CPU 101は、ユーザからの決定指示を受け付けたとき、注目位置情報255に記憶された注目位置に円環321乃至324のいずれかが描画されている場合、その描画されている円環に予め対応付けられた指示内容を、ユーザによる決定結果として出力する。CPU 101が出力部205として機能する。
具体的には、まずCPU 101は、例えば図3に示す画面においてユーザがコントローラ105を操作して指示マーク330の位置を変更し、図5(a)に示すように第2円環322の領域内に指示マーク330を移動させると、第2円環322の領域を明るく強調して表示する。
すなわち、CPU 101は、画面300内において、円環321乃至324が示す領域内のいずれかに指示マーク330の位置が配置されている場合、指示マーク330の位置が含まれる円環の色相・彩度・明度のうち少なくともいずれか一つ以上を変化させることにより、指示マーク330の位置が含まれる円環を強調して表示する。
以下の説明において、ある円環が示す領域内に指示マーク330の位置が含まれており、ユーザからのコマンドを受け付けている状態を、その円環が“アクティブ状態”にある、と表現し、それ以外の状態を“非アクティブ状態”と表現する。
CPU 101は、アクティブ状態にある円環を強調して表示する。よって、ユーザは、それぞれの円環がアクティブ状態にあるか否か、あるいは、指示内容決定装置200が現在コマンドを受け付けている状態か否かを、簡単に見分けることができる。
更に、円環がアクティブ状態にあるときにユーザから決定指示を受け付けると、CPU 101は、アクティブ状態にある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。
例えば、各円環とコマンドとの対応付けが図4(c)に示す内容であり、図5(a)に示すように第2円環322がアクティブ状態であるときに、ユーザから決定指示を受け付けると、CPU 101は、ユーザによって選択されたコマンドが「キャラクタ310を振り向かせるコマンド」であると決定する。
そして、CPU 101は、決定したコマンドに従って画像処理部108に画像300を描画させる。例えば図5(a)に示す画面300において、円環322がアクティブ状態にあるときに決定指示を受け付けると、CPU 101は、指示マーク330がある位置に向かってキャラクタ310を振り向かせる画像を画像処理部108に描画させる。描画された画像300はモニターに出力される。
なお、アクティブ状態にある円環に対応付けられたコマンドが、ユーザによって選択されたコマンドであると決定された後、決定したコマンドに従って画面300を更新中である場合、すなわち、決定したコマンドに従った所定の処理が終了していない場合、CPU 101は、その円環(又はキャラクタ310に対応付けられたすべての円環)を非アクティブ状態に設定し、新たなコマンドを受け付けないようにしてもよい。そして、決定したコマンドに従った所定の処理が終了した後、再び円環をアクティブ状態に設定してもよい。
ある円環Xに対応するコマンドの決定指示を受け付けない場合、CPU 101は、画像処理部108に画面300への円環Xの描画を停止させ、画面300に円環Xの画像を表示しないようにしてもよい。つまりこの場合、画面300には、図6(a)に示すように、受け付けないコマンドに対応する円環(この場合第2円環322)部分が中抜きになった円環群320が描画される。
また、CPU 101は、キャラクタ310へのコマンドを決定してから所定時間が経過するまでの間、そのキャラクタ310への次の決定指示を受け付けないようにしてもよい。そして、所定時間が経過した後、そのキャラクタ310への次の決定指示を受け付けるようにしてもよい。
キャラクタ310への次の決定指示を受け付けない場合、CPU 101は、画像処理部108に画面300への円環群320の描画を停止させ、画面300に円環群320の画像を表示しないようにしてもよい。つまりこの場合、画面300には、図6(b)に示すように、キャラクタ310に対応する円環群320が描画されない。
例えば、図5(a)に示すように第2円環322の領域内に指示マーク330が配置されている状態で、キャラクタ310に対する決定指示をユーザから受け付けると、CPU 101は、キャラクタ310を所定方向に振り向かせるコマンドを受け付けたと判別する。CPU 101は、キャラクタ310を一瞬で振り向かせるのではなく、徐々に振り向かせる。CPU 101は、キャラクタ310の振り向きモーションの最中には、キャラクタ310に対する新たな決定指示を受け付けない。決定指示を受け付けない間、画面300には図6(a)に示すように中抜きになった円環群320が表示されるか、あるいは、図6(b)に示すように円環群320が表示されない。キャラクタ310の振り向きモーションが終わると、CPU 101は、図5(b)に示すように円環群320を表示し、キャラクタ310に対する新たな決定指示を受け付け可能にする(アクティブ状態にする)。
次に、指示内容決定装置200の上記各部が実行する指示内容決定処理について、図7のフローチャートを用いて説明する。
まず、CPU 101は、円環群320に含まれる円環のうち、現在受け付け可能なコマンドに対応する円環を画像処理部108に表示させる(ステップS701)。
例えば、キャラクタ310に対して出すことのできるコマンドとして、図4(c)に示す3種類のコマンドがあり、これらすべてのコマンドのうちのどれもが現在キャラクタ310に出すことができるコマンドである場合、CPU 101は、図3に示すように、第1円環321,第2円環322,第3円環323のすべてを画面300に表示させる。あるいは、上記のすべてのコマンドのうち現在キャラクタ310に出すことができないコマンドがある場合、CPU 101は、図6(a)又は図6(b)に示すように、キャラクタ310に出すことができないコマンドに対応する円環を除く円環を画面300に表示させる。
CPU 101は、画面300内において、それぞれの円環が示す領域内に指示マーク330があるか否かを判別する(ステップS702)。
それぞれの円環が示す領域内に指示マーク330がないと判別した場合(ステップS702;NO)、CPU 101は、それぞれの円環を非アクティブ状態に設定し(ステップS703)、ステップS701に戻る。
一方、それぞれの円環のうちのいずれかが示す領域内に指示マーク330があると判別した場合(ステップS702;YES)、CPU 101は、指示マーク330がある円環をアクティブ状態に設定する(ステップS704)。
次にCPU 101は、アクティブ状態に設定されている円環について、ユーザから決定指示を受け付けたか否かを判別する(ステップS705)。
例えば、ある円環が占める領域内に指示マーク330が配置され、その円環がアクティブ状態に設定されているとき、コントローラ105の所定キーの押し動作が検出された場合、CPU 101は、ユーザから決定指示を受け付けたと判別し、それ以外の場合、決定指示を受け付けていないと判別する。
決定指示を受け付けていないと判別した場合(ステップS705;NO)、ステップS701に戻り、上記の処理を繰り返す。一方、決定指示を受け付けたと判別した場合(ステップS705;YES)、CPU 101は、指示マーク330がある円環、言い換えれば、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する(ステップS706)。
そしてCPU 101は、ステップS706で決定したコマンドを、決定結果として出力する(ステップS707)。
例えば、図3において、第2円環322がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、CPU 101は、「キャラクタ310を振り向かせる」コマンドを受け付けた旨を、決定結果として出力する。CPU 101は、この決定結果に従い、キャラクタ310を所定方向に振り向かせる画像を画像処理部108に描画させ、モニターに出力させる。
また例えば、第3円環323がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、CPU 101は、「キャラクタ310を歩かせる」コマンドを受け付けた旨を、決定結果として出力する。CPU 101は、この決定結果に従い、キャラクタ310を所定方向に歩かせる画像を画像処理部108に描画させ、モニターに出力させる。
また例えば、第4円環324がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、CPU 101は、「キャラクタ310を走らせる」コマンドを受け付けた旨を、決定結果として出力する。CPU 101は、この決定結果に従い、キャラクタ310を所定方向に走らせる画像を画像処理部108に描画させ、モニターに出力させる。
また例えば、第1円環321,第2円環322,第3円環323のいずれも非アクティブ状態に設定されているときにユーザから決定指示を受け付けると、CPU 101は、キャラクタ310に対していずれのコマンドも出されていないと判別する。なお、いずれの円環も非アクティブ状態に設定されている場合には、決定指示を受け付けないようにしてもよい。
本実施形態によれば、ユーザが選択可能な指示内容(コマンド)の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。
(実施形態2)
次に、本発明のその他の実施形態について説明する。本実施形態では、画面300内での位置に応じて指示マーク330の大きさを変える点で、上述の実施形態と異なる。以下詳述する。
図8は、仮想空間に配置されたキャラクタ310や円環群320などの位置関係を表す図である。
表示部202は、上述のように、仮想空間800に配置された視点810から視線の向き820にキャラクタ310を見た様子を仮想的な投影面830に投影して描画した画像300を表示する。投影面830には、キャラクタ310に対応する投影画像851、円環群320の画像、指示マーク330の画像などが描画される。
また、表示部202は、画像300において、注目位置情報255に記憶された指示マーク330の位置(注目位置)に、円環群320に含まれるいずれかの円環が描画されている場合、その円環のうち注目位置に重なる場所の仮想空間における位置と、視点の位置と、の距離Dに予め対応付けられる描画サイズ(大きさ)Sで、指示マーク330を描画して表示する。
例えば図8において、指示マーク330は、第4円環324が占める領域に描画されている。描画された指示マーク330の仮想空間800における位置は、位置860である。距離Dは、視点810の位置と位置860との距離である。
CPU 101は、例えば図9(a)に示すように、指示マーク330の描画サイズSを、距離Dに対して単調減少させる。ただし、CPU 101は、描画サイズSを、ゼロでない所定の最小値Sminから所定の最大値Smaxまでの範囲内で変化させることとする。
あるいはCPU 101は、例えば図9(b)に示すように、距離Dの値の範囲と描画サイズSとを対応付けたテーブルを外部メモリ106等に予め記憶しておき、CPU 101は、距離Dに対応する描画サイズSを取得し、取得した描画サイズSで指示マーク330を画像処理部108に描画させる。
図10(a)と(b)は、描画サイズSを変化させて指示マーク330を表示した画像300の例である。図10(a)では、指示マーク330は、画面300に描画されている第4円環324の下方に描画されている。すなわち、画像300内での指示マーク330の位置に対応する、仮想空間800内での指示マーク330の位置は、視点810に比較的近い場所である。一方、図10(b)では、指示マーク330は、画面300に描画されている第4円環324の上方に描画されている。すなわち、画像300内での指示マーク330の位置に対応する、仮想空間800内で指示マーク330の位置は、視点810に比較的遠い場所である。
CPU 101は、指示マーク330の仮想空間800における位置と視点810の位置との距離が近いほど、描画サイズSを大きくして指示マーク330を描画させ、指示マーク330の仮想空間800における位置と視点810の位置との距離が遠いほど、描画サイズSを小さくして指示マーク330を描画させる。
なお、指示内容決定処理の流れは上述の実施形態と同様であるため、説明を省略する。
例えば、それぞれの円環321乃至324とコマンドとの対応付けが図4(c)に示す内容であり、指示マーク330が図10(a)に示すように第4円環324が占める領域の下方の位置にあるとする。ユーザから決定指示を受け付けると、CPU 101は、「キャラクタ310を視点810のある向きに走らせる」コマンドを受け付けた旨を、決定結果として出力する。CPU 101は、キャラクタ310を視点810のある向きに走らせる画像を画像処理部108に描画させる。つまり、あたかもユーザに近づいてくるかように走っている画像になる。
例えば、それぞれの円環321乃至324とコマンドとの対応付けが図4(c)に示す内容であり、指示マーク330が図10(b)に示すように第4円環324が占める領域の上方の位置にあるとする。ユーザから決定指示を受け付けると、CPU 101は、「キャラクタ310を視点810のある向きの逆向きに走らせる」コマンドを受け付けた旨を、決定結果として出力する。CPU 101は、キャラクタ310を視点810のある向きの逆向きに走らせる画像を画像処理部108に描画させる。つまり、あたかもユーザから離れていくように走っている画像になる。
なお、図11に示すように、円環群320がキャラクタ310を囲む様子を立体的に表現するようにしてもよい。つまり、図12に示すように、キャラクタ310と円環群320を共に3次元の仮想空間800内に配置されるオブジェクトとして、円環群320をキャラクタ310を囲むように仮想空間800に配置する。画像処理部108は、キャラクタ310と円環群320を投影面830に投影した画像851,852を生成する。図11,12の例では、キャラクタ310の下半身は円環群320の後ろに隠れるが、キャラクタ310の上半身は円環群320より前に描画される。このようにすれば、指示マーク330の大きさを変えて遠近感を出す演出効果を更に高めることができる。
本実施形態によれば、ユーザが選択可能な指示内容(コマンド)の選択肢を分かりやすく提示でき、且つ、遠近感を分かりやすく表現できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、指示内容が仮想空間内における指示方向を含む内容である場合には、ユーザは、指示方向の区別を容易に掴みつつ、指示内容を決定することができる。
(実施形態3)
次に、本発明のその他の実施形態について説明する。本実施形態では、ユーザによる決定指示の前後で円環群320を表示したり表示しなかったり制御する点で、上述の各実施形態と異なる。以下詳述する。
図13は、本実施形態の指示内容決定処理を説明するためのフローチャートである。
図14(a)乃至(d)は、モニターに表示される画面300の構成例である。
本実施形態では、キャラクタ310には選択状態と非選択状態とがある。選択状態はユーザによるコマンドの指示対象として選択されている状態であり、非選択状態はそれ以外の状態(コマンドの指示対象として選択されていない状態)である。例えば、ユーザがコントローラ105を操作して指示マーク330の位置を移動し、画像300内のキャラクタ310が表示されている領域に指示マーク330を表示させた状態で決定指示を入力すると、そのキャラクタ310は選択状態に設定される。一旦選択状態に設定された後、キャラクタ310が表示されている領域に指示マーク330を表示させた状態で再び決定指示を入力すると、選択状態が解除され、非選択状態になる。選択状態か非選択状態かを決定するための決定指示を、キャラクタ決定指示と呼ぶ。
まず、CPU 101は、キャラクタ310がユーザによって選択されているか否か(選択状態か非選択状態か)を判別する(ステップS1301)。
キャラクタ310が選択されていない場合(ステップS1301;NO)、現在表示中の円環があればその円環を画面300から消去し(ステップS1302)、ステップS1101に戻る。
例えば図14(a)に示すように、まだユーザからキャラクタ310を選択する旨のキャラクタ決定指示を受け付けていないときには、円環群320は表示されない。
キャラクタ310が選択されている場合(ステップS1301;YES)、CPU 101は、円環群320に含まれる円環のうち、現在受け付け可能なコマンドに対応する円環を画像処理部108に表示させる(ステップS1303)。
CPU 101は、画面300内における各円環の位置と指示マーク330の位置とを取得し、それぞれの円環について、円環が占める領域内に指示マーク330がある場合にはその円環をアクティブ状態に設定し、そうでなければ非アクティブ状態に設定して(ステップS1304)、画像処理部108に画面300を表示させる。
例えば図14(b)に示すように、キャラクタ310の描画されている画面領域内に指示マーク330があるときに、ユーザからキャラクタ310を選択する旨のキャラクタ決定指示を受け付けると、キャラクタ310の位置に円環群320が表示される。
そして、図14(c)に示すように、ある円環(この図では第2円環322)が占める画像領域内に指示マーク330があると、円環はアクティブ状態に設定され、例えば強調して表示される。
このとき、現在キャラクタ310に出すことができないコマンドがある場合には、CPU 101は、円環群320に含まれる円環のうち、出すことができないコマンドに対応する円環を画像処理部108に表示させない。例えば、指示内容決定装置200にて実行されるゲームにおいて、「銃を発射するコマンド」があり、1回発射すると発射後所定時間以内は再び発射できない場合、CPU 101は、発射後所定時間以内には「銃を発射するコマンド」に対応する円環を画像処理部108に表示させない。所定時間が経過すると、CPU 101は「銃を発射するコマンド」に対応する円環を画像処理部108に表示させる。なお、一度コマンドを出した後、所定時間が経過するまで再びコマンドを出すことができないのであれば、「銃を発射する」以外のコマンドでもよいことは言うまでもない。
次にCPU 101は、ユーザからコマンドを選択する旨の決定指示(コマンド決定指示)を受け付けたか否かを判別する(ステップS1305)。
例えば、ある円環が占める領域内に指示マーク330が配置され、その円環がアクティブ状態に設定されているとき、コントローラ105の所定キーの押し動作が検出された場合、CPU 101は、ユーザからコマンド決定指示を受け付けたと判別し、それ以外の場合、コマンド決定指示を受け付けていないと判別する。
コマンド決定指示を受け付けていないと判別した場合(ステップS1305;NO)、ステップS1301に戻り、上記の処理を繰り返す。一方、コマンド決定指示を受け付けたと判別した場合(ステップS1305;YES)、CPU 101は、指示マーク330がある円環(アクティブ状態に設定されている円環)に対応付けられたコマンドを、ユーザによるコマンドとして決定する(ステップS1306)。
CPU 101は、ステップS1306で決定したコマンドを、決定結果として出力する(ステップS1307)。
そして、CPU 101は、図14(d)に示すように、画面300から円環群320を画像処理部108に消去させる(ステップS1308)。CPU 101は、決定したコマンドに対応する処理を実行する。
上記の指示内容決定処理は、キャラクタ310に対する1回の指示内容を決定する処理である。指示内容決定装置200の各部は、上記の指示内容決定処理を繰り返し実行する。
本実施形態によれば、ユーザが選択可能な指示内容の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、キャラクタ310が非選択状態であるときには円環群320が表示されないので、画面300をシンプルに構成することができる。また、キャラクタ310を選択状態にすると、現在キャラクタ310に出すことができるコマンドに対応する円環だけが表示されるので、コマンドの選択が容易になり、操作性の良いインターフェースとなる。
(実施形態4)
次に、本発明のその他の実施形態について説明する。本実施形態では、円環群320に含まれるそれぞれの円環の中心位置を変更できる点で、上述の各実施形態と異なる。つまり、円環群320に含まれるそれぞれの円環の境界を表す楕円は同心円でなくてもよい。以下詳述する。
図15は、本実施形態における画面300の構成例である。ここでは、理解を容易にするため、画面300内に、画面右側に向かって正の向きとなるX軸と、画面下側に向かって正の向きとなるY軸を定義する。
表示部202は、キャラクタ位置情報251に記憶されたキャラクタ310の位置に基づいて、円環位置情報252に記憶された円環群320の位置を更新し、更新した円環群320の位置に円環群320を表示する。あるいは、表示部202は、円環群320に含まれる円環のそれぞれについて、キャラクタ位置情報251に記憶されたキャラクタ310の位置に基づいて、円環位置情報252に記憶された円環の位置を更新し、更新した円環の位置に円環を表示する。
具体的には、まずCPU 101は、キャラクタ記憶部201からキャラクタ位置情報251を読み出してキャラクタ310の位置を取得する。
次にCPU 101は、キャラクタ310が、取得したキャラクタ310の位置から仮想空間において移動可能な領域を決める。
例えば図15では、画面左側の仮想空間内に壁オブジェクト1501が、画面上側(つまり奥)の仮想空間内に壁オブジェクト1502が、それぞれ配置され、キャラクタ310はこれらの壁より先に移動できない。キャラクタ310が移動可能な領域は、床オブジェクト1503が配置されている領域のうち、境界線1504より画面右側、且つ、境界線1505より画面下側、ということになる。
CPU 101は、画面300における、キャラクタ310が移動可能な領域の分布の偏りを求める。
例えば図15では、キャラクタ310が移動可能な領域の分布は、画面右下側に偏っている。
分布の偏りの求め方の一例として、CPU 101は、画面300の中心位置1550と、キャラクタ310が移動可能な領域を表す画像領域の重心位置1560と、を結ぶ方向ベクトル1570の向きと大きさ(長さ)を計算する。そして、CPU 101は、計算された向きに、計算された大きさだけ、分布が偏っていると推定する。
そしてCPU 101は、求めた分布の偏りに応じて円環群320の位置を移動し、移動後の位置で円環位置情報252を更新する。あるいは、CPU 101は、求めた分布の偏りに応じてそれぞれの円環の位置を移動し、移動後の位置で円環位置情報252を更新する。
例えば図15では、CPU 101は、第1円環321をX軸方向へX1,Y軸方向へY1だけ移動し(以下、移動量[X1,Y1]と表す。)、第2円環322を移動量[X2,Y2]だけ移動し、第3円環323を移動量[X3,Y3]だけ移動し、第4円環324を移動量[X4,Y4]だけ移動する。
画面300の中心位置1550の座標を(XC,YC)とすると、ベクトル(X1−XC,Y1−YC)、ベクトル(X2−XC,Y2−YC)、ベクトル(X3−XC,Y3−YC)、ベクトル(X4−XC,Y4−YC)、いずれも、ベクトル1570の向きと等しいか、あるいは、ほぼ等しいことが望ましい。
また、0≦|X1|≦|X2|≦|X3|≦|X4|、且つ、0≦|Y1|≦|Y2|≦|Y3|≦|Y4|、とすることが望ましい。ただし、記号“|x|”は、値xの絶対値を表す。
本実施形態によれば、ユーザが選択可能な指示内容(コマンド)の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、指示内容が仮想空間内における指示方向を含む内容である場合には、ユーザは、指示内容として相応しいと推定される指示方向を容易に掴みつつ、指示内容を決定することができる。
(実施形態5)
次に、本発明のその他の実施形態について説明する。本実施形態では、ユーザがコマンドを出すことができるキャラクタ310が1つだけでなく複数であってもよい。以下詳述する。
図16(a)乃至(d)は、モニターに表示される画面300の構成例である。
図16(a)に示すように、画面300には複数のキャラクタ310(本図ではキャラクタ310A,310B,310Cの3つ)が配置され、ユーザはそれぞれのキャラクタ310に対してコマンドを出すことができる。
キャラクタ310には、それぞれ、円環群320(本図では円環群320A,320B,320C)が対応付けられる。すなわち、ユーザは、各々のキャラクタ310に対して、円環に対応付けられた所定のコマンドを出すことができる。
いずれかのキャラクタ310がユーザによって選択されると(選択状態に設定されると)、CPU 101は、選択状態に設定されたキャラクタ310に対応付けられた円環群320の画像を画像処理部108にフレームメモリへ描画させる一方、その他の非選択状態に設定されているキャラクタ310に対応付けられた円環群320の画像を描画させない。すなわち、図16(b)に示すように、選択状態に設定されたキャラクタ310Aに対応付けられた円環群320Aの画像が描画され、その他の円環群320B,320Cは描画されない。
選択状態に設定されたキャラクタ310に対応付けられた円環群320に含まれる円環のいずれかが占める領域内に指示マーク330がある場合、CPU 101は、指示マーク330がある円環をアクティブ状態に設定する。すなわち、図16(c)に示すように、アクティブ状態に設定された円環が他の円環に比べて強調して表示される。
アクティブ状態に設定されているとき、ユーザによる決定指示を受け付けると、CPU 101は、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する。
そして、CPU 101は、アクティブ状態から非アクティブ状態に変更し、円環群320の画像を消去する。
その後、新たなコマンドを受け付ける場合には、CPU 101は、再び円環群320A,320B,320Cを描画させる。以上の処理が繰り返される。
本実施形態によれば、ユーザが選択可能な指示内容(コマンド)の選択肢、及び、ユーザが選択可能な指示対象(キャラクタ)の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。また、ユーザは、どの指示対象についてどの指示内容を選択できるのかを簡単に把握することができる。
(実施形態6)
次に、本発明のその他の実施形態について説明する。本実施形態は、上記実施形態5の変形例である。
図17(a)乃至(d)は、モニターに表示される画面300の構成例である。
図17(a)に示すように、画面300には複数のキャラクタ310(本図ではキャラクタ310A,310B,310Cの3つ)が配置され、ユーザはそれぞれのキャラクタ310に対してコマンドを出すことができる。
本実施形態では、キャラクタ310が描画されている領域の近傍に指示マーク330が移動すると、CPU 101は、そのキャラクタ310に対応付けられている円環群320を表示させる。キャラクタ310が描画されている領域の近傍から離れるように指示マーク330を移動すると、CPU 101は、表示されていた円環群320を消去する。
また、円環群320を表示させている状態を、キャラクタ310の選択状態とする。すなわち、CPU 101は、キャラクタ310が描画されている領域の近傍に指示マーク330がある場合、キャラクタ310を選択状態に設定し、それ以外の場合、キャラクタ310を非選択状態に設定する。本実施形態では、指示対象のキャラクタ310を選択する旨のキャラクタ決定指示(例えばユーザによるクリック操作など)が不要であり、指示マーク330を移動するだけでキャラクタ310の選択状態/非選択状態が決まる。
例えば図17(a)に示すように、指示マーク330の位置がキャラクタ310Bの近傍にあるとき、CPU 101は、キャラクタ310Bに対応付けられた円環群320Bのみを表示する。
同様に、図17(b)に示すように、指示マーク330の位置がキャラクタ310Aの近傍にあるとき、CPU 101は、キャラクタ310Aに対応付けられた円環群320Aのみを表示する。
同様に、指示マーク330の位置がキャラクタ310Cの近傍にあるとき、CPU 101は、キャラクタ310Cに対応付けられた円環群320Cのみを表示する。指示マーク330の位置がキャラクタ310A,310B,310Cのいずれの近傍にもないとき、CPU 101は、いずれの円環群320A,310B,320Cも表示しない。
選択状態に設定されたキャラクタ310に対応付けられた円環群320に含まれる円環のいずれかが占める領域内に指示マーク330がある場合、CPU 101は、図17(c)に示すように、指示マーク330がある円環をアクティブ状態に設定する。
アクティブ状態に設定されているとき、ユーザによる決定指示を受け付けると、CPU 101は、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する。
そして、CPU 101は、アクティブ状態から非アクティブ状態に変更し、図17(d)に示すように、円環群320の画像を消去する。
本実施形態によれば、ユーザは、所望の指示内容を更に簡単に選択することができるようになる。
(実施形態7)
次に、本発明のその他の実施形態について説明する。本実施形態の指示内容決定装置200にて実行されるゲームは、2次元(平面)の仮想空間におけるゲームである。
図18は、モニターに表示される画面300の構成例である。画面300は、画像処理部108とCPU 101が協働して、2次元仮想空間の一部である表示領域を描画した画像である。
本図に示すように、画面300には複数のキャラクタ310(本図ではキャラクタ310A,310Bの2つ)が配置されるが、ユーザは、所定のキャラクタ310に対してコマンドを出すことができる。典型的には、キャラクタ310Aがプレイヤキャラクタ、キャラクタ310Bが敵キャラクタであり、プレイヤはプレイヤキャラクタに対してのみコマンドを出すことができる。すなわち、円環群320を対応付けたキャラクタ310と、円環群320を対応付けないキャラクタ310とを混在させてもよい。
例えばプレイヤキャラクタが画面300の上端、下端、左端、右端に近づくと、表示領域が移動する。つまり、画面300がスクロール表示される。
CPU 101は、円環群320と指示マーク330を2次元仮想空間と同じ平面内に配置した画像を、画像処理部108に描画させる。
CPU 101は、上述の各実施形態と同様、画面300内において、円環321乃至324が示す領域内のいずれかに指示マーク330が配置されている場合、指示マーク330の位置が含まれる円環の色相・彩度・明度のうち少なくともいずれか一つ以上を変化させることにより、指示マーク330の位置が含まれる円環を強調して表示する。
また、いずれかの円環がアクティブ状態にあるときにユーザから決定指示を受け付けると、CPU 101は、アクティブ状態にある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。コマンドは、アクティブ状態にある円環が対応付けられたキャラクタ310に対するコマンドである。
それぞれの円環321乃至324は、楕円ではなく正円によって挟まれる(又は囲まれる)領域として定義されてもよい。また、例えば、正円によって囲まれる領域を第1円環321とし、第1円環を表す正円とその外側の楕円とに挟まれる領域を第2円環322とする、というように、楕円と正円の両方を用いてそれぞれの円環の形状を定義してもよい。
図19は、モニターに表示される画面300の他の構成例である。本図に示すように、円環群320は複数ではなく1つの円環321のみから構成されてもよい。
本図では、プレイヤはプレイヤキャラクタに対してのみコマンドを出すことができるが、円環群320は各敵キャラクタを囲むように配置される。それぞれの円環321(図中では321B1乃至321B4と記載)には、例えば、「プレイヤキャラクタに敵キャラクタへ攻撃させる」というコマンドが対応付けられる。
それぞれのキャラクタ310の円環321に対応付けられるコマンドは同じでもよいし異なってもよい。例えば、図19において、円環群320B1には「キャラクタ310Aにキャラクタ310B1へ攻撃させる」というコマンドを対応付け、円環群320B4には「キャラクタ310Aにキャラクタ310B4へ話しかける」というコマンドを対応付ける、といったように、円環321に対応付けるコマンドを変えてもよい。
本実施形態のように、本発明は、3次元仮想空間だけでなく2次元仮想空間に適用することが可能である。
なお、上記各実施形態で扱っている3次元仮想空間のうち画面300に表される画像部分を2次元仮想空間とみなすことで、指示内容決定装置200が2次元仮想空間におけるゲームを実行するものと考えることもできる。
本発明は、上述した実施形態に限定されず、種々の変形及び応用が可能である。また、上述した実施形態の各構成要素を自由に組み合わせることも可能である。
指示内容決定装置200を装置の全部又は一部として動作させるためのプログラムを、メモリカード、CD−ROM、DVD、MO(Magneto Optical disk)などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
以上説明したように、本発明によれば、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムを提供することができる。
本発明のゲーム装置が実現される典型的な情報処理装置の概要構成を示す図である。 指示内容決定装置の機能的な構成を説明するための図である。 モニターに表示される画面の構成例である。 (a)キャラクタ位置情報に格納される情報の例である。(b)円環位置情報に格納される情報の例である。(c)コマンド情報に格納される情報の例である。 (a)と(b)は、アクティブ状態の円環を含む画面の構成例である。 (a)円環群の一部が非アクティブ状態であるときの画面の構成例である。(b)キャラクタ310への決定指示を受け付けないときの画面の構成例である。 指示内容決定処理を説明するためのフローチャートである。 実施形態2において、仮想空間におけるキャラクタの位置、視点の位置、視線の向き、投影面の位置、の関係を説明するための図である。 (a)と(b)は、実施形態2において、画像内の指示マークの位置に対応する仮想空間内の位置と、指示マークの描画サイズとの関係を表す図である。 (a)と(b)は、実施形態2において、指示マークの描画サイズを変化させた画面の構成例である。 実施形態2において、モニターに表示される画面の他の構成例である。 実施形態2において、仮想空間におけるキャラクタの位置、円環群の位置、視点の位置、視線の向き、投影面の位置、の関係を説明するための図である。 実施形態3において、指示内容決定処理を説明するためのフローチャートである。 (a)〜(d)は、実施形態3において、モニターに表示される画面の構成例である。 実施形態4において、モニターに表示される画面の構成例である。 (a)〜(d)は、実施形態5において、モニターに表示される画面の構成例である。 (a)〜(d)は、実施形態6において、モニターに表示される画面の構成例である。 実施形態7において、モニターに表示される画面の構成例である。 実施形態7において、モニターに表示される画面の他の構成例である。
符号の説明
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェース
105 コントローラ
106 外部メモリ
107 DVD−ROMドライブ
108 画像処理部
109 音声処理部
110 NIC
200 指示内容決定装置
201 キャラクタ記憶部
202 表示部
203 注目位置記憶部
204 受付部
205 出力部
251 キャラクタ位置情報
252 円環位置情報
253 コマンド情報
255 注目位置情報
300 画面
310 キャラクタ
320 円環群
321乃至324 円環
330 指示マーク
800 仮想空間
810 視点
820 視線
830 投影面
851 投影面へのキャラクタの投影画像
852 投影面への円環群の投影画像
860 指示マークの仮想空間における位置
1550 画面の中心位置
1560 キャラクタが移動可能な領域の重心位置
1570 ベクトル

Claims (11)

  1. 仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶するキャラクタ記憶部と、
    前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した画像を表示する表示部と、
    前記表示された画像内をユーザの操作により移動する注目位置を記憶する注目位置記憶部と、
    当該ユーザによる決定指示を受け付ける受付部と、
    前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力部と、
    を備えることを特徴とする指示内容決定装置。
  2. 請求項1に記載の指示内容決定装置であって、
    前記キャラクタ記憶部は、当該仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む互いに重複しない複数の円環の位置とを記憶し、
    前記表示部は、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された複数の円環の位置に当該複数の円環を描画した画像を表示し、
    前記出力部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する、
    ことを特徴とする指示内容決定装置。
  3. 請求項2に記載の指示内容決定装置であって、
    前記表示部は、当該仮想空間に配置された視点から当該キャラクタと当該複数の円環とを見た様子を描画した画像を表示し、
    前記表示部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該円環の当該注目位置に重なる場所の当該仮想空間における位置と、当該視点の位置と、の距離に予め大きさが対応付けられるマークを更に描画して表示する、
    ことを特徴とする指示内容決定装置。
  4. 請求項3に記載の指示内容決定装置であって、
    前記表示部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該領域の色相、彩度、明度のうち少なくとも一つ以上を変化させて表示する、
    ことを特徴とする指示内容決定装置。
  5. 請求項1乃至4のいずれか1項に記載の指示内容決定装置であって、
    前記記憶された注目位置が、当該キャラクタが描画されている領域内にある場合、当該決定指示が受け付けられると、前記表示部は、
    (a)当該円環が描画されていれば、当該描画を停止し、
    (b)当該円環が描画されていなければ、当該描画を開始する、
    ことを特徴とする指示内容決定装置。
  6. 請求項1乃至4のいずれか1項に記載の指示内容決定装置であって、
    前記キャラクタ記憶部は、複数のキャラクタのそれぞれについて、当該キャラクタの位置を記憶し、
    前記記憶された注目位置が、当該複数のキャラクタのいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、前記表示部は、前記描画されているキャラクタを囲む円環の描画を開始し、当該キャラクタ以外のキャラクタを囲む円環の描画を停止し、
    当該出力される指示内容は、当該円環に囲まれるキャラクタに対するものである、
    ことを特徴とする指示内容決定装置。
  7. 請求項2に記載の指示内容決定装置であって、
    当該複数の円環は、当該仮想空間の所定の平面内に配置され、共通する中心を有する、
    ことを特徴とする指示内容決定装置。
  8. 請求項1乃至6のいずれか1項に記載の指示内容決定装置であって、
    前記表示部は、前記記憶されたキャラクタの位置に基づいて、前記記憶された円環の位置を更新し、前記更新した円環の位置に当該円環を表示する、
    ことを特徴とする指示内容決定装置。
  9. 請求項1又は2に記載の指示内容決定装置であって、
    当該仮想空間は2次元空間であり、
    当該円環が描画される位置は、当該仮想空間内における位置である、
    ことを特徴とする指示内容決定装置。
  10. キャラクタ記憶部、注目位置記憶部、表示部、受付部、出力部を有する指示内容決定装置にて実行される指示内容決定方法であって、
    前記キャラクタ記憶部には、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、が記憶され、
    前記注目位置記憶部には、画像内をユーザの操作により移動する注目位置が記憶され、
    前記表示部が、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した当該画像を表示する表示ステップと、
    前記受付部が、当該ユーザによる決定指示を受け付ける受付ステップと、
    前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、前記出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力ステップと、
    を備えることを特徴とする指示内容決定方法。
  11. 仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、画像内をユーザの操作により移動する注目位置と、が記憶される記憶部を有するコンピュータに
    表示部が、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した画像を表示する表示ステップ、
    受付部が、当該ユーザによる決定指示を受け付ける受付ステップ
    前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力ステップ
    を実行させるためのプログラム。
JP2008075653A 2008-03-24 2008-03-24 指示内容決定装置、指示内容決定方法、ならびに、プログラム Active JP4376292B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008075653A JP4376292B2 (ja) 2008-03-24 2008-03-24 指示内容決定装置、指示内容決定方法、ならびに、プログラム
CN2009801005584A CN101808702B (zh) 2008-03-24 2009-03-19 指示内容决定装置、指示内容决定方法、信息记录介质及程序
PCT/JP2009/055465 WO2009119452A1 (ja) 2008-03-24 2009-03-19 指示内容決定装置、指示内容決定方法、情報記録媒体、ならびに、プログラム
KR1020107005801A KR101139379B1 (ko) 2008-03-24 2009-03-19 지시내용 결정장치, 지시내용 결정방법 및 정보기록매체
TW098109478A TWI377082B (en) 2008-03-24 2009-03-24 Instruction content determination device, instruction content determination method, and information recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008075653A JP4376292B2 (ja) 2008-03-24 2008-03-24 指示内容決定装置、指示内容決定方法、ならびに、プログラム

Publications (2)

Publication Number Publication Date
JP2009226026A JP2009226026A (ja) 2009-10-08
JP4376292B2 true JP4376292B2 (ja) 2009-12-02

Family

ID=41113647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008075653A Active JP4376292B2 (ja) 2008-03-24 2008-03-24 指示内容決定装置、指示内容決定方法、ならびに、プログラム

Country Status (5)

Country Link
JP (1) JP4376292B2 (ja)
KR (1) KR101139379B1 (ja)
CN (1) CN101808702B (ja)
TW (1) TWI377082B (ja)
WO (1) WO2009119452A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7341801B2 (ja) 2019-09-04 2023-09-11 株式会社スクウェア・エニックス ビデオゲーム処理プログラム、及びビデオゲーム処理システム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6342649B2 (ja) * 2013-11-27 2018-06-13 株式会社バンダイナムコエンターテインメント プログラム、端末及びサーバ
JP6387239B2 (ja) * 2014-03-31 2018-09-05 株式会社バンダイナムコエンターテインメント プログラム及びサーバ
EP3502939B1 (en) 2016-08-19 2023-06-14 Tencent Technology (Shenzhen) Company Limited Authentication method based on virtual reality scene, virtual reality device, and storage medium
CN106527887B (zh) * 2016-10-18 2018-09-04 腾讯科技(深圳)有限公司 虚拟物体选取方法、装置及vr系统
CN111991800A (zh) * 2019-02-22 2020-11-27 网易(杭州)网络有限公司 游戏角色控制方法、装置、设备和存储介质
CN109966738B (zh) 2019-02-22 2020-07-31 网易(杭州)网络有限公司 信息处理方法、处理装置、电子设备和存储介质
CN111097171B (zh) * 2019-12-17 2022-03-11 腾讯科技(深圳)有限公司 虚拟标记的处理方法和装置、存储介质及电子装置
JP7130702B2 (ja) * 2020-06-18 2022-09-05 株式会社バンダイナムコエンターテインメント ゲーム装置および制御方法
CN112245909B (zh) * 2020-11-11 2024-03-15 网易(杭州)网络有限公司 一种游戏内对象锁定的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001029655A (ja) * 1999-07-23 2001-02-06 Square Co Ltd 行動選択支援方法、記録媒体およびゲーム装置
JP2004329743A (ja) 2003-05-12 2004-11-25 Nintendo Co Ltd ゲーム装置およびゲームプログラム
JP4137140B2 (ja) 2006-05-01 2008-08-20 株式会社スクウェア・エニックス ビデオゲーム処理装置、およびビデオゲーム処理プログラム
JP5051822B2 (ja) 2006-08-02 2012-10-17 任天堂株式会社 汎用遠隔制御機能を備えたゲーム装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7341801B2 (ja) 2019-09-04 2023-09-11 株式会社スクウェア・エニックス ビデオゲーム処理プログラム、及びビデオゲーム処理システム

Also Published As

Publication number Publication date
CN101808702A (zh) 2010-08-18
JP2009226026A (ja) 2009-10-08
TWI377082B (en) 2012-11-21
TW201000180A (en) 2010-01-01
KR20100046258A (ko) 2010-05-06
CN101808702B (zh) 2013-05-08
KR101139379B1 (ko) 2012-04-27
WO2009119452A1 (ja) 2009-10-01

Similar Documents

Publication Publication Date Title
JP4376292B2 (ja) 指示内容決定装置、指示内容決定方法、ならびに、プログラム
JP5430962B2 (ja) 決定装置、決定方法、ならびに、プログラム
US8337284B2 (en) Game apparatus and storage medium having game program stored therein
US7762893B2 (en) Storage medium having game program stored thereon and game apparatus
US8172681B2 (en) Storage medium having stored therein game program and game device
JP3961545B2 (ja) オブジェクト選択装置、オブジェクト選択方法、ならびに、プログラム
JP5462828B2 (ja) 選択装置、選択方法、ならびに、プログラム
JP4445898B2 (ja) ポインティングデバイスに対する入力を用いたゲームプログラムおよびゲーム装置
WO2009119453A1 (ja) ゲーム装置、ゲーム処理方法、情報記録媒体、ならびに、プログラム
US7695367B2 (en) Storage medium having game program stored thereon and game apparatus
JP2006122241A (ja) ゲーム装置およびゲームプログラム
JP2007102503A (ja) 画像生成装置及び方法、プログラム、並びに記録媒体
JP5210547B2 (ja) 移動制御プログラムおよび移動制御装置
JP7436293B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP2010273841A (ja) プログラム、情報記憶媒体及びゲーム装置
JP2009086856A (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP5759571B2 (ja) ゲームプログラムおよびゲーム装置
JP5081399B2 (ja) ゲーム装置、プログラム及び情報記録媒体
JP5519610B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP5759570B2 (ja) ゲームプログラムおよびゲーム装置
JP5124545B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
KR101819441B1 (ko) 게임 인터페이스 제공 장치 및 방법
JP5155427B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP2024031176A (ja) 画面制御方法およびプログラム
JP2013065328A (ja) 選択装置、選択方法、ならびに、プログラム

Legal Events

Date Code Title Description
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: 20090901

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

R150 Certificate of patent or registration of utility model

Ref document number: 4376292

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130918

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140918

Year of fee payment: 5

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