JP6695788B2 - 情報処理プログラム、情報処理装置および情報処理方法 - Google Patents

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

Info

Publication number
JP6695788B2
JP6695788B2 JP2016237235A JP2016237235A JP6695788B2 JP 6695788 B2 JP6695788 B2 JP 6695788B2 JP 2016237235 A JP2016237235 A JP 2016237235A JP 2016237235 A JP2016237235 A JP 2016237235A JP 6695788 B2 JP6695788 B2 JP 6695788B2
Authority
JP
Japan
Prior art keywords
image
information processing
application
application image
input
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
JP2016237235A
Other languages
English (en)
Other versions
JP2018089269A (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 JP2016237235A priority Critical patent/JP6695788B2/ja
Priority to EP17185416.9A priority patent/EP3332849B1/en
Priority to US15/672,645 priority patent/US10722795B2/en
Publication of JP2018089269A publication Critical patent/JP2018089269A/ja
Application granted granted Critical
Publication of JP6695788B2 publication Critical patent/JP6695788B2/ja
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/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the 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/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/5252Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving 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
    • 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/203Image generating hardware
    • 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/50Features 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 details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • A63F2300/554Game data structure by saving game or status data
    • 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/6669Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera using a plurality of virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character change rooms

Description

この発明は情報処理プログラム、情報処理装置および情報処理方法に関し、特にたとえば、アプリケーションの実行中に、アプリケーション画像をキャプチャしたキャプチャ画像の縮小画像を生成し、生成した縮小画像をアプリケーション画像に重ねて表示する、情報処理プログラム、情報処理装置および情報処理方法に関する。
この種の情報処理装置の一例が特許文献1に開示されている。この特許文献1の情報処理装置において記録部は、リングバッファを含み、出力装置に表示されるアプリケーション(ゲーム)の画像データをバックグランドで録画する。この情報処理装置では、ゲーム実行中に特定のボタンの操作情報を受け付けると、操作情報を受け付けた時点のゲーム画像のスクリーンショットがキャプチャされ、リングバッファへの画像データの記録が停止される。すると、ゲーム画面上に、入力画面が重畳表示され、この入力画面には、キャプチャしたゲーム画像の画像データの共有処理を行うか、その画像データの保存処理を行うかの選択肢が示される。たとえば、画像データの保存処理が選択されると、キャプチャした画像データがコンテンツ記録部に記録される。
特開2014−092991
しかし、特許文献1の情報処理装置では、ゲーム画像の画像データを記録するだけであり、ユーザは、ゲーム進行を一旦停止したり、ゲームを終了したりした後に、編集処理またはアップロード処理を実行するときに、所望のゲーム画像をキャプチャできたかどうかを確認できるに過ぎない。したがって、所望のゲーム画像をキャプチャ出来ていない場合には、再度ゲームをプレイする必要がある。
それゆえに、この発明の主たる目的は、新規な、情報処理プログラム、情報処理装置および情報処理方法を提供することである。
また、この発明の他の目的は、情報処理を実行しながら、キャプチャした画像を確認することができる、情報処理プログラム、情報処理装置および情報処理方法を提供することである。
第1の発明は、コンピュータによって実行される情報処理プログラムであって、コンピュータを、入力受付手段、情報処理手段、アプリケーション画像生成手段、制御手段、およびメッセージ表示手段として機能させる。入力受付手段は、ユーザによる入力を示す入力情報を受け付ける。情報処理手段は、入力受付手段において受け付けた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行う。アプリケーション画像生成手段は、所定の情報処理に応じてアプリケーション画像を生成する。制御手段は、入力受付手段において受け付けた入力情報が第2の入力を示す場合には、アプリケーション画像生成手段において生成したアプリケーション画像を取得する処理と、取得したアプリケーション画像の縮小画像を生成し、所定の情報処理が行われている間にアプリケーション画像に重ねて表示する処理と、取得したアプリケーション画像の保存用のメモリへの保存を終了するまでの処理を一連の処理として実行する。メッセージ表示手段は、制御手段においてアプリケーション画像を保存できないとき、縮小画像とともに、エラーメッセージを表示する。
第1の発明によれば、第2の入力を受け付けると、所定の情報処理と並行して、縮小画像を生成して、アププリケーション画像に重ねて表示するので、第2の入力を受け付けた直後に、情報処理を実行しながら、取得したアプリケーション画像を確認することができる。
また、第1の発明によれば、アプケーション画像を保存できないときには、縮小画像とともにエラーメッセージを表示するので、保存できなかったアプリケーション画像を容易に確認することができる。
第2の発明は、第1の発明に従属し、制御手段は、取得したアプリケーション画像の縮小画像を生成し、所定の情報処理が行われている間にアプリケーション画像に重ねて表示する処理と並行して、取得したアプリケーション画像を保存用のメモリに保存する処理を実行する
第2の発明によれば、アプリケーション画像を保存用のメモリに保存する処理をアプリケーション画像の縮小画像を生成および表示する処理と並行して実行するので、アプリケーション画像の保存を待たずに、アプリケーション画像の縮小画像を見ることができる。
の発明は、第1または第2の発明に従属し、制御手段は、アプリケーション画像から縮小率に応じた割合で画素を間引く第1の画像処理を実行することにより縮小画像を生成する。
の発明によれば、画素を間引くだけの簡易な画像処理で、取得したアプリケーション画像の縮小画像を生成することができる。
第4の発明は、第の発明に従属し、制御手段は、取得したアプリケーション画像を一時記憶用のメモリに記憶し、一時記憶用のメモリに記憶したアプリケーション画像を保存用のメモリに保存する。
第4の発明によれば、一時記憶用のメモリに記憶したアプリケーション画像を用いて、縮小画像を生成するとともにそのアプリケーション画像を保存することができる。
第5の発明は、第4の発明に従属し、一時記憶用のメモリは、複数のアプリケーション画像を記憶する記憶領域を有し、制御手段は、一時記憶用のメモリに複数のアプリケーション画像が記憶されているとき、当該一時記憶用のメモリに記憶された順に、当該複数のアプリケーション画像の各々を保存用のメモリに保存する。
第5の発明によれば、複数のアプリケーション画像を一時記憶し、順次保存するので、連続的にアプリケーション画像を取得することができる。
の発明は、第の発明に従属し、制御手段、取得したアプリケーション画像を所定の形式で圧縮する第2の画像処理を実行し、圧縮したアプリケーション画像を保存用のメモリに保存する。
の発明によれば、アプリケーション画像を圧縮して保存するので、保存用のメモリのメモリ容量を効率良く使用することができる。
の発明は、第の発明に従属し、第2の画像処理にかかる時間は、第1の画像処理よりも長い。つまり、縮小画像は比較的速く生成される。
の発明によれば、第2の入力が受け付けられてから縮小画像を短時間で表示することができる。したがって、所望のアプリケーション画像が取得できたかどうかを素早く確認することができる。
の発明は、第または第の発明に従属し、第1の画像処理は間引き処理であり、第2の画像処理は圧縮処理である。
の発明は、第1ないし第の発明のいずれかに従属し、縮小画像は、アプリケーション画像の一部に重ねて表示される。
の発明によれば、アプリケーションについての操作を行いながら、縮小画像を確認することができる。
10の発明は、第1ないし第の発明のいずれかに従属し、縮小画像はアプリケーション画像の上端部に表示される。
10の発明によれば、たとえば、アプリケーションについての操作の邪魔にならない位置に縮小画像を表示することができる。
11の発明は、第1ないし第の発明のいずれかに従属し、アプリケーション画像生成手段は、入力情報に応じて少なくとも移動される所定のオブジェクトを含むアプリケーション画像を生成し、表示制御手段は、所定のオブジェクトに重ならない所定の位置に縮小画像を表示する。
11の発明によれば、ユーザが移動を操作する所定のオブジェクトに重ならない所定の位置に縮小画像を表示するので、所定のオブジェクトを移動させる操作の邪魔にならない位置に縮小画像を表示することができる。
12の発明は、第1ないし第11の発明のいずれかに従属し、縮小画像は一時的に表示される。
12の発明によれば、たとえば、取得されたアプリケーション画像が確認されると、縮小画像は消去されるので、縮小画像によって実行中のアプリケーション画像が見えない時間を出来る限り少なくすることができる。
13の発明は、第1ないし第12の発明のいずれかに従属し、第2の入力は、操作装置に設けられた押しボタンに対する操作である。たとえば、押しボタンが操作されたことに応じて、アプリケーション画像が取得され、取得されたアプリケーション画像の縮小画像が生成される。生成された縮小画像は、アプリケーション画像に重ねて表示される。
13の発明によれば、押しボタンの操作に応じて縮小画像が表示されるので、その操作に対してフィードバックを行うことができる。また、縮小画像を表示するので、ユーザはアプリケーション画像の取得に成功したかどうかを短時間で知ることができる。
14の発明は、コンピュータによって実行される情報処理プログラムであって、コンピュータを、アプリケーション画像生成手段、制御手段、およびエラーメッセージ表示手段として機能させる。アプリケーション画像生成手段は、アプリケーションにおける所定の情報処理に応じてアプリケーション画像を生成する。制御手段は、所定の入力を受け付けたことに応じて、アプリケーション画像生成手段において生成したアプリケーション画像を取得する処理と、取得したアプリケーション画像の縮小画像を生成し、所定の情報処理が行われている間にアプリケーション画像に重ねて表示する処理と、アプリケーション画像取得手段において取得したアプリケーション画像をデータ変換して保存用のメモリへの保存を終了するまでの処理を一連の処理として実行する。メッセージ表示手段は、制御手段においてアプリケーション画像を保存できないとき、縮小画像とともに、エラーメッセージを表示する。
14の発明によれば、所定の入力を受け付けた直後に、取得したアプリケーション画像を確認することができる。
また、第14の発明によれば、アプケーション画像を保存できないときには、縮小画像とともにエラーメッセージを表示するので、保存できなかったアプリケーション画像を容易に確認することができる。
第16の発明は、ユーザによる入力を示す入力情報を受け付ける入力受付手段、入力受付手段によって受け付けられた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行う情報処理手段、所定の情報処理に応じてアプリケーション画像を生成するアプリケーション画像生成手段、入力受付手段によって受け付けられた入力情報が第2の入力を示す場合には、アプリケーション画像生成手段によって生成されたアプリケーション画像を取得する処理と、取得したアプリケーション画像の縮小画像を生成し、所定の情報処理が行われている間にアプリケーション画像に重ねて表示する処理と、取得したアプリケーション画像を保存用のメモリに保存する処理を一例の処理として実行する制御手段、および制御手段においてアプリケーション画像を保存できないとき、縮小画像とともに、エラーメッセージを表示するメッセージ表示手段を備える、情報処理装置である。
18の発明は、情報処理方法であって、(a)ユーザによる入力を示す入力情報を受け付けるステップ、(b)ステップ(a)において受け付けた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行うステップ、(c)所定の情報処理に応じてアプリケーション画像を生成するステップ、(d)ステップ(a)において受け付けた入力情報が第2の入力を示す場合には、ステップ(c)において生成したアプリケーション画像を取得する処理と、取得したアプリケーション画像の縮小画像を生成し、所定の情報処理が行われている間にアプリケーション画像に重ねて表示する処理と、取得したアプリケーション画像を保存用のメモリに保存する処理を一例の処理として実行するステップ、および(e)ステップ(d)においてアプリケーション画像を保存できないとき、縮小画像とともに、エラーメッセージを表示するステップを含む、情報処理方法である。
第16および第18の発明においても、第1の発明と同様に、第2の入力を受け付けた直後に、情報処理を実行しながら、取得したアプリケーション画像を確認することができる。
また、第16および第18の発明においても、第1の発明と同様に、アプケーション画像を保存できないときには、縮小画像とともにエラーメッセージを表示するので、保存できなかったアプリケーション画像を容易に確認することができる。
この発明によれば、情報処理が行われている間に、キャプチャした画像の縮小画像をアプリケーション画像に重ねて表示するので、情報処理を実行しながら、キャプチャした画像を確認することができる。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1はゲーム装置の電気的な構成の限定しない一例を示すブロック図である。 図2は図1に示す表示装置に表示されるゲーム画面の限定しない第1の例を示す図解図である。 図3は図1に示す表示装置に表示されるゲーム画面の限定しない第2の例を示す図解図である。 図4は図1に示す表示装置に表示されるゲーム画面の限定しない第3の例を示す図解図である。 図5は図1に示す表示装置に表示されるゲーム画面の限定しない第4の例を示す図解図である。 図6は図1に示すRAMのメモリマップの限定しない一例を示す図解図である。 図7は図1に示すCPUのゲーム制御処理の限定しない一例の一部を示すフロー図である。 図8は図1に示すCPUのゲーム制御処理の他の一部であって、図7に後続するフロー図である。 図9は図1に示すCPUおよびGPUの縮小画像生成処理の限定しない一例を示すフロー図である。 図10は図1に示すCPUの圧縮および保存処理の一例を示すフロー図である。
図1を参照して、限定しない一例のゲーム装置10はCPU20を含み、CPU20には、RAM22、フラッシュメモリ24、画像処理回路26、通信モジュール28、入力装置30、表示ドライバ32およびD/A変換器34が接続される。また、表示ドライバ32には、表示装置36が接続され、D/A変換器34には、スピーカ38が接続される。
たとえば、この実施例のゲーム装置10は、携帯型の情報処理装置であるが、ゲーム専用機に限定される必要はなく、ゲーム機能を有する携帯端末であってもよい。ゲーム機能を有する携帯端末の典型例は、フィーチャフォン、スマートフォンおよびタブレットPCである。また、携帯型のゲーム装置10に限定される必用はなく、据置型のゲーム装置10またはアーケードゲームにも適用可能である。したがって、ゲーム機能を備える汎用のPCにも適用可能である。
CPU20は、ゲーム装置10の全体制御を司る。RAM22は、揮発性メモリであり、CPU20のワークメモリやバッファメモリとして使用される。フラッシュメモリ24は、不揮発性メモリであり、ゲームのようなアプリケーション(情報処理)のプログラムを記憶したり、各種のデータを記憶(セーブ)したりするために使用される。
ただし、アプリケーションは、ゲームのアプリケーションに限定される必要は無く、文書作成アプリケーション、電子メールアプリケーション、お絵描きアプリケーション、文字練習用アプリケーション、語学トレーニングアプリケーション、学習アプリケーションなどの様々なアプリケーションも実行可能である。
画像処理回路26は、ゲーム画面100(ゲーム画像)をキャプチャした画像(以下、「キャプチャ画像」という)に対して、所定の画像処理を施すための回路である。所定の画像処理は、YUV変換、ガンマ補正、色補正などの処理である。
なお、この第1実施例では省略するが、ゲーム装置10は、画像処理回路26を含み、レンズおよびCCDまたはCMOSのような画像素子を用いた撮像素子(イメージセンサ)を備える撮像装置が設けられてもよい。この場合には、画像処理回路26には、レンズを通して撮像素子で得られた撮影画像がデジタルデータに変換された画像データ(撮影画像データ)が入力され、上記の所定の画像処理が施される。
通信モジュール28は、たとえばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。したがって、たとえば、CPU20は、通信モジュール28を用いて、アクセスポイントおよびインターネット(ネットワーク)を介して他の機器(コンピュータや他のゲーム装置10など)との間でデータを送受信する。ただし、他の機器との間で直接データを送受信することもできる。
または、通信モジュール28は、近距離無線通信を行う機能を有する。具体的には、通信モジュール28は、所定の通信方式(たとえば、赤外線方式)により、他の機器(他のゲーム装置など)との間で赤外線信号の送受信を行う機能、および所定の通信プロトコル(たとえば、マルチリンクプロトコル)に従って、同種のゲーム装置との間で無線通信を行う機能を有する。したがって、たとえば、CPU20は、通信モジュール28を用いて、同種の他のゲーム装置との間でデータを直接送受信することができる。ただし、赤外線方式の近距離無線通信に代えて、Bluetooth(登録商標)のような他の無線通信規格に従う近距離無線通信を行うようにしてもよい。
入力装置30は、たとえば、ゲーム装置10に設けられる各種の押しボタンないしスイッチであり、ユーザによって、メニュー選択、ゲーム操作およびキャプチャ(撮影)指示などの各種の操作ないし入力に用いられる。ただし、入力装置30としては、タッチパネルなどのポインティングデバイス、マイクおよびカメラなどの入力手段が、押しボタンないしスイッチに代えて、または、押しボタンないしスイッチとともに設けられてもよい。また、タッチパネルは、後述する表示装置36に組み込まれる場合もある。この場合の表示装置36は、タッチパネル一体型表示装置である。
表示ドライバ32は、GPU32aおよびビデオRAM(VRAM)32bを内蔵し、CPU20の指示の下、GPU32aは、ゲーム画像などの各種画像に対応する画像データをVRAM32b上に描画(生成)し、生成した画像データを表示装置36に出力する。したがって、各種画像が表示装置36に表示される。
D/A変換器34は、CPU20から与えられる音声データをアナログのゲーム音声に変換し、スピーカ38に出力する。ただし、ゲーム音声は、ゲームのキャラクタないしオブジェクトの擬制音、効果音、音楽(BGM)のようなゲームに必要な音を意味する。
なお、図1に示すゲーム装置10の電気的な構成は単なる一例であり、これに限定される必要はない。たとえば、通信モジュール28は無くてもよい。また、SDカード、メモリスティックのような外部メモリが、着脱可能に設けられてもよい。この場合、フラッシュメモリ24は省略することもできる。
図2に示すゲーム画面100は、仮想のゲームにおいて、仮想のゲーム空間内に設けられた仮想のコースの一部を仮想のカメラで撮影した画像(アプリケーション画像)である。このゲーム画面100には、プレイヤキャラクタ102および敵キャラクタ104が表示される。また、ゲーム画面100には、コインオブジェクト106が表示される。図2に示す例では、プレイヤキャラクタ102は、地面オブジェクト110上に位置し、このプレイヤキャラクタ102の上方に、3つのコインオブジェクト106が配置される。また、敵キャラクタ104は、階段状に積まれた複数のブロックオブジェクト112上に位置する。また、土管オブジェクト114が地面オブジェクト110に突き刺さるように設けられる。
以下、後述する縮小画像150およびメッセージ画像152を含むゲーム画面100と区別するために、図2に示すように、縮小画像150およびメッセージ画像152を含まないゲーム画面100として表示される画像を「プレイ画像100a」と呼ぶことがある。つまり、図2に示す例では、プレイ画像100aは、プレイヤキャラクタ102、敵キャラクタ104、コインオブジェクト106、地面オブジェクト110、ブロックオブジェクト112、土管オブジェクト114および空白の背景の画像を含む画像である。
たとえば、このゲームは、横スクロールのアクションアドベンチャーゲームであり、プレイヤキャラクタ102は、プレイヤの操作に従って、仮想のコースを移動したり、ジャンプしたり、コインオブジェクト106などのアイテムを取得したり、敵キャラクタ104などを踏みつぶしたりするなどの任意のアクションを実行する。
プレイヤキャラクタ102が制限時間内にコース内に設定されたゴールに到達すると、コースクリアとなる。また、すべてのコースをクリアすると、ゲームクリアとなる。ただし、プレイヤキャラクタ102が、敵キャラクタ104の攻撃を受けたり、コースからはみ出したりすると、ミスとなり、プレイヤキャラクタ102の残機数が1減算される。また、この残機数が0になると、ゲームオーバとなる。
ゲームのプレイ中に、プレイヤが入力装置30を用いることにより、キャプチャ(撮影)指示が入力されると、ゲーム装置10では、キャプチャ指示が入力されたときのゲーム画面100がキャプチャ(撮影)される。キャプチャされた画像(スクリーンショット)は、たとえば、プレイ中のゲームのアプリケーション内または別のアプリケーションにおいて閲覧することができる。また、キャプチャされた画像のデータは、電子メールに添付して送信することができ、所定のWebページにアップロードすることもできる。ただし、この実施例では、キャプチャされるのは、プレイ画像100aのみであり、縮小画像150およびメッセージ画像152は含まれない。
なお、この実施例では、入力装置30の所定の押しボタンないしスイッチが操作されることにより、キャプチャ指示が入力される。ただし、マイクおよびカメラなどの入力手段を用いることにより、キャプチャ指示が入力されるようにしてもよい。たとえば、「撮影」などの音声がマイクから入力されたことに応じてキャプチャ指示が入力される。また、入力手段であるカメラで所定の画像、所定のポーズまたは所定のジェスチャが撮影されたことに応じてキャプチャ指示が入力される。
また、ゲーム装置10が慣性センサ(加速度センサ、ジャイロセンサなど)を備える場合には、ゲーム装置10の姿勢または動きが所定の姿勢または所定の動きを示したことに応じてキャプチャ指示が入力されてもよい。
また、キャプチャ指示が入力されたとき、ゲーム画面100がキャプチャされた画像から、その縮小画像を生成する画像処理(第1の画像処理)が実行される。たとえば、第1の画像処理は、CPU20の指示の下、GPU32aが、キャプチャされた画像(キャプチャ画像)の画像データから一部の画素を間引いてVRAM32bに展開する(書き込む)ことにより、キャプチャ画像を縮小した縮小画像150の画像データを生成する。ただし、縮小画像150を生成する場合には、その縮小率に応じた数の画素がキャプチャ画像から間引かれる。たとえば、キャプチャ画像を1/10の大きさに縮小する場合には、縦および横の各々について、9画素ずつ飛ばして画素が読み出される。
なお、図面(図3−図5)では、縮小画像150を分かり易く示すために、キャプチャ画像(ゲーム画面100)の1/4の大きさで示してある。
縮小画像150が生成されると、図3のゲーム画面100で示すように、生成された縮小画像150はプレイ画像100aに重ねて表示装置36に表示される。図3からも分かるように、縮小画像150は、ゲーム画面100の左上部であり、プレイ画像100aの前面に表示される。つまり、縮小画像150は、ゲーム画面100(表示装置36)の上部に表示される。また、ゲーム画面100の中央上部であり、プレイ画像100aの前面にメッセージ画像152が表示される。つまり、縮小画像150とともにメッセージ画像152をプレイ画像100aに重ねたゲーム画面100が表示装置36に表示される。図3に示すゲーム画面100のメッセージ画像152では、四角形の表示枠内に、ゲーム画面100がキャプチャ(撮影)されたことを示すメッセージが記述される。
縮小画像150およびメッセージ画像152をゲーム画面100(表示装置36)の上部に表示するのは、通常のゲームでは、ゲーム画面100の下部に地面が表示され、その地面上にプレイヤキャラクタ102が表示されることが多いからである。つまり、プレイヤキャラクタ102が縮小画像150およびメッセージ画像152で隠れてしまわないようにするためである。
したがって、ゲーム以外のアプリケーションでは、ユーザが操作するオブジェクトに重ならない位置に、縮小画像150およびメッセージ画像152が表示される。このため、ゲームの種類または他のアプリケーションによっては、縮小画像150およびメッセージ画像152は画面の上部以外に表示されることもある。
なお、図示は省略するが、ゲーム画面100のキャプチャ(撮影)を許可されていないシーンでは、プレイヤがキャプチャ指示を与えたときに、キャプチャが許可されていないことを示すメッセージ(撮影禁止のメッセージ)が記述されたメッセージ画像152がゲーム画面100の中央上部に表示される。この場合、ゲーム画面100の左上部すなわちメッセージ画像152の左側に、キャプチャが許可されていないことを示す画像が表示されてもよい。
ただし、ゲーム画面100のキャプチャを許可されていないシーンは、ゲームの開発者等によって予め決定(設定)される。
また、プレイヤのキャプチャ指示に応じてキャプチャ画像が取得されると、ゲーム装置10では、上記の縮小画像150の生成および表示と並行して、キャプチャ画像がフラッシュメモリ24に保存される。ただし、キャプチャ画像は、外部メモリに保存されてもよい。この実施例では、フラッシュメモリ24のメモリ容量を圧迫しないように、保存可能なキャプチャ画像の数(枚数)の上限が設定されている。また、キャプチャ画像から、JPEG形式のような所定のフォーマットに従う画像ファイルが生成される。このように、汎用のデータ形式の画像ファイルを生成するのは、ゲーム装置10以外のコンピュータでも簡単に取り扱うためである。たとえば、汎用のデータ形式とは、様々な種類のアプリケーションプログラムで使用できるデータ形式および様々な種類のハードウェアで使用できるデータ形式を意味する。したがって、PNG、GIFまたはBMPのような他のデータ形式の画像ファイルが生成されてもよい。
このように、この実施例のゲーム装置10では、縮小画像150の生成および表示を行う第1の処理と、JPEGの画像データ(画像ファイル)の生成および保存を行う第2の処理が並行して実行される。
第1の処理と第2の処理を並行して実行するのは、第2の処理を実行した後に、第1の処理を実行した場合には、キャプチャ指示を受けてから縮小画像150を表示するまでに、第2の処理を実行するのに要した時間がかかってしまう。たとえば、キャプチャ画像からJPEGの画像ファイルを生成する場合には、CPU20は、(1)DCT変換を行い、(2)データを量子化し、(3)DCT変換したデータを一列に整列させ、(4)一列に整列させたデータをエントロピー符号化(圧縮)する必要があり、処理が複雑であり、時間がかかってしまう。また、画像ファイルをフラッシュメモリ24に保存する(書き込む)場合にも、RAM22に記憶(生成)した画像ファイルの一部のデータを読み出すとともに、読み出した一部のデータをフラッシュメモリ24に書き込む処理を繰り返し実行する必要があり、時間がかかってしまう。
このため、プレイヤは、キャプチャ指示を入力したときにキャプチャ画像を確認することができないため、キャプチャ指示が正しく入力されたかどうかを直ぐに知ることができない。また、所望のキャプチャ画像が取得されたかどうかも直ぐに知ることができない。
なお、これを回避するため、キャプチャ画像をそのまま表示装置36に表示することも考えられるが、その場合、キャプチャ画像がゲーム画面100を覆ってしまうため、プレイヤはゲーム画面100を見ることができないという不都合がある。また、表示装置36を二つ設けたり、表示装置36の表示領域を二つに分割したりして、キャプチャ画像をゲーム画面100とは別に表示することも考えられるが、この場合、キャプチャ画像およびゲーム画面100を見るのが困難であり、ゲーム操作をミスしてしまうなどの不都合がある。
したがって、この実施例では、第1の処理および第2の処理を並行して実行し、比較的短時間で生成した縮小画像150をプレイ画像100aの一部に重ねたゲーム画面100を表示するようにしてある。つまり、キャプチャ指示を入力したことに応じて縮小画像150が表示される。このように、キャプチャ指示に対して比較的短時間でフィードバックが行われる。また、たとえば、キャプチャ画像がJPEG形式に変換された画像ファイルがフラッシュメモリ24に保存されると、キャプチャ画像を保存したことを示すメッセージが記載されたメッセージ画像152が表示される。たとえば、図4に示すように、「保存しました」と記述されたメッセージ画像152が縮小画像150の横に表示される。
また、図3のゲーム画面100に示すように、図2に示した状態から、プレイヤキャラクタ102は右向きに移動されており、敵キャラクタ104は左向きに移動されている。また、図4のゲーム画面100に示すように、図3に示した状態から、プレイヤキャラクタ102は左向きに移動されており、敵キャラクタ104もブロックオブジェクト112の左側に移動されている。これは、第1の処理および第2の処理が実行されている場合にも、ゲーム制御処理が継続して実行されているからである。つまり、第1の処理および第2の処理は、ゲーム制御処理が実行されている間に、並行して実行される。
ただし、ゲーム制御処理は、プレイヤの操作に従うプレイヤキャラクタ102の制御処理およびその他の処理を含む。プレイヤキャラクタ102の制御処理では、プレイヤキャラクタ102を移動させたり、プレイヤキャラクタ102に敵キャラクタ104を攻撃させたり、プレイヤキャラクタ102にアイテム202を取得または使用させたりする。また、その他の処理では、敵キャラクタ104の移動や動作を制御したり、ゲームクリアまたはゲームオーバを判定したり、アイテムを出現させたりなどする。これらのことは、図5に示すゲーム画面100においても同じである。
また、ゲーム画面100を撮影できた場合であっても、キャプチャ画像の保存枚数の上限およびメモリ容量の不足によって、キャプチャ画像をフラッシュメモリ24に保存できないこともある。また、フラッシュメモリ24に画像ファイルを保存している場合に、データの書込みに失敗することもある。
このような事態が発生した場合には、今回取得したキャプチャ画像を保存することができないことを示すメッセージが記載されたメッセージ画像152が表示される。また、このとき、縮小画像150の前面に、保存できないことを示す画像(この実施例では、×印)160が表示される。ただし、画像160は表示されなくてもよい。
ただし、この実施例では、保存できない原因に応じてメッセージの内容は変更される。たとえば、キャプチャ画像の保存枚数が上限に達している場合には、「画面写真がいっぱいです」のようなメッセージが記載されたメッセージ画像152が縮小画像150の横に表示される。また、フラッシュメモリ24のメモリ容量が不足している場合には、図5に示すように、「容量がいっぱいです」のようなメッセージがメッセージ画像152に記載される。さらに、フラッシュメモリ24へのデータの書込みに失敗した場合には、「保存できませんでした」のようなメッセージがメッセージ画像152に記載される。このように、キャプチャ画像を保存できない場合には、その原因に応じたメッセージを記載したメッセージ画像152に表示される。
たとえば、図3−図5に示したメッセージ画像152は数秒程度表示された後に、消去(非表示)される。つまり、メッセージ画像152は、一時的に表示される。また、たとえば、縮小画像150は、画像ファイルを保存したことまたは画像ファイルを保存できないことについてのメッセージ画像152が消去された判断されときにゲーム画面100から消去される。したがって、縮小画像150もまた、一時的に表示される。このため、縮小画像150およびメッセージ画像152によってプレイ画像100aの一部が一時的に見えなくなるが、プレイヤキャラクタ102に重ならない位置に表示されるため、プレイヤにとって不都合(邪魔)になることは無いと考えられる。
図6は図1に示したゲーム装置10のRAM22のメモリマップ300の一例を示す図解図である。図6に示すように、RAM22は、プログラム記憶領域302およびデータ記憶領域304を含む。プログラム記憶領域302には、この実施例のゲームのアプリケーションについてのプログラム(ゲーム制御処理のプログラム)が記憶され、ゲーム制御処理のプログラムは、メイン処理プログラム302a、画像生成プログラム302b、画像表示プログラム302c、入力検出プログラム302d、キャプチャ処理プログラム302e、縮小画像生成プログラム302f、符号化プログラム302g、保存プログラム302hおよびメッセージ表示制御プログラム302iなどを含む。
メイン処理プログラム302aは、この実施例のゲームの制御処理のメインルーチンを処理するためのプログラムである。画像生成プログラム302bは、画像生成用データ304dを用いてゲーム画像の画像データを生成するためのプログラムである。たとえば、ゲーム画面100に対応するゲーム画像の画像データなどが生成される。
画像表示プログラム302cは、画像生成プログラム302bに従って生成されたゲーム画像の画像データを表示装置36に出力するためのプログラムである。したがって、ゲーム画像の画像データに対応するゲーム画面100が表示装置36に表示される。
入力検出プログラム302dは、プレイヤによる入力に応じて入力装置30から入力された入力データを検出するためのプログラムである。検出された入力データは、後述する入力データバッファ304aに記憶される。
キャプチャ処理プログラム302eは、入力検出プログラム302dに従って検出した入力データがキャプチャ処理(撮影処理)を示す場合に、ゲーム画面100(プレイ画像100a)をキャプチャしたキャプチャ画像のデータ(キャプチャ画像データ)を取得するためのプログラムである。取得されたキャプチャ画像データは、後述するキャプチャデータバッファ304bに記憶される。
縮小画像生成プログラム302eは、この実施例では、プレイヤの操作に従って取得されたキャプチャ画像データから縮小率に応じて画素を間引いてキャプチャ画像を縮小した縮小画像150の画像データを生成するためのプログラムである。ただし、縮小画像生成プログラム302eは、CPU20の指示の下、GPU32aによって実行される。
符号化プログラム302gは、この実施例では、プレイヤの操作に従って取得されたキャプチャ画像データを所定のフォーマット(JPEG形式)の画像データに変換するためのプログラムであり、この実施例では、JPEG形式の画像ファイルが生成される。生成された画像ファイルは、後述する画像ファイルバッファ304cに記憶される。
保存プログラム302hは、符号化プログラム302gに従って生成された画像ファイルをフラッシュメモリ24のような不揮発性メモリに保存する(書き込む)ためのプログラムである。メッセージ表示制御プログラム302iは、メッセージ画像152の表示および非表示を制御するためのプログラムである。ただし、メッセージ画像152の生成および表示/非表示は、CPU20の指示の下、GPU32aによって実行される。
図示は省略するが、プログラム記憶領域302には、他のゲーム装置10と通信するための通信プログラムおよびゲームに必要な音を生成および出力するための音出力プログラムなどの他のプログラムも記憶される。
データ記憶領域304には、入力データバッファ304a、キャプチャデータバッファ304b、画像ファイルバッファ304cが設けられる。また、データ記憶領域304には、画像生成用データ304dおよび保存データデータ304eなどのデータが記憶される。さらに、データ記憶領域304には、タイマ304fが設けられる。
入力データバッファ304aは、入力装置30からの入力データを一時記憶するための領域である。入力データは、CPU20によって受け付けられると、入力データバッファ304aに時系列に従って記憶され、CPU20の処理に使用されると、消去される。
キャプチャデータバッファ304bは、キャプチャ画像データを一時記憶するための領域である。この実施例では、キャプチャデータバッファ304bは、一画面分のキャプチャ画像データを記憶可能なサイズに設定されている。ただし、キャプチャデータバッファ304bに記憶されたキャプチャ画像データから画像ファイルが生成されると、このキャプチャ画像データは消去される。
画像ファイルバッファ304cは、キャプチャ画像データから生成されたJPEG形式の画像ファイルを一時記憶するための領域である。この実施例では、画像ファイルバッファ304cは、一画面分の画像ファイルを記憶可能なサイズに設定されている。ただし、画像ファイルバッファ304cに記憶された画像ファイルがフラッシュメモリ24に保存されると、この画像ファイルは画像ファイルバッファ304cから消去される。また、この実施例では、CPU20は、画像ファイルをフラッシュメモリ24に保存することに失敗した場合にも、この画像ファイルを画像ファイルバッファ304cから消去する。
画像生成用データ304dは、プレイ画像100aおよびメッセージ画像152の画像データなどを生成するためのポリゴンデータおよびテクスチャデータなどのデータである。
保存エラーデータ304eは、画像ファイルの保存エラーについてのデータであり、保存エラーの内容(原因)を識別可能である。たとえば、保存エラーデータ304eは、2ビットのレジスタで構成される。保存枚数が上限に達している場合には、レジスタに「00」が記憶される。また、メモリ容量が一杯である場合には、レジスタに「01」が記憶される。さらに、画像ファイルの書込み中に、データの書込みに失敗した場合には、レジスタに「10」が記憶される。
タイマ304fは、メッセージ画像152を表示する時間(たとえば、2〜3秒)をカウントするためのカウンタであり、CPU20の指示に従ってカウントを開始する。ただし、カウントを開始するときに、タイマ304gはリセットされる。
図示は省略するが、データ記憶領域には、他のデータが記憶されたり、ゲーム処理(情報処理)に必要なフラグおよび他のカウンタ(タイマ)が設けられたりする。
図7および図8は図1に示したCPU20のゲーム制御処理の限定しない一例のフロー図である。図7に示すように、CPU20は、ゲーム制御処理を開始すると、ステップS1で、ゲーム画像を表示する。ここでは、CPU20は、表示ドライバ32を制御して、図2に示したようなゲーム画面100を表示装置36に表示する。このとき、GPU32aは、画像生成用データ304dを使用して、ゲーム画面100に対応するゲーム画像の画像データを生成する。
続くステップS3では、プレイヤによる入力を検出し、ステップS5で、入力が有るかどうかを判断する。つまり、入力データバッファ304aに現在のフレーム(現フレーム)の入力データが記憶されているかどうかを判断する。ただし、フレームは、画面更新単位時間であり、たとえば1/30秒または1/60秒に設定される。
ステップS5で“NO”であれば、つまり入力が無ければ、ステップS13に進む。一方、ステップS5で“YES”であれば、入力が有れば、ステップS7で、プレイヤキャラクタ102の操作かどうかを判断する。ステップS7で“YES”であれば、つまり、プレイヤキャラクタ102の操作であれば、ステップS9で、プレイヤキャラクタ102を制御して、ステップS13に進む。たとえば、ステップS9では、CPU20は、プレイヤの操作に従って、プレイヤキャラクタ102を移動させたり、プレイヤキャラクタ102に敵キャラクタ104を攻撃させたり、プレイヤキャラクタ102にアイテム202を取得または使用させたりする。
また、ステップS7で“NO”であれば、つまり、プレイヤキャラクタ102の操作でなければ、ステップS11で、撮影指示かどうかを判断する。ステップS11で“NO”であれば、つまり、撮影指示でなければ、ステップS13に進む。ステップS13では、その他の処理を実行し、図8に示すステップS35進む。たとえば、ステップS13では、CPU20は、敵キャラクタ104の移動や動作を制御したり、ゲームクリアまたはゲームオーバを判定したり、アイテムを出現させたりなどする。
また、ステップS11で“YES”であれば、つまり、撮影指示であれば、ステップS15で、キャプチャデータバッファ304bが空いているかどうかを判断する。上述したように、キャプチャデータバッファ304bは、一画面分のキャプチャ画像データを記憶可能な領域であるため、このステップS15では、CPU20は、先に(前回)撮影したキャプチャ画像のキャプチャ画像データから画像ファイルを生成する処理が終了し、次のキャプチャ画像データを記憶可能であるかどうかを判断しているのである。
ステップS15で“NO”であれば、つまり、キャプチャデータバッファ304bが空いていなければ、ステップS35に進む。一方、ステップS15で“YES”であれば、つまりキャプチャデータバッファ304bが空いていれば、ステップS17で、撮影が許可されているかどうかを判断する。
ステップS17で“NO”であれば、つまり、撮影が許可されていない場合には、ステップS19で、撮影禁止のメッセージを表示し、ステップS21で、タイマ304fをリセットおよびスタートして、ステップS35に進む。つまり、ステップS19では、CPU20は、GPU32aを制御して、プレイ画像100a上に、撮影が禁止されている旨のメッセージを記載したメッセージ画像152を重ねて表示する。
一方、ステップS17で“YES”であれば、つまり、撮影が許可されていれば、ステップS23で、キャプチャ(撮影)処理を実行する。ここでは、CPU20は、GPU32aを制御して、VRAM32bに展開されたプレイ画像100aについての画像データをコピーして、コピーした画像データをキャプチャ画像データとしてキャプチャデータバッファ304bに記憶する。
次のステップS25では、タイマ304fをリセットおよびスタートし、ステップS27で、縮小画像150の生成を開始し、図8に示すステップS29で、圧縮および保存処理を開始する。つまり、CPU20は、ゲーム制御処理が実行されている間に、後述する縮小画像生成処理(図9参照)およびキャプチャ画像の圧縮および保存処理(図10参照)を並行して実行する。ただし、縮小画像生成処理は、CPU20およびGPU32aによって実行される。
次のステップS31では、縮小画像150の生成終了かどうかを判断する。ここでは、CPU20は、縮小画像150についての画像データの生成処理を終了したかどうかを判断する。
ステップS31で“NO”であれば、つまり、縮小画像150の生成終了でなければ、ステップS31に戻る。一方、ステップS31で“YES”であれば、つまり、縮小画像150の生成終了であれば、ステップS33で、縮小画像150および撮影したことのメッセージをプレイ画像100aに重ねて表示して、ステップS43に進む。つまり、ステップS33では、CPU20は、GPU32aを制御して、縮小画像150および撮影したことのメッセージを記載したメッセージ画像152をプレイ画像100aに重ねて表示する。したがって、図3に示したようなゲーム画面100が表示装置36に表示される。
また、図8に示すステップS35では、所定時間を経過したかどうかを判断する。ここでは、CPU20は、タイマ304fのカウント値が所定時間(たとえば、2〜3秒)を超えたかどうかを判断する。ステップS35で“NO”であれば、つまり、所定時間を経過していなければ、ステップS39に進む。一方、ステップS35で“YES”であれば、つまり、所定時間を経過していれば、ステップS37で、メッセージ画像152を消去(非表示)して、ステップS39に進む。
ステップS39では、縮小画像150の消去かどうかを判断する。ここでは、CPU20は、画像ファイルの保存を終了したこと、または、画像ファイルの保存に失敗したことを報知するメッセージ画像152が消去されたかどうかを判断する。ステップS39で“NO”であれば、つまり、縮小画像150の消去でなければ、ステップS43に進む。一方、ステップS39で“YES”であれば、つまり、縮小画像150の消去であれば、ステップS41で、縮小画像150を消去(非表示)して、ステップS43に進む。
ステップS43では、画像ファイルの保存終了かどうかを判断する。ステップS43で“YES”であれば、つまり、画像ファイルの保存終了であれば、ステップS45で、保存終了のメッセージを表示して、ステップS51に進む。つまり、ステップS45では、CPU20は、GPU32aを制御して、保存終了を示すメッセージを記載したメッセージ画像152を表示する。一方、ステップS43で“NO”であれば、つまり、画像ファイルの保存終了でなければ、ステップS47で、画像ファイルの保存エラーかどうかを判断する。ここでは、保存エラーデータ304eがデータ記憶領域304に記憶されているかどうかを判断する。
ステップS47で“NO”であれば、つまり、画像ファイルの保存エラーでなければ、ステップS53に進む。一方、ステップS47で“YES”であれば、つまり、画像ファイルの保存エラーであれば、ステップS49で、保存エラーのメッセージを表示して、ステップS51に進む。つまり、ステップS49では、CPU20は、GPU32aを制御して、保存エラーを示すメッセージを記載したメッセージ画像152を表示する。ここでは、保存エラーデータ304eが示す保存エラーの内容に応じたメッセージがメッセージ画像152に記載される。ステップS51では、タイマ304fをリセットおよびスタートして、ステップS53に進む。
なお、図示は省略するが、ステップS43で“YES”またはステップS47で“YES”と判断した場合に、CPU20は、画像ファイルバッファ304cに記憶された画像ファイルを消去する。
ステップS53では、ゲーム終了かどうかを判断する。たとえば、CPU20は、ゲーム終了を指示されたかどうか、または、ゲームオーバになったかどうかを判断する。ステップS53で“NO”であれば、つまり、ゲーム終了でなければ、ステップS1に戻る。一方、ステップS53で“YES”であれば、つまり、ゲーム終了であれば、ゲーム制御処理を終了する。
図9はCPU20およびGPU32aの縮小画像生成処理の限定しない一例を示すフロー図である。図9に示すように、CPU20およびGPU32aは、縮小画像生成処理を開始すると、ステップS71で、キャプチャ画像から画素を間引いて読み出す。ここでは、CPU20がキャプチャデータバッファ304bに記憶されたキャプチャ画像データから縮小率に応じた数毎に画素のデータを読み出し、GPU32aに与える。
次のステップS73では、読み出した画素をVRAM32bに書き込む。ここでは、GPU32aは、VRAM32b上において、CPU20から与えられる画素のデータを用いて、ゲーム画面100に対応する画像データが描画された領域とは異なる領域に縮小画像150の画像データを描画(生成)する。
そして、ステップS75で、縮小画像150の生成を終了したかどうかを判断する。ここでは、CPU20は、キャプチャ画像データからの画素のデータの読み出しを終了したかどうかを判断する。ステップS75で“NO”であれば、つまり、縮小画像150の生成を終了していなければ、ステップS71に戻る。一方、ステップS75で“YES”であれば、つまり、縮小画像150の生成を終了すれば、縮小画像生成処理を終了する。
図10はCPU20の圧縮および保存処理の限定しない一例を示すフロー図である。図10に示すように、CPU20は、圧縮および保存処理を開始すると、ステップS101で、保存されている画像ファイルの数が上限値であるかどうかを判断する。ステップS101で“YES”であれば、つまり、保存されている画像ファイルの数が上限値であれば、保存エラーであると判断して、ステップS113に進む。
一方、ステップS101で“NO”であれば、つまり、保存されている画像ファイルが上限値に達していなければ、ステップS103で、キャプチャ画像をJPEG形式に変換して、画像ファイルを生成する。そして、ステップS105で、画像ファイルの生成終了かどうかを判断する。ステップS105で“NO”であれば、つまり、画像ファイルの生成終了でなければ、ステップS103に戻る。一方、ステップS105で“YES”であれば、つまり、画像ファイルの生成終了であれば、ステップS107に進む。上述したように、生成された画像ファイルは、画像ファイルバッファ304cに記憶される。また、図示は省略するが、画像ファイルが生成されると、キャプチャデータバッファ304bに記憶されたキャプチャ画像データは消去される。
ステップS107では、フラッシュメモリ24のメモリ容量が足りるかどうかを判断する。つまり、CPU20は、フラッシュメモリ24に、生成した画像ファイルを記憶可能なメモリ容量が残っているかどうかを判断する。ステップS107で“NO”であれば、つまり、フラッシュメモリ24のメモリ容量が不足している場合には、保存エラーであると判断し、ステップS113に進む。一方、ステップS107で“YES”であれば、つまり、フラッシュメモリ24のメモリ容量が足りる場合には、ステップS109で、画像ファイルをフラッシュメモリ24に書き込む。
次のステップS111では、書込みエラーが発生したかどうかを判断する。ステップS111で“YES”であれば、つまり、書込みエラーが発生すれば、保存エラーであると判断し、ステップS113に進む。ステップS113では、保存エラーの内容に応じた保存エラーデータ304eをデータ記憶領域304に記憶して、圧縮および保存処理を終了する。
一方、ステップS111で“NO”であれば、つまり、書込みエラーが発生していなければ、ステップS115で、画像ファイルの保存終了かどうかを判断する。ステップS115で“NO”であれば、つまり、画像ファイルの保存終了でなければ、ステップS109に戻る。一方、ステップS115で“YES”であれば、つまり、画像ファイルの保存終了であれば、圧縮および保存処理を終了する。
この実施例によれば、ゲームのプレイ中にゲーム画面をキャプチャすると、ゲーム制御処理と並行して、縮小画像を生成して表示する第1の処理と、キャプチャ画像のデータ形式を変換して画像ファイルをメモリに保存する第2の処理を実行するので、ゲームを中断せずに、縮小画像を見ることにより、キャプチャ指示を入力した直後にキャプチャした画像を確認することができる。
なお、この実施例では、キャプチャ画像をJPEG形式で圧縮することにより、画像ファイルに変換して、フラッシュメモリに保存するようにしたが、これはメモリ容量を有効に使用するためであり、たとえば、メモリ容量を考慮しなくて良い場合には、キャプチャ画像を圧縮せずにフラッシュメモリに保存するようにしてもよい。
なお、この実施例では、キャプチャデータバッファは一画面分のキャプチャ画像データを記憶可能な容量に設定したが、キャプチャデータバッファは複数画面分のキャプチャ画像データを記憶可能な容量に設定してもよい。複数画面分のキャプチャ画像データを記憶可能な場合には、その可能な画面数(枚数)のキャプチャ画像を連続的に撮影することができる。ただし、キャプチャ画像データは、撮影された順番に従って、画像ファイルに変換され、変換された順番にフラッシュメモリに保存される。
また、この実施例では、キャプチャ画像から縮小画像を生成するようにしたが、これに限定される必要はない。たとえば、JPEGの画像ファイルを、デジタルカメラのDCF(Design rule for Camera File system)というフォーマットで生成するようにすれば、JPEGの画像ファイル(キャプチャ画像の圧縮データ)が生成されるときに、サムネイル画像の画像データも生成される。したがって、縮小画像に代えてサムネイル画像を表示し、これと並行して、画像ファイルをフラッシュメモリに保存するようにすることもできる。この場合においても、画像ファイルの保存を待たずにサムネイル画像が表示されるため、保存を終了してからサムネイル画像を表示する場合よりも、キャプチャした画像を速く表示することができる。また、処理能力の高いCPUを使用したり、JPEGの画像ファイルを生成および再生(復調)するための専用のコンポーネント(JPEGコーデック)を用いたりするようにすれば、キャプチャ指示が入力されてからキャプチャした画像を確認するまでの時間を比較的短くすることができる。
さらに、この実施例では、ゲーム装置に内蔵されたフラッシュメモリに画像ファイルを保存するようにしたが、これに限定される必要はない。たとえば、外部メモリに保存するようにしてもよい。また、画像ファイルをフラッシュメモリに保存できない場合に、外部メモリに保存するようにしてもよい。逆に、画像ファイルを外部メモリに保存できない場合に、フラッシュメモリに保存するようにしてもよい。
なお、この実施例で示したゲームの内容、ゲーム装置の構成および具体的数値は単なる例示であり、限定されるべきでなく、実際の製品に応じて適宜変更可能である。
さらに、同じ効果(結果)が得られる場合には、フロー図に示した各ステップの順番は適宜変更されてもよい。たとえば、ステップS39およびS41は、ステップS51とステップS53の間で実行されてもよい。
10 …ゲーム装置
20 …CPU
22 …RAM
24 …フラッシュメモリ
26 …画像処理モジュール
28 …通信モジュール
30 …入力装置
36 …表示装置
38 …スピーカ

Claims (19)

  1. コンピュータを、
    ユーザによる入力を示す入力情報を受け付ける入力受付手段、
    前記入力受付手段において受け付けた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行う情報処理手段、
    前記所定の情報処理に応じてアプリケーション画像を生成するアプリケーション画像生成手段、
    前記入力受付手段において受け付けた入力情報が第2の入力を示す場合には、前記アプリケーション画像生成手段において生成したアプリケーション画像を取得する処理と、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と、前記アプリケーション画像取得手段において取得した前記アプリケーション画像の保存用のメモリへの保存を終了するまでの処理を一連の処理として実行する制御手段、および
    前記制御手段において前記アプリケーション画像を保存できないとき、前記縮小画像とともに、エラーメッセージを表示するメッセージ表示手段として機能させる、情報処理プログラム。
  2. 前記制御手段は、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と並行して、取得した前記アプリケーション画像を前記保存用のメモリに保存する処理を実行する、請求項1記載の情報処理プログラム。
  3. 前記制御手段は、前記アプリケーション画像から縮小率に応じた割合で画素を間引く第1の画像処理を実行することにより前記縮小画像を生成する、請求項1または2記載の情報処理プログラム。
  4. 前記制御手段は、取得した前記アプリケーション画像を一時記憶用のメモリに記憶し、前記一時記憶用のメモリに記憶したアプリケーション画像を前記保存用のメモリに保存する、請求項記載の情報処理プログラム。
  5. 前記一時記憶用のメモリは、複数の前記アプリケーション画像を記憶することが可能な記憶領域を有し、
    前記制御手段は、前記一時記憶用のメモリに前記複数のアプリケーション画像が記憶されているとき、当該一時記憶用のメモリに記憶された順に、当該複数のアプリケーション画像の各々を前記保存用のメモリに保存する、請求項4記載の情報処理プログラム。
  6. 前記制御手段は、取得した前記アプリケーション画像を所定の形式で圧縮する第2の画像処理を実行し、圧縮したアプリケーション画像を前記保存用のメモリに保存する、請求項記載の情報処理プログラム。
  7. 前記第2の画像処理にかかる時間は、前記第1の画像処理よりも長い、請求項記載の情報処理プログラム。
  8. 前記第1の画像処理は間引き処理であり、前記第2の画像処理は圧縮処理である、請求項または記載の情報処理プログラム。
  9. 前記縮小画像は、前記アプリケーション画像の一部に重ねて表示される、請求項1ないしのいずれかに記載の情報処理プログラム。
  10. 前記縮小画像は前記アプリケーション画像の上端部に表示される、請求項1ないしのいずれかに記載の情報処理プログラム。
  11. 前記アプリケーション画像生成手段は、前記入力情報に応じて少なくとも移動される所定のオブジェクトを含む前記アプリケーション画像を生成し、
    記制御手段は、前記所定のオブジェクトに重ならない所定の位置に前記縮小画像を表示する、請求項1ないしのいずれかに記載の情報処理プログラム。
  12. 前記縮小画像は一時的に表示される、請求項1ないし11のいずれかに記載の情報処理プログラム。
  13. 前記第2の入力は、操作装置に設けられた押しボタンに対する操作である、請求項1ないし12のいずれかに記載の情報処理プログラム。
  14. コンピュータを、
    アプリケーションにおける所定の情報処理に応じてアプリケーション画像を生成するアプリケーション画像生成手段、
    所定の入力を受け付けたことに応じて、前記アプリケーション画像生成手段において生成したアプリケーション画像を取得する処理と、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と、取得した前記アプリケーション画像をデータ変換して保存用のメモリへの保存を終了するまでの処理を一連の処理として実行する制御手段、および
    前記制御手段において前記アプリケーション画像を保存できないとき、前記縮小画像とともに、エラーメッセージを表示するメッセージ表示手段として機能させる、情報処理プログラム。
  15. 前記制御手段は、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と並行して、前記アプリケーション画像取得手段において取得した前記アプリケーション画像をデータ変換して保存用のメモリに保存する処理を実行する、請求項14記載の情報処理装置。
  16. ユーザによる入力を示す入力情報を受け付ける入力受付手段、
    前記入力受付手段によって受け付けられた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行う情報処理手段、
    前記所定の情報処理に応じてアプリケーション画像を生成するアプリケーション画像生成手段、
    前記入力受付手段によって受け付けられた入力情報が第2の入力を示す場合には、前記アプリケーション画像生成手段によって生成されたアプリケーション画像を取得する処理と、取得された前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と、取得された前記アプリケーション画像の保存用のメモリへの保存を終了するまでの処理を一連の処理として実行する制御手段、および
    前記制御手段によって前記アプリケーション画像を保存できないとき、前記縮小画像とともに、エラーメッセージを表示するメッセージ表示手段を備える、情報処理装置。
  17. 前記制御手段は、取得された前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と並行して、取得された前記アプリケーション画像を保存用のメモリに保存する処理を実行する、請求項16記載の情報処理装置。
  18. 情報処理方法であって、
    (a)ユーザによる入力を示す入力情報を受け付けるステップ、
    (b)前記ステップ(a)において受け付けた入力情報が第1の入力を示す場合には、当該入力情報に応じてアプリケーションにおける所定の情報処理を行うステップ、
    (c)前記所定の情報処理に応じてアプリケーション画像を生成するステップ、
    (d)前記ステップ(a)において受け付けた入力情報が第2の入力を示す場合には、前記ステップ(c)において生成したアプリケーション画像を取得する処理と、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と、取得した前記アプリケーション画像の保存用のメモリへの保存を終了するまでの処理を一連の処理として実行するステップ、および
    (e)前記ステップ(d)において前記アプリケーション画像を保存できないとき、前記縮小画像とともに、エラーメッセージを表示するステップを含む、情報処理方法。
  19. 前記ステップ(d)は、取得した前記アプリケーション画像の縮小画像を生成し、前記所定の情報処理が行われている間に前記アプリケーション画像に重ねて表示する処理と並行して、取得した前記アプリケーション画像を保存用のメモリに保存する処理を実行する、請求項18記載の情報処理方法。
JP2016237235A 2016-12-07 2016-12-07 情報処理プログラム、情報処理装置および情報処理方法 Active JP6695788B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016237235A JP6695788B2 (ja) 2016-12-07 2016-12-07 情報処理プログラム、情報処理装置および情報処理方法
EP17185416.9A EP3332849B1 (en) 2016-12-07 2017-08-08 Information processing program, information processing apparatus and information processing method
US15/672,645 US10722795B2 (en) 2016-12-07 2017-08-09 Storage medium, information processing apparatus and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016237235A JP6695788B2 (ja) 2016-12-07 2016-12-07 情報処理プログラム、情報処理装置および情報処理方法

Publications (2)

Publication Number Publication Date
JP2018089269A JP2018089269A (ja) 2018-06-14
JP6695788B2 true JP6695788B2 (ja) 2020-05-20

Family

ID=59569227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016237235A Active JP6695788B2 (ja) 2016-12-07 2016-12-07 情報処理プログラム、情報処理装置および情報処理方法

Country Status (3)

Country Link
US (1) US10722795B2 (ja)
EP (1) EP3332849B1 (ja)
JP (1) JP6695788B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6849709B2 (ja) * 2019-01-17 2021-03-24 株式会社カプコン ゲームプログラムおよびゲームシステム
CN113810675B (zh) * 2020-06-12 2024-03-12 北京小米移动软件有限公司 图像处理方法、装置、设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4281174B2 (ja) * 1999-09-24 2009-06-17 ソニー株式会社 データ記録再生装置、データ記録再生方法、データ記録再生システム及びデータ記録再生プログラムを提供するプログラム提供媒体
JP3581664B2 (ja) * 2001-02-09 2004-10-27 コナミ株式会社 撮影ゲーム装置
GB0712879D0 (en) * 2007-07-03 2007-08-08 Skype Ltd Video communication system and method
JP2010233671A (ja) * 2009-03-30 2010-10-21 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置
JP5624728B2 (ja) * 2009-04-07 2014-11-12 株式会社タイトー ゲームシステム、ゲームサーバ
JP5887123B2 (ja) * 2011-12-13 2016-03-16 株式会社ソニー・コンピュータエンタテインメント 情報処理システム、第1電子機器、第2電子機器、画像ファイル再生方法および提供方法
KR101901919B1 (ko) * 2012-08-27 2018-09-27 삼성전자주식회사 휴대 단말기 및 메신저 영상 서비스 운용 방법
JP5977147B2 (ja) 2012-11-05 2016-08-24 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および入力装置
CN103049175B (zh) 2013-01-22 2016-08-10 华为终端有限公司 预览画面呈现方法、装置及终端
JP2017104145A (ja) * 2014-03-07 2017-06-15 株式会社ソニー・インタラクティブエンタテインメント ゲームシステム、表示制御方法、表示制御プログラム及び記録媒体
JPWO2016017420A1 (ja) * 2014-07-31 2017-04-27 シャープ株式会社 表示制御装置、表示制御方法、制御プログラムおよび記録媒体
JP6893392B2 (ja) * 2015-08-04 2021-06-23 任天堂株式会社 ゲームシステム、ゲーム装置、制御プログラムおよびゲーム制御方法

Also Published As

Publication number Publication date
EP3332849A1 (en) 2018-06-13
US10722795B2 (en) 2020-07-28
US20180154258A1 (en) 2018-06-07
JP2018089269A (ja) 2018-06-14
EP3332849B1 (en) 2023-07-26

Similar Documents

Publication Publication Date Title
US11696021B2 (en) Video recording device and camera function control program
KR102090624B1 (ko) 이미지 촬영장치 및 방법
KR20110106292A (ko) 정보 처리 장치, 동화상 절출 방법 및 동화상 절출 프로그램
JP6425573B2 (ja) 電子機器とその制御方法
US10440307B2 (en) Image processing device, image processing method and medium
JP2017118472A (ja) 画像処理装置、画像処理方法及びプログラム
US20120113267A1 (en) Image capturing apparatus, method, and recording medium capable of continuously capturing object
JP6695788B2 (ja) 情報処理プログラム、情報処理装置および情報処理方法
JP2019115018A (ja) 記録制御装置、記録制御装置の制御方法およびプログラム
US9600160B2 (en) Image processing device, image processing method, and program
JP6312423B2 (ja) 撮像装置、撮像装置の制御方法、プログラム、及び、記憶媒体
JP2014030653A (ja) スポーツ動作チェックシステム、スポーツ動作チェックシステムの方法、プログラム、及び、スポーツ動作チェック装置
JP6635093B2 (ja) 画像記録装置、画像記録方法及びプログラム
JP6755716B2 (ja) 表示制御装置およびその制御方法
JP6742833B2 (ja) 情報処理装置及び情報処理方法
JP6664226B2 (ja) 撮像制御装置、撮像制御装置の制御方法、プログラム及び記憶媒体
JP6188484B2 (ja) 電子機器、その制御方法及びプログラム並びに記憶媒体
JP2010160826A (ja) 撮像装置および画像処理方法
US10659696B2 (en) Electronic device, control method of electronic device, and storage medium
JP6685853B2 (ja) 表示制御装置およびその制御方法
JP4193608B2 (ja) 画像撮影システム、画像撮影装置及びプログラム
JP6460785B2 (ja) 電子機器及び電子機器の制御方法
JP2011039111A (ja) 画像表示装置及びその制御方法
JP5812848B2 (ja) 画像処理装置およびその制御方法
JP5723168B2 (ja) 画像再生装置、及びその制御方法、プログラム、及び記録媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170808

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191105

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200422

R150 Certificate of patent or registration of utility model

Ref document number: 6695788

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250