JP5030651B2 - Drawing processing program and drawing processing apparatus - Google Patents
Drawing processing program and drawing processing apparatus Download PDFInfo
- Publication number
- JP5030651B2 JP5030651B2 JP2007108195A JP2007108195A JP5030651B2 JP 5030651 B2 JP5030651 B2 JP 5030651B2 JP 2007108195 A JP2007108195 A JP 2007108195A JP 2007108195 A JP2007108195 A JP 2007108195A JP 5030651 B2 JP5030651 B2 JP 5030651B2
- Authority
- JP
- Japan
- Prior art keywords
- input position
- input
- element image
- operation type
- drawing processing
- 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
Links
- 238000012545 processing Methods 0.000 title claims description 46
- 230000006870 function Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 10
- 230000007423 decrease Effects 0.000 claims description 8
- 238000003672 processing method Methods 0.000 claims 2
- 238000009877 rendering Methods 0.000 claims 1
- 238000000034 method Methods 0.000 description 55
- 230000008569 process Effects 0.000 description 55
- 238000010586 diagram Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000740 bleeding effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、描画処理プログラムおよび描画処理装置に関し、より特定的には、ポインティングデバイスを用いたユーザ入力に応じて文字や図形を表示画面に表示する描画処理プログラムおよび描画処理装置に関する。 The present invention relates to a drawing processing program and a drawing processing device, and more particularly to a drawing processing program and a drawing processing device for displaying characters and graphics on a display screen in response to a user input using a pointing device.
従来、表示画面に対する座標入力を行うポインティングデバイスで操作されるパーソナルコンピュータやゲーム装置等を利用して、表示画面に文字や図形等を描画する装置がある。例えば、ポインティングデバイスの1つであるタッチパネルへの手書き入力に応じて、文字や図形を描画する装置が開示されている(例えば、特許文献1参照)。上記特許文献1で開示された装置では、タッチパネルから出力される座標データに基づいて、押圧位置が移動した移動速度を算出し、当該移動速度に応じて描画パターンの大きさを変更している。
しかしながら、上記特許文献1で開示された装置は、タッチパネルに手書き入力する入力速度に応じて、単に描画パターンの大きさを変更しているだけである。つまり、表示画面に描画された軌跡は、その後変化するようなこともなく、毛筆やペン等で描いた後に墨やインクが時間経過に応じて滲んでいくようなリアルな表現をするものではない。
However, the apparatus disclosed in
それ故に、本発明の目的は、ポインティングデバイスによる座標入力を用いた描画処理において、よりリアルな描画を可能とする描画処理プログラムおよび描画処理装置を提供することである。 SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a drawing processing program and a drawing processing apparatus that enable more realistic drawing in drawing processing using coordinate input by a pointing device.
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。 In order to achieve the above object, the present invention employs the following configuration. Note that the reference numerals in parentheses, step numbers, and the like indicate correspondence with the embodiments described later in order to help understanding of the present invention, and do not limit the scope of the present invention.
第1の局面は、入力位置(TP)を出力するポインティングデバイス(15)からの出力に応じた描画を表示装置(12)に表示させるコンピュータ(21)で実行される描画処理プログラムである。描画処理プログラムは、入力位置取得手段(ステップ52およびステップ59を実行するCPUコア21、以下、単にステップ番号のみ記載する)、描画手段(S56、S92)、および再描画手段(S95)として、コンピュータを機能させる。入力位置取得手段は、ポインティングデバイスから入力位置を繰り返して取得する。描画手段は、所定の要素画像を、入力位置取得手段が取得した最新の入力位置(最新の指示位置P)に描画して表示装置に表示する。再描画手段は、所定の要素画像より大きな表示サイズの要素画像を、入力位置取得手段が取得した過去の入力位置に描画して表示装置に表示する。なお、再描画手段が描画対象とする過去の入力位置は、過去に取得した全ての入力位置、最新の入力位置から一定時間内に入力された過去の入力位置、最新の入力位置から一定領域内に入力された過去の入力位置、または過去の一定数の入力位置等を含む。また、再描画手段は、前に描画した要素画像を消去して再描画してもよいし、前に描画した要素画像に新たな要素画像を重ねて再描画してもよい。また、ポインティングデバイスは、画面上での入力位置や座標を指定する入力装置であり、例えば、タッチパネル、マウス、トラックパッド、トラックボール、タッチスクリーン、ゲームコントローラのハウジングで指し示された画面位置を検出するシステム等で実現される。
The first aspect is a drawing processing program executed by a computer (21) that causes a display device (12) to display a drawing corresponding to an output from a pointing device (15) that outputs an input position (TP). The drawing processing program includes a computer as an input position acquisition means (
第2の局面は、上記第1の局面において、サイズ選択手段として、さらにコンピュータを機能させる。サイズ選択手段は、最新の入力位置から時系列的に遡った過去の複数の入力位置それぞれに対して、入力位置取得手段が取得した順に応じて遡って漸増的に大きな表示サイズ(Wi)の要素画像を選択する(S94、図4A〜図4C)。再描画手段は、複数の入力位置のそれぞれについて、サイズ選択手段により選択された要素画像を描画して表示装置に表示する。 The second aspect further causes the computer to function as size selection means in the first aspect . The size selection means is an element of a display size (Wi) that increases gradually according to the order acquired by the input position acquisition means for each of a plurality of past input positions that are traced back in time series from the latest input position. An image is selected (S94, FIGS. 4A to 4C). The redrawing means draws the element image selected by the size selecting means for each of the plurality of input positions and displays it on the display device.
第3の局面は、上記第2の局面において、再描画手段は、過去の入力位置における入力の移動速度(バッファ距離)に応じて、当該入力位置における要素画像の表示サイズの最大値(Wt)を決定し、当該入力位置について描画する要素画像の表示サイズを当該最大値に制限する(S72、S76)。なお、表示サイズが最大値に到達した後に再描画手段が行う描画は、最大値の表示サイズの要素画像を再描画(つまり、最大値の表示サイズの要素画像が同じ入力位置に何度も描画される)してもよいし、最大値以下の表示サイズの要素画像を再描画(つまり、最大値以下の表示サイズの要素画像が同じ入力位置に何度も描画される)してもよいし、再描画自体を停止してもよい。 According to a third aspect , in the second aspect , the redrawing unit is configured such that the redrawing unit has a maximum value (Wt) of the display size of the element image at the input position according to the movement speed (buffer distance) of the input at the past input position. And the display size of the element image drawn for the input position is limited to the maximum value (S72, S76). Note that the drawing performed by the redrawing means after the display size reaches the maximum value is to redraw the element image with the maximum display size (that is, the element image with the maximum display size is drawn many times at the same input position) Or an element image with a display size less than the maximum value may be redrawn (that is, an element image with a display size less than the maximum value is drawn many times at the same input position). The redrawing itself may be stopped.
第4の局面は、上記第3の局面において、入力速度算出手段(S71)として、さらにコンピュータを機能させる。入力速度算出手段は、再描画手段によって過去の入力位置(Dc)について要素画像を描画するにあたり、入力位置取得手段が取得した入力位置を用いて、過去の各入力位置に対して、当該入力位置における入力の移動速度を算出する。再描画手段は、過去の入力位置のそれぞれについて、入力速度算出手段によって算出された過去の各入力位置における入力の移動速度に応じて、当該移動速度が大きいほど最大値が小さくなるように、各入力位置の最大値を決定する。 The fourth aspect is, in the third aspect, as the input speed calculating means (S71), causes the computer to further function. The input speed calculation unit uses the input position acquired by the input position acquisition unit to draw the element image for the past input position (Dc) by the redrawing unit. The moving speed of the input at is calculated. For each past input position, the redrawing means is configured so that the maximum value decreases as the moving speed increases according to the moving speed of the input at each past input position calculated by the input speed calculating means. Determine the maximum value of the input position.
第5の局面は、上記第3の局面において、入力速度算出手段および保存手段(S76、Dc)として、さらにコンピュータを機能させる。入力速度算出手段は、入力位置取得手段が取得した入力位置を用いて、最新の入力位置における入力の移動速度を算出する。保存手段は、入力速度算出手段によって算出された移動速度に基づいて、当該移動速度に関する情報を各入力位置について保存する。再描画手段は、過去の入力位置のそれぞれについて、保存手段によって保存された各入力位置についての移動速度に関する情報を参照して、各入力位置における移動速度が大きいほど最大値が小さくなるように、各入力位置の最大値を決定する。ここで、移動速度に関する情報は、算出された移動速度自体を示すデータや当該移動速度を加工したデータ(具体的には表示サイズの最大値を示すデータ、実施例では目標太さWtを示すデータ)等が含まれる。 The fifth aspect further causes the computer to function as the input speed calculation means and the storage means (S76, Dc) in the third aspect . The input speed calculation means calculates the input moving speed at the latest input position using the input position acquired by the input position acquisition means. The storage unit stores information on the moving speed for each input position based on the moving speed calculated by the input speed calculating unit. For each past input position, the redrawing unit refers to the information regarding the moving speed for each input position stored by the storing unit, and the maximum value decreases as the moving speed at each input position increases. Determine the maximum value for each input position. Here, the information related to the moving speed includes data indicating the calculated moving speed itself, data obtained by processing the moving speed (specifically, data indicating the maximum value of the display size, and data indicating the target thickness Wt in the embodiment). ) Etc. are included.
第6の局面は、上記第1の局面において、描画手段は、予め設定された最小の表示サイズの要素画像を、最新の入力位置に描画する(S92)。再描画手段は、最小の表示サイズより大きな表示サイズの要素画像を、最新の入力位置から時系列的に遡った過去の入力位置に描画し、さらに大きな表示サイズの要素画像を、当該過去の入力位置から時系列的にさらに遡った過去の入力位置に描画する。 In a sixth aspect based on the first aspect , the drawing means draws an element image having a preset minimum display size at the latest input position (S92). The redrawing means draws an element image having a display size larger than the minimum display size at a past input position that is traced back in time series from the latest input position, and further displays an element image having a larger display size in the past input Draw at the past input position that is further back in time series from the position.
第7の局面は、上記第2の局面において、サイズ選択手段は、メモリに記憶された複数の表示サイズの描画パターン(Df1)から、入力位置取得手段が取得した入力位置にそれぞれ対応する描画パターンを要素画像として選択する。 According to a seventh aspect , in the second aspect , the size selection unit is configured to each of the drawing patterns corresponding to the input positions acquired by the input position acquisition unit from the drawing patterns (Df1) having a plurality of display sizes stored in the memory. Is selected as the element image.
第8の局面は、上記第1の局面において、再描画手段は、その中心の色濃度が相対的に濃い画素で構成され、その周囲の色濃度が相対的に薄い画素で構成される要素画像(図7〜図9)を、過去の入力位置に対して既に描画された要素画像に重ねて描画する(ビットマップ情報の加算、図15)。 According to an eighth aspect , in the first aspect , the redrawing unit is configured by a pixel having a relatively dark color density at the center and an element image having a relatively light color density around the redrawing unit. (FIGS. 7 to 9) are overlaid on the element images already drawn for the past input positions (addition of bitmap information, FIG. 15).
第9の局面は、上記第1の局面において、操作類型判定手段(S55、S81〜S84)および種類選択手段(S55、S85〜S89)として、さらにコンピュータを機能させる。操作類型判定手段は、入力位置取得手段の取得履歴に応じて、最新の入力位置においてユーザがポインティングデバイスを操作している操作類型(入り、スライド、つなぎ、横止め、縦止め)を判定する。種類選択手段は、操作類型判定手段により最新の入力位置に対して判定された操作類型に応じて、複数種類の要素画像の中から使用する要素画像の種類を選択する。描画手段および再描画手段は、それぞれ最新の入力位置における操作類型に応じて選択された種類の要素画像を、最新の入力位置および過去の入力位置に描画する。 Ninth aspect, in the first aspect, the operation type determining means (S55, S81~S84) and type selection means (S55, S85~S89) as the computer is further caused to function. The operation type determination unit determines an operation type (on, slide, connection, side stop, vertical stop) in which the user operates the pointing device at the latest input position according to the acquisition history of the input position acquisition unit. The type selection unit selects the type of element image to be used from among a plurality of types of element images according to the operation type determined for the latest input position by the operation type determination unit. The drawing means and the redrawing means draw the element images of the type selected according to the operation type at the latest input position, respectively, at the latest input position and the past input position.
第10の局面は、上記第1の局面において、操作類型判定手段および種類選択手段として、さらにコンピュータを機能させる。操作類型判定手段は、入力位置取得手段の取得履歴に応じて、各入力位置においてユーザがポインティングデバイスを操作している操作類型を判定する。種類選択手段は、操作類型判定手段により各入力位置に対して判定された操作類型に応じて、複数種類の要素画像の中から使用する要素画像の種類をそれぞれ選択する。描画手段および再描画手段は、それぞれ各入力位置における操作類型に応じて選択された種類の要素画像を、各入力位置にそれぞれ描画する。 In a tenth aspect , in the first aspect , the computer is further caused to function as an operation type determination unit and a type selection unit. The operation type determination unit determines an operation type in which the user operates the pointing device at each input position according to the acquisition history of the input position acquisition unit. The type selection unit selects the type of element image to be used from among a plurality of types of element images according to the operation type determined for each input position by the operation type determination unit. The drawing unit and the redrawing unit respectively draw element images of a type selected according to the operation type at each input position at each input position.
第11の局面は、上記第9または第10の局面において、操作類型判定手段は、入力位置取得手段が最初に入力位置(タッチオン指示位置)を取得したときに、当該入力位置に対して、ユーザが入力開始状態(入り)の操作類型でポインティングデバイスを操作していると判定し、かつ、入力位置取得手段が継続して入力位置を取得したときに、当該入力位置に対して、ユーザが入力継続状態(スライド)の操作類型でポインティングデバイスを操作していると判定する。種類選択手段は、操作類型判定手段が入力開始状態の操作類型と判定したことに応じて、当該操作類型に分類された第1の形状の要素画像(図8)を、当該入力開始状態と判定された入力位置に対応して選択し、かつ、操作類型判定手段が入力継続状態の操作類型と判定したことに応じて、当該操作類型に分類された当該第1の形状とは異なる第2の形状の要素画像(図7)を、当該入力継続状態と判定された入力位置に対応して選択する。 In an eleventh aspect according to the ninth or tenth aspect , when the input position acquisition unit first acquires an input position (touch-on instruction position), the operation type determination unit performs Determines that the pointing device is operated in the input start state (entered) and the input position acquisition means continuously acquires the input position, the user inputs to the input position. It is determined that the pointing device is operated in the operation type of the continuous state (slide). The type selection unit determines that the element image (FIG. 8) having the first shape classified into the operation type is the input start state in response to the operation type determination unit determining that the operation type is the input start state. The second shape different from the first shape classified into the operation type is selected according to the selected input position and the operation type determination means determines that the operation type is in the input continuation state. A shape element image (FIG. 7) is selected corresponding to the input position determined to be the input continuation state.
第12の局面は、上記第11の局面において、操作類型判定手段は、入力位置取得手段が取得した入力位置が、最初の入力位置を中心とした所定範囲内であるとき、当該取得した入力位置に対して、入力開始状態の操作類型でポインティングデバイスを操作していると判定する。 In a twelfth aspect based on the eleventh aspect , the operation type determination unit is configured such that the input position acquired by the input position acquisition unit is within a predetermined range centered on the first input position. On the other hand, it is determined that the pointing device is operated with the operation type in the input start state.
第13の局面は、上記第11の局面において、種類選択手段は、操作類型判定手段が入力開始状態の操作類型が終了したと判定された後から所定条件を満たす(つなぎ)まで、第1の形状と第2の形状との中間形状の要素画像(図9)を、入力位置に対応して選択する。例えば、上記所定条件は、入力開始状態の操作類型が終了したと判定された後から一定時間経過したとき、または入力開始状態の操作類型が終了したと判定された後から一定距離離れたとき等に相当する。 According to a thirteenth aspect , in the eleventh aspect , the type selection unit is configured such that the operation type determination unit first determines that the operation type in the input start state has been completed until a predetermined condition is satisfied (connection). An element image (FIG. 9) having an intermediate shape between the shape and the second shape is selected corresponding to the input position. For example, the predetermined condition is when a certain time has elapsed after it is determined that the operation type in the input start state has ended, or when a certain distance has elapsed after it has been determined that the operation type in the input start state has ended, etc. It corresponds to.
第14の局面は、上記第11の局面において、操作類型判定手段は、入力位置取得手段が繰り返し取得した入力位置が、所定時間以上所定範囲内に位置するとき、ユーザが入力終了状態(横止め、縦止め)の操作類型でポインティングデバイスを操作していると判定する。種類選択手段は、操作類型判定手段が入力終了状態の操作類型と判定したことに応じて、当該操作類型に分類された第1の形状および第2の形状とは異なる第3の形状の描画パターンを、入力位置に対応して選択する。 In a fourteenth aspect based on the eleventh aspect , the operation type determining means determines that the input state acquired repeatedly by the input position acquiring means is within the predetermined range for a predetermined time or more, and the user is in an input end state (side stop) ), It is determined that the pointing device is being operated. The type selection means is a drawing pattern having a third shape different from the first shape and the second shape classified into the operation type according to the determination that the operation type determination means is the operation type in the input end state. Is selected corresponding to the input position.
第15の局面は、上記第2の局面において、サイズ選択手段は、入力位置取得手段が取得した入力位置間を補間する位置に対して、当該補間前後の入力位置に選択されている要素画像のサイズを線形補間する表示サイズの要素画像を、さらに選択する(S96)。再描画手段は、要素画像設定手段が入力位置および入力位置間を補間する位置にそれぞれについて、サイズ選択手段により選択された要素画像を描画して表示装置に表示する(S97)。 According to a fifteenth aspect , in the second aspect , the size selection unit is configured to select the element image selected at the input position before and after the interpolation with respect to the position interpolated between the input positions acquired by the input position acquisition unit. An element image having a display size for linear interpolation of the size is further selected (S96). The redrawing means draws the element image selected by the size selecting means at each position where the element image setting means interpolates between the input position and the input position, and displays it on the display device (S97).
第16の局面は、上記第1の局面において、ポインティングデバイスは、表示装置の表示画面を覆うタッチパネルである。入力位置取得手段は、タッチパネルから出力されるタッチ座標データを入力位置として取得する。 In a sixteenth aspect based on the first aspect , the pointing device is a touch panel that covers a display screen of the display device. The input position acquisition unit acquires touch coordinate data output from the touch panel as an input position.
第17の局面は、入力位置を出力するポインティングデバイスからの出力に応じた描画を表示装置に表示させる描画処理装置である。描画処理装置は、入力位置取得手段、描画手段、および再描画手段を備える。入力位置取得手段は、ポインティングデバイスから入力位置を繰り返して取得する。描画手段は、所定の要素画像を、入力位置取得手段が取得した最新の入力位置に描画して表示装置に表示する。再描画手段は、所定の要素画像より大きな表示サイズの要素画像を、入力位置取得手段が取得した過去の入力位置に描画して表示装置に表示する。 A seventeenth aspect is a drawing processing device that causes a display device to display a drawing corresponding to an output from a pointing device that outputs an input position. The drawing processing apparatus includes an input position acquisition unit, a drawing unit, and a redrawing unit. The input position acquisition means repeatedly acquires the input position from the pointing device. The drawing means draws a predetermined element image at the latest input position acquired by the input position acquisition means and displays it on the display device. The redrawing means draws an element image having a display size larger than the predetermined element image at the past input position acquired by the input position acquisition means and displays it on the display device.
上記第1の局面によれば、最新の入力位置に対して過去の入力位置では相対的に大きな表示サイズの要素画像で描画される。例えば、これらの要素画像を並べて接続することによって線を描くことが可能であり、当該線を描いてから時間が経過した入力位置には線の太さが太く描画されるため、毛筆描画で表現される線のようにリアルな描画が可能となる。 According to the first aspect , the element image having a relatively large display size is rendered at the past input position with respect to the latest input position. For example, it is possible to draw a line by connecting these element images side by side, and because the line thickness is drawn thick at the input position after the line has been drawn, it is expressed by brush drawing. Realistic drawing like a drawn line becomes possible.
上記第2の局面によれば、最新の入力位置では小さい要素画像で描画され、当該入力位置から過去の入力位置側へ遡った位置では漸増的に大きな要素画像で描画される。例えば、これらの要素画像を並べて接続することによって線を描く場合、当該線を描いた直後から時間が経過することによって徐々に線の太さが拡大するように描画されるため、毛筆描画で表現される線のようにリアルな描画が可能となる。 According to the second aspect , a small element image is drawn at the latest input position, and an incrementally larger element image is drawn at a position going back from the input position to the past input position side. For example, when drawing a line by connecting these element images side by side, it is drawn so that the thickness of the line gradually increases as time passes immediately after drawing the line. Realistic drawing like a drawn line becomes possible.
上記第3〜第5の局面によれば、ユーザの入力の移動速度に応じて、描かれる要素画像の表示サイズの最大値が変化する。したがって、入力の移動速度が高速の場合に描かれる線太さを細くし、入力の移動速度が低速の場合に描かれる線を太くすることも可能であり、よりリアルな描画が可能となる。 According to the third to fifth aspects , the maximum value of the display size of the drawn element image changes according to the movement speed of the user input. Therefore, it is possible to reduce the line thickness drawn when the input moving speed is high, and to thicken the line drawn when the input moving speed is low, which enables more realistic drawing.
上記第6の局面によれば、最新の入力位置では最も表示サイズが小さい要素画像で描画され、当該入力位置から過去の入力位置側へ遡った位置では徐々に表示サイズが大きくなった要素画像が描画されるため、時間経過と共ににじみが進行するような表現が可能となる。 According to the sixth aspect , an element image having the smallest display size is drawn at the latest input position and the display image gradually increases in size at a position retroactive from the input position to the past input position side. Since the drawing is performed, it is possible to perform an expression such that the bleeding progresses with time.
上記第7の局面によれば、描画および再描画される要素画像は、予め記憶された複数の描画パターンから選択されるため、バリエーションに富んだ形状の描画が可能となる。 According to the seventh aspect , since the element image to be drawn and redrawn is selected from a plurality of drawing patterns stored in advance, it is possible to draw a variety of shapes.
上記第8の局面によれば、既に描かれた画像にさらに描画パターンを書き重ねるように再描画されるため、現実の濃度バラツキを表現することができる。また、その中心へ向かうほど濃くなる描画パターンが用いられるため、これらの描画パターンを複数接続して配置した線を表現するときも、その線中心へ向かうほど濃くなるような線を描画することができる。 According to the eighth aspect , since the image is redrawn so as to further draw the drawing pattern on the already drawn image, the actual density variation can be expressed. Also, since a drawing pattern that becomes darker toward the center is used, even when expressing a line in which a plurality of these drawing patterns are connected, a line that becomes darker toward the line center can be drawn. it can.
上記第9および第10の局面によれば、ユーザの操作類型に応じて、それぞれ異なった形状を表現した描画が可能となる。 According to the ninth and tenth aspects , it is possible to perform drawing that expresses different shapes according to the user's operation type.
上記第11および第12の局面によれば、ユーザが入力開始時点(例えば、タッチパネルに対するタッチオン)では第1の形状の画像を描画することができ、ユーザが入力開始時点から基本操作に移ると第2の形状の画像を描画することができる。例えば、第1の形状を、筆を紙に最初に接した際に現れる涙滴形状とすることによって、毛筆書きにおける「入り」を模した形状の手書き線を描画することができる。 According to the eleventh and twelfth aspects , the user can draw an image of the first shape at the input start time (for example, touch-on to the touch panel), and when the user moves to the basic operation from the input start time, An image having a shape of 2 can be drawn. For example, by setting the first shape as a teardrop shape that appears when a brush first comes into contact with paper, a handwritten line having a shape imitating “entering” in writing with a brush can be drawn.
上記第13の局面によれば、ユーザが入力開始時点から基本操作に移る際、入力開始時点で用いられる第1の形状の描画パターンから、基本操作で用いられる第2の形状の描画パターンまで変化する中間的な形状の要素画像が描画されるため、描画処理で表現される形状変化がスムーズとなる。 According to the thirteenth aspect , when the user moves from the input start time to the basic operation, the first shape drawing pattern used at the input start time changes to the second shape drawing pattern used in the basic operation. Since the element image having an intermediate shape is drawn, the shape change expressed by the drawing process becomes smooth.
上記第14の局面によれば、ユーザが入力位置の移動を停止したとき(例えば、タッチパネルをタッチオフする前の停止)では、第3の形状の要素画像が用いられる。例えば、第3の形状を、紙上で筆を止めた際に現れる横または縦方向につぶれた形状とすることによって、毛筆書きにおける「横止め」や「縦止め」を模した形状の手書き線を描画することができる。 According to the fourteenth aspect , when the user stops moving the input position (for example, before the touch panel is touched off), the element image having the third shape is used. For example, by setting the third shape to a shape that collapses in the horizontal or vertical direction that appears when the brush is stopped on paper, a handwriting line having a shape simulating “horizontal stop” or “vertical stop” in brush writing is used. Can be drawn.
上記第15の局面によれば、入力位置の間が適切な要素画像で補間されるため、入力位置を接続する線を描画するとき、スムーズな線を描画することができる。 According to the fifteenth aspect , since the gap between the input positions is interpolated with an appropriate element image, when a line connecting the input positions is drawn, a smooth line can be drawn.
上記第16の局面によれば、タッチパネルに対するスライド操作の軌跡に沿って線を描くような描画処理が可能となり、タッチ操作に応じた手書き文字や図形等をリアルに表示することができる。 According to the sixteenth aspect , it is possible to perform a drawing process such as drawing a line along the locus of a slide operation on the touch panel, and to display handwritten characters, figures, and the like corresponding to the touch operation in a realistic manner.
また、本局面の描画処理装置によれば、上述した描画処理プログラムと同様の効果を得ることができる。 Moreover, according to the drawing processing apparatus of this aspect , the same effect as the drawing processing program mentioned above can be acquired.
図面を参照して、本発明の一実施形態に係る描画処理プログラムを実行する描画処理装置について説明する。本発明の描画処理プログラムは、表示装置に表示可能な任意のコンピュータシステムで実行されることによって適用することができるが、描画処理装置の一例としてゲーム装置1で実行されるゲームプログラムに含まれる描画処理プログラムを用いて説明する。なお、図1は、本発明のゲームプログラムを実行するゲーム装置1の外観図である。ここでは、ゲーム装置1の一例として、携帯ゲーム装置を示す。
A drawing processing apparatus that executes a drawing processing program according to an embodiment of the present invention will be described with reference to the drawings. The drawing processing program of the present invention can be applied by being executed by an arbitrary computer system that can be displayed on the display device, but the drawing included in the game program executed by the
図1において、ゲーム装置1は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は、上側ハウジング13aと下側ハウジング13bとによって構成されている。第1のLCD11は、上側ハウジング13aに収納され、第2のLCD12は、下側ハウジング13bに収納される。例えば、第1のLCD11および第2のLCD12の解像度は、いずれも256dot×192dotである。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を利用することができる。また、第1のLCD11および第2のLCD12は、任意の解像度のものを利用することができる。
In FIG. 1, the
上側ハウジング13aには、後述する1対のスピーカ(図2の右スピーカ30aおよび左スピーカ30b)からの音を、外部に放出するための音抜き孔18aおよび18bが形成されている。
The
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、Yボタン14g、電源スイッチ14h、Lボタン14L、およびRボタン14Rが設けられている。なお、Lボタン14LおよびRボタン14Rは、下側ハウジング13bの上部側面に設けられており、図1に示す上側ハウジング13aの背後に配置されているため、図示されていない。また、さらなる入力装置として、第2のLCD12の画面上を覆うようにタッチパネル15が装着されている。また、下側ハウジング13bには、メモリカード17やスティック16を収納するための挿入口(図1では、一点鎖線で示している)も設けられている。
The
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式等、任意の方式のものを利用することができる。タッチパネル15は、その表面をスティック16で触れると、その接触位置に対応する座標データを出力する機能を有するポインティングデバイスの一例である。なお、以下ではプレイヤがタッチパネル15をスティック16でタッチ操作するものとして説明を行うが、スティック16の代わりにペン(スタイラスペン)や指でタッチパネル15をタッチ操作することももちろん可能である。本実施形態では、タッチパネル15として、一例として第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度とが一致している必要はない。
As the
メモリカード17は、ゲームプログラム等を記録した記録媒体であり、下側ハウジング13bに設けられた挿入口に着脱自在に装着される。
The
次に、図2を参照して、ゲーム装置1の内部構成を説明する。なお、図2は、ゲーム装置1の内部構成を示すブロック図である。
Next, the internal configuration of the
図2において、ハウジング13に収納される電子回路基板20には、CPUコア21が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24、LCDコントローラ31、およびワイヤレス通信部33が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。メモリカード17は、ゲームプログラムを記憶するROM17aと、バックアップデータを書き換え可能に記憶するRAM17bを搭載する。メモリカード17のROM17aに記憶されたゲームプログラムは、RAM24にロードされ、RAM24にロードされたゲームプログラムがCPUコア21によって実行される。RAM24には、ゲームプログラムの他にも、適宜、CPUコア21がプログラムを実行して得られる一時的なデータを生成するためのデータ等が記憶される。I/F回路25には、タッチパネル15、右スピーカ30a、左スピーカ30b、および図1の十字スイッチ14aやAボタン14d等から成る操作スイッチ部14が接続される。右スピーカ30aおよび左スピーカ30bは、音抜き孔18aおよび18bの内側にそれぞれ配置され、CPUコア21が生成したサウンド出力情報に応じたサウンドを再生する。
In FIG. 2, a
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて、RAM24に記憶されている表示画像を生成するためのデータに基づいて第1の表示画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2の表示画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29は、LCDコントローラ31に接続されている。
A first VRAM (Video RAM) 28 is connected to the
LCDコントローラ31は、レジスタ32を含む。レジスタ32は、CPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1のゲーム画像を第1のLCD11に出力し、第2VRAM29に描画された第2のゲーム画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1のゲーム画像を第2のLCD12に出力し、第2VRAM29に描画された第2のゲーム画像を第1のLCD11に出力する。
The
ワイヤレス通信部33は、他のゲーム装置のワイヤレス通信部33との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有しており、一例としてIEEE802.11の無線LAN規格に則った無線通信機能を提供する。そして、ワイヤレス通信部33は、受信したデータをCPUコア21に出力する。また、ワイヤレス通信部33は、CPUコア21から指示されたデータを他のゲーム装置へ送信する。
The
なお、本発明のゲームプログラム(描画処理プログラム)は、メモリカード17等の外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよい。また、ゲームプログラムは、コンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、上記不揮発性半導体メモリに限らず、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
Note that the game program (drawing processing program) of the present invention may be supplied not only to the computer system through an external storage medium such as the
次に、図3および図4を参照して、ゲーム装置1で実行されるゲームプログラムによる具体的な処理動作を説明する前に、当該処理動作によって第1のLCD11および第2のLCD12に表示される表示形態例等について説明する。なお、図3は、第1のLCD11および第2のLCD12に表示される画面表示例を示す図である。図4A〜図4Cは、第2のLCD12に表示されるゲーム画像とタッチ操作される位置との関係を説明するための図である。
Next, with reference to FIG. 3 and FIG. 4, before a specific processing operation by the game program executed by the
図3において、ゲーム装置1の第1のLCD11および第2のLCD12には、それぞれゲーム画像が表示される。例えば、第1のLCD11には、プレイヤがスティック16を用いてタッチパネル15をタッチして手書きする手本となる文字や図形を示すゲーム画像が表示される。図3においては、漢字「一」が手本文字Mとして表示されている。一方、第2のLCD12には、プレイヤがスティック16を用いてタッチパネル15をタッチ操作した軌跡に沿って描かれる手書き文字Cが表示される。図3においては、プレイヤが手本文字Mに合うようタッチパネル15のタッチ位置TPをタッチ操作して手書き入力している一例を示しており、タッチ位置TPの位置まで描かれた手書き文字Cが表示されている。
In FIG. 3, game images are displayed on the
ここで、手本文字Mは、楷書等の毛筆系書体で描かれた文字が示される。そして、手書き文字Cも、タッチ位置TPの軌跡に沿って、あたかもプレイヤが毛筆で描いたような線で表現される。例えば、現実世界で毛筆を用いて線を描く場合、その描く速度、描く筆圧等に応じて線の太さが変化する。また、毛筆で描いた直後から時間が経過することによって、徐々に線の太さが拡大する(にじみ)ような変化も生じる。さらに、毛筆では、筆の入り、止め、はね、はらい等に応じて、特殊な形状の線が描かれる。本実施形態における手書き文字Cは、上述した現実世界における毛筆描画による特徴を、タッチ位置TPに応じてリアルに第2のLCD12に表現する。
Here, the model character M is a character drawn in a brush type font such as a calligraphy. The handwritten character C is also represented by a line as if the player had drawn with a brush along the trajectory of the touch position TP. For example, when a line is drawn using a brush in the real world, the thickness of the line changes according to the drawing speed, the writing pressure, and the like. Further, as time elapses immediately after drawing with a brush, there is also a change in which the thickness of the line gradually increases (smudges). Furthermore, with a brush, a specially shaped line is drawn according to the insertion, stopping, splashing, and peeling of the brush. The handwritten character C in the present embodiment realistically expresses the above-described characteristics of the real world drawn by the brushstroke on the
図4A〜図4Cを参照して、時間経過に応じて徐々に線の太さを拡大させる処理の一例を説明する。例えば、プレイヤがタッチパネル15上をスライドさせるようなタッチ操作(以下、スライド操作と記載する)をする際、タッチ操作されている最新のタッチ位置TPでは最も細い線が描画され、当該タッチ位置TPから時系列的に遡ったタッチ位置(例えば、図4Bおよび図4Cにおけるタッチ位置TPa)では相対的に太い線が再描画される。なお、図4A〜図4Cでは、手書き文字Cの手書き線部分を中抜き斜線領域で示している。 With reference to FIG. 4A to FIG. 4C, an example of processing for gradually increasing the thickness of a line as time elapses will be described. For example, when the player performs a touch operation that slides on the touch panel 15 (hereinafter referred to as a slide operation), the thinnest line is drawn at the latest touch position TP that has been touched. A relatively thick line is redrawn at a touch position that is traced back in time series (for example, the touch position TPa in FIGS. 4B and 4C). In FIG. 4A to FIG. 4C, the handwritten line portion of the handwritten character C is indicated by a hollow hatched area.
具体的には、プレイヤがタッチパネル15をタッチ操作するタッチ位置TPに対して、目標太さWtがそれぞれ設けられる。つまり、タッチ位置TPがスライド操作に応じて移動すると、タッチ位置TPの履歴に対してそれぞれのタッチ位置TPに目標太さWtが設定される。一方、プレイヤがタッチ操作している最新のタッチ位置TPでは、最も細い太さWi0の線が描かれる。そして、最細太さWi0で描かれた線は、時間経過と共に目標太さWtに向かってその太さが漸増的に拡大するように変化して再描画される。なお、後述により明らかとなるが、本実施形態における手書き文字Cは、各タッチ位置に、描画太さWiおよび入力状態(入り、止め等)に応じた要素画像(例えば、後述する描画パターン)を既に描かれている要素画像に重ね合わせていくことによって、その線太さが拡大して再描画される。
Specifically, a target thickness Wt is provided for each touch position TP where the player touches the
例えば、図4Aに示す状態から図4Bに示す状態を経て図4Cに示す状態に変化する例を考える。この操作例は、プレイヤが入力方向Diへタッチ位置TPを移動させてスライド操作する例である。そして、当該スライド操作に応じて設定される各タッチ位置TPには、全て同じ目標太さWtが設定されるものとする。なお、図4Aは、プレイヤがタッチ位置TPaをタッチ操作している状態(つまり、タッチ位置TP=タッチ位置TPa)の一例を示す図である。図4Bは、プレイヤがタッチ位置TPaをタッチ操作した後、入力方向Diへタッチ位置TPを移動させてスライド操作している状態の一例を示す図である。図4Cは、図4Bに示す状態から、さらにプレイヤが入力方向Diへタッチ位置TPを移動させてスライド操作している状態の一例を示す図である。 For example, consider an example in which the state shown in FIG. 4A changes to the state shown in FIG. 4C through the state shown in FIG. 4B. In this operation example, the player performs a slide operation by moving the touch position TP in the input direction Di. The same target thickness Wt is set for each touch position TP set in accordance with the slide operation. FIG. 4A is a diagram illustrating an example of a state in which the player is touching the touch position TPa (that is, touch position TP = touch position TPa). FIG. 4B is a diagram illustrating an example of a state in which the player performs a slide operation by moving the touch position TP in the input direction Di after touching the touch position TPa. FIG. 4C is a diagram illustrating an example of a state in which the player further performs a sliding operation by moving the touch position TP in the input direction Di from the state illustrated in FIG. 4B.
ここで、タッチ位置TPaに注目する。図4Aにおいて、プレイヤがタッチ操作している最新のタッチ位置TPでは、最細太さWi0の線となる。したがって、タッチ位置TP=タッチ位置TPaの状態では、タッチ位置TPaにおける線太さWaも最細太さWi0となる。 Here, attention is paid to the touch position TPa. In FIG. 4A, at the latest touch position TP where the player performs a touch operation, the line has the thinnest thickness Wi0. Therefore, in the state of touch position TP = touch position TPa, the line thickness Wa at the touch position TPa is also the thinnest thickness Wi0.
次に、図4Bに示すように、プレイヤがタッチ位置TPaをタッチ操作した後、入力方向Diへタッチ位置TPを移動させてスライド操作する。このスライド操作によって、タッチ位置TPaにおける線太さWaは、時間経過と共に目標太さWtに向かって漸増的に拡大するように変化する。つまり、タッチ操作されてから時間経過が短いタッチ位置TPにおいて線太さが細く、時間経過が長いタッチ位置TPにおいて線太さが漸増的に太くなるような線が描かれる。結果的に、入力方向Diへタッチ位置TPを移動させてスライド操作する場合、最新のタッチ位置TPから過去のタッチ位置TPa側へ遡った軌跡には、最細太さWi0から時間経過に応じて漸増的に目標太さWtまで線の太さを拡大させる区間Zcと、目標太さWtまで到達した区間Zsが形成される。なお、図4Bの状態では、タッチ位置TPaが区間Zcに含まれるため、タッチ位置TPaにおける線太さWaは、Wi0<Wa<Wtとなっている。 Next, as shown in FIG. 4B, after the player touches the touch position TPa, the player performs a slide operation by moving the touch position TP in the input direction Di. By this sliding operation, the line thickness Wa at the touch position TPa changes so as to gradually increase toward the target thickness Wt with time. That is, a line is drawn such that the line thickness is thin at the touch position TP where the passage of time is short after the touch operation, and the line thickness is gradually thickened at the touch position TP where the passage of time is long. As a result, when the slide operation is performed by moving the touch position TP in the input direction Di, the locus traced back to the past touch position TPa side from the latest touch position TP corresponds to the passage of time from the thinnest thickness Wi0. A section Zc for gradually increasing the thickness of the line to the target thickness Wt and a section Zs reaching the target thickness Wt are formed. In the state of FIG. 4B, since the touch position TPa is included in the section Zc, the line thickness Wa at the touch position TPa is Wi0 <Wa <Wt.
次に、図4Cに示すように、図4Bに示す状態から、さらにプレイヤが入力方向Diへタッチ位置TPを移動させてスライド操作する。このスライド操作によって、タッチ位置TPaにおける線太さWaは、時間経過と共に目標太さWtに向かってさらに漸増的に拡大するように変化する。これによって、タッチ位置TPaにおける線太さWaは、やがて目標太さWtとなり、タッチ位置TPaが区間Zsに含まれる位置となる。このように、手書き文字Cは、最新のタッチ位置TPでは一番細い描画パターンで描画され、当該タッチ位置TPから過去のタッチ位置TPa側へ遡った位置では最細太さWi0より太い描画パターンで再描画される。これによって、第2のLCD12には、手書き文字Cが毛筆で描いた直後から時間が経過することによって徐々に線の太さが拡大するように再描画される。
Next, as shown in FIG. 4C, from the state shown in FIG. 4B, the player further performs a slide operation by moving the touch position TP in the input direction Di. By this sliding operation, the line thickness Wa at the touch position TPa changes so as to further increase gradually toward the target thickness Wt as time elapses. Accordingly, the line thickness Wa at the touch position TPa eventually becomes the target thickness Wt, and the touch position TPa is a position included in the section Zs. As described above, the handwritten character C is drawn with the thinnest drawing pattern at the latest touch position TP, and has a drawing pattern thicker than the thinnest thickness Wi0 at a position going back from the touch position TP to the past touch position TPa. Redrawn. As a result, the
次に、図5〜図14を参照して、ゲーム装置1で実行されるゲームプログラムによる具体的な処理動作について説明する。なお、図5は、ゲームプログラムを実行することに応じて、RAM24に記憶される各種データの一例を示す図である。図6は、RAM24に記憶されるポイントバッファの一例を示す図である。図7は、RAM24に記憶されるスライド状態の描画パターンデータの一例を示す図である。図8は、RAM24に記憶される入り状態の描画パターンデータの一例を示す図である。図9は、RAM24に記憶されるつなぎ状態の描画パターンデータの一例を示す図である。図10は、RAM24に記憶されるパレット情報テーブルの一例を示す図である。図11は、当該ゲームプログラムを実行することによってゲーム装置1がゲーム処理を行うフローチャートである。図12は、図11におけるステップ60の目標太さ算出処理の詳細な動作を示すサブルーチンである。図13は、図11におけるステップ61の入力状態設定処理の詳細な動作を示すサブルーチンである。図14は、図11におけるステップ62の描画処理の詳細な動作を示すサブルーチンである。なお、これらの処理を実行するためのプログラムは、ROM17aに格納されたゲームプログラムに含まれており、ゲーム装置1の電源がオンになったときに、ROM17aからRAM24に読み出されて、CPUコア21によって実行される。
Next, with reference to FIGS. 5 to 14, a specific processing operation by the game program executed on the
図5において、RAM24には、ROM17aから読み出されたプログラムやゲーム処理において生成される一時的なデータが記憶される。図5において、RAM24のデータ記憶領域には、タッチ位置データDa、タッチオン指示位置データDb、ポイントバッファデータDc、入力位置バッファデータDd、バッファ距離データDe、入力距離データDf、および描画データDg等が格納される。
In FIG. 5, the
タッチ位置データDaは、タッチパネル15をプレイヤがタッチしている画面座標系のタッチ位置TPを示すタッチ座標を示すデータが格納される。例えば、タッチ座標は、ゲーム装置1がゲーム処理する時間単位(例えば、1/60秒)毎に取得され、当該取得に応じてタッチ位置データDaに格納されて更新される。
The touch position data Da stores data indicating touch coordinates indicating the touch position TP in the screen coordinate system where the player touches the
タッチオン指示位置データDbは、タッチパネル15に最初にタッチオンされたタッチ位置に応じて、仮想世界に指定される指示位置(以下、タッチオン指示位置と記載することがある)Pの指示座標を示すデータが格納される。
The touch-on instruction position data Db is data indicating instruction coordinates of an instruction position P (hereinafter sometimes referred to as a touch-on instruction position) designated in the virtual world in accordance with the touch position where the
ポイントバッファデータDcは、指示位置Pの履歴およびそれらの各種データが記述されたポイントバッファが格納される。以下、図6を参照して、ポイントバッファデータDcに格納されるポイントバッファについて説明する。 The point buffer data Dc stores a point buffer in which the history of the designated position P and various data thereof are described. Hereinafter, the point buffer stored in the point buffer data Dc will be described with reference to FIG.
図6において、ポイントバッファは、タッチ位置TPから算出された指示位置Pの所定期間分の履歴毎に、カウントフラグ、目標太さ、描画太さ、および入力状態が記述されている。指示位置Pは、手書き文字Cが描かれる仮想世界(以下、単に仮想世界と記載する)において、上記タッチ位置TPと重なる位置を示す座標であり、タッチ位置TPを仮想世界に透視変換することによって得られる。例えば、指示位置Pは、仮想世界に設定されているxy座標系の座標値(x,y)で示され、タッチ座標の取得に応じて算出された座標値(x,y)を示すデータが、ポイントバッファに記述される。以下、当指示位置Pを示す座標値を指示座標と記載する。ポイントバッファには、現在タッチ操作して取得されたタッチ位置TPから、所定処理回数分遡って取得されて算出された指示位置Pの履歴が記述される。図6に示した一例では、4回分の指示位置履歴がバッファ番号1〜4にそれぞれ記述されており、具体的には、バッファ番号1に指示座標(x1,y1)、バッファ番号2に指示座標(x2,y2)、バッファ番号3に指示座標(x3,y3)、およびバッファ番号4に指示座標(x4,y4)が記述されている。ここで、ポイントバッファに記述されるデータの中では、バッファ番号1(先頭)に記述される指示位置Pが最新のデータであり、バッファ番号4(最後)に記述される指示位置Pが最古のデータである。
In FIG. 6, the count buffer, the target thickness, the drawing thickness, and the input state are described in the point buffer for each history for a predetermined period of the designated position P calculated from the touch position TP. The designated position P is a coordinate indicating a position overlapping with the touch position TP in a virtual world where the handwritten character C is drawn (hereinafter simply referred to as a virtual world), and is obtained by perspective-transforming the touch position TP into the virtual world. can get. For example, the designated position P is indicated by the coordinate value (x, y) of the xy coordinate system set in the virtual world, and data indicating the coordinate value (x, y) calculated according to the acquisition of the touch coordinates is provided. Is described in the point buffer. Hereinafter, the coordinate value indicating the designated position P is referred to as designated coordinates. In the point buffer, a history of the indicated position P that is acquired and calculated by a predetermined number of processing times from the touch position TP that is acquired by the current touch operation is described. In the example shown in FIG. 6, designated position histories for four times are described in
ポイントバッファには、上記指示位置P毎に設定された目標太さWt、描画太さWi、および入力状態(スライド、入り、つなぎ、止め等)が記述される。具体的には、バッファ番号1に目標太さWt1および描画太さWi1、バッファ番号2に目標太さWt2および描画太さWi2、バッファ番号3に目標太さWt3および描画太さWi3、バッファ番号4に目標太さWt4および描画太さWi4がそれぞれ記述され、バッファ番号1〜4の全てに入力状態「スライド」が記述されている。また、ポイントバッファには、何れのデータが「カレント」に設定されているかを示すカレントフラグが記述されている。図6の例では、バッファ番号1のデータにカレントフラグ「ON」が記述され、バッファ番号1のデータが「カレント」に設定されていることを示している。
In the point buffer, a target thickness Wt, a drawing thickness Wi set for each indicated position P, and an input state (sliding, entering, joining, stopping, etc.) are described. Specifically, the target thickness Wt1 and the drawing thickness Wi1 are set in the
入力位置バッファデータDdは、現在から所定時間前までの所定期間分(例えば、過去約30秒間分)の指示位置Pの履歴が記述された入力位置バッファが格納される。 The input position buffer data Dd stores an input position buffer in which the history of the indicated position P for a predetermined period (for example, the past about 30 seconds) from the present to a predetermined time before is described.
バッファ距離データDeは、ポイントバッファに記述された各指示座標(x,y)を通って、現在プレイヤがタッチパネル15をタッチ操作しているタッチ位置に応じた指示位置(以下、最新の指示位置と記載することがある)までの仮想世界における距離(バッファ距離Lb)を示すデータが格納される。入力距離データDfは、上記タッチオン指示位置から最新の指示位置までの仮想世界における距離(入力距離Li)を示すデータが格納される。 The buffer distance data De passes through the designated coordinates (x, y) described in the point buffer, and the designated position corresponding to the touch position where the player is currently touching the touch panel 15 (hereinafter referred to as the latest designated position and Data indicating the distance (buffer distance Lb) in the virtual world up to (which may be described) is stored. The input distance data Df stores data indicating the distance (input distance Li) in the virtual world from the touch-on instruction position to the latest instruction position.
描画データDgは、描画パターンデータDg1およびパレット情報テーブルDg2等を含んでいる。描画パターンデータDg1は、仮想世界において手書き文字Cをゲーム画面に表示するための要素画像の一例を示すビットマップデータである。また、パレット情報テーブルDg2は、描画パターンデータが示す各画素の値(ビットマップ情報)に対して参照される、パレット情報を示すデータテーブルである。以下、図7〜図10を参照して、描画パターンデータDg1およびパレット情報テーブルDg2について説明する。なお、図7〜図9に示す要素画像(描画パターン)は、それぞれの矩形領域が1つの画素を示しており、各画素に対して設定されるビットマップ情報を図示している。なお、本実施形態では、手書き文字Cが無彩色で表示するため、描画パターンの各画素に設定される色も無彩色(白色〜灰色〜黒色)となる。 The drawing data Dg includes drawing pattern data Dg1, a palette information table Dg2, and the like. The drawing pattern data Dg1 is bitmap data indicating an example of an element image for displaying the handwritten character C on the game screen in the virtual world. The palette information table Dg2 is a data table indicating palette information that is referred to for each pixel value (bitmap information) indicated by the drawing pattern data. Hereinafter, the drawing pattern data Dg1 and the palette information table Dg2 will be described with reference to FIGS. In the element images (drawing patterns) shown in FIGS. 7 to 9, each rectangular area indicates one pixel, and bitmap information set for each pixel is illustrated. In the present embodiment, since the handwritten character C is displayed in an achromatic color, the color set for each pixel of the drawing pattern is also an achromatic color (white to gray to black).
図7〜図9において、描画パターンデータDg1は、プレイヤのタッチ操作に応じて設定される入力状態(タッチ操作する操作類型)毎に、それぞれ複数の描画パターンを有している。また、各入力状態の際に用いられる描画パターンは、例えば描画太さWiに応じた8つのパターンが設定される。なお、描画パターンデータDg1に格納される描画パターンは、本発明における要素画像の一例に相当する。 7 to 9, the drawing pattern data Dg1 has a plurality of drawing patterns for each input state (operation type for touch operation) set in accordance with the player's touch operation. For example, eight patterns corresponding to the drawing thickness Wi are set as the drawing pattern used in each input state. The drawing pattern stored in the drawing pattern data Dg1 corresponds to an example of an element image in the present invention.
描画パターンの各画素に対して設定されているビットマップ情報は、0〜15の何れかの整数値で示され、これらの数値によって各画素のRGB値が設定されている。これらビットマップ情報とRGB値との関係が、パレット情報テーブルDg2に格納されたパレット情報テーブルで示される。 The bitmap information set for each pixel of the drawing pattern is represented by an integer value of 0 to 15, and the RGB value of each pixel is set by these numerical values. The relationship between the bitmap information and the RGB values is indicated by a palette information table stored in the palette information table Dg2.
図10に示すように、0〜15の整数値で示されるビットマップ情報は、それぞれRGB値を示すパレット情報と対応している。例えば、ビットマップ情報「0」に対しては、パレット情報(255,255,255)のRGB値が対応しており、すなわちビットマップ情報「0」は白色を示す情報である。また、ビットマップ情報「15」に対しては、パレット情報(0,0,0)のRGB値が対応しており、すなわちビットマップ情報「15」は黒色を示す情報である。また、ビットマップ情報「1」〜「14」に対しては、それぞれ灰色を示す情報となっており、ビットマップ情報の数値が大きくなると、順次その濃度が濃くなるRGB値がパレット情報として設定されている。より具体的には、パレット情報は、白色〜灰色〜黒色のグラデーション有する16段階のRGB値を示す情報である。そして、これら16段階のパレット情報は、それぞれビットマップ情報によって指定することができる。 As shown in FIG. 10, bitmap information indicated by integer values of 0 to 15 corresponds to palette information indicating RGB values. For example, the RGB value of the palette information (255, 255, 255) corresponds to the bitmap information “0”, that is, the bitmap information “0” is information indicating white. The bitmap information “15” corresponds to the RGB value of the palette information (0, 0, 0), that is, the bitmap information “15” is information indicating black. In addition, the bitmap information “1” to “14” is information indicating gray, and when the numerical value of the bitmap information increases, RGB values that gradually increase in density are set as palette information. ing. More specifically, the palette information is information indicating 16 levels of RGB values having gradations of white to gray to black. Each of these 16 levels of palette information can be specified by bitmap information.
図7は、入力状態が「スライド」のときに用いられる複数の描画パターンの一例を示している。図7において、入力状態が「スライド」のときに用いられる描画パターンは、各描画太さWiに応じて略円形の描画パターンが設定される。具体的には、描画太さWiが「1」〜「8」に対して、それぞれ略円形の描画パターンが設定されており、描画太さWiの数値が大きくなると、当該数値の大きさに応じて灰色で示されるビットマップ情報の領域が拡大する。また、各描画パターンは、その中心が最も濃度が濃いビットマップ情報(すなわち、数値が大きい)を有しており、描画パターンの中心から外縁方向へ漸減的に濃度が薄くなるビットマップ情報(すなわち、数値が漸減的に小さくなる)を有している。 FIG. 7 shows an example of a plurality of drawing patterns used when the input state is “slide”. In FIG. 7, as the drawing pattern used when the input state is “slide”, a substantially circular drawing pattern is set according to each drawing thickness Wi. Specifically, a substantially circular drawing pattern is set for each of the drawing thicknesses Wi of “1” to “8”. When the numerical value of the drawing thickness Wi increases, The area of bitmap information shown in gray is enlarged. Further, each drawing pattern has bitmap information having the highest density at the center (that is, the numerical value is large), and bitmap information in which the density gradually decreases from the center of the drawing pattern toward the outer edge (ie, the drawing pattern has a smaller value). , The numerical value decreases gradually).
図8は、入力状態が「入り」のときに用いられる複数の描画パターンの一例を示している。図8において、入力状態が「入り」のときに用いられる描画パターンは、各描画太さWiに応じて略涙滴形の描画パターンが設定される。具体的には、各描画パターンは、略涙滴形の最細部が左上方向に配置され、右下方向へ向かって徐々にその幅が太くなるように設定されている。換言すると、各描画パターンは、筆を紙に最初に接した際に現れる形状を模しており、筆先の尖りが相対的に強く表現される画像である。また、各描画パターンは、描画太さWiが「1」〜「8」に対して、それぞれ略涙滴形の描画パターンが設定されており、描画太さWiの数値が大きくなると、当該数値の大きさに応じて灰色で示されるビットマップ情報の領域が拡大する。また、各描画パターンは、その中心が最も濃度が濃いビットマップ情報を有しており、描画パターンの中心から外縁方向へ漸減的に濃度が薄くなるビットマップ情報を有している。 FIG. 8 shows an example of a plurality of drawing patterns used when the input state is “ON”. In FIG. 8, as the drawing pattern used when the input state is “ON”, a substantially teardrop-shaped drawing pattern is set according to each drawing thickness Wi. Specifically, each drawing pattern is set such that the most teardrop-shaped details are arranged in the upper left direction, and the width gradually increases toward the lower right direction. In other words, each drawing pattern imitates the shape that appears when a brush first comes into contact with paper, and is an image in which the tip of the brush tip is expressed relatively strongly. Each drawing pattern has a substantially teardrop-shaped drawing pattern for the drawing thickness Wi of “1” to “8”, and when the value of the drawing thickness Wi increases, The area of bitmap information shown in gray is enlarged according to the size. In addition, each drawing pattern has bitmap information with the highest density at the center, and has bitmap information in which the density gradually decreases from the center of the drawing pattern toward the outer edge.
図9は、入力状態が「つなぎ」のときに用いられる複数の描画パターンの一例を示している。図9において、入力状態が「つなぎ」のときに用いられる描画パターンは、各描画太さWiに応じて略円形および略涙滴形の中間的な形状の描画パターンが設定される。具体的には、各描画パターンは、上述した入力状態が「スライド」のときに用いられる描画パターンと入力状態が「入り」のときに用いられる描画パターンとの中間的な形状で設定されている。換言すると、各描画パターンは、入力状態が「入り」のときに用いられる描画パターンと同様に、筆先の尖りが表現される画像であるが、「入り」の画像パターンより若干左右方向に倒した形状とすることで、上記中間的な形状を表現している。また、各描画パターンは、描画太さWiが「1」〜「8」に対して、それぞれ中間的な形状の描画パターンが設定されており、描画太さWiの数値が大きくなると、当該数値の大きさに応じて灰色で示されるビットマップ情報の領域が拡大する。また、各描画パターンは、その中心が最も濃度が濃いビットマップ情報を有しており、描画パターンの中心から外縁方向へ漸減的に濃度が薄くなるビットマップ情報を有している。 FIG. 9 shows an example of a plurality of drawing patterns used when the input state is “connection”. In FIG. 9, as the drawing pattern used when the input state is “connect”, a drawing pattern having an intermediate shape between a substantially circular shape and a substantially teardrop shape is set according to each drawing thickness Wi. Specifically, each drawing pattern is set in an intermediate shape between the drawing pattern used when the input state is “slide” and the drawing pattern used when the input state is “on”. . In other words, each drawing pattern is an image in which the sharpness of the brush tip is expressed, like the drawing pattern used when the input state is “On”, but slightly tilted in the left-right direction from the “On” image pattern. By taking the shape, the intermediate shape is expressed. Each drawing pattern has a drawing pattern having an intermediate shape with respect to the drawing thickness Wi of “1” to “8”. When the value of the drawing thickness Wi increases, The area of bitmap information shown in gray is enlarged according to the size. In addition, each drawing pattern has bitmap information with the highest density at the center, and has bitmap information in which the density gradually decreases from the center of the drawing pattern toward the outer edge.
なお、図7〜図9においては、入力状態が「スライド」、「入り」、および「つなぎ」のときに用いられる複数の描画パターンの一例を示したが、描画パターンデータDg1には他の入力状態のときに用いられる描画パターンも格納される。例えば、描画パターンデータDg1には、入力状態が「横止め」や「縦止め」のときに用いられる描画パターンも格納される。これらの描画パターンについても、上記描画パターンと同様に、描画太さWiが「1」〜「8」に対して、それぞれ固有の形状の描画パターンが設定されており、描画太さWiの数値が大きくなると、当該数値の大きさに応じて灰色で示されるビットマップ情報の領域が拡大する。また、各描画パターンは、その中心が最も濃度が濃いビットマップ情報を有しており、描画パターンの中心から外縁方向へ漸減的に濃度が薄くなるビットマップ情報を有している。 FIGS. 7 to 9 show an example of a plurality of drawing patterns used when the input states are “slide”, “enter”, and “connecting”, but other input is given to the drawing pattern data Dg1. A drawing pattern used in the state is also stored. For example, the drawing pattern data Dg1 also stores a drawing pattern used when the input state is “horizontal stop” or “vertical stop”. Also for these drawing patterns, similarly to the above drawing patterns, drawing patterns having unique shapes are set for the drawing thicknesses Wi of “1” to “8”, and the numerical value of the drawing thickness Wi is As the value increases, the area of the bitmap information shown in gray is enlarged according to the value. In addition, each drawing pattern has bitmap information with the highest density at the center, and has bitmap information in which the density gradually decreases from the center of the drawing pattern toward the outer edge.
例えば、入力状態が「横止め」のときに用いられる描画パターンは、「スライド」のときに用いられる描画パターンを横方向に伸ばした形状である。また、「横止め」のときに用いられる描画パターンは、当該横方向に伸ばした形状をさらに縦横に拡大したような形状でもかまわない。換言すると、入力状態が「横止め」のときに用いられる描画パターンは、紙面に沿って筆を横方向に書き進めた状態で筆圧を高めて止めた際に現れる形状を模した画像である。また、入力状態が「縦止め」のときに用いられる描画パターンは、「スライド」のときに用いられる描画パターンを縦方向に伸ばした形状である。また、「縦止め」のときに用いられる描画パターンは、当該縦方向に伸ばした形状をさらに縦横に拡大したような形状でもかまわない。換言すると、入力状態が「縦止め」のときに用いられる描画パターンは、紙面に沿って筆を縦方向に書き進めた状態で筆圧を高めて止めた際に現れる形状を模した画像である。 For example, the drawing pattern used when the input state is “lateral” is a shape obtained by extending the drawing pattern used when “sliding” in the horizontal direction. In addition, the drawing pattern used for “horizontal stop” may be a shape obtained by further expanding the shape extended in the horizontal direction vertically and horizontally. In other words, the drawing pattern used when the input state is “horizontal stop” is an image simulating the shape that appears when the pen pressure is increased and stopped while the brush is being written horizontally along the paper surface. . In addition, the drawing pattern used when the input state is “vertical stop” is a shape obtained by extending the drawing pattern used when “sliding” vertically. In addition, the drawing pattern used for the “vertical stop” may be a shape obtained by further expanding the shape extended in the vertical direction in the vertical and horizontal directions. In other words, the drawing pattern used when the input state is “vertical stop” is an image simulating the shape that appears when the pen pressure is increased and stopped while the brush is being written vertically along the paper surface. .
次に、ゲーム装置1の動作について説明する。まず、ゲーム装置1の電源(電源スイッチ14h)がONされると、CPUコア21によってブートプログラム(図示せず)が実行され、これによりメモリカード17に格納されているゲームプログラムがRAM24にロードされる。そして、当該ロードされたゲームプログラムがCPUコア21で実行されることによって、図11〜図14に示すステップ(図11〜図14では「S」と略称する)が実行される。
Next, the operation of the
図11において、CPUコア21は、ゲームの初期設定を行って(ステップ50)、処理を次のステップに進める。例えば、CPUコア21がステップ50で行う初期設定として、プレイヤに描かせる手本文字Mを仮想世界に設定し、第1のLCD11に表示する。そして、CPUコア21は、タッチ位置データDa、タッチオン指示位置データDb、ポイントバッファデータDc、バッファ距離データDe、および入力距離データDfに格納されている各ゲームパラメータを初期化(例えば、各数値を0に初期化)する。また、第2VRAM29等に書き込まれて第2のLCD12に手書き文字Cを表示するためビットマップ情報は、全て0に設定される。
In FIG. 11, the
次に、CPUコア21は、プレイヤがタッチパネル15をタッチ操作するのを待つ、すなわちタッチオンか否かを判断する(ステップ51)。そして、CPUコア21は、タッチオンの場合、次のステップ52に処理を進める。一方、CPUコア21は、プレイヤがタッチパネル15をタッチ操作していない、すなわちタッチオフの場合、当該ステップ51の処理を繰り返す。
Next, the
ステップ52において、CPUコア21は、タッチパネル15をタッチしている画面座標系のタッチ位置TPを示すタッチ座標を取得して、処理を次のステップに進める。例えば、CPUコア21は、取得したタッチ座標を用いて、タッチ位置データDaに記憶されたタッチ座標を更新する。
In
次に、CPUコア21は、上記ステップ52で取得されたタッチ位置TPに応じた仮想世界の指示位置Pの指示座標を示すデータを算出して、当該指示座標をタッチオン指示位置データDbに保存して(ステップ53)、処理を次のステップに進める。例えば、指示位置Pの指示座標は、タッチ座標TPのタッチ座標を仮想世界に透視変換することによって得られる。一例として。指示座標は、タッチ座標と重なって第2のLCD12に表示される仮想世界の2次元平面上の位置を算出することによって得られる。
Next, the
次に、CPUコア21は、上記ステップ53で算出された指示位置Pの目標太さWtおよび描画太さWiを設定する(ステップ54)。そして、CPUコア21は、算出された指示位置Pの入力状態を「入り」に設定し(ステップ55)、処理を次のステップに進める。例えば、CPUコア21は、目標太さWtおよび描画太さWiを、それぞれタッチオン時の所定太さ(例えば、目標太さWt=最小値1および描画太さWi=最小値1)に設定する。また、CPUコア21は、入力状態をタッチオン時の入力状態(ここでは、入力状態=「入り」)に設定する。
Next, the
次に、CPUコア21は、上記ステップ53で算出された指示位置Pに設定された描画太さWiおよび入力状態に応じた描画パターンを描画し、第2のLCD12に表示して(ステップ56)、処理を次のステップに進める。具体的には、CPUコア21は、上記ステップ54およびステップ55で設定された描画太さWi「1」および入力状態「入り」に基づいて、描画パターンデータDg1から描画太さWi「1」および入力状態「入り」の描画パターンを抽出する(図8参照)。そして、CPUコア21は、第2GPU27(図2参照)に対して、抽出した描画パターンが指示位置Pの指示座標(x,y)に配置されたゲーム画像を生成する指示を行う。この指示に応じて、第2GPU27は、第2VRAM29等に描画パターンに応じたビットマップ情報を書き込む。そして、第2GPU27は、パレット情報テーブルDg2を参照して、第2VRAM29に書き込まれたビットマップ情報に応じたパレット情報を出力して、描画パターンに応じたゲーム画像が第2のLCD12に表示される。
Next, the
次に、CPUコア21は、最新の指示位置Pの指示座標(x,y)、目標太さWt、描画太さWi、および入力状態をポイントバッファデータDcのポイントバッファの最新位置に保存して(ステップ57)、処理を次のステップに進める。例えば、CPUコア21は、ポイントバッファ(図6参照)に格納されているバッファ番号4(最古のデータ格納位置)を除いたバッファ番号iのデータを、バッファ番号i+1の格納位置にそれぞれ移動させる。そして、CPUコア21は、ポイントバッファのバッファ番号1(最新のデータ格納位置)に、最新の指示位置Pの指示座標(x,y)、目標太さWt、描画太さWi、および入力状態を記述する。このステップ57の処理によって、ポイントバッファの各格納位置(バッファ番号1〜3)に格納されている3組のデータの格納位置が順次繰り下げられ、最新の格納位置(バッファ番号1)に最新の指示位置Pに設定された各データが格納される。
Next, the
また、上記ステップ57において、CPUコア21は、タッチ位置TPの軌跡(つまり、指示位置Pの軌跡)を判定するために、上記最新の指示位置Pの指示座標(x,y)を入力位置バッファデータDdの入力位置バッファの最新位置に保存する。ここで、入力位置バッファは、現在から所定時間前までの所定期間分(例えば、過去約30秒間分)の指示座標(x,y)の履歴が格納される。
In
次に、CPUコア21は、プレイヤがタッチパネル15へのタッチ操作をしていない、すなわちタッチオフか否かを判断する(ステップ58)。そして、CPUコア21は、プレイヤのタッチ操作が継続して行われている、すなわちタッチオンの場合、次のステップ59に処理を進める。一方、CPUコア21は、プレイヤがタッチパネル15をタッチ操作していない、すなわちタッチオフの場合、当該フローチャートによる処理を終了する。
Next, the
ステップ59において、CPUコア21は、タッチパネル15をタッチしている画面座標系のタッチ位置TPを示すタッチ座標を取得して、処理を次のステップに進める。例えば、CPUコア21は、取得したタッチ座標を用いて、タッチ位置データDaに記憶されたタッチ座標を更新する。
In step 59, the
次に、CPUコア21は、最新の指示位置Pにおける目標太さWtを設定する処理を行い(ステップ60)、次のステップに処理を進める。以下、図12を参照して、目標太さ算出処理の詳細な動作について説明する。
Next, the
図12において、CPUコア21は、ポイントバッファデータDcのポイントバッファを参照して、最新の指示位置Pからのバッファ距離を算出し(ステップ71)、次のステップへ処理を進める。ここで、バッファ距離Lbは、ポイントバッファに記述された各指示座標(x,y)を通って、最新の指示位置Pまでの仮想世界における距離である。
In FIG. 12, the
まず、CPUコア21は、上記ステップ59で取得したタッチ座標を用いて、最新の指示位置P0の指示座標(x0,y0)を算出する。そして、CPUコア21は、ポイントバッファのバッファ番号1〜4に記述された各指示位置(以下、指示位置P1〜P4と記載する)をタッチ操作順に通って、最新の指示位置P0までの距離をバッファ距離Lbとして算出する。ここで、各指示位置Pnの指示座標を(xn,yn)とすると、指示位置Pnと指示位置Pn+1との距離Lnは、
Lb=L0+L1+L2+L3
によって算出する。そして、CPUコア21は、算出したバッファ距離Lbを用いてバッファ距離データDeを更新する。
First, the
Lb = L 0 + L 1 + L 2 + L 3
Calculated by Then, the
次に、CPUコア21は、バッファ距離Lbに応じて最新の指示位置Pの目標太さWtを仮設定し(ステップ72)、次のステップに処理を進める。例えば、目標太さWtが所定の最小値Wtdから最大値Wtuまでの正数値(例えば、Wtd=1、Wtu=8)に設定され、バッファ距離Lbに判定最小距離Ld(例えば、Ld=0.5)および判定最大距離Lu(例えば、Lu=6.0)が設けられる。そして、バッファ距離Lbが判定最小距離Ld以下の場合(Lb≦Ld)、目標太さWtを最大値Wtu(すなわち、8)に設定する。また、バッファ距離Lbが判定最大距離Lu以上の場合(Lb≧Lu)、目標太さWtを最小値Wtd(すなわち、1)に設定する。また、バッファ距離Lbが判定最小距離Ldより大きく判定最大距離Luより小さい場合(Ld<Lb<Lu)、判定最小距離Ldから判定最大距離Luへの距離を最大値Wtuから最小値Wtdへの線形な値に変換する、すなわち
Wt=Wtu−(Wtu−Wtd)*(Lb−Ld)/(Lu−Ld)
にで算出される値を算出する。そして、目標太さWtを、算出された値の小数点以下を切り捨て、切り上げ、または四捨五入等した整数に設定する。
Next, the
Calculate the value calculated in. Then, the target thickness Wt is set to an integer obtained by rounding down, rounding up, or rounding off the calculated value.
このように、目標太さWtは、バッファ距離Lbに応じて仮設定される。ここで、最新の指示位置Pにおいて、当該指示位置Pが移り変わって移動していく移動速度(以下、単に移動速度と記載する)の算出は、当該指示位置Pより過去の所定時間における各指示位置P間の距離を合計することにより、指示位置Pの移動速度を算出するのが典型的である。また、単に、最新の指示位置Pと1つ前の指示位置P(つまり、バッファ番号1に記述された指示位置P1)との間の距離により、指示位置Pの移動速度を算出することも可能である。したがって、バッファ距離Lbは、所定期間におけるタッチ位置TPの移動距離を示すパラメータであり、プレイヤがタッチパネル15に対する入力の移動速度を示すものである。
Thus, the target thickness Wt is provisionally set according to the buffer distance Lb. Here, in the latest designated position P, the calculation of the moving speed at which the designated position P is changed and moved (hereinafter simply referred to as the moving speed) is calculated at each designated position in the past predetermined time from the designated position P. Typically, the moving speed of the indicated position P is calculated by summing the distances between P. In addition, the moving speed of the designated position P may be simply calculated from the distance between the latest designated position P and the previous designated position P (that is, the designated position P 1 described in the buffer number 1 ). Is possible. Therefore, the buffer distance Lb is a parameter indicating the moving distance of the touch position TP in a predetermined period, and indicates the moving speed of the input to the
また、指示位置Pの移動速度の算出は、当該指示位置Pより過去の各指示位置P間の距離だけでなく、当該指示位置Pより後に設定された各指示位置P間の距離も用いることもできる。例えば、ポイントバッファのバッファ番号2に記述された指示位置P2の移動速度は、過去の所定時間における各指示位置P間の距離(距離L2およびL3)と、指示位置P2の後の所定時間における各指示位置P間の距離(距離L0およびL1)とを合計することにより算出することができる。そして、算出された指示位置P2の移動速度を用いて、指示位置P2の目標太さWt2を設定してもかまわない。また、単に、指示位置Pと1つ後の指示位置P(つまり、バッファ番号1に記述された指示位置P2の移動速度を算出するときの指示位置P1)との間の距離により、指示位置Pの移動速度を算出することも可能である。このように、目標太さWtを仮設定するための指示位置Pの移動速度は、当該指示位置Pより過去の所定時間における各指示位置P間の距離および/または当該指示位置Pより後の所定時間における各指示位置P間の距離を用いて、算出することが可能である。
The calculation of the moving speed of the designated position P may use not only the distance between the designated positions P past the designated position P but also the distance between the designated positions P set after the designated position P. it can. For example, the moving speed of the designated position P 2 described in the
次に、CPUコア21は、上記ステップ72で仮設定した目標太さWtとポイントバッファデータDcのポイントバッファにおける最新データ(バッファ番号1)に記述されている目標太さWt1との差分を算出する。そして、CPUコア21は、差分値が一定範囲内(例えば、差分値の絶対値が2以下)の場合、処理を次のステップ76に進める。一方、CPUコア21は、差分値が一定範囲外(例えば、差分値の絶対値が2より大きい)の場合、処理を次のステップ75に進める。
Next, the
ステップ75において、CPUコア21は、仮設定された最新の指示位置Pの目標太さWtを、上記一定範囲内となる整数(例えば、上記差分値の絶対値が2となる整数)に変更し、次のステップ76に処理を進める。例えば、目標太さWt1=5に対して目標太さWt=8が仮設定された場合、目標太さWt=7に変更される。また、目標太さWt1=5に対して目標太さWt=1が仮設定された場合、目標太さWt=3に変更される。このように、最新の指示位置Pの目標太さWtは、前回設定された目標太さWt1からの変化量が一定範囲内に抑制される。
In step 75, the
ステップ76において、CPUコア21は、現在仮設定されている、または上記ステップ75で変更された最新の指示位置Pの目標太さWtを確定して、当該サブルーチンによる処理を終了する。
In
図11に戻り、上記ステップ60の目標太さ算出処理の後、CPUコア21は、最新の指示位置Pにおける入力状態を設定する処理を行い(ステップ61)、次のステップに処理を進める。以下、図13を参照して、入力状態設定処理の詳細な動作について説明する。
Returning to FIG. 11, after the target thickness calculation process in
図13において、CPUコア21は、プレイヤのタッチ操作の入力状態が入りか否かを判断する(ステップ81)。例えば、CPUコア21は、タッチオン指示位置データDbに格納されているタッチオン指示位置から、最新の指示位置までの仮想世界における距離が所定距離以内(後述する距離L0以内)であれば、入力状態が入りであると判定する。つまり、プレイヤがタッチパネル15に触れた位置から、タッチパネル15をタッチしながら所定距離以内でスライド操作している期間は、入力状態が入りであると判定される。そして、CPUコア21は、入力状態が入りであるとき、次のステップ84に処理を進める。一方、CPUコア21は、入力状態が入りでないとき、次のステップ82に処理を進める。
In FIG. 13, the
ステップ82において、CPUコア21は、プレイヤのタッチ操作の入力状態がつなぎか否かを判断する。一例として、CPUコア21は、プレイヤのタッチ操作の入力状態が入りでなくなった時点から所定時間が経過するまでの期間を、入力状態が入りからスライド(基本描線)へのつなぎであると判断する。そして、CPUコア21は、入力状態がつなぎであるとき、次のステップ85に処理を進める。一方、CPUコア21は、入力状態がつなぎでないとき、次のステップ83に処理を進める。
In step 82, the
ステップ83において、CPUコア21は、プレイヤのタッチ操作の入力状態が止めか否かを判断する。一例として、CPUコア21は、所定時間以上の間、所定範囲内に指示位置が指定されるとき、入力状態が止めであると判断する。つまり、プレイヤのスライド操作の速度が減速して、タッチ操作位置が所定範囲内に所定時間以上とどまっているとき、入力状態が止めであると判定される。また、CPUコア21は、入力状態が止めと判定した最初の指示位置Pを中心とした一定範囲内に、その後の指示位置Pが指定されている間も入力状態を止めと判断する。そして、CPUコア21は、入力状態が止めであるとき、次のステップ84に処理を進める。一方、CPUコア21は、入力状態が止めでないとき、次のステップ89に処理を進める。
In
ステップ84において、CPUコア21は、最新の指示位置Pまでの過去の指示位置Pの軌跡が横方向であるか否かを判断する。そして、CPUコア21は、軌跡が横方向である場合、次のステップ87に処理を進める。一方、CPUコア21は、軌跡が縦方向である場合、次のステップ88に処理を進める。
In step 84, the
例えば、上記ステップ84において、CPUコア21は、入力位置バッファに格納されている指示位置Pの履歴と最新の指示位置Pとを用いて、入力方向が横方向および縦方向の何れかであるかを判断する。具体的には、最新の指示位置Pを基準位置として、入力位置バッファの履歴を遡って順次指示位置Pを参照していく。そして、基準位置から遡った入力軌跡の長さが所定長さ(例えば、6dot)以上となる過去の指示位置Ppを抽出して、基準位置と指示位置Ppとの位置関係が横方向および縦方向の何れかであるかを判断する。ここで、横方向および縦方向とは、手書き文字Cが表示された際の縦横方向を示している。例えば、図3のように第1のLCD11および第2のLCD12の位置関係が左右となるようにゲーム装置1を配置したとき、第2のLCD12の左右方向が横方向であり、第2のLCD12の上下方向が縦方向である。そして、CPUコア21は、第2のLCD12の左右方向を基準方向(0°)としたとき、上記基準位置と指示位置Ppとをそれぞれ結ぶ方向と当該基準方向との間の角度が0°以上45°未満であれば、軌跡が横方向であると判定する。一方、CPUコア21は、上記角度が45°以上90°以下であれば、軌跡が縦方向であると判定する。
For example, in step 84, the
なお、上述した一例では、入力位置バッファに格納された指示位置Pのデータを用いたが、他のデータを用いて縦横判定を行ってもかまわない。例えば、ポイントバッファに格納されている指示位置Pの履歴と最新の指示位置Pとを用いて、これらの指示位置Pを結ぶ方向が横方向および縦方向の何れかであるかを判断してもかまわない。この場合、ポイントバッファに格納された指示位置Pをそれぞれ結ぶ方向の平均等と当該基準方向との間の角度を用いて、上述と同様の判定を行う。 In the above-described example, the data at the designated position P stored in the input position buffer is used. However, the vertical / horizontal determination may be performed using other data. For example, even if the history of the designated position P stored in the point buffer and the latest designated position P are used, it is determined whether the direction connecting these designated positions P is the horizontal direction or the vertical direction. It doesn't matter. In this case, the same determination as described above is performed by using the angle between the reference direction and the average of the directions connecting the designated positions P stored in the point buffer.
ステップ85〜ステップ89において、CPUコア21は、上記ステップ81〜ステップ84における入力状態判定結果に応じて、最新の指示位置Pの入力状態を設定する。すなわち、プレイヤのタッチ操作の入力状態が入りであると判定されたとき(ステップ81でYes)、最新の指示位置Pの入力状態を入りに設定して(ステップ85)、当該サブルーチンによる処理を終了する。プレイヤのタッチ操作の入力状態がつなぎであると判定されたとき(ステップ82でYes)、最新の指示位置Pの入力状態をつなぎに設定して(ステップ86)、当該サブルーチンによる処理を終了する。プレイヤのタッチ操作の入力状態が横方向の止めであると判定されたとき(ステップ83およびステップ84でYes)、最新の指示位置Pの入力状態を横止めに設定して(ステップ87)、当該サブルーチンによる処理を終了する。プレイヤのタッチ操作の入力状態が縦方向の止めであると判定されたとき(ステップ83でYes、ステップ84でNo)、最新の指示位置Pの入力状態を縦止めに設定して(ステップ88)、当該サブルーチンによる処理を終了する。そして、プレイヤのタッチ操作の入力状態が入り、つなぎ、止めの何れでもないと判定されたとき(ステップ81〜ステップ83が何れもNo)、最新の指示位置Pの入力状態をスライドに設定して(ステップ89)、当該サブルーチンによる処理を終了する。このように、CPUコア21は、算出した指示位置Pを用いて、プレイヤがタッチ操作した操作類型を判定して入力状態として設定している。
In step 85 to step 89, the
図11に戻り、上記ステップ61の入力状態設定処理の後、CPUコア21は、描画処理を行い(ステップ62)、上記ステップ57に戻って処理を繰り返す。以下、図14を参照して、描画処理の詳細な動作について説明する。
Returning to FIG. 11, after the input state setting process in
図14において、CPUコア21は、最新の指示位置Pの描画太さWiを設定する(ステップ91)。例えば、CPUコア21は、最新の指示位置Pの描画太さWiを、所定太さ(例えば、描画太さWi=最小値1)に設定する。次に、CPUコア21は、上記ステップ61で設定された最新の指示位置Pの入力状態および上記ステップ91で設定された描画太さWiに応じた描画パターンを描画し、第2のLCD12に表示して(ステップ92)、処理を次のステップに進める。具体的には、CPUコア21は、最新の指示位置Pに設定されている描画太さWi(すなわち、最小値1)および入力状態に基づいて、描画パターンデータDg1から該当する入力状態の描画太さWi「1」の描画パターンを抽出する(図8等参照)。そして、CPUコア21は、第2GPU27(図2参照)に対して、抽出した描画パターンが最新の指示位置Pの指示座標(x,y)に配置されたゲーム画像を生成する指示を行い、当該ゲーム画像が第2のLCD12に表示される。ここで、上述したように、描画処理の際には第2VRAM29等に描画パターンに応じたビットマップ情報が書き込まれるが、既にビットマップ情報が書き込まれている画素については、ビットマップ情報を書き換える必要がある。このビットマップ情報の書き換え処理については、後述する。
In FIG. 14, the
次に、CPUコア21は、ポイントバッファデータDcのポイントバッファの最新位置(すなわち、ポイント番号1)のデータをカレントに設定して(ステップ93)、処理を次のステップに進める。例えば、CPUコア21は、ポイントバッファにおけるポイント番号1のカレントフラグをONに設定し、他のデータのカレントフラグをOFFに設定する。
Next, the
次に、CPUコア21は、ポイントバッファにおいてカレントフラグがONに設定されているデータの目標太さWtを参照し、格納位置に応じて描画太さWiを設定する(ステップ94)。例えば、バッファ番号1〜4にそれぞれ格納されている目標太さWtをWt1〜Wt4とし、バッファ番号1〜4に設定される描画太さWiをWi1〜Wi4とすると、描画太さWi1〜Wi4は、それぞれ
Wi1=1(最小値)
Wi2=Wt2×2/4
Wi3=Wt3×3/4
Wi4=Wt4
で設定される。なお、算出された何れの描画太さWi1〜Wi4についても、小数点以下を四捨五入、切り捨て、または切り上げ等することによって、整数値とする。そして、CPUコア21は、設定された描画太さWiを用いて、カレントフラグがONに設定されたポイントバッファの描画太さWiを更新して、処理を次のステップに進める。
Next, the
Wi2 = Wt2 × 2/4
Wi3 = Wt3 × 3/4
Wi4 = Wt4
Set by. Note that any of the calculated drawing thicknesses Wi1 to Wi4 is set to an integer value by rounding off, rounding down, or rounding up after the decimal point. Then, the
後述により明らかとなるが、バッファ番号1〜4に記述された描画太さWi1〜Wi4は、処理が繰り返される毎にポイントバッファ内で降順に記述場所が移動するため、結果的に描画太さがWiは、同じ指示位置Pに設定されている目標太さWtまで、最小値1からその数値が大きくなっていくことになる。つまり、この描画太さWiを目標太さWtまで拡大させる処理によって、手書き文字Cは、最新の指示位置Pでは一番細い描画パターンで描画され、当該最新の指示位置Pから過去の指示位置側へ遡った位置では最細の描画太さWiより太い描画太さWiの描画パターンで再描画される。これによって、第2のLCD12には、手書き文字Cがタッチ操作して描いた直後から時間が経過することによって徐々に線の太さが拡大するように再描画される(図4A〜図4C参照)。また、各指示位置Pに設定された目標太さWtは、当該指示位置Pに対応する描画太さWiが拡大する最大値としても機能していることがわかる。
As will be apparent from the description below, the drawing thicknesses Wi1 to Wi4 described in the
次に、CPUコア21は、カレントフラグがONに設定された指示位置Pに設定された描画太さWiおよび入力状態に応じた描画パターンを描画し、第2のLCD12に表示して(ステップ95)、処理を次のステップに進める。具体的には、CPUコア21は、ポイントバッファにおいてカレントフラグがONに設定された描画太さWiおよび入力状態を参照して、描画パターンデータDg1から参照した描画太さWiおよび入力状態に応じた描画パターンを抽出する。そして、CPUコア21は、第2GPU27に対して、抽出した描画パターンがカレントの指示位置Pの指示座標(x,y)に配置されたゲーム画像を生成する指示を行う。この指示に応じて、第2GPU27は、第2VRAM29等に描画パターンに応じたビットマップ情報を書き込む。そして、第2GPU27は、パレット情報テーブルDg2を参照して、第2VRAM29に書き込まれたビットマップ情報に応じたパレット情報を出力して、描画パターンに応じたゲーム画像が第2のLCD12に表示される。ここで、カレントの指示位置Pに描画パターンに応じたビットマップ情報を書き込むときには、前回の処理において同じ指示位置Pに描画パターンに応じたビットマップ情報が既に書き込まれている。以下、図15を参照して、ビットマップ情報の書き換え処理について説明する。なお、図15は、ビットマップ情報を書き換える一例と、当該ビットマップ情報に応じて表示される画像例を示す図である。
Next, the
図15では、第2VRAM29等に書き込まれたビットマップ情報に対して、表示される画像例が、各描画パターンに応じたビットマップ情報の書き換え段階毎に記載している。ここで、図15に示すビットマップ情報は、0〜15の何れかの整数値で上述した16段階のパレット情報(図10参照)が示され、これらの数値によって各画素のRGB値が設定される。
In FIG. 15, for the bitmap information written in the
例えば、描画指示がされていない初期段階においては、第2VRAM29等の表示メモリ領域に書き込まれて第2のLCD12に手書き文字Cを表示するため画素毎のビットマップ情報は、全て「0」に設定されている。初期段階では、これらビットマップ情報「0」に応じて、各画素にパレット情報(255,255,255)が指定され、全画素が白色の画像が表示される。
For example, in the initial stage when no drawing instruction is given, the bitmap information for each pixel is set to “0” because it is written in the display memory area such as the
次に、上記初期段階後の第1段階において、中央領域の2×2画素にビットマップ情報「5」が記載され、他の画素にビットマップ情報「0」が記載された4×4の描画パターンが、上記表示メモリ領域の中央位置に書き込まれる。このとき、既に書き込まれている画素毎のビットマップ情報に、配置する描画パターンにおける対応画素のビットマップ情報を加算して書き込まれる。なお、上記加算結果が「15」を超える場合、ビットマップ情報を「15」とする。結果的に、上記表示メモリ領域の中央位置の2×2画素にビットマップ情報「5」が記載され、他の画素にビットマップ情報「0」が書き込まれる。第1段階では、これらビットマップ情報「5」または「0」に応じて、中央部の画素にパレット情報(170,170,170)が指定され、他の画素にパレット情報(255,255,255)が指定されるため、中央領域の画素がライトグレーとなり周辺領域の画素が白色となった画像が表示される。 Next, in the first stage after the initial stage, 4 × 4 drawing in which bitmap information “5” is described in 2 × 2 pixels in the central area and bitmap information “0” is described in other pixels A pattern is written at the center position of the display memory area. At this time, the bitmap information of the corresponding pixel in the drawing pattern to be arranged is added to the bitmap information of each pixel that has already been written. When the addition result exceeds “15”, the bitmap information is set to “15”. As a result, bitmap information “5” is written in 2 × 2 pixels at the center position of the display memory area, and bitmap information “0” is written in other pixels. In the first stage, palette information (170, 170, 170) is designated for the central pixel in accordance with the bitmap information “5” or “0”, and palette information (255, 255, 255) is assigned to the other pixels. ) Is designated, an image is displayed in which the pixels in the central area are light gray and the pixels in the peripheral area are white.
次に、上記第1段階後の第2段階において、中央領域の2×2画素にビットマップ情報「7」が記載され、他の画素にビットマップ情報「5」が記載された4×4の描画パターンが、上記第1段階と同じ表示メモリ領域の位置に書き込まれる。このときも、上記第1段階で既に書き込まれている画素毎のビットマップ情報に、配置する描画パターンにおける対応画素のビットマップ情報を加算して書き込まれる。具体的には、上記表示メモリ領域の中央位置の2×2画素には、上記第1段階においてビットマップ情報「5」が書き込まれているため、これらの画素に描画パターンの中央領域のビットマップ情報「7」がそれぞれ加算されてビットマップ情報「12」に書き換えられる。また、上記表示メモリ領域の中央位置における2×2画素の周囲画素には、描画パターンに記述されているビットマップ情報「5」が書き込まれ、他の画素にビットマップ情報「0」が書き込まれる。そして、第2段階では、これらビットマップ情報「12」、「5」、または「0」に応じて、中央部の画素にパレット情報(51,51,51)が指定され、その周囲の画素にパレット情報(170,170,170)が指定され、他の画素にパレット情報(255,255,255)が指定される。したがって、第2段階では、中央領域の画素がダークグレイとなり、その周囲領域の画素がライトグレーとなり、さらにその周辺領域の画素が白色となった画像が再描画されて表示される。 Next, in the second stage after the first stage, 4 × 4 pixels in which the bitmap information “7” is described in the 2 × 2 pixels in the central region and the bitmap information “5” is described in the other pixels. The drawing pattern is written at the same position in the display memory area as in the first stage. Also at this time, the bitmap information of the corresponding pixel in the drawing pattern to be arranged is added to the bitmap information for each pixel already written in the first stage. Specifically, since the bitmap information “5” is written in 2 × 2 pixels at the central position of the display memory area in the first stage, the bitmap of the central area of the drawing pattern is written in these pixels. Information “7” is added and rewritten to bitmap information “12”. Also, the bitmap information “5” described in the drawing pattern is written to the surrounding pixels of 2 × 2 pixels at the center position of the display memory area, and the bitmap information “0” is written to the other pixels. . In the second stage, palette information (51, 51, 51) is designated for the central pixel according to the bitmap information “12”, “5”, or “0”, and the surrounding pixels are designated. Palette information (170, 170, 170) is designated, and palette information (255, 255, 255) is designated for other pixels. Therefore, in the second stage, an image in which the pixels in the central region are dark gray, the pixels in the surrounding region are light gray, and the pixels in the surrounding region are white is redrawn and displayed.
このように、本実施形態に係る描画処理では、描画パターンを重ねて指定することによって、画素毎にビットマップ情報が積算される。したがって、描画パターンの灰色画素を重ねて指定することによって灰色から黒色に向かって変化するため、濃度が濃い画像に推移して再描画されていく。 As described above, in the drawing processing according to the present embodiment, bitmap information is integrated for each pixel by designating overlapping drawing patterns. Therefore, since the gray pattern changes from gray to black by designating the gray pixels of the drawing pattern in an overlapping manner, the image changes to a dark image and is redrawn.
図14に戻り、上記ステップ95の処理の後、CPUコア21は、最新の指示位置Pからカレントに指定された指示位置Pまでの指示位置間の描画太さWiおよび入力状態を補間設定し(ステップ96)、処理を次のステップに進める。
Returning to FIG. 14, after the process of step 95, the
例えば、プレイヤがタッチ位置TPを高速で大きく動かす等したときは、算出される指示位置Pの間隔が相対的に大きくなる。このように、指示位置Pの間隔が広くなると、描画される描画パターンの間が広くなり手書き文字Cの線太さにバラツキが生じてしまう。このような線太さのバラツキを解消するために、上記ステップ96では指示位置P間にも描画パターンを描画するための描画太さWiおよび入力状態を補間設定する。 For example, when the player moves the touch position TP greatly at high speed, the calculated interval between the designated positions P is relatively large. As described above, when the interval between the designated positions P is widened, the space between the drawn drawing patterns is widened, and the line thickness of the handwritten character C varies. In order to eliminate such variation in line thickness, in step 96, the drawing thickness Wi and the input state for drawing the drawing pattern are set between the indicated positions P by interpolation.
上記ステップ96の処理例として、第1の指示位置P1と第2の指示位置P2との間の描画太さWiおよび入力状態を補間設定する一例を考える。ここで、第1の指示位置P1には描画太さWi1が設定され、第2の指示位置P2には描画太さWi2が設定され、第1の指示位置P1と第2の指示位置P2との間の距離がX(具体的には、X画素)とする。例えば、描画太さWi1と描画太さWi2との差が1以下であれば、第1の指示位置P1と第2の指示位置P2との間の各画素に対して、それぞれ描画太さWi1または描画太さWi2を補間設定する。また、描画太さWi1と描画太さWi2との差が2以上(nとする)であれば、上記X画素を当該差に応じて分割して、分割区間毎にWi1からWi2までの数値を描画太さWiとして補間設定する。例えば、Wi1<Wi2のとき、第1の指示位置P1からX/n画素までの区間の各画素に対して、それぞれ描画太さWi1+1を補間設定する。また、次のX/n画素から2X/n画素までの区間の各画素に対して、それぞれ描画太さWi1+2を補間設定する。そして、(n−1)X/n画素から第2の指示位置P2までの区間の各画素に対して、それぞれ描画太さWi2を補間設定する。なお、何れの場合においても、第1の指示位置P1と第2の指示位置P2との間の各画素に対する入力状態は、第1の指示位置P1に設定された入力状態または第2の指示位置P2に設定された入力状態に補間設定する。 As an example of the processing in step 96, consider an example in which the drawing thickness Wi and the input state between the first designated position P1 and the second designated position P2 are set by interpolation. Here, the drawing thickness Wi1 is set to the first designated position P1, the drawing thickness Wi2 is set to the second designated position P2, and the first designated position P1 and the second designated position P2 are The distance between them is assumed to be X (specifically, X pixel). For example, if the difference between the drawing thickness Wi1 and the drawing thickness Wi2 is 1 or less, the drawing thickness Wi1 or the drawing thickness Wi1 for each pixel between the first designated position P1 and the second designated position P2, respectively. The drawing thickness Wi2 is set for interpolation. If the difference between the drawing thickness Wi1 and the drawing thickness Wi2 is 2 or more (assumed to be n), the X pixel is divided according to the difference, and the numerical values from Wi1 to Wi2 are set for each divided section. Interpolation is set as the drawing thickness Wi. For example, when Wi1 <Wi2, the drawing thickness Wi1 + 1 is set for each pixel in the section from the first designated position P1 to the X / n pixel. Further, the drawing thickness Wi1 + 2 is set to be interpolated for each pixel in the section from the next X / n pixel to the 2X / n pixel. Then, the drawing thickness Wi2 is set to be interpolated for each pixel in the section from (n−1) X / n pixels to the second designated position P2. In any case, the input state for each pixel between the first designated position P1 and the second designated position P2 is the input state set to the first designated position P1 or the second designated position. Interpolation is set to the input state set in P2.
次に、CPUコア21は、上記ステップ95で各画素に補間設定された描画太さWiおよび入力状態に応じた描画パターンを当該各画素に描画し、第2のLCD12に表示して(ステップ97)、処理を次のステップに進める。当該ステップ97の描画処理については、上述したステップ95の描画処理を同様であるため、詳細な説明を省略する。
Next, the
次に、CPUコア21は、ポイントバッファにおける最古の位置(すなわち、バッファ番号4)のカレントフラグがONに設定されているか否かを判断する(ステップ98)。そして、CPUコア21は、最古の位置以外(すなわち、バッファ番号1〜3)のカレントフラグがONに設定されている場合、カレントフラグがONに設定されているデータのカレントフラグをOFFに変更し、当該データの1つ最古側に記述されたデータのカレントフラグをONに変更して(ステップ99)、上記ステップ94に戻って処理を繰り返す。一方、CPUコア21は、最古の位置のカレントフラグがONに設定されている場合、当該サブルーチンによる処理を終了する。
Next, the
次に、図16〜図18を参照して、上述したフローチャートに基づいた処理によって描かれる手書き文字Cの表示例について説明する。なお、図16は、プレイヤの入力状態が「入り」→「つなぎ」→「スライド」に移り変わったときの手書き文字Cの一例を示す図である。図17は、プレイヤの入力状態が「スライド」→「止め」に移り変わったときの手書き文字Cの一例を示す図である。図18は、プレイヤの入力状態が「スライド」のままでタッチパネル15からタッチオフされたときの手書き文字Cの一例を示す図である。なお、図16〜図18においては、手書き文字Cの手書き線内部状況を説明するために、現実には塗りつぶし線で表示される手書き文字Cが中抜き線で図示されている。また、図16〜図18では、プレイヤがタッチパネル15上をスライド操作した軌跡Tを破線で示している。
Next, display examples of the handwritten character C drawn by the processing based on the above-described flowchart will be described with reference to FIGS. FIG. 16 is a diagram illustrating an example of the handwritten character C when the input state of the player changes from “enter” → “connect” → “slide”. FIG. 17 is a diagram illustrating an example of the handwritten character C when the input state of the player changes from “slide” to “stop”. FIG. 18 is a diagram illustrating an example of the handwritten character C when the player's input state is “slide” and the
図16において、プレイヤがタッチパネル15の指示位置P0(すなわち、タッチオン指示位置P0)にタッチオンしたとき、入力状態は「入り」に設定される(図11のステップ55)。そして、プレイヤが、タッチオン指示位置P0から所定距離以内(距離L0)をスライド操作している期間(図13のステップ81でYes)は、入力状態が「入り」に設定される(図13のステップ85;図16の入り区間)。この入り区間における描画処理においては、入力状態が「入り」のときに用いられる描画パターンが用いられる。ここで、図8を用いて説明したように、入力状態が「入り」のときに用いられる描画パターンは、筆を紙に最初に接した際に現れる形状を模しているため、手書き文字Cにおいても毛筆における「入り」形状が表現される。
In FIG. 16, when the player touches on the designated position P0 on the touch panel 15 (ie, the touch-on designated position P0), the input state is set to “ON” (
その後、プレイヤが、タッチオン指示位置P0から指示位置P1において距離L0を超える位置までスライド操作してから所定時間が経過するまでの期間(図13のステップ82でYes)は、入力状態が「つなぎ」に設定される(図13のステップ86;図16のつなぎ区間)。このつなぎ区間における描画処理においては、入力状態が「つなぎ」のときに用いられる描画パターンが用いられる。ここで、図9を用いて説明したように、入力状態が「つなぎ」のときに用いられる描画パターンは、入力状態が「入り」のときに用いられる描画パターンと略円形の描画パターン(すなわち、入力状態が「スライド」)との中間的な形状であるため、手書き文字Cにおいても毛筆における「入り」形状から基本描線(スライド)までのつなぎの形状が表現される。 Thereafter, during a period from when the player slides from the touch-on instruction position P0 to the position exceeding the distance L0 at the instruction position P1 until a predetermined time elapses (Yes in step 82 in FIG. 13), the input state is “connection”. (Step 86 in FIG. 13; connecting section in FIG. 16). In the drawing process in this connection section, a drawing pattern used when the input state is “connection” is used. Here, as described with reference to FIG. 9, the drawing pattern used when the input state is “connect” and the drawing pattern used when the input state is “enter” and the substantially circular drawing pattern (that is, Since the input state is an intermediate shape with “slide”), the handwritten character C also represents the shape of the connection from the “enter” shape of the writing brush to the basic stroke (slide).
さらに、プレイヤが、指示位置P1をタッチ操作した時点から所定時間が経過して指示位置P2をタッチ操作した後の期間(図13のステップ81〜ステップ83が何れもNo)は、入力状態が「スライド」に設定される(図13のステップ89;図16のスライド区間)。このスライド区間における描画処理においては、入力状態が「スライド」のときに用いられる描画パターンが用いられる。ここで、図7を用いて説明したように、入力状態が「スライド」のときに用いられる描画パターンは、略円形であるため、手書き文字Cにおいては、基本描線を示す形状が表現される。
Furthermore, during a period after the player touches the designated position P2 after a predetermined time has elapsed from the time when the designated position P1 is touch-operated (No in steps 81 to 83 in FIG. 13), the input state is “ “Slide” is set (
図17において、プレイヤの入力状態が「スライド」で横方向にスライド操作してから、所定時間以上の間、所定範囲内の指示位置Pが指定されるとき(図13のステップ84でYes;図17の指示位置P3〜Peの間)、入力状態は「横止め」に設定される(図13のステップ87)。そして、プレイヤが、タッチパネル15から指示位置Peでタッチオフするまで、入力状態が「横止め」に設定される(図17の止め区間)。この止め区間における描画処理においては、入力状態が「横止め」のときに用いられる描画パターンが用いられる。ここで、上述したように、入力状態が「横止め」のときに用いられる描画パターンは、紙面に沿って筆を横方向に書き進めた状態で筆圧を高めて止めた際に現れる形状を模しているため、手書き文字Cにおいても毛筆における「横止め」形状が表現される。
In FIG. 17, when the designated position P within a predetermined range is designated for a predetermined time or more after the player's input state is “slide” and the slide operation is performed in the horizontal direction (Yes in step 84 of FIG. 13; 17 between the designated positions P3 to Pe), the input state is set to "side stop" (step 87 in FIG. 13). Then, until the player touches off from the
図18において、毛筆書きにおける「はね」や「はらい」を描くようにプレイヤがタッチパネル15上をスライド操作してタッチオフするとき、プレイヤの入力状態が「スライド」のままで指示位置Peからタッチオフされる(図18のスライド区間)。このようなスライド操作においては、プレイヤは、スライド操作におけるタッチ位置TPの移動を加速しながらタッチオフする。したがって、上述したバッファ距離Lbもタッチ位置TPの移動に応じて短縮される傾向となり、指示位置Peに向かって目標太さWtが細くなっていく。これに加えて、最新の指示位置Peでは一番細い描画パターンで描画され、当該指示位置Peから過去の指示位置側へ遡った位置では徐々に太い描画パターンで再描画される。したがって、タッチオフされた指示位置Peでは、過去の指示位置側へ遡った位置と比較して顕著に先細りした形状となり、あたかも毛筆書きにおける「はね」や「はらい」のような形状で表示される。
In FIG. 18, when the player slides on the
このように、上述したゲーム装置1による処理では、最新のタッチ位置TPと重なる指示位置Pでは一番細い描画パターンで描画され、当該指示位置Pから過去の指示位置側へ遡った位置では相対的に太い描画パターンで再描画された手書き文字Cが表示される。これによって、第2のLCD12には、手書き文字Cがタッチ操作して描いた直後から時間が経過することによって徐々に線の太さが拡大するように描画され、毛筆描画で表現される文字のようにリアルな描画が可能となる。また、各指示位置Pに設定される目標太さWtは、タッチ操作の速度に応じて変化するため、さらにリアルな手書き文字Cの描画が可能となる。さらに、手書き文字Cを描画する際に用いられる描画パターンは、プレイヤの入力状態に応じて異なる形状が設定されているため、毛筆書きにおける「入り」や「止め」等の特徴形状もリアルに表現することができる。
As described above, in the processing by the
なお、上述した実施形態では、2画面分の液晶表示部の一例として、物理的に分離された第1のLCD11および第2のLCD12を互いに上下に配置した場合(上下2画面の場合)を説明した。しかしながら、2画面分の表示画面の構成は、他の構成でもかまわない。例えば、下側ハウジング13bの一方主面に第1のLCD11および第2のLCD12を左右に配置してもかまわない。また、第2のLCD12と横幅が同じで縦の長さが2倍のサイズからなる縦長サイズのLCD(すなわち、物理的には1つで、表示サイズが縦に2画面分あるLCD)を下側ハウジング13bの一方主面に配設して、上記2つのゲーム画像(すなわち、手本文字Mを示す画像と手書き文字Cを示す画像)を上下に表示(すなわち上下の境界部分無しに隣接して表示)するように構成してもよい。また、第2のLCD12と縦幅が同じで横の長さが2倍のサイズからなる横長サイズのLCDを下側ハウジング13bの一方主面に配設して、横方向に2つのゲーム画像を左右に表示(すなわち左右の境界部分無しに隣接して表示)するように構成してもよい。すなわち、物理的に1つの画面を2つに分割して使用することにより2つのゲーム画像を表示してもかまわない。いずれの画像の形態に対しても、上述した第2のLCD12に表示していたゲーム画像が表示される画面上にタッチパネル15を配設すれば、同様に本発明を実現することができる。また、物理的に1つの画面を2つに分割して使用することにより上記2つのゲーム画像を表示する場合、当該画面全面にタッチパネル15を配設してもかまわない。
In the above-described embodiment, as an example of the liquid crystal display unit for two screens, a case where the
また、上述した実施例では、ゲーム装置1にタッチパネル15が一体的に設けられているが、ゲーム装置とタッチパネルとを別体にして構成しても、本発明を実現できることは言うまでもない。また、第1のLCD11の上面にタッチパネル15を設けて第1のLCD11に上述した第2のLCD12に表示していたゲーム画像を表示しても良い。さらに、上記実施例では表示画面を2つ(第1のLCD11、第2のLCD12)を設けたが、表示画面は1つであってもかまわない。すなわち、上記実施例において、第1のLCD11を設けず単に第2のLCD12のみを表示画面としてタッチパネル15を設けるように構成してもよい。また、上記実施例において、第2のLCD12を設けずに第1のLCD11の上面にタッチパネル15を設けて、上述した第2のLCD12に表示していたゲーム画像を第1のLCD11に表示しても良い。
In the embodiment described above, the
また、上記実施例では、座標入力を実現するゲーム装置1の入力手段としてタッチパネル15を用いたが、他のポインティングデバイスを用いてもかまわない。ここで、ポインティングデバイスは、画面上での入力位置や座標を指定する入力装置であり、例えば、マウス、トラックパッド、トラックボールなどを入力手段として使用し、入力手段から出力される出力値から計算された画面座標系の位置情報を用いれば、本発明を同様に実現することができる。
Moreover, in the said Example, although the
この場合、上記画面座標系の位置情報を上述した処理におけるタッチ位置TPとして取り扱えば、本発明を実現することが可能である。ただし、上述した処理におけるタッチオンまたはタッチオフの判定については、上記位置情報の入力とは異なった上記入力手段からの他の入力の有無や変化によって代用する。例えば、上記入力手段に設けられた操作ボタンの押下(例えば、マウスの右クリック中または左クリック中)しているか否かによって、上記タッチオンまたはタッチオフの判定を代用する。 In this case, if the position information of the screen coordinate system is handled as the touch position TP in the above-described processing, the present invention can be realized. However, the determination of touch-on or touch-off in the above-described process is substituted by the presence or absence of other input from the input means that is different from the input of the position information. For example, the touch-on or touch-off determination is substituted depending on whether or not an operation button provided in the input unit is being pressed (for example, when the mouse is right-clicked or left-clicked).
また、ゲームコントローラをプレイヤが把持してゲームを楽しむ据置型のゲーム装置の場合、他の態様のポインティングデバイスも考えられる。例えば、ゲームコントローラのハウジングに固設されたカメラを、上記ポインティングデバイスとして利用することも可能である。この場合、ゲームコントローラのハウジングで指し示した位置の変化に応じてカメラが撮像する撮像画像が変化する。したがって、この撮像画像を解析することにより、表示画面に対して上記ハウジングで指し示した座標を算出することができる。 In addition, in the case of a stationary game device in which a player holds a game controller and enjoys a game, a pointing device of another aspect is also conceivable. For example, a camera fixed to the housing of the game controller can be used as the pointing device. In this case, the captured image captured by the camera changes in accordance with the change in position indicated by the housing of the game controller. Therefore, by analyzing this captured image, it is possible to calculate the coordinates indicated by the housing with respect to the display screen.
この場合、上記ハウジングで指し示した位置を示す座標を、上述した処理におけるタッチ座標として取り扱えば本発明を実現することが可能である。ただし、上述した処理におけるタッチオンまたはタッチオフの判定については、上記座標入力とは異なった上記ゲームコントローラからの他の入力の有無や変化によって代用する。第1の例として、上記ゲームコントローラに設けられた操作ボタンの押下(例えば、Aボタンを押下しているときタッチオン)しているか否かによって、上記タッチオンまたはタッチオフの判定を代用する。第2の例では、上記ゲームコントローラが2つのハウジングで構成されている。そして、これら2つのハウジングは、上記カメラが搭載されている一方ハウジングと、他方のハウジングの動きに応じた信号を出力する加速度センサ等の検出部が固設された当該他方のハウジングとで構成される。この場合、他方のハウジングの動き(例えば、ハウジングを所定方向に傾けているときにタッチオン)に応じて、上記タッチオンまたはタッチオフの判定を代用する。第3の例では、上記ゲームコントローラのハウジングにマイク等の音声入力手段が設けられている。この場合、プレイヤが所定の音声を発したときにタッチオンおよびタッチオフが切り替わる判定で代用する。 In this case, the present invention can be realized by handling the coordinates indicating the position indicated by the housing as the touch coordinates in the above-described processing. However, the determination of touch-on or touch-off in the above-described processing is substituted by the presence or absence or change of other inputs from the game controller different from the coordinate input. As a first example, the touch-on or touch-off determination is substituted depending on whether an operation button provided in the game controller is pressed (for example, touch-on when the A button is pressed). In the second example, the game controller is composed of two housings. These two housings are composed of one housing on which the camera is mounted and the other housing on which a detection unit such as an acceleration sensor that outputs a signal corresponding to the movement of the other housing is fixed. The In this case, the touch-on or touch-off determination is substituted according to the movement of the other housing (for example, touch-on when the housing is tilted in a predetermined direction). In the third example, voice input means such as a microphone is provided in the housing of the game controller. In this case, a determination that the touch-on and the touch-off are switched when the player makes a predetermined sound is substituted.
なお、上述した描画処理において、描画パターンを重ね合わせて再描画する際、ビットマップ情報を加算することによって表示される色濃度が濃くなる一例を示したが、他の方向を用いて同様の再描画を行ってもかまわない。例えば、白色のRGB値(255,255,255)から黒色のRGB値(0,0,0)を1〜0の値で正規化し、当該正規化した値をビットマップ情報として取り扱う。このように設定されたビットマップ情報は、白色(つまり、「1」)以外のビットマップ情報を乗算することによって、黒色(つまり、「0」)に近づいていく。このように、描画パターンを重ね合わせて再描画する際、ビットマップ情報を乗算することによって表示される色濃度が濃くなるように描画処理を行ってもかまわない。 In the above-described drawing process, an example in which the color density displayed by adding bitmap information is increased when redrawing with overlapping drawing patterns is shown. You can draw. For example, a black RGB value (0, 0, 0) is normalized by a value of 1 to 0 from a white RGB value (255, 255, 255), and the normalized value is handled as bitmap information. The bitmap information set in this way approaches black (that is, “0”) by multiplying bitmap information other than white (that is, “1”). In this way, when redrawing with overlapping drawing patterns, the drawing process may be performed so that the color density displayed by multiplying the bitmap information is increased.
また、上述した一例では、指示位置Pに配置する要素画像の一例として描画パターンを用いたが、他の態様の要素画像を用いてもかまわない。例えば、各指示位置Pを中心とした所定半径(例えば、描画太さWi)の円を描く処理を行う。これによって、各指示位置Pに円形状の要素画像が配置され、互いに重なり合うことによって上述した手書き文字Cを描画することができる。 In the above-described example, a drawing pattern is used as an example of an element image arranged at the designated position P. However, an element image of another aspect may be used. For example, a process of drawing a circle with a predetermined radius (for example, drawing thickness Wi) centered on each indicated position P is performed. Thereby, a circular element image is arranged at each indicated position P, and the above-described handwritten character C can be drawn by overlapping each other.
また、上述した説明では、ポイントバッファにカウントフラグ、目標太さ、描画太さ、および入力状態を、各指示位置Pの履歴毎に記述したが、何れかのデータを記述しなくてもかまわない。例えば、描画太さについては、上述したように記述された目標太さおよびバッファ番号から算出することができるため、処理毎に各目標太さから算出して取得してもかまわない。また、入力状態については、最新の指示位置Pに対して設定されている入力状態が常にポイントバッファに記述されている各指示位置Pの入力状態とすれば、入力状態の履歴をポイントバッファに記述しなくてもよい。この場合、再描画される指示位置P(すなわち、ポイントバッファに格納されている指示位置P)には、最新の指示位置Pに設定されている入力状態に応じた描画パターンが再描画されることになる。 In the above description, the count flag, the target thickness, the drawing thickness, and the input state are described in the point buffer for each history of each indicated position P. However, any data may not be described. . For example, the drawing thickness can be calculated from the target thickness and the buffer number described as described above. Therefore, the drawing thickness may be calculated and acquired from each target thickness for each process. As for the input state, if the input state set for the latest indicated position P is always the input state of each indicated position P described in the point buffer, the input state history is described in the point buffer. You don't have to. In this case, the drawing pattern corresponding to the input state set to the latest designated position P is redrawn at the designated position P to be redrawn (that is, the designated position P stored in the point buffer). become.
また、上述した実施形態では、プレイヤのタッチ入力に応じて手書き文字Cが描画される例を用いたが、他の対象物を描画してもかまわない。例えば、図形や絵等を描画する処理においても、同様に本発明を適用できることは言うまでもない。また、上述した説明では、白色〜灰色〜黒色の無彩色の手書き文字Cが描画される例を用いたが、他の色彩の手書き文字Cを描画することも可能である。この場合、描画する文字色に応じて、図10に示すパレット情報テーブルのパレット情報をビットマップ情報に応じて調整すれば、有彩色の手書き文字Cであっても、同様の処理によって本発明を実現することができる。 In the above-described embodiment, an example in which the handwritten character C is drawn according to the touch input of the player is used. However, other objects may be drawn. For example, it goes without saying that the present invention can be similarly applied to a process of drawing a figure or a picture. In the above description, an example in which white to gray to black achromatic handwritten characters C are drawn is used. However, handwritten characters C of other colors can be drawn. In this case, if the pallet information in the pallet information table shown in FIG. 10 is adjusted according to the bitmap information according to the character color to be drawn, the present invention can be obtained by the same process even for the chromatic handwritten character C. Can be realized.
また、ゲームコントローラをプレイヤが把持してゲームを楽しむ据置型のゲーム装置におけるポインティングデバイスは、ゲームコントローラのハウジングの外部に別設されてもよい。一例として、カメラでハウジングの外部から当該ハウジングを撮影し、撮像画像内に撮像されたハウジングの画像を解析することにより、表示画面に対してハウジングで指し示している位置を示す座標を算出することが可能である。さらに、ハウジングに固設されたユニットとハウジング外部に別設されたユニットとの協働によるシステムを用いてもよい。この例としては、ハウジング外部に発光ユニットを別設し、ハウジングに固設されたカメラで発光ユニットからの光を撮影する。このカメラで撮像された撮像画像を解析することにより、表示画面に対してハウジングが指し示している座標を算出することができる。 Further, the pointing device in the stationary game device in which the player holds the game controller and enjoys the game may be provided outside the housing of the game controller. As an example, by taking a picture of the housing from the outside of the housing with a camera and analyzing the image of the housing imaged in the captured image, coordinates indicating the position pointed to by the housing with respect to the display screen can be calculated. Is possible. Furthermore, a system in which a unit fixed to the housing and a unit separately provided outside the housing may be used. In this example, a light emitting unit is separately provided outside the housing, and light from the light emitting unit is photographed by a camera fixed to the housing. By analyzing the captured image captured by this camera, the coordinates indicated by the housing with respect to the display screen can be calculated.
また、上記実施例では、携帯型のゲーム装置1や据置型のゲーム装置を用いて説明したが、一般的なパーソナルコンピュータ等の情報処理装置で本発明の描画処理プログラムを実行して、本発明を実現してもかまわない。
In the above embodiment, the
また、上述したゲーム装置1の形状や、それに設けられている各種操作ボタン14やタッチパネル15の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述した描画パターンの設定数および形状等や、各種設定値および判定値等は、単なる一例に過ぎず他の値であっても、本発明を実現できることは言うまでもない。
In addition, the shape of the
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示にすぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。 Although the present invention has been described in detail above, the above description is merely illustrative of the present invention in all respects and is not intended to limit the scope thereof. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention.
本発明の描画処理プログラムおよび描画処理装置は、ポインティングデバイスによる座標入力に応じた描画処理において、よりリアルな描画を可能とし、座標入力を用いて手書き入力した文字や図形等を表示装置に表示する装置や当該装置で実行されるプログラム等として有用である。 The drawing processing program and the drawing processing apparatus of the present invention enable more realistic drawing in a drawing process according to coordinate input by a pointing device, and display characters, figures, and the like input by handwriting using the coordinate input on the display device. It is useful as a device or a program executed by the device.
1 ゲーム装置
11 第1のLCD
12 第2のLCD
13 ハウジング
13a 上側ハウジング
13b 下側ハウジング
14 操作スイッチ部
14a 十字スイッチ
14b スタートスイッチ
14c セレクトスイッチ
14d Aボタン
14e Bボタン
14f Xボタン
14g Yボタン
14h 電源スイッチ
14L Lボタン
14R Rボタン
15 タッチパネル
16 スティック
17 メモリカード
17a ROM
17b RAM
18a、18b 音抜き孔
20 電子回路基板
21 CPUコア
22 バス
23 コネクタ
24 RAM
25 I/F回路
26 第1GPU
27 第2GPU
28 第1VRAM
29 第2VRAM
30a 右スピーカ
30b 左スピーカ
31 LCDコントローラ
32 レジスタ
33 ワイヤレス通信部
1
12 Second LCD
13
17b RAM
18a, 18b
25 I /
27 Second GPU
28 First VRAM
29 Second VRAM
30a
Claims (20)
前記ポインティングデバイスから前記入力位置を繰り返して取得する入力位置取得手段と、
所定の要素画像を、前記入力位置取得手段が取得した最新の入力位置に描画して前記表示装置に表示する描画手段と、
前記最新の入力位置から時系列的に遡った過去の入力位置それぞれに対して、前記所定の要素画像より順次大きくなる表示サイズの要素画像を描画して前記表示装置に表示する再描画手段として、前記コンピュータを機能させる、描画処理プログラム。 A drawing processing program executed by a computer that causes a display device to display a drawing corresponding to an output from a pointing device that outputs an input position,
Input position acquisition means for repeatedly acquiring the input position from the pointing device;
Drawing means for drawing a predetermined element image at the latest input position acquired by the input position acquisition means and displaying the image on the display device;
For each previous input position back to series when from the latest input location, as redrawing means to draw the element image of sequential size Kunar display size than the predetermined element image displayed on said display device A drawing processing program for causing the computer to function.
前記再描画手段は、前記複数の入力位置のそれぞれについて、前記サイズ選択手段により選択された要素画像を描画して前記表示装置に表示する、請求項1に記載の描画処理プログラム。 A size selection for selecting an element image having a display size that increases gradually according to the order acquired by the input position acquisition unit for each of a plurality of past input positions that are traced back in time series from the latest input position. As a means, further function the computer,
The drawing processing program according to claim 1, wherein the redrawing unit draws an element image selected by the size selection unit for each of the plurality of input positions and displays the element image on the display device.
前記再描画手段は、前記過去の入力位置のそれぞれについて、前記入力速度算出手段によって算出された前記過去の各入力位置における入力の移動速度に応じて、当該移動速度が大きいほど前記最大値が小さくなるように、各入力位置の前記最大値を決定する、請求項3に記載の描画処理プログラム。 When drawing the element image for the past input position by the redrawing means, the input position acquired by the input position acquisition means is used to move the input at the input position with respect to each past input position. As the input speed calculation means for calculating the speed, the computer is further functioned,
For each of the past input positions, the redrawing unit decreases the maximum value as the moving speed increases according to the moving speed of the input at the past input positions calculated by the input speed calculating unit. The drawing processing program according to claim 3, wherein the maximum value of each input position is determined.
前記入力速度算出手段によって算出された前記移動速度に基づいて、当該移動速度に関する情報を各入力位置について保存する保存手段として、さらに前記コンピュータを機能させ、
前記再描画手段は、前記過去の入力位置のそれぞれについて、前記保存手段によって保存された各入力位置についての前記移動速度に関する情報を参照して、各入力位置における前記移動速度が大きいほど前記最大値が小さくなるように、各入力位置の前記最大値を決定する、請求項3に記載の描画処理プログラム。 Using the input position acquired by the input position acquisition means, input speed calculation means for calculating the moving speed of the input at the latest input position;
Based on the moving speed calculated by the input speed calculating means, further causing the computer to function as a storing means for storing information on the moving speed for each input position,
For each of the past input positions, the redrawing unit refers to the information about the moving speed for each input position stored by the storing unit, and the maximum value increases as the moving speed at each input position increases. The drawing processing program according to claim 3, wherein the maximum value of each input position is determined so that becomes smaller.
前記再描画手段は、前記最小の表示サイズより大きな表示サイズの要素画像を、前記最新の入力位置から時系列的に遡った過去の入力位置に描画し、さらに大きな表示サイズの要素画像を、当該過去の入力位置から時系列的にさらに遡った過去の入力位置に描画する、請求項1に記載の描画処理プログラム。 The drawing means draws an element image having a preset minimum display size at the latest input position,
The redrawing means draws an element image having a display size larger than the minimum display size at a past input position that is time-sequentially traced from the latest input position, and further displays the element image having a larger display size. The drawing processing program according to claim 1, wherein drawing is performed at a past input position that is further back in time series from the past input position.
前記操作類型判定手段により前記最新の入力位置に対して判定された操作類型に応じて、複数種類の要素画像の中から使用する要素画像の種類を選択する種類選択手段として、さらに前記コンピュータを機能させ、
前記描画手段および前記再描画手段は、それぞれ前記最新の入力位置における操作類型に応じて選択された種類の要素画像を、前記最新の入力位置および前記過去の入力位置に描画する、請求項1に記載の描画処理プログラム。 An operation type determination unit that determines an operation type in which a user is operating the pointing device at the latest input position in accordance with an acquisition history of the input position acquisition unit;
The computer further functions as a type selection unit that selects a type of element image to be used from a plurality of types of element images according to the operation type determined by the operation type determination unit with respect to the latest input position. Let
The drawing unit and the redrawing unit each draw an element image of a type selected according to an operation type at the latest input position at the latest input position and the past input position, respectively. The drawing processing program described.
前記操作類型判定手段により前記各入力位置に対して判定された操作類型に応じて、複数種類の要素画像の中から使用する要素画像の種類をそれぞれ選択する種類選択手段として、さらに前記コンピュータを機能させ、
前記描画手段および前記再描画手段は、それぞれ前記各入力位置における操作類型に応じて選択された種類の要素画像を、前記各入力位置にそれぞれ描画する、請求項1に記載の描画処理プログラム。 An operation type determination unit that determines an operation type in which the user operates the pointing device at each input position according to the acquisition history of the input position acquisition unit;
The computer further functions as a type selection unit that selects a type of element image to be used from a plurality of types of element images according to the operation type determined for each input position by the operation type determination unit. Let
The drawing processing program according to claim 1, wherein the drawing unit and the redrawing unit each draw an element image of a type selected according to an operation type at each input position, at each input position.
前記種類選択手段は、前記操作類型判定手段が前記入力開始状態の操作類型と判定したことに応じて、当該操作類型に分類された第1の形状の要素画像を、当該入力開始状態と判定された前記入力位置に対応して選択し、かつ、前記操作類型判定手段が前記入力継続状態の操作類型と判定したことに応じて、当該操作類型に分類された当該第1の形状とは異なる第2の形状の要素画像を、当該入力継続状態と判定された前記入力位置に対応して選択する、請求項9または10に記載の描画処理プログラム。 When the input position acquisition unit first acquires the input position, the operation type determination unit determines that the user is operating the pointing device with the operation type in the input start state with respect to the input position. And when the input position acquisition means continuously acquires the input position, it is determined that the user is operating the pointing device with the operation type in the input continuation state for the input position,
The type selection unit determines that the element image of the first shape classified into the operation type is the input start state in response to the operation type determination unit determining that the operation type is the input start state. In response to the selection corresponding to the input position and the operation type determining means determining that the operation type is in the input continuation state, the first shape that is classified into the operation type is different from the first shape. The drawing processing program according to claim 9 or 10, wherein an element image having a shape of 2 is selected in correspondence with the input position determined as the input continuation state.
前記種類選択手段は、前記操作類型判定手段が前記入力終了状態の操作類型と判定したことに応じて、当該操作類型に分類された前記第1の形状および前記第2の形状とは異なる第3の形状の描画パターンを、前記入力位置に対応して選択する、請求項11に記載の描画処理プログラム。 The operation type determination unit determines that the user is operating the pointing device with the operation type in the input end state when the input position repeatedly acquired by the input position acquisition unit is within a predetermined range for a predetermined time or more. And
The type selection means is a third type different from the first shape and the second shape classified into the operation type in response to the operation type determination means determining the operation type in the input end state. The drawing processing program according to claim 11, wherein a drawing pattern having a shape of 1 is selected corresponding to the input position.
前記再描画手段は、前記要素画像設定手段が前記入力位置および前記入力位置間を補間する位置にそれぞれについて、前記サイズ選択手段により選択された要素画像を描画して前記表示装置に表示する、請求項2に記載の描画処理プログラム。 The size selection unit is configured to display an element image having a display size for linearly interpolating the size of the element image selected at the input position before and after the interpolation with respect to the position to be interpolated between the input positions acquired by the input position acquisition unit. , Select further,
The redrawing unit draws the element image selected by the size selection unit at each of the input position and the position where the input position is interpolated by the element image setting unit, and displays the element image on the display device. Item 3. The drawing processing program according to Item 2.
前記入力位置取得手段は、前記タッチパネルから出力されるタッチ座標データを前記入力位置として取得する、請求項1に記載の描画処理プログラム。 The pointing device is a touch panel that covers a display screen of the display device,
The drawing processing program according to claim 1, wherein the input position acquisition unit acquires touch coordinate data output from the touch panel as the input position.
前記ポインティングデバイスから前記入力位置を繰り返して取得する入力位置取得手段と、
所定の要素画像を、前記入力位置取得手段が取得した最新の入力位置に描画して前記表示装置に表示する描画手段と、
前記最新の入力位置から時系列的に遡った過去の入力位置それぞれに対して、前記所定の要素画像より順次大きくなる表示サイズの要素画像を描画して前記表示装置に表示する再描画手段とを備える、描画処理装置。 A drawing processing device that displays on a display device a drawing corresponding to an output from a pointing device that outputs an input position,
Input position acquisition means for repeatedly acquiring the input position from the pointing device;
Drawing means for drawing a predetermined element image at the latest input position acquired by the input position acquisition means and displaying the image on the display device;
And redrawing means for displaying the respective past input position back to series when from the latest input location, on the display device by drawing element image of sequential size Kunar display size than the predetermined element image A drawing processing apparatus.
前記ポインティングデバイスから前記入力位置を繰り返して取得する入力位置取得手段と、
所定の要素画像を、前記入力位置取得手段が取得した最新の入力位置に描画して前記表示装置に表示する描画手段と、
前記最新の入力位置から時系列的に遡った過去の入力位置それぞれに対して、前記所定の要素画像より順次大きくなる表示サイズの要素画像を描画して前記表示装置に表示する再描画手段とを備える、描画処理システム。 A drawing processing system for causing a display device to display a drawing corresponding to an output from a pointing device that outputs an input position,
Input position acquisition means for repeatedly acquiring the input position from the pointing device;
Drawing means for drawing a predetermined element image at the latest input position acquired by the input position acquisition means and displaying the image on the display device;
And redrawing means for displaying the respective past input position back to series when from the latest input location, on the display device by drawing element image of sequential size Kunar display size than the predetermined element image A drawing processing system comprising:
前記ポインティングデバイスから前記入力位置を繰り返して取得する入力位置取得ステップと、
所定の要素画像を、前記入力位置取得ステップにおいて取得した最新の入力位置に描画して前記表示装置に表示する描画ステップと、
前記最新の入力位置から時系列的に遡った過去の入力位置それぞれに対して、前記所定の要素画像より順次大きくなる表示サイズの要素画像を描画して前記表示装置に表示する再描画ステップとを備える、描画処理方法。 A drawing processing method for causing a display device to display a drawing corresponding to an output from a pointing device that outputs an input position,
An input position acquisition step of repeatedly acquiring the input position from the pointing device;
A drawing step of drawing a predetermined element image at the latest input position acquired in the input position acquisition step and displaying it on the display device;
And redrawing step of displaying the respective past input position back to series when from the latest input location, on the display device by drawing element image of sequential size Kunar display size than the predetermined element image A drawing processing method.
前記ポインティングデバイスから前記入力位置を繰り返して取得する入力位置取得手段と、Input position acquisition means for repeatedly acquiring the input position from the pointing device;
所定の要素画像を前記入力位置取得手段が取得したそれぞれの入力位置に描画すると共に、当該所定の要素画像より大きな表示サイズの要素画像を当該入力位置より前に前記入力位置取得手段が取得した過去の入力位置に描画して前記表示装置に表示する描画手段として、前記コンピュータを機能させる、描画処理プログラム。Past drawing a predetermined element image at each input position acquired by the input position acquisition means, and an element image having a display size larger than the predetermined element image acquired by the input position acquisition means before the input position A drawing processing program for causing the computer to function as drawing means for drawing at an input position and displaying on the display device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007108195A JP5030651B2 (en) | 2007-04-17 | 2007-04-17 | Drawing processing program and drawing processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007108195A JP5030651B2 (en) | 2007-04-17 | 2007-04-17 | Drawing processing program and drawing processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008269059A JP2008269059A (en) | 2008-11-06 |
JP5030651B2 true JP5030651B2 (en) | 2012-09-19 |
Family
ID=40048512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007108195A Active JP5030651B2 (en) | 2007-04-17 | 2007-04-17 | Drawing processing program and drawing processing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5030651B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011177203A (en) * | 2010-02-26 | 2011-09-15 | Nintendo Co Ltd | Object controlling program and object controlling apparatus |
JP2012138049A (en) * | 2010-12-28 | 2012-07-19 | Nec Casio Mobile Communications Ltd | Information terminal, character input method and program |
JP2013088891A (en) * | 2011-10-14 | 2013-05-13 | Konica Minolta Business Technologies Inc | Information terminal, drawing control program, and drawing control method |
SG10201601697SA (en) * | 2012-10-05 | 2016-04-28 | Tactual Labs Co | Hybrid systems and methods for low-latency user input processing and feedback |
JP2015092322A (en) * | 2013-03-15 | 2015-05-14 | 株式会社リコー | Distribution control system, distribution system, distribution control method, and program |
AU2014230423A1 (en) * | 2013-03-15 | 2015-09-24 | Ricoh Company, Limited | Distribution control system and distribution system |
CN106164839B (en) * | 2014-02-04 | 2019-10-22 | 触觉实验室股份有限公司 | The method of the eye response to input is provided with the reduced waiting time |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2722148B2 (en) * | 1991-10-30 | 1998-03-04 | 大日本スクリーン製造株式会社 | Image brushing method |
JPH06175777A (en) * | 1992-12-03 | 1994-06-24 | Matsushita Electric Ind Co Ltd | Method and device for generating brush-written style |
JPH09212285A (en) * | 1996-02-06 | 1997-08-15 | Sharp Corp | Handwriting input device |
JP3548852B2 (en) * | 2001-04-09 | 2004-07-28 | オムロン株式会社 | Photo sticker vending machine, image processing method of photo sticker vending machine, and program |
JP2003157070A (en) * | 2001-11-20 | 2003-05-30 | Tokyo Univ Of Agriculture & Technology | Character pattern generation method, character pattern generation device, computer-readable recording medium, program |
JP3865681B2 (en) * | 2002-10-18 | 2007-01-10 | 株式会社 ワコムアイティ | Brush writing device, brush writing program, and brush writing method |
JP4119436B2 (en) * | 2005-03-10 | 2008-07-16 | 株式会社コナミデジタルエンタテインメント | Information input conversion program and information input conversion device |
-
2007
- 2007-04-17 JP JP2007108195A patent/JP5030651B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2008269059A (en) | 2008-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4326568B2 (en) | Information processing apparatus and information processing program | |
JP5030651B2 (en) | Drawing processing program and drawing processing apparatus | |
JP5377709B2 (en) | Information processing apparatus, information processing method, and game apparatus | |
US9612710B2 (en) | Storage medium having stored thereon image processing program and image processing apparatus | |
US8910075B2 (en) | Storage medium storing information processing program, information processing apparatus and information processing method for configuring multiple objects for proper display | |
JP4851504B2 (en) | How to generate assets for interactive entertainment using digital image capture | |
US8552987B2 (en) | System and/or method for displaying graphic to input information | |
JP2007323660A (en) | Drawing device and drawing method | |
JP5350003B2 (en) | Information processing apparatus, information processing program, information processing system, and information processing method | |
JP5725519B2 (en) | Information processing program, information processing apparatus, information processing system, and information processing method | |
US10535175B2 (en) | Timeline tool for producing computer-generated animations | |
JP4589697B2 (en) | Program, information storage medium, and figure similarity determination device | |
JP5738372B2 (en) | Information processing apparatus, information processing program, information processing system, and information processing method | |
JP5738351B2 (en) | Information processing program, information processing apparatus, information processing system, and information processing method | |
JP6480537B2 (en) | Information processing apparatus, information processing method, and game apparatus | |
JP5623853B2 (en) | Image processing program and image processing apparatus | |
JP6230136B2 (en) | Information processing apparatus, information processing method, and game apparatus | |
JP4815410B2 (en) | Display device, display method, and program | |
US20230298292A1 (en) | Information processing apparatus, non-transitory computer readable medium storing program, and information processing method | |
JP5483654B2 (en) | Information processing program, information processing apparatus, information processing system, and information processing method | |
JP5980752B2 (en) | Information processing apparatus, information processing method, and game apparatus | |
JP2005107644A (en) | robot | |
JP2013175209A (en) | Image processing program, image processing device, image processing method, and image processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100324 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110913 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110922 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120406 |
|
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: 20120529 |
|
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: 20120626 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5030651 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: 20150706 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |