説明

画像処理プログラム、及び画像処理装置

【課題】 ポインティングデバイスによる画面上の入力点の移動軌跡を、より高速に描画することができる画像処理プログラム、及び画像処理装置を提供する。
【解決手段】 ゲーム装置(画像処理装置)1は、三次元の仮想ゲーム空間51を生成する仮想空間生成手段30b、タッチペン17による第1ディスプレイ6上の入力点Pの位置情報を取得する入力位置取得手段30c、及び入力点Pが画面上を移動した場合に仮想ゲーム空間51内に移動経路Rを示す軌跡線Tを描画する軌跡線描画手段30dを備え、更に、入力点Pの移動速度に応じて軌跡線Tの線種を変化させることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ポインティングデバイスによる画面上の入力点の移動軌跡を、画面に表示される仮想の三次元空間内に描画する画像処理プログラム、及び画像処理装置に関する。
【背景技術】
【0002】
従来、タブレット(又はタッチパネル)及びスタイラス等のポインティングデバイスを備えるゲーム装置において、スタイラスによるタブレット又はタッチパネル上の入力点の移動軌跡を、単なる均等幅の実線状に描画するのではなく、入力操作に応じて線種を変えて描画するものがある。例えば、特許文献1の場合では、タブレットに対してスタイラスで入力するときの押圧力に基づいて、軌跡の太さを変化させている。また、スタイラスによる入力点の所定時間間隔毎の座標を検出し、隣り合う入力点の距離に応じて、軌跡の濃淡を調整している。
【0003】
また、特許文献2の場合では、スタイラスによるタッチパネルの入力点の移動速度に応じて、軌跡の太さ及び掠れ具合を変更するようにしている。具体的には、入力点の移動速度に応じて、軌跡を描画するための描画パターンの大きさを変更することにより、軌跡の太さを変更させている。また、描画パターンを構成するドットのうち、水平又は垂直方向に沿って位置する一部のドットに設定する色情報を、入力点の移動速度に応じて、背景色と同一色又は類似色にするようにしている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3865681号公報
【特許文献2】特許第4119436号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、プレイヤによるスタイラスの操作は様々であり、入力点を比較的高速で移動させる場合もある。従って、軌跡をより速く描画できるようにすることが好ましい。しかしながら、上記特許文献1,2は何れも二次元のビットマップ画像自身を、押圧力又は移動速度に応じて加工し、加工後の画像を用いて描画するものであるため、より高速に描画しようとすると、コンピュータの演算部の処理負担が比較的大きくなってしまう。また、このような傾向は、近年の表示デバイスの画面解像度の向上に伴ってより顕著になってきている。
【0006】
また、上記の描画速度の点に加えて特許文献1,2には、次のような課題も存在する。即ち、特許文献1の場合、軌跡の太さを変化させるためには、スタイラスによる押圧力を検知することが必要であるため、その発明は圧力センサを備えるデバイスに限定されるという課題がある。また、特許文献2の場合、水平又は垂直方向への軌跡でしか掠れ具合を表現できず、斜め方向の軌跡について十分な掠れ具合を表現できないという課題がある。
【0007】
そこで本発明は、ポインティングデバイスによる画面上の入力点の移動軌跡を、高速で描画することができる画像処理プログラム、及び画像処理装置を提供することを目的とする。また、圧力センサを必要とせずに軌跡の太さ(幅寸法)を変化させることができ、また、軌跡の方向にかかわらず掠れ具合を表現することができる画像処理プログラム、及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る画像処理プログラムは、コンピュータを、表示部の画面に表示される仮想の三次元空間を生成する仮想空間生成手段、ポインティングデバイスによる前記画面上の入力点の位置情報を取得する入力位置取得手段、及び前記入力点が画面上を移動した場合に、移動経路上の前記入力点の前記位置情報に基づき、前記三次元空間内に前記移動経路を示す軌跡線を描画する軌跡線描画手段、として機能させ、該軌跡線描画手段は、前記入力点の移動速度に応じて前記軌跡線の線種を変化させる。
【0009】
また、前記軌跡線描画手段は、前記軌跡線の線種として、前記軌跡線の幅寸法、模様、及び色彩のうち少なくとも1つを、前記入力点の移動速度に応じて変化させるように構成されていてもよい。
【0010】
また、前記軌跡線描画手段は、前記三次元空間内にて前記軌跡線をポリゴンで形成し、該ポリゴンを形成する頂点の位置を前記入力点の移動速度に応じて設定することにより、前記軌跡線の幅寸法を変化させるように構成されていてもよい。
【0011】
また、前記軌跡線描画手段は、前記入力点の移動速度が相対的に大きい場合は、前記軌跡線の幅寸法を相対的に小さくするように構成されていてもよい。
【0012】
また、前記軌跡線描画手段は、前記三次元空間内にて前記軌跡線をポリゴンで形成し、模様及び色彩のうち少なくとも1つに変化を有するイメージ画像から、前記入力点の移動速度に応じて選択した部分画像であるテクスチャを前記ポリゴンに貼り付けることにより、前記軌跡線の模様及び色彩のうち少なくとも1つを変化させるように構成されていてもよい。
【0013】
また、前記イメージ画像は、高明度色の部分及び低明度色の部分がまだら状に混在する中間領域と、前記高明度色の部分の密度が相対的に大きい高明度領域と、前記低明度色の部分の密度が相対的に大きい低明度領域とを含む、模様に変化を有する画像であり、前記軌跡線描画手段は、前記入力点の移動速度が相対的に大きい場合は、前記低明度領域をより広く含むように前記テクスチャを選択し、前記入力点の移動速度が相対的に小さい場合は、前記高明度領域をより広く含むように前記テクスチャを選択するように構成されていてもよい。
【0014】
本発明に係る画像処理装置は、上述した何れかに記載の画像処理プログラムを記録したプログラム記憶部、及び、該プログラム記憶部に記憶されたゲームプログラムを実行するコンピュータ、を備える画像処理装置である。
【発明の効果】
【0015】
本発明によれば、ポインティングデバイスによる画面上の入力点の移動軌跡を、より高速に描画することができる画像処理プログラム、及び画像処理装置を提供することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の実施の形態に係るゲーム装置の外観構成を示す正面図である。
【図2】ポインティングデバイスを説明する模式図である。
【図3】ゲーム装置の内部構成を示すブロック図である。
【図4】制御部の機能的な構成を示すブロック図である。
【図5】仮想ゲーム空間を説明するための模式図である。
【図6】軌跡線描画処理の動作を示すフローチャートである。
【図7】軌跡線の線種の設定手順を説明するための模式図である。
【図8】軌跡線の線種の設定手順を説明するための模式図である。
【図9】ポリゴンに貼り付けるテクスチャが選択されるイメージ画像を例示する模式図である。
【図10】軌跡線描画処理により仮想ゲーム空間に描画した軌跡線の一例を示す模式図である。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態に係る画像処理プログラム、及び画像処理装置について、図面を参照しつつ説明する。なお、以下では、画像処理装置としてゲーム装置を例示するが、本発明はゲーム装置以外の画像処理装置にも適用することができる。また、本ゲーム装置にてプレイするゲームとして、プレイヤがプレイヤキャラクタを操作し、敵キャラクタとの戦闘や謎の解明を行いながらゲームを進めていくアドベンチャーゲームを例にして説明する。また、本ゲームでは、ゲーム装置が備えるタッチパネルに、プレイヤがタッチペンを使って線状の入力を行った場合に、ゲーム中で特殊効果を発動させることができるものである。但し、本発明はこのような種類のゲームへの適用に限定されるわけではなく、アクションゲーム及びロールプレイングゲームを含む他のゲームにも適用可能である。
【0018】
[ハードウェアの構成]
図1は、本発明の実施の形態に係るゲーム装置1の外観構成を示す正面図である。図1に示すように、ゲーム装置1は携帯型であって、横長の薄型直方体形状を成す下側本体2と、同様の直方体形状を成す上側本体3とを備えている。下側本体2の上辺部分と上側本体3の下辺部分との間にはヒンジ4が架設されており、下側本体2及び上側本体3は、このヒンジ4を通る左右方向の軸回りに相対的に回動可能になっている。従って、下側本体2の前面と上側本体3の前面とが対向するように閉じたり、その状態から図1に示す状態に開いたりすることができる。
【0019】
各本体2,3に設けられたデバイスについて概説すると、まず下側本体2の前面中央部には、例えば半透過型カラー液晶ディスプレイで構成された長方形状の第1ディスプレイ(表示部の画面)6が設けられている。この第1ディスプレイ6の左側には、電源ボタン7と十字キー8とが上下に配設され、右側には、2つのボタンを含む操作ボタン9と、A,B,X,Yの4つのボタンを含む操作ボタン10とが上下に配設されている。また、操作ボタン10の下方には電源のオン/オフ状態を示す表示灯11が設けられている。更に、下側本体2の左上角部分にはLボタン12が配設され、右上角部分にはRボタン13が配設されている。一方、上側本体3の前面中央部には、例えば半透過型カラー液晶ディスプレイで構成された長方形状の第2ディスプレイ15が設けられ、その左右には、スピーカ16が配設されている。
【0020】
なお、図1には図示しないが、下側本体2の上辺部分であって、ゲーム装置1を開いたときの上側本体3の背面側の部分には、本実施の形態に係るゲームプログラム(画像処理プログラム)50a等を記録したゲームメディア50を挿脱可能なメディアインタフェース(図3のメディアインタフェース44参照)が設けられている。また、上述した下側本体2に設けられたデバイスと上側本体3に設けられたデバイスとは、ヒンジ4の近傍に設けられた多導線の帯状ケーブル5を介して電気的に接続されている。
【0021】
また、ゲーム装置1はポインティングデバイス20を備えている。具体的には、下側本体2に設けられた第1ディスプレイ6の表面には、透明のタッチパネル14が設けられており、これとゲーム装置1に付属するタッチペン17とで、ポインティングデバイス20が構成されている。タッチパネル14は、第1ディスプレイ6の画面(表示面)の全面と略同一の形状及び寸法を有する横長の長方形状を成しており、周知のように、プレイヤがタッチペン17を操作し、そのペン先がタッチパネル14の表面に接触すると、接触点(入力点)の位置情報(座標)を、後述のCPU(図3のCPU31参照)へ出力するものである。
【0022】
より具体的に説明すると、図2に示すように、タッチパネル14には、左下隅を原点として上方向へ延びるu軸と右方向へ延びるv軸とを有するuv座標系が設定されており、第1ディスプレイ6上の各ドットの位置に対応する座標(u,v)が定義されている。また、タッチパネル14にはセンサが備えられており、タッチペン17のペン先をタッチパネル14に接触させる入力操作を行うと、その入力点(接触点)Pに対応する座標(u,v)を示す情報(位置情報)がセンサによって取得され、CPU31へ出力されるようになっている。
【0023】
図3は、ゲーム装置1の内部構成を示すブロック図である。ここに示すように、ゲーム装置1は制御部30を備えており、該制御部30は、CPU31、描画処理プロセッサ32、音声処理プロセッサ33、入力信号処理部34、RAM(Random Access Memory)35、及びROM(Read Only Memory)36を含んでいる。更にゲーム装置1は、この他にもVRAM(Video-RAM)40、D/A(Digital- Analog)変換器41、上記第1ディスプレイ6及び第2ディスプレイ15、アンプ42、上記スピーカ16、上記タッチパネル14、操作部43(上記電源ボタン7、十字キー8、操作ボタン9,10、Lボタン12、Rボタン13を含む)、メディアインタフェース44、及びバス45を備えている。そして、これらのうちCPU31、描画処理プロセッサ32、音声処理プロセッサ33、入力信号処理部34、RAM35、ROM36、操作部43、及びメディアインタフェース44は、バス45によって相互にデータ伝送可能に接続されている。
【0024】
このうち操作部43は、図1に示した十字キー8、操作ボタン9,10、Lボタン12、及びRボタン13を含む操作子であり、プレイヤの操作を受け付けて、その操作内容(押圧入力の有無)に応じた操作信号をCPU31へ入力する。また、操作部43には操作子以外に電源ボタン7も含まれており、該電源ボタン7が操作されると、各部に電力が供給されてゲーム装置1が起動し、各操作子への操作入力が有効になる。
【0025】
メディアインタフェース44は、ゲーム装置1の外部から接続された記録媒体であるゲームメディア50にアクセスして、これに記憶されたゲームプログラム50a及びゲームデータ50bを読み出す。ゲームプログラム50aは、ゲーム装置1にてプレイするアクションゲームを実行させるプログラムであり、ゲームデータ50bは、上記ゲームを実行する上で必要なデータであって、例えば各登場キャラクタや背景の画像データ、ステータスなどの情報表示用の画像データ、効果音やBGMなどの音声データ、文字や記号によるメッセージデータ等が含まれる。なお、ゲームメディア50は、半導体メモリや、光ディスクの一種であるUMD(Universal Media Disc)(登録商標)などを採用することができる。
【0026】
RAM35には、ゲームの進行に応じてゲームメディア50から読み込まれたゲームプログラム50a及びゲームデータ50bを格納するロードエリア、並びに、CPU31がゲームプログラム50aを処理する際に使用するためのワークエリアが設定されている。ROM36には、ゲームメディア50に記憶されているゲームプログラム50a及びゲームデータ50bの読み出し処理を制御するプログラムなど、ゲーム装置1を動作させるための基本プログラムが記憶されている。
【0027】
入力信号処理部34は、プレイヤがタッチパネル14に対してタッチペン17のペン先を接触させる入力操作を行った場合に、その入力点(接触点)Pのタッチパネル14上の座標(u,v)に基づいて入力点Pの位置情報を検出し、該位置情報を示す信号をCPU31へ出力する。また、入力点Pの位置情報の検出は、所定のサンプリング周期(例えば、1/60秒間に4回など)で実行しており、各回で検出した位置情報を示す信号を逐次CPU31へ出力するようになっている。
【0028】
CPU31は、ゲームメディア50に記録されているゲームプログラム50a及びゲームデータ50bの全部または一部を、メディアインタフェース44を通じてRAM35に読み込み、プレイヤによるタッチパネル14又は操作部43に対する操作入力に応じてこれを実行し、ゲーム進行を制御する。より具体的には、プレイヤに操作されることによってタッチパネル14又は操作部43から信号が入力されると、CPU31は、ゲームプログラム50aに従ってその操作信号に対応する所定のゲーム進行処理を行い、その処理結果を、ゲーム進行を示す画像(以下、「ゲーム画像」とも称する)として第1ディスプレイ6又は第2ディスプレイ15に表示すると共に、ゲーム進行を示す音声信号(以下、「ゲーム音声」とも称する)をスピーカ16に出力する。
【0029】
上記ゲーム画像の描画は、CPU31の指示により、描画処理プロセッサ32が行う。即ち、CPU31は、タッチパネル14又は操作部43から入力された信号に基づき、第1ディスプレイ6又は第2ディスプレイ15に表示すべきゲーム画像の内容を決定し、その内容に対して必要な描画データを描画処理プロセッサ32に生成させる。描画処理プロセッサ32は、生成した描画データに基づいて更にゲーム画像を生成し、このゲーム画像をVRAM40に書き込む。D/A変換器41は、VRAM40から出力されたゲーム画像を順次アナログ信号に変換し、第1ディスプレイ6又は第2ディスプレイ15へ出力(表示)する。
【0030】
また、CPU31は、ゲームの進行に応じて、スピーカ16から出力すべき効果音やBGM等の音声を決定し、その音声を発音するための音声データをRAM35から読み出して音声処理プロセッサ32に入力する。即ち、CPU31は、ゲームの進行に伴って発音イベントが発生すると、その発音イベントに応じた音声データ(ゲームメディア50からロードされた音声データ)をRAM35から読み出して音声処理プロセッサ32に入力する。音声処理プロセッサ32は、DSP(Digital Signal Processor)で構成されており、CPU31によって入力された音声データに対して所定の効果(例えば、リバーブ、コーラスなど)を付与したのちアナログ信号に変換して、アンプ42に出力する。アンプ42は、音声処理プロセッサ32から入力された音声信号を増幅したのちスピーカ16に出力する。
【0031】
[制御部の機能的構成]
図4は、ゲーム装置1が備える制御部30の機能的な構成を示すブロック図である。ゲーム装置1の制御部30は、ゲームメディア50から読み込んだゲームプログラム50a及びゲームデータ50bを実行することにより、ゲーム進行制御手段30a、仮想空間生成手段30b、入力位置取得手段30c、及び軌跡線描画手段30dなどの機能を発揮する。
【0032】
このうちゲーム進行制御手段30aは、プレイヤによるタッチパネル14又は操作部43の操作等に応じて本ゲームを進行させるものであり、プレイヤキャラクタC(図5参照)や敵キャラクタの行動も制御している。仮想空間生成手段30bは、プレイヤが操作するプレイヤキャラクタや敵キャラクタが行動する仮想の三次元空間である仮想ゲーム空間51(図5参照)を生成するものである。
【0033】
図5は、仮想ゲーム空間51を説明するための模式図である。図5に示すように、仮想ゲーム空間51は、例えば平坦な地面上の空間として設定されているが、この他にも水中や空中の空間を含んでいてもよい。プレイヤキャラクタCは、このような仮想ゲーム空間51内にてプレイヤの操作に応じて行動する。また、仮想ゲーム空間51内には仮想カメラを成す仮想視点52が設定されており、該仮想視点52から仮想ゲーム空間51を撮影したときのゲーム画像が、第1ディスプレイ6又は第2ディスプレイ15に表示される。
【0034】
即ち、図5に示すように、プレイヤキャラクタCが存在している仮想ゲーム空間51には、所定の位置に仮想視点52が設定されており、該仮想視点52は、ゲーム進行に応じて適宜移動し、プレイヤキャラクタCを画像内に含むように向けられている。更に、この仮想視点52とプレイヤキャラクタCとの間の所定位置には、タッチパネル14と相似形状を成すスクリーン53が設定されている。そして、仮想視点52から撮影した三次元の仮想ゲーム空間51を、スクリーン53に透視投影することにより、二次元画像が得られる。
【0035】
また、スクリーン53には、タッチパネル14と同様に、左下隅を原点として上方向へ延びるu軸と右方向へ延びるv軸とを有するuv座標系が設定されており、スクリーン53上の任意の点に対応する座標(u,v)が定義されている。従って、スクリーン53に透視投影された二次元画像は、そのまま、第1ディスプレイ6又は第2ディスプレイ15に表示するゲーム画像とされる。図5では、スクリーン53に透視投影された二次元画像から生成したゲーム画像を第1ディスプレイ6に表示した様子を示している。なお、説明の便宜上、以下ではゲーム画像を第1ディスプレイ6に表示するものとして説明するが、もちろん、第2ディスプレイ15に表示させることも可能である。
【0036】
一方、図4の入力位置取得手段30cは、プレイヤによるタッチペン17の操作によりタッチパネル14上の任意の点に入力があった場合に、その入力点Pの座標(u,v)に基づいて該入力点Pの位置情報を取得するものである。また、軌跡線描画手段30dは、プレイヤがタッチペン17のペン先でタッチパネル14の表面をなぞるように入力操作した場合に、ペン先の移動経路上の各入力点Pの位置情報に基づき、該移動経路を表現する軌跡線を仮想ゲーム空間51内に生成し、更にこの軌跡線を第1ディスプレイ6等にて描画させるものである。
【0037】
より具体的に説明すると、タッチパネル14上にタッチペン17のペン先を接触させる入力操作があると、その入力点Pについて、タッチパネル14上の座標(u,v)が検出される。ここで、上述したように、タッチパネル14及びスクリーン53の双方には、互いに対応するuv座標系が設定されているため、タッチパネル14上の入力点Pの座標(u,v)に基づいて、スクリーン53上にて前記入力点Pに対応する座標(u,v)を取得することができる。
【0038】
更に、図5に示すように、仮想ゲーム空間51には、スクリーン53のuv座標系とは別に三次元のxyz座標系が設定されており、仮想ゲーム空間51内の任意の位置が座標(x,y,z)により定義されている。そして、上述したようにして取得したスクリーン53上の入力点Pに対応する座標(u,v)は、制御部30の入力位置取得手段30cにより三次元の座標(x,y,z)に変換される。このようにして、タッチパネル14上の入力点Pの位置情報は、仮想ゲーム空間51内の三次元の位置情報を示す座標(x,y,z)として取得される。
【0039】
ここで、タッチパネル14の表面を、ペン先でなぞるようにタッチペン17を操作すると、ペン先によるタッチパネル14上の入力点Pが移動する。制御部30の入力位置取得手段30cは、この移動経路上の各入力点Pの座標(u,v)を上記のように座標(x,y,z)に変換して三次元の位置情報を取得する。軌跡線描画手段30dは、この三次元の位置情報に基づき、タッチパネル14上のペン先の移動経路Rを表現する軌跡線Tを三次元の仮想ゲーム空間51内に生成すると共に、この軌跡線Tを第1ディスプレイ6等に描画させる。
【0040】
ところで、本ゲームの軌跡線描画手段30dは、上述したように軌跡線Tを描画するに際して、入力点Pの移動速度に応じて軌跡線Tの線種を変化させる。以下、軌跡線描画手段30dによって実行される、軌跡線Tの線種の変更処理を含む軌跡線描画処理の詳細を説明する。
【0041】
[軌跡線描画処理]
図6は、軌跡線描画手段30dによって実行される軌跡線描画処理の動作を示すフローチャートである。また、図7及び図8は、軌跡線描画処理において軌跡線Tの線種の設定手順を説明するための模式図であり、このうち図7は2つの入力点があった場合を示し、図8は3つの入力点があった場合を示している。また、これらの図6〜図8では、入力点Pに添え字N−2,N−1,Nなどを付して表示するが、この添え字は、各入力点Pの相対的な検出順序を示すものである。例えば、入力点PN−2,PN−1,Pは、この順番で検出されたものであることを示している。
【0042】
なお、図6に示す軌跡線描画処理は毎フレーム実行されており、タッチペン17のペン先がタッチパネル14に接触すると、その後、ペン先が離れるまでの間(以下、「線入力操作期間」という)、この軌跡線描画処理によって軌跡線Tが描画される。また、以下では、軌跡線Tを毛筆風に描画する場合を例にして説明する。
【0043】
図6に示すように、軌跡線描画処理では、新たな入力点Pを取得した場合(ステップS1)に、その1つ前に取得した入力点PN−1が存在するか否かを判定する(ステップS2)。即ち、タッチペン17のペン先がタッチパネル14に接触していない状態からはじめて接触した場合、又は、既に接触している状態でペン先が移動され、先の入力点PN−1とは異なる位置にペン先がある場合に、「新たな入力点P」を取得する(ステップS1)。この入力点Pについては、入力位置情報取得手段30cにより、そのタッチパネル14上の座標(u,v)が仮想ゲーム空間51内の三次元座標(x,y,z)を示す位置情報に変換されたものである。
【0044】
次に、1つ前の入力点PN−1が存在しない場合(ステップS2:NO)、即ち、タッチペン17のペン先がタッチパネル14に接触していない状態からはじめて接触した場合は、ステップS1の新たな入力点Pを、軌跡線Tの開始点として設定する(ステップS3)。一方、1つ前の入力点PN−1が存在する場合(ステップS2:YES)、即ち、既にペン先がタッチパネル14に接触している状態でペン先が移動され、先の入力点PN−1とは異なる位置にペン先がある場合は、入力点Pに対して2つ前の入力点PN−2が存在するか否かを判定する(ステップS4)。そして、入力点PN−2が存在しない場合には、ステップS5〜S7の処理が実行される。
【0045】
なお、既にタッチパネル14にタッチペン17のペン先が接触している状態でペン先が移動された場合には、移動距離が所定の閾値以上である場合にのみ、移動先のペン先の接触点を新たな入力点Pとして取得するようにしてもよい。即ち、入力位置情報取得手段30cは、所定の周期で入力点Pの三次元座標を示す位置情報を逐次取得し、これを画像処理プロセッサ32に入力する。画像処理プロセッサ32は、この位置情報と過去に入力された位置情報とを比較し、各位置情報が示す三次元座標間の距離が所定の閾値以上のときのみ、新たに入力された位置情報に係る入力点Pを正式な入力点とし、閾値未満のときには、新たに入力された位置情報を破棄するようにしてもよい。これにより、ペン先の移動距離がごく短い場合には、その間のペン先の移動経路を表す軌跡線の描画を省略することができる。
【0046】
ステップS5〜S7の処理について、図7も参照しつつ説明する。まず、入力点PN−2が存在しない状態では(ステップS4:NO)、2つの入力点PN−1,Pのみが存在しており、このうち先の入力点PN−1は、既にステップS1〜S3が実行されることによって軌跡線Tの開始点として設定されている。従って、入力点PN−2が存在しない状態(ステップS4:NO)とは、図7の工程100に示すように、開始点である入力点PN−1からペン先が移動した結果、次に新たな入力点Pが検出された状態である。そして、この場合、工程101に示すように、先の入力点PN−1の近傍に、ポリゴンを形成するための2つの頂点a,bのxyz座標を設定し、頂点a,bと終端点である入力点Pとにより画定される三角形状のポリゴンAを生成する(図6のステップS5)。
【0047】
より具体的には、入力点P,PN−1を結ぶ線分(即ち、移動経路R)に直交し、且つ、入力点PN−1を中間点とする所定の長さLを有する線分Labの両端位置に、頂点a,bを設定する。そして、頂点a,bに加えて入力点Pを1つの頂点とし、これら3つの頂点の座標により画定されるポリゴンAを生成する(ステップS5)。そして、次に説明するようにして所定のイメージ画像からテクスチャを選択する(ステップS6)。その後、図7の工程102に示すように、ステップS5で生成したポリゴンAの表面にステップS6で選択したテクスチャを貼り付ける(ステップS7)。
【0048】
このテクスチャは、予め用意されたイメージ画像から選択された部分的な画像として取得される。図9(a)は、このイメージ画像を例示する模式図であり、特に、軌跡線Tを毛筆風に描画するために用いられる。また、図9(b)は、このイメージ画像からテクスチャを選択するステップS6の説明用の図面であり、図9(c)は、同じイメージ画像からテクスチャを選択する後述のステップS11の説明用の図面である。
【0049】
図9(a)に示すイメージ画像は、縦横夫々に例えば64ピクセルを有する正方形状の画像であって、左上隅を原点0として横方向のs軸(0<s<63)と、縦方向のt軸(0<t<63)とが設定されている。また、このイメージ画像は、模様に変化を有する画像となっている。具体的には、高明度色(例えば、黒色)の部分及び低明度色(例えば、白色)の部分がまだら状に混在する中間領域62と、低明度色の部分の密度が相対的に大きい(即ち、全体的に白っぽい)低明度領域61と、高明度色の部分の密度が相対的に大きい(即ち、全体的に黒っぽい)高明度領域63とを含んでいる。
【0050】
更に詳説すると、低明度領域61は、全体のほとんどが白色であり、部分的に黒色の斑点模様が形成された画像となっている。逆に、高明度領域63は、全体のほとんどが黒色であり、部分的に白色の斑点模様が形成された画像となっている。そして中間領域62は、s軸方向に沿って延びる白色の帯状模様と黒色の帯状模様とにより、全体的に略縞模様が形成された画像となっている。
【0051】
このうち中間領域62は、イメージ画像のs軸方向の略中央付近において、t軸方向の全体にわたる縦長の長方形状に形成されている。また、低明度領域61は、中間領域62よりもs軸方向の原点寄りの領域に、縦長の長方形状に形成され、高明度領域63は、中間領域62に対して低明度領域61とは反対側の領域に、縦長の長方形状に形成されている。換言すると、イメージ画像はt軸方向に沿う2本の線分によって左側、中央、及び右側の3つの領域に区画されており、夫々に対応するようにして、上述した低明度領域61、中間領域62、及び高明度領域63が設定されている。
【0052】
上述したステップS6の処理では、軌跡線Tの開始点となる入力点PN−1に対応して設定された頂点a,bに関し、図9(b)に示すように、右下隅の座標(s=63,t=63)の点(ピクセル)60aが頂点aに対応付けられ、イメージ画像の右上隅の座標(s=63,t=0)の点60bが頂点bに対応付けられる。また、入力点Pには、低明度領域61内の所定の座標(s=s,t=t)の点60Pが対応付けられる。そして、頂点a,b及び入力点Pに対応付けられた各点60a,60b,60Pを結んで形成された三角形状のテクスチャ(図9(b)において太線で囲んだ部分画像)を、イメージ画像から選択する(ステップS6)。次に、図7の工程102に示すように、頂点a,b及び入力点Pにより画定されるポリゴンAの表面に、ステップS6で選択したテクスチャを貼り付ける(ステップS7)。その結果、入力点Pの移動経路Rを表現する軌跡線Tが、三次元の仮想ゲーム空間51内に描画されることとなる。なお、ポリゴンAの表面形状とテクスチャの形状とは必ずしも一致しないが、一致しない場合には公知の補間処理を適宜施せばよい。
【0053】
このように、入力点がPN−1,Pの2点のみである場合、仮に終端点である入力点Pにてタッチペン17のペン先がタッチパネル14から離されたとしても、三角形状のポリゴンAに対して上述したようなテクスチャが貼り付けられるため、筆を紙面に対して水平方向へ移動させながら、筆先を徐々に紙面から離していったときの書体に類似する軌跡線Tを描画することができる。なお、図7の工程100〜102に示す移動経路Rを示す線やポリゴンAの輪郭を示す線などは実際に描画する必要はなく、入力点Pを検出した場合には工程102に示すテクスチャを直接貼り付けて軌跡線Tを描画すればよい。また、次に説明する図8の工程103〜106を経て軌跡線Tを描画する場合も同様である。
【0054】
次に、図6のステップS4にて、入力点Pに対して2つ前の入力点PN−2が存在すると判定した場合(ステップS4:YES)について、図8も参照しつつ説明する。なお、2つ前の入力点PN−2が存在するということは、少なくとも3つの入力点Pが存在するということであり、ここでは最小限の3つの入力点PN−2,PN−1,Pが存在する場合について説明する。また、2つの入力点PN−2,PN−1に加えて新たな入力点Pを検出する直前は、これら2つの入力点PN−2,PN−1のみが存在する状態であり、これは、図7に示したように入力点PN−1,Pのみが存在する状態と同じである。従って、図7の工程102に示す状態から新たな入力点Pを検出した結果、図8では、この入力点Pを入力点P、その1つ前の入力点(図7の入力点P)を入力点PN−1、更に1つ前の入力点(図7の入力点PN−1)を入力点PN−2として示している。即ち、図8は、図7の工程102に示す状態から、新たな入力点Pが検出されたとき以降の工程を示している。
【0055】
図8の工程103に示すように、入力点PN−1の次に入力点Pを検出することで、該入力点Pに対して2つ前の入力点PN−2が存在すると判定すると(ステップS4:YES)、入力点PN−1の近傍に、入力点PN−2,PN−1間の移動速度に基づき、2つの頂点c,dのxyz座標を設定する(ステップS8)。この移動速度は、入力点PN−2から入力点PN−1までの距離を、入力点Pを検出する周期で除算することによって得られるが、周期が一定であれば、単に入力点PN−2から入力点PN−1までの距離(移動距離)に基づいて2つの頂点c,dのxyz座標を設定することもできる。
【0056】
頂点c,dの設定手順をより具体的に説明すると、図8の工程104に示すように、入力点PN−2及び入力点Pを結ぶ線分を想定し、該線分に直交すると共に入力点PN−1を中間点とする線分Lcdを想定する。また、この線分Lcdの長さは、図7の工程101にて説明した開始点に対応する頂点a,bを設定する際に用いた長さLに対し、入力点PN−2,PN−1間の移動速度に基づいて決定される係数kを乗じた長さkLに設定する。このようにして想定した線分Lcdの両端位置に、移動経路Rを挟むようにして頂点c,dを設定している(ステップS8)。ここで、上述した係数kは、例えば7ドット〜17ドットの範囲内で、入力点PN−2,PN−1間の移動速度に対して略反比例するように設定されており、移動速度が大きければ係数kは小さくなり、線分Lcdの長さkL(即ち、頂点c,d間の距離)は短くなる。また、移動速度が小さければ係数kは大きくなり、線分Lcdの長さkLは長くなる。なお、係数kと移動速度との関係は線型性を有している必要はなく、移動速度が大きくなるに従って係数kが小さくなるのであれば、非線型や離散的な関係であってもよい。
【0057】
次に、入力点PN−1と頂点a,bとによって画定された三角形状のポリゴン(入力点がPN−2,PN−1の2点のみのときに生成されたポリゴン)に換えて、入力点PN−2,PN−1間に新たな2つの三角形状のポリゴンを生成する(ステップS9)。即ち、図8の工程105に示すように、頂点a,b,cにより画定されるポリゴンAと、頂点b,c,dにより画定されるポリゴンAとを生成する。更に、ステップS5と同様にして、入力点Pを終端点とするポリゴンA、即ち、頂点c,d及び入力点Pにより画定される三角形状のポリゴンAを生成する(ステップS10)。
【0058】
続いて、入力点PN−2,PN−1間の移動速度に基づいて、図9(a)のイメージ画像から、ポリゴンA,A,Aに貼り付けるテクスチャを選択する(ステップS11)。具体的に説明すると、本実施の形態では、開始点及び終端点を除く移動経路R上の入力点P(例えば、図8の入力点PN−1)に対応して、移動経路Rを挟んで設定される一対の頂点(例えば、図8の頂点c,d)は、テクスチャを選択する際にイメージ画像に対応付けられる点(ピクセル)のt座標が固定されており、一方の頂点(例えば、頂点c)はt=63、他方の頂点(例えば、頂点d)はt=0とされている。
【0059】
また、イメージ画像において、この一対の頂点に対応付けられる点のs座標は、所定の範囲内で入力点PN−2,PN−1間の移動速度に基づいて決定される。図9(a)に示すように、イメージ画像には所定のs座標であるs=s,sが設定されている。そして、一対の頂点に対応する点のs座標は、s=s〜sの範囲内で、入力点PN−2,PN−1間の移動速度が大きくなる従ってsに近づき、移動速度が小さくなるに従ってsに近づくように、同一の値に設定される。より具体的には、入力点Pの移動速度について、予め上限値(最も速い速度)及び下限値(最も遅い速度)が設定されており、実際の入力点Pの移動速度がこの上限値以上の場合にはs=sとし、下限値以下の場合にはs=sとする。そして、移動速度が上限値と下限値との間の値の場合には、線形補間によりs〜s間のs座標を求めるようにしている。なお、本実施の形態では、sを中間領域62に含まれるs座標とし、sを高明度領域63に含まれるs座標としているが、これに限られず、s=s〜s間に中間領域62の少なくとも一部が含まれるように設定すればよい。
【0060】
これを図8の工程105の頂点c,dに当てはめて説明すると、頂点cには、イメージ画像における座標(s≦s≦s,t=63)の点60cが対応付けられ、頂点dには、座標(s≦s≦s,t=0)の点60dが対応付けられる。そして、点60c,60dのs座標は、入力点PN−2,PN−1間の移動速度に基づき、s≦s≦sの範囲内で同一の値に設定される。一方、入力点Pに対応するイメージ画像上の点60Pの座標は、図7の工程102に示す入力点Pに対応する点60P(図9(b)参照)の座標と同一である。
【0061】
このようにして、ポリゴンA,A,Aを画定する頂点a,b,c,d及び入力点Pに対応する、イメージ画像上の点60a,60b,60c,60d,60Pを決定する。そして、ポリゴンAに対しては、点60a,60b,60cを結んで形成される三角形状のテクスチャを選択し(ステップS11)、これを貼り付ける(ステップS12)。また、ポリゴンAに対しては、点60b,60c,60dを結んで形成される三角形状のテクスチャを選択し(ステップS11)、これを貼り付ける(ステップS12)。また、ポリゴンAに対しては、点60c,60d,60Pを結んで形成される三角形状のテクスチャを選択し(ステップS11)、これを貼り付ける(ステップS12)。なお、本実施の形態では、実際には、ポリゴンA,Aに対して点60a,60b,60d,60cを順に結んで形成される四角形状のテクスチャを貼り付けることとしているが、その結果は、上述したようにポリゴンA,Aに対して個別に対応する三角形状のテクスチャを貼り付ける場合と実質的に同じである。
【0062】
以上のように、各A,A,Aに対して夫々対応するテクスチャを貼り付けることにより、入力点Pの移動軌跡Rを表現する軌跡線Tが、三次元の仮想ゲーム空間51内に描画されることとなる(図8の工程106参照)。なお、ここでも、ポリゴンA,A,Aの表面形状とこれらに対応するテクスチャの形状とは必ずしも一致しないが、一致しない場合には公知の補間処理を適宜施せばよい。また、上述した説明では入力点Pが3つの場合を例にしたが、4つ以上の入力点Pを検出した場合も同様に、ステップS1(YES),ステップS2(YES),ステップS4(YES)の処理後、ステップS8〜S12の処理を行う。
【0063】
例えば、4つ目の入力点Pを検出した場合は、3つ目の入力点P(図8の入力点P)に対応する頂点e,fのxyz座標を、直前の入力点の移動速度(2つ目と3つ目の入力点間の移動速度)に基づいて設定する(ステップS8)。次に、頂点c,d及び3つ目の入力点P(図8の入力点P)で画定されるポリゴン(図8のポリゴンA)に換えて、頂点c,d,eで画定されるポリゴンと、頂点d,e,fで画定されるポリゴンとを生成し(ステップS9)、更に、頂点e,f及び4つ目の入力点Pで画定されるポリゴンを生成する(ステップS10)。また、イメージ画像において頂点e,fに対応付ける点60e,60fを、上記頂点c,dに対する点60c,60dの場合と同様にして決定し、これにより、各ポリゴンに対応させるテクスチャを選択する(ステップS11)。そして、選択した各テクスチャを、対応する各ポリゴンに貼り付けることで(ステップS12)、入力点Pが4つの場合の移動軌跡Rを表現する軌跡線Tを、三次元の仮想ゲーム空間51内に描画することができる。以上からも分かるように、5つ目以上の入力点Pを検出した場合も同様の手順により、軌跡線Tを描画することができる。
【0064】
ところで、上述した説明から分かるように、ポリゴンを画定する頂点の座標は入力点Pの移動速度に応じて設定され、移動軌跡Rを挟む一対の頂点間の距離は、入力点Pの移動速度が大きい(速い)ほど小さく(頂点間が狭く)なるようになっている。そのため、プレイヤが、タッチペン17のペン先をタッチパネル14に接触させた状態で速く移動させると、生成されるポリゴンの幅寸法(移動軌跡Rに直交する方向の寸法)は小さくなり、より細線の軌跡線Tを描画することができる。逆に、ペン先をゆっくり移動させると、生成されるポリゴンの幅寸法は大きくなって太線の軌跡線Tを描画することができる。また、このような軌跡線Tの幅寸法の広狭は、各入力点間の移動速度に応じて決定されるため、軌跡線Tは、ペン先の移動速度に応じて途中で太くなったり細くなったりする。従って、紙面に対して筆をゆっくりと移動させると、筆先が広がって太い線となり、筆を速く移動させると、筆先がまとまって細い線となるような、毛筆風の書体に類似する軌跡線Tを描画することができる。
【0065】
また、図9を用いて説明したように、入力点Pの移動速度が大きいほど、ポリゴンを画定する頂点に対応付けられる点は、そのs座標は小さくなり、黒色の斑点模様が少しだけしか存在しない低明度領域61に近い側の点となる。そして、このような点を用いて画定されるテクスチャは、黒色の模様が少なく、相対的に明度が低くなる。従って、このテクスチャを対応するポリゴンに貼り付けることにより、紙面に対して筆を速く移動させた場合の掠れた書体を表現することができる。また、ポリゴンを画定する頂点に対応付けられる点のs座標は、入力点Pの移動方向にかかわらず、その移動速度に基づいて決定される。そのため、タッチペン17のペン先を前後、左右、斜め方向の何れの方向に移動した場合であっても、また、移動方向を途中で変えていった場合であっても、同様の掠れた書体を表現する軌跡線Tを描画することができる。
【0066】
図10は、上述した軌跡線描画処理により、仮想ゲーム空間51に描画した曲線状の軌跡線Tの一例を示す模式図である。図10では、本実施の形態に係る軌跡線描画処理によって描画される軌跡線Tがより分かりやすくなるように、70個の入力点Pが存在する場合を例示している。即ち、タッチペン17を移動させた結果、移動経路Rに沿って70個の入力点P〜P70が検出され、最後の入力点P70が終端点となっている。なお、図10では一部の入力点Pのみを表示しており、また、視認性をよくするため、表示する各入力点Pは「点」で描画せず、各入力点Pを通り軌跡線Tに略直交する線分によって各入力点Pのおよその位置を示している。
【0067】
この軌跡線Tを描画する場合のペン先の移動態様を説明すると、およそ入力点P〜P10間では移動速度が比較的速い略一定速度であるが、その後に減速し、入力点P20〜P40間では比較的遅い略一定速度になっている。また、入力点P40を過ぎて一時的に速くなった後、入力点P50からは再び遅くなり、入力点P60以降は徐々に速度を上げて終端点の入力点P70に至っている。そして、この入力点P70においてペン先がタッチパネル14から離されている。
【0068】
この場合の軌跡線Tは、ペン先の移動速度が比較的速い入力点P〜P10間では掠れが比較的多い(低明度色のドットの占める割合が比較的大きい)細線となっている。ペン先の移動が遅くなる次の入力点P10〜P20間では、入力点P20に近づくに従って線幅が大きくなって太線になると共に、掠れが少なくなっていくように描画され、続く入力点P20〜P40間では、太線と掠れが少ない状態とが維持された線で描画される。更に、入力点P40〜P50間では、ペン先の移動が速くなるに従って細線になると共に掠れが多くなり、次の入力点P50〜P60間では逆に、ペン先の移動が遅くなるに従って太線になると共に掠れが減っていく。そして、入力点P60〜P70間では、徐々に細線になっていくと共に、掠れが多くなり、終端点の入力点P70では先細りするように描画されている。
【0069】
このように、図9に示すイメージ画像を用いて、図6のフローチャートに示す手順に従って軌跡線描画処理を実行することにより、入力点Pの移動速度に応じて線の太さや掠れ具合等の線種を逐次変化させることができ、毛筆風の書体に類似する軌跡線Tを、三次元の仮想ゲーム空間51内に描画することができる。
【0070】
なお、本実施の形態に係る軌跡線描画処理において使用できるイメージ画像は、図9に示すような、模様に変化を有する(即ち、模様の異なる部分を有する)イメージ画像に限られない。例えば、色彩に変化を有するイメージ画像でもよく、座標s=0から座標s=63へ向かうに従って赤色から青色へと色彩が変化するグラデーション画像を採用してもよい。この場合、タッチペン17のペン先の移動速度に応じて色彩が変化する軌跡線Tを描画することができる。更に、模様及び色彩の両方に変化を有するイメージ画像を採用してもよい。
【0071】
また、本実施の形態では、入力点Pの移動速度に応じて軌跡線Tの太さ及び掠れ具合を共に変化させるものを例示したが、線幅(線の太さ)及び掠れ具合のうち、何れか一方のみを変化させるようにしてもよい。また、線幅、模様(掠れ具合を含む)、及び色彩のうち、何れか一又は二つだけを変化させるようにしてもよいし、全てを変化させるようにしてもよい。また、図9に示すように、イメージ画像上の点のt座標を固定とし、s座標を入力点Pの移動速度に応じて変化させるのに換えて、s座標を固定とし、t座標を変化させるようにしてもよい。また、図9のイメージ画像は、低明度領域61,中間領域62,高明度領域63の3領域に区分けしたものを例示したが、これに限られず、例えば、低明度領域及び高明度領域の2領域に区分けしたものを用いてもよい。
【0072】
本実施の形態では、軌跡線Tを仮想ゲーム空間51内のスクリーン53上の位置に描画するものを例示したが、これに限られず、仮想ゲーム空間51内であれば他の位置であってもよい。例えば、仮想ゲーム空間51内における、スクリーン53とプレイヤキャラクタCとの中間位置に描画するようにしてもよい。更に、ポインティングデバイス20として、タッチパネル14及びタッチペン17を例示したが、これに限られない。例えば、画面に表示されたカーソルの動作を指示すべく、プレイヤに操作されるマウスなども、本発明に係るポインティングデバイスに含まれる。
【産業上の利用可能性】
【0073】
本発明は、ポインティングデバイスによる画面上の入力点の移動軌跡を、より高速に描画することができる画像処理プログラム、及び画像処理装置を提供することができる。
【符号の説明】
【0074】
1 ゲーム装置(画像処理装置)
6 第1ディスプレイ(表示部の画面)
14 タッチパネル
17 タッチペン
20 ポインティングデバイス
30 制御部
30a ゲーム進行制御手段
30b 仮想空間生成手段
30c 入力位置取得手段
30d 軌跡線描画手段
50a ゲームプログラム(画像処理プログラム)
51 仮想ゲーム空間
,A,A,A ポリゴン
P 入力点
R 移動経路
T 軌跡線

【特許請求の範囲】
【請求項1】
コンピュータを、
表示部の画面に表示される仮想の三次元空間を生成する仮想空間生成手段、
ポインティングデバイスによる前記画面上の入力点の位置情報を取得する入力位置取得手段、及び
前記入力点が画面上を移動した場合に、移動経路上の前記入力点の前記位置情報に基づき、前記三次元空間内に前記移動経路を示す軌跡線を描画する軌跡線描画手段、として機能させ、
該軌跡線描画手段は、前記入力点の移動速度に応じて前記軌跡線の線種を変化させることを特徴とする画像処理プログラム。
【請求項2】
前記軌跡線描画手段は、前記軌跡線の線種として、前記軌跡線の幅寸法、模様、及び色彩のうち少なくとも1つを、前記入力点の移動速度に応じて変化させるように構成されていることを特徴とする請求項1に記載の画像処理プログラム。
【請求項3】
前記軌跡線描画手段は、前記三次元空間内にて前記軌跡線をポリゴンで形成し、該ポリゴンを形成する頂点の位置を前記入力点の移動速度に応じて設定することにより、前記軌跡線の幅寸法を変化させるように構成されていることを特徴とする請求項2に記載の画像処理プログラム。
【請求項4】
前記軌跡線描画手段は、前記入力点の移動速度が相対的に大きい場合は、前記軌跡線の幅寸法を相対的に小さくするように構成されていることを特徴とする請求項3に記載の画像処理プログラム。
【請求項5】
前記軌跡線描画手段は、前記三次元空間内にて前記軌跡線をポリゴンで形成し、模様及び色彩のうち少なくとも1つに変化を有するイメージ画像から、前記入力点の移動速度に応じて選択した部分画像であるテクスチャを前記ポリゴンに貼り付けることにより、前記軌跡線の模様及び色彩のうち少なくとも1つを変化させるように構成されていることを特徴とする請求項2〜4に記載の画像処理プログラム。
【請求項6】
前記イメージ画像は、高明度色の部分及び低明度色の部分がまだら状に混在する中間領域と、前記高明度色の部分の密度が相対的に大きい高明度領域と、前記低明度色の部分の密度が相対的に大きい低明度領域とを含む、模様に変化を有する画像であり、
前記軌跡線描画手段は、前記入力点の移動速度が相対的に大きい場合は、前記低明度領域をより広く含むように前記テクスチャを選択し、前記入力点の移動速度が相対的に小さい場合は、前記高明度領域をより広く含むように前記テクスチャを選択するように構成されていることを特徴とする請求項5に記載の画像処理プログラム。
【請求項7】
請求項1乃至6の何れかに記載の画像処理プログラムを記録したプログラム記憶部、及び、該プログラム記憶部に記憶された画像処理プログラムを実行するコンピュータ、を備えることを特徴とする画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−73857(P2012−73857A)
【公開日】平成24年4月12日(2012.4.12)
【国際特許分類】
【出願番号】特願2010−218666(P2010−218666)
【出願日】平成22年9月29日(2010.9.29)
【出願人】(000129149)株式会社カプコン (192)
【Fターム(参考)】